投票網站如何有效地防止刷票?
12-26
最好簡單、有效、無需註冊。
要嚴格保證一人一票的話,就只能靠身份證之類的真實身份信息了。
能嚴格保證一人一票同時、又能不記名投票、而且前後可監督的投票演算法(「制度」)是存在的,可以利用 RSA 盲簽名的技術實現。你去搜我答案即可。
通過oauth登錄鑒別用戶,比如通過QQ號登錄,通過微信掃碼投票。
手機號不錯,不過成本比較高。
郵箱可以很輕鬆偽造,比如Gmail可以加前綴,申請域名搭建郵件伺服器。
IP單純IP限制也很容易突破,代理IP很容易找。
驗證碼有在線打碼服務,價格1000碼才4元
1. 研究下這個HTTP頭:"X-Forwarded-For",服務端避免【避免繞過IP的刷票】!
2.另類驗證碼機制http://www.cnbeta.com/articles/141578.htm
3.驗證碼圖片防識別要點:扭曲,重疊。這樣識別難度大大增加,簡單的噪點,噪線消除很簡單。
4.防止弱智的驗證機制bug
強制要求投兩票。
或者,只投反對票?加複雜演算法的驗證碼
限制IP段,改網址,改規則。限制投票時間,限制時間段票數增長。當然這些都有可能被攻破哈哈
用聲紋識別技術 每個用戶需要添加一段語音 之後對用戶聲紋進行比對 去除相似聲紋選票
我個人認為比較簡單易行的方法,還是通過用戶來甄別,維護一個可信用戶列表(大部分系統中用戶活躍度都是符合長尾分布的,從中截取一段,能夠反映多數用戶意願的用戶為準。不過與活躍,也不是很少參與)。
對於單個話題,在已投票的人中,篩出可信的用戶,從這群人中隨機選取部分用戶(80%,保證一定的隨機性),來做排名。 不知道豆瓣電影評分是如何反刷票的。
當然,這只是一個方面,任何反作弊系統不可能只有隻一個指標。
後台實名制!做一個嚴肅的投票類網站,前台可以不顯示真實姓名。
推薦閱讀:
※幾乎相同的答案,你是否更多投票給熟悉的人?
※知乎是通過對有敏感內容的答案投「反對」票來規避政治風險的嗎?
TAG:投票 |