我的公司定期在互联网上举办比赛。这些包括简单的多项选择测验,最快完成测验的人将赢得奖品。
最近我们遇到了作弊者的大问题(很多不到一秒的条目,手动完成是不可能的)。时间是服务器端计算的,所以作弊者不能直接操纵时间。唯一可行的作弊方法是编写一个脚本来自动填写和提交测验。
我们已经实施了以下措施来尝试解决这个问题:
- 将用户限制为一个条目(通过检查 IP 并询问电子邮件地址)
- 从题库中随机抽取问题(不幸的是,每个测验都必须翻译,因此由于我们的翻译资源有限,实际题库大小非常小)
- 随机化问答顺序
- 随机化测验元素类名称和 id
即使采用上述所有技术,我们仍然会遇到设法作弊的人。
作为最后的手段,我们正在考虑用图像替换测验文本,并随机化图像名称,但这对于可访问性来说将是一场噩梦,并且仍然可以通过使用图像比较来欺骗。因此,我们真的希望尽可能避免这种情况。
所以我想知道这里是否有人对如何解决这个问题有任何想法?