36

我知道,到头来,做不到。

但是,有哪些选择:

  a) 限制人员创建多个帐户的选项,
  b) 增加检测多个帐户/人的机会

对于类似博客的 Web 服务?
(人们可以注册自己的博客)

更新:
我认为“限制选项”已经得到很好的回答。(没有可靠的方法,但我们可以提高标准)
但是,我仍然想知道还有哪些其他方法可以检测多个帐户?

4

10 回答 10

39

我假设你在谈论免费服务?我想不出任何既没有严重的缺点,也不会轻易被击败的方法。像设置 cookie、要求唯一的电子邮件地址这样的事情很容易被打败。

要求唯一的 IP 地址并非万无一失,但在某种程度上可能会起作用,直到您拥有大量用户并收到代理背后的人的投诉。

最好的方法是收费或要求人们提供某种个人信息,例如您验证的真实姓名/电话/地址,或 CC 号码,但这是侵入性的(同样,您可能只需要愿意提供的认真用户这种信息)。

我想我会转过头来问“你为什么不想让人们拥有多个帐户?”

无论您的根本原因是什么,都可能有一些其他的方法来缓解,即如果您担心大量孤立的博客,您可以扫描一段时间的不活动并禁用它们,或者至少安排它们让人类查看。如果您担心垃圾博客,您可以定期扫描所有博客内容以查找垃圾内容。如果您担心机器人并使用一些通用软件(如 WordPress),请更改表单变量的名称,否则会保护您的表单免受机器人的侵害。

一定要考虑其他解决问题的方法,因为如果它是像 Blogger 这样的典型免费服务,您将无法阻止人们注册多个帐户。

至于检测一个人的多个帐户,您需要做的第一件事是有一个日志文件存储每个用户登录的完整数据(用户名、时间戳、IP、用户代理等),然后您可以稍后对其进行分析。我将列出一些需要注意的事项,但仅通过仔细研究日志文件,您可能会发现其他模式。要寻找的一些想法是:

  • 设置跟踪cookie(即随机哈希)并在登录时记录其值,从相同的cookie值中查找多个登录
  • 来自相同 IP 地址/用户代理组合的登录
  • 仅从相同 IP 地址登录(不如前两个项目符号可靠)
  • 具有来自免费网络邮件服务(Gmail 等)的电子邮件地址的帐户
  • 具有相同密码的帐户

如果您担心垃圾博客,您可以尝试对博客内容进行一些分析,即提取所有<a href>s 并查找博客之间的相关性。您可以通过诸如 SpamAssassin 之类的内容运行博客内容本身,或者以其他方式过滤诸如“伟哥”和“劳力士”之类的垃圾信息。

于 2008-10-04T12:03:04.297 回答
15

我认为最好的方法是取消创建多个帐户的激励措施。

您是否以任何方式限制用户?可以通过创建多个帐户(轻松)克服这些限制吗?如果是这样,那么也许您应该考虑取消这些限制。

于 2008-10-04T11:27:51.667 回答
11

您可以在创建帐户之前向用户发送 SMS 消息进行验证。由于人们无法像获得电子邮件地址那样容易地获得手机号码,因此这可能会奏效。有些人可能可以获得两个或三个帐户,但不是无限数量。有许多服务可以让您以编程方式发送 SMS 消息,包括Gizmo SMSText4FreeTxtDrop

当然,这需要用户有手机,并且愿意为你提供号码。

于 2008-10-04T11:33:44.603 回答
9

您可以设置一个跨浏览器 cookie,例如http://samy.pl/evercookie/(flash cookie) 浏览器 cookie 删除不能删除它们永远保持 4,您可以跨浏览器读取 cookie。如果用户使用同一台计算机,它是最终的解决方案。如果有超过 1 台计算机,IP 地址是您找出的唯一方法,但(在我的情况下)有时 2 个真实的人在同一个房子里用 2 台计算机登录 2 我的网站

于 2012-02-15T11:14:42.373 回答
3

要求用户使用信用卡注册。您无需向该卡收取任何费用,您只需检查该卡是否有效即可。

于 2008-10-04T11:42:06.833 回答
2

我认为另一个方向是让“大男孩”去做。

http://oauth.net/

将您网站的身份验证卸载到知名的第三方,如 Google 或 Facebook。它不会防止重复帐户,但很高兴认为最新的垃圾邮件预防和诸如此类的东西会自动为您实施。

于 2013-07-24T19:29:16.800 回答
1

你不能也不应该。您不是在与现实世界的人打交道,而是在与帐户打交道,因此请将它们视为具有平等生存权的抽象实体。

我可以即时想象的一些选项:

--电子邮件地址只有一个帐户。但我可以创建不止一封电子邮件......或使用 Mailinator。

-- 冗长乏味的验证程序。但这会阻止用户注册

-- 将 IP 绑定到帐户并阻止(暂时?)该 IP 创建另一个帐户。但是具有相同网关的两个不同用户将被阻止...

-- 使用cookies。但是用户可以删除它们。

于 2008-10-04T11:23:01.490 回答
1

我在现实生活中见过的最难破解的方法是使用单独的硬件介质进行确认(通过 SMS 发送确认码用于公共服务,或邮寄 RSA 令牌以获得更敏感的东西,如 Intranet 访问),或要求提供具有财务约束力的身份证明,例如银行帐号(Paypal 向您的帐户存入几美分,金额总和就是您的密码)或有效的信用卡号。

于 2008-10-05T02:00:13.187 回答
0

一种常见的选择是通过他们的电子邮件验证人的身份。实际上让他们回复发送到他们帐户的电子邮件。一些网站更进一步,不允许来自 yahoo、g-mail、hotmail 等域的地址......

于 2008-10-04T11:17:13.920 回答
0

I think, as many people have mentioned above, one of the best ways is to verify mobile numbers and that's what I wanted to use in teh first place, if it wasnt so damn expensive ...

I have found this site here and I think it can be used for this purpose but I havent tested it myself, but it seems pretty modern and cheap

于 2015-01-15T15:28:15.003 回答