reCAPTCHA的诞生及意义
CMU(卡耐基梅隆大学)设计了一个名叫reCAPTCHA的强大系统,让电脑去向人类求助。具体做法是:将OCR(光学自动识别)软件无法识别的文字扫描图传给世界各大网站,用以替换原来的验证码图片;那些网站的用户在正确识别出这些文字之后,其答案便会被传回CMU。
reCAPTCHA是利用CAPTCHA的原理(CAPTCHA的中文全称是全自动区分计算机和人类的图灵测试),借助于人类大脑对难以识别的字符的辨别能力,进行对古旧书籍中难以被OCR识别的字符进行辨别的技术。也就是说,reCAPTCHA不仅可以反spam(垃圾邮件),而且同时还可以帮助进行古籍的数字化工作(可以称为人工OCR)。
每次reCAPTCHA会显示两个单词让人来识别,其中一个是需要用户识别的难认词,另外一个是答案已知的真正的CAPTCHA 词。软件将能够正确识别CAPTCHA词的用户看作是人类,当CAPTCHA 词被正确识别出来后,程序会纪录用户对无法阅读的词的回答并将其添加到它的数据库中。这样就完成了一次人工的OCR识别。过程如图1.
![1.png](http://image.3001.net/images/20150126/14222509161862.png!small)
(图1)
为了改善软件的精确性, reCAPTCHA 会将最困难的词发送给多个用户并挑选其中有相同答案的作为正确的答案。据说准确率能够达到99%。用户每使用一次这个程序,实际上就是在帮助数字重现1908年《纽约时报》上的某一页,或者其它古书中的一页,这对考古学具有重大的意义。
下面是一个在使用reCAPTCHA进行注册验证的网站实例(图2):
![111.png](http://image.3001.net/images/20150128/14224312557865.png!small)
![222.png](http://image.3001.net/images/20150128/14224312583844.png!small)
(图2)
reCAPTCHA被Google收购
reCAPTCHA在 2009 年被 Google 收购。之后国外陆续有一些网站的 reCAPTCHA 的验证码内容发生了变化,所显示的不再仅仅是古籍文字,而是还有照片——照片的一侧显示的是大家熟悉的扭曲的文字,另一侧则是模糊的数字,这些数字无疑就是街道地址,Google 的一位发言人介绍说,该系统并不局限于街道地址,街道名称甚至交通标志也会被包含进去。图例如图3.
![2.png](http://image.3001.net/images/20150126/14222509341477.png!small)
(图3)
Google 让reCAPTCHA 里显示 Google 街景的图片。这样经常会从街景里提取如街道名称和交通标志等数据,向 Google 地图里添加商铺地址和位置等有用信息。
新版reCAPTCHA–noCAPTCHA
Google在2014.12.03发表了一篇文章《Are you a robot?Introducing “No CAPTCHA reCAPTCHA”》
文章开始讲述传统验证码的方式令“真正人类”头疼,且研究表明现在的人工智能技术已经能够解决99.8%的验证码,因此扭曲的文本验证方式可能不是一个可靠的方法。
新的reCAPTCHA被Google称作没有验证码的验证码("No CAPTCHA reCAPTCHA"),他让用户只需要简单的勾选就可以确认你是真实用户而非恶意机器人,操作非常简单。
noCAPTCHA只提供了一个复选框,里面写着“我不是机器人”。当你打钩之后,谷歌就能利用“风险分析引擎”进行一系列无缝检查,以此来判断你是否是真人。
![robot.png](http://image.3001.net/images/20150126/14222509895037.png!small)
(图4)
如果noCAPTCHA认为你是真人,那就不用再做什么了,这确实很容易。如果noCAPTCHA认为你不是真人,它就会要求你填一个传统的CAPTCHA字符串或更先进的字符串,比如从一组图片中挑选出正确的图片。
![AK{L)~[ZAXFAQ3H9%A5${EL.png](http://image.3001.net/images/20150126/14222510501081.png!small)
![text.png](http://image.3001.net/images/20150126/14222510668818.png!small)
![tu.png](http://image.3001.net/images/20150126/14222510912719.png!small)
(图5)
noCAPTCHA的产品经理薛特(Vinay Shet)探讨了改良版服务背后的技术,他说复选框听起来虽然很简单,但是背后确实很复杂。新的风险分析引擎在用户点击复选框之前、之中和之后都会关注用户参与度来决定你是否是真人。
薛特说,风险分析引擎使用了机器学习技术,这种技术使用了很多的策略,知道普通用户看起来是什么样的,这样下次就知道该检查些什么了。
现在还不是所有人都能使用新版noCAPTCHA,只有一小部分用户能够使用它,想使用新版noCAPTCHA的大部分体验的开发者要想把它使用到他们的产品中必须使用新的API。目前,Snapchat、WordPress和Humble Bundle和cloud9等也正在测试新系统noCAPTCHA。
下面是cloud9注册时使用noCAPTCHA的截图:
![c9.png](http://image.3001.net/images/20150126/14222511499196.png!small)
![c92.png](http://image.3001.net/images/20150126/14222511634225.png!small)
(图6)
总结
reCAPTCHA不仅是一种验证码服务,同时也是一项具有重要意义的文化工程。被Google收购之后,reCAPTCHA内容也更加丰富。现在的noCAPTCHA似乎要将人类从“万恶的验证码”时代解放,更加注重用户体验,让真正的人类使用更加方便,让机器注册更加困难。
[作者/ArkTeam(团队帐号),转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)]
http://www.freebuf.com/news/special/57496.html