如何识别唯一用户?

9

问题

如何确定用户是否唯一?

我知道使用cookie有很多方法,但是不使用cookie的方法有哪些呢?

例如,打开Urban Dictionary并点击其中一个赞/踩按钮。即使您删除了cookie并返回该页面,您也无法在同一定义上投票。

他们是如何做到的?

目的

最终,我想在用户创建帐户的网站上使用此唯一用户检测方法。新注册用户将获得一种“奖励”,我想防止人们创建多个帐户以利用奖励系统。

归根结底,我并不关心使用什么技术来实现这一点。我知道没有一种方法是100%可靠的。即使能够阻止70-90%具有平均计算机技能水平的用户,我也会满意。

6个回答

3
我猜Urban Dictionary(和其他投票网站,例如各种图像板)使用IP地址来跟踪访问者。这不是百分之百可靠的,但大部分时间应该还是相当不错的。
需要注意的是,对于这些网站中的许多网站,您可以再次投票,通常每24小时一次(或者他们记录IP地址的时间长度)。
有一些事情可能会破坏这个方案:知道如何欺骗IP地址的人,NAT路由器,代理服务器(可能)。另一件事是:现在许多家庭ISP使用动态IP地址,因此您现在拥有的IP地址几个小时后可能会有所不同。如果要强制获取新IP地址,则通常足以将高速调制解调器拔出几分钟然后重新插入它。一些路由器还具有从ISP要求新IP的功能。

抱歉,我已更新问题并添加了“目的”部分。我明白熟练掌握如何规避这些预防技术的用户是无法阻止的,但如果能够阻止大多数人,我会很满意。 - maček

3
Urban Dictionary可能只允许每个IP投一次票。或者他们可能会采用浏览器指纹https://panopticlick.eff.org/
为了追踪用户是否曾经访问过您的网站,cookie可能是最好的选择。

3

除了IP地址和“普通”cookie之外,可能会使用FLASH cookie。Firefox浏览器有一个名为“BetterPrivacy”的附加组件,可以在您退出浏览器时删除这些cookie。但是这些cookie并不那么常见。


那么除了专门清理这些“Flash Cookies”的人之外,它们会留在用户的系统上吗? - maček
是的,只要用户启用了Flash,它们就会保留。 - Dor
Dor,我需要研究一下这些,谢谢 :) 我可以想象我会使用尽可能多的层来实现最大的效果。也许包括1)Flash cookies 2)常规cookies 3)浏览器指纹 4)X小时内的唯一IP等。 - maček
在这种情况下,一种极端的方法可能是向用户发送一张图像,并将其永久存储在浏览器缓存中。当您识别出一个“新”的用户时,请检查他是否从服务器请求该图像。 - Dor

2
一些网站使用cookies,一些则要求登录/电子邮件地址,还有一些会跟踪IP地址。

0
如FrustratedWithFormsDesigner所述,如果您不使用cookie,则必须使用IP地址。您可以将其与用户代理结合使用,但即使如此也不是万无一失的。

0

IP地址是常用的,但也有缺陷,正如其他人所说。请注意,AOL(以及其他ISP)使用共享代理服务器进行内容类型请求和缓存,因此单个用户对图像的请求可能会显示为来自多个不同的IP地址。相反,所有AOL用户对图像的请求都将来自这些相同的IP地址。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接