1
22
我会收集尽可能多的关于会话的数据,而不直接问任何问题(浏览器、操作系统、已安装的插件、所有版本号、IP地址等),并将其散列。 如果希望允许多个投票,请记录哈希值并增加一个计数器。在salt中包含一个时间戳(每天、每小时等),使投票时间敏感,例如每天5票。 |
2
12
中国人必须与数百人共享一个IPv4地址;HP/Compaq/DEC拥有近5000万个地址。ipv6没有帮助,因为每个人都能获得十亿个地址。一个人只是和一个IP地址不一样,这个概念变得越来越错误。 在互联网上没有合适的方法可以做到这一点。人只是一个在互联网上未知的概念,任何引入这个概念的想法都不太可能成功。(例如,太多的政府不希望这种情况发生。) 当然,您可以将每个IP的投票量与该IP的重复页面访问量联系起来,特别是与cookie跟踪结合使用时。如果您在开始投票期之前估计这个数字,这是最有效的方法。如果最受欢迎的5%文章通常是从一个IP上读10次,那么很可能有10个人分享这个IP,他们应该得到10票。cookies可以用来防止他们窃取对方的选票,但总的来说,他们不能影响你的投票。(注:这在小社区中是失败的,那里有大量的选民来自少数IP,尤其是在大学周围)。 |
3
11
最简单的答案是使用cookie。很明显,这很容易被人们清除他们的cookie,但匿名投票本质上是近似的。 在实践中,除非被投票的主题在某种程度上具有争议性或煽动性,否则人们不会有任何动机去操纵投票。 IP更“可靠”,但由于NATS,它将产生无法接受的高级别冲突。 由IP+用户代理(可能是哈希)组成的更唯一的标识符如何?这实际上意味着对于每个IP,每个确切的OS/BROWSER版本对获得1票,这更接近于每人1票。大多数浏览器在用户代理中提供了详细的版本信息——我不确定,但我的直觉是,这可以防止大多数由nats引起的冲突。 唯一仍然会产生大量冲突的地方是一个拥有标准化网络的企业环境,每个人都在使用同一台机器。 |
4
3
如果你不想认证选民,那么不管你用什么,你都会得到一些重复的选票。我会使用一个cookie,并为匿名用户使用它。 用户语音在登录时允许匿名投票和投票,但随后允许管理员过滤掉匿名投票——这是解决此问题的一个很好的解决方案。 |
5
3
基于IP地址的任何东西都不是一个选项——已经提到了NAT的情况,但这似乎只适用于家庭用户。有许多更大的安装使用nat-一些公司可以在一个IP地址后面集合数千个用户。还有一些ISP为用户使用代理服务器——在另一种情况下,您可以让成千上万的用户以单个地址出现在应用程序中。添加独特的UA组合不会有帮助,因为没有足够的变化。 一 持久的 曲奇将是你最好的选择,你必须接受这样一个事实:它很容易玩。至少当cookie是持久的(而不是基于会话的)时,您将捕获运行单个浏览器的大多数用户。 如果你真的想依赖结果,你必须在这个过程中添加某种形式的标识(比如电子邮件验证,它仍然是可玩的)。 一天结束时,任何互联网调查都会有缺陷(如: http://www.time.com/time/arts/article/0,8599,1894028,00.html )你必须忍受这个。 |
6
3
使用持久cookie只允许对每个项目进行一次投票 和 如果IP超过100(1000?),则记录IP。10000?)请求少于x分钟,然后“软块”IP “软阻止”:不要显示一个显示“您的IP已被阻止”的页面,而是显示“感谢您的投票”页面,不要在数据库中记录投票。您甚至可以只增加该IP的计数器。你想阻止他们知道你在阻止他们的IP。 |
7
1
两个尚未提及的想法是:
显然,前者可以通过一次性电子邮件地址等规避,但会给您一个审计跟踪,并为临时/bot投票填充提供一个重要障碍。一个好的验证码同样严重地限制了投票填充,但是在使用它们的时候通常会有警告。 |
8
0
我也有同样的问题,这就是我计划要做的…… 设置持久cookie。检查cookie以决定是否可以投特定的票。 另外,以IP地址+用户代理的组合形式存储投票请求的一些数据。然后使用这个值将投票数限制为每天10票。 创建这个哈希(IP+UA字符串)的最佳方法是什么? |
A. Shawkat · 获取请求不起作用 6 年前 |
Yura · 无法链接引导。min.css和动态web app 6 年前 |
jasonharper · 无互联网连接的WiFi连接设备的最佳实践 6 年前 |
Thanh Dong · 在spring boot web应用程序中运行jar文件时,创建名为“ConfigurationPropertiesBindingPostProcessor”的bean时出错 6 年前 |
Karim Sawma · react web app中缺少滚动条 6 年前 |
Nathan · Flask API回调侦听器 6 年前 |
David Artmann · Vaadin网格日期渲染器不适用 6 年前 |
Hayden · 如何防止计数器的增量超过元素的高度? 6 年前 |