什么是同时拥有多个验证码图像的最佳策略?

时间:2016-06-13 16:31:20

标签: c# php asp.net-mvc captcha recaptcha

让我举一个例子来解释这个问题: 想象一下,我们正在创建一个博客应用程序,用户可以在其中发表评论,因此我们需要确保用户是否是人。请记住,由于某些限制,我无法使用Google reCaptcha,因此我必须创建自己的验证码。

到目前为止没有问题,因为互联网上有大量样本,大多数都使用Sessions来保留最后创建的代码,其中一些使用加密密钥,URL或表单中的隐藏输入。

首先,如果我使用Sessions,我无法显示几个包含唯一验证码的博客帖子,我可以在用户提交后验证它们,因为我只保留最后生成的随机码。

其次,如果我使用加密密钥并在输出HTML或查询字符串中显示它,机器人很容易多次使用生成的密钥,除非我在提交后存储这些密钥。但是,如果我选择使用一次性密钥,我每次都必须搜索我的数据库,以防止生成重复的随机代码。

问题是什么是允许用户打开多个帖子并为每个帖子留下评论的最佳方法,代码和I / O复杂度较低。

0 个答案:

没有答案