当前位置:  开发笔记 > 编程语言 > 正文

什么是好的隐形验证码?

如何解决《什么是好的隐形验证码?》经验,为你挑选了2个好方法。

什么是好的隐形验证码?我的网站需要JavaScript,所以任何需要它的东西都可以.



1> RichieHindle..:

添加一个新的输入字段,标记为"请留空",使用CSS隐藏它,如果填写该字段则忽略该帖子.如下所示:


...
...

因此,人类不会看到该字段(除非他们关闭了CSS,在这种情况下他们会看到标签并将其留空)但垃圾邮件机器人会将其填入.任何填充该字段的帖子必须来自垃圾邮件机器人.


这看起来不错,但是如果您的网站是专门针对的话,它将无效 - 即手动,有人想检查您的表单以填充您的网站垃圾.通过查看您的HTML代码,他们将意识到他们需要将该字段留空,因此在创建机器人时,他们会考虑到这些并完成它们.这仅适用于100%自动化蜘蛛,寻找带有其他人链接的垃圾网站,但如果您的网站是攻击的特定目标则不会.

2> Mauricio Sch..:

这是 Phil Haack的简单数学验证码.它甚至适用于禁用的JavaScript.

用他自己的话说:

它的工作方式是它渲染一些javascript来执行一个非常简单的计算,并使用javascript将答案写入隐藏的文本字段.当用户提交表单时,我们从隐藏的表单字段中获取提交的值,将其与秘密salt值组合,然后将整个事物散列在一起.然后,我们将此值与预期答案的哈希值进行比较,该哈希值存储在base64编码的隐藏表单字段中.如果禁用了javascript,那么我们会将问题呈现为文本旁边的可见文本字段,从而让用户通过非JavaScript浏览器阅读您的网站有机会发表评论.


唯一的问题是如果机器人有js而不是没用.
推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有