代码之家  ›  专栏  ›  技术社区  ›  Malfist

如何防止作弊人数最多的民调?

  •  6
  • Malfist  · 技术社区  · 16 年前

    在我的网站上,我们运行一个竞赛系统,用户为其他用户的内容投票。我们最近发现有人创建了多个帐户来多次投票(连续的身份证号码,几分钟内投票)。我们希望防止这种情况再次发生。从《泰晤士报》如何处理“本世纪最具影响力人物”的民意调查来看,即使是大人物也会弄错。

    5 回复  |  直到 13 年前
        1
  •  6
  •   relet    16 年前

    最后,它是充分的身份验证、易访问性和结果的价值(对您和用户)以及如何呈现结果之间的平衡。

        2
  •  1
  •   Davis Peixoto    16 年前

    使用IPv4地址,带有浏览器签名($\u SERVER['HTTP\u USER\u AGENT'])哈希。

    如果时间太近,导致一个自动化的过程,验证码将解决它(但没有人喜欢在投票验证码)。

        3
  •  0
  •   tplaner    16 年前

    不幸的是,很难防止舞弊投票,有志者事竟成。然而,这一切都是为了尽可能不方便欺骗系统。

    您的帐户是否需要一个唯一的电子邮件地址与验证,然后才能使用该帐户?

    用户多久可以投票一次?如果只是一次或一天一次,你可以发送电子邮件来验证投票,但这可能会成为合法用户的痛苦。

    不确定网站的规模,但是,当你开始谈论像《时代周刊》这样的超大网站时,很难仅仅通过查看IP地址来判断连续投票是否是假的。大学和办公室经常有数百人在同一个IP地址上。很难判断是一个人在幕后操纵投票,还是有一个人到宿舍里的所有朋友那里去告诉他们投票(可以在同一时间解释来自同一IP地址的新注册/投票)。

    真的没有 回答 对于这个问题,只需继续监视日志并删除看起来不合法的投票。

        4
  •  0
  •   Organiccat    16 年前

    正如您已经做的那样,跟踪IP地址以及投票时间,并禁止在同一时间段内从同一IP进行多次投票。这最多只会影响到少数大学生。

    安全投票的另一个简单方法是强制电子邮件注册和确认。一些bot/spam站点仍然可以通过拥有自己的域来绕过这个问题,但是你可以阻止该站点的域注册和投票。这是“最烦人的”,但最耗时,因此导致最不可能,结合IP地址,导致严重作弊。

    要记住的是,你不会阻止所有的作弊者进入你的系统,但是你可以减轻他们。

        5
  •  0
  •   Alex    16 年前

    我会结合使用IP地址投票限制和cookies。是的,cookies可以被删除,但这将阻止恶意类型的人谁也恰好是一个白痴。

    IP地址限制将检查来自该IP地址的某个人最近是否投票(比如10分钟,根据人口统计或来自大型组织在同一IP地址上投票的人数而定,无论你认为什么是公平的),并停止计票。

    结合这两个与您的用户ID的使用已经和它的尽可能多,你可以做现实。