[转]多说两句图片验证码
图片验证码,作为差不多最早和最简单易行的CAPTCHA,被广泛采用。1
CAPTCHAs Completely Automated Public Turing test to tell Computers and Humans Apart
全自动区分计算机和人类的图灵测试,这个问题可以由计算机生成并评判,但是必须只有人类才能解答。或许人可以问出只有人类能够回答的问题,但让计算机问出只有人类能回答的问题?木有能力证明,直觉有点不靠谱。
绝对做不到,相对做到也很有用。怎样才能让问题更适合人而不是机器,就能更适合我们的应用场景。
机器比较难以处理什么:演绎、规划、知识表达,学习、知觉、创造等等。
这些领域了解有限,Google的猫的科学家们或许能够解释更多。
图片验证码基本上可以归为知觉部分,随着技术的进步,越来越依赖更复杂更大信息量的感知,机器处理难了,人处理也难了。
能不能换个办法
改进方案是很多的,有些效果还不错,引用一个介绍:替代验证的六种办法
其中几个感觉比较典型和有意思的分析一下:
技能测试
http://blog.jobbole.com/wp-content/uploads/2013/05/funny-captcha.png
解个微分方程 这个例子极端了点,不过常见简单运算的还是人人都可以的。类似的还可以问same这个单词的第一个字母是啥。这个方法使用了知识表达和演绎能力,如果做成图片方式,则更加安全且易于使用。
简单任务
http://blog.jobbole.com/wp-content/uploads/2013/05/tic-tac-toe.jpg
井字游戏 和解方程原理差不多,不过有趣很多。困难的是,或许有的人真的不会…… 应用了感知,知识表达和演绎。
第三方认证
这是回避问题,不过如果没有足够的资源实现安全的方式,通过第三方是个解决防止暴力破解,转移责任的好方法。
什么都不做
是的,用户什么都不做。但后台要做的更多。
可以根据行为:是否重复尝试?
根据上下文:是否先访问了登录页,再输入账户密码?是否有先阅读用户须知,再注册?
根据内容:类似Akismet阻止垃圾评论的方式。
这些方法,通过实时欺诈检测手段,在基本不影响用户的基础上实现保护。
北大侠客行MUD,中国最好的MUD yct23 yct10.
页:
[1]