reCAPTCHA漫谈

搭建这个blog的时候,评论系统的验证码系统使用的就是reCAPTCHA提供的服务。一直想写点关于reCAPTCHA的东西,却老是拖着。刚刚看到这么一条消息,Google收购了reCAPTCHA,于是我便觉得,我也该为它“写点文字了”。

reCAPTCHA是什么呢?从Wikipedia上我们可以找到CAPTCHA的定义:

A CAPTCHA or Captcha (pronounced /ˈkæptʃə/) is a type of challenge-response test used in computing to ensure that the response is not generated by a computer.

说成中文老通俗了,就是一个验证你是不是人类的系统,最常见的就是验证码了。reCAPTCHA则是CMU创建的一套验证码系统。说到这儿你可能会不屑地说,不就验证码么,我也会做。你要是这么想,请你耐住性子往下看。reCAPTCHA与众不同的地方就是,它不仅仅是一套简单的验证码,而且还是一套OCR辅助系统。现在你那颗躁动的心现在是不是稍稍平息了呢?那就稍稍看一下它是如何来辅助OCR的解释吧。

reCAPTCHA把验证码分为了两个部分,一部分是已知匹配的单词,另一部分则是需要帮忙OCR的未知单词。每个用户在正确输入了已知匹配的单词后,他所输入的未知单词部份将会被reCAPTCHA所记录加权。当一个未知单词的某个辨识版本得到了足够的权重时,这个单词就可以算作成功OCR了。

好了,原理大致说完了,是不是觉得reCAPTCHA完成了一件变废为宝的创举?reCAPTCHA把相同的输入验证码的动作变成了一个有意义的举动,这下在输入验证码的时候,咱也能说咱正在为了人类伟大的电子化工程作贡献呢。各位还在使用单纯的验证码系统的朋友,是不是也考虑一下使用reCAPTCHA或者类似服务呢?

再说到Google收购reCAPTCHA这事上,在完成这次收购以后,Google起码会得到两大好处,一是帮助其阻止那些使用程序自动注册其服务的吞噬者,并加强Blogger的评论系统;二是为前阵子其宣布的Google图书服务提供更好的电子化支持。而reCAPTCHA也有一些自己的缺陷,相信在加入Google家族后,这套系统也能够更加强健,从而为我们提供更可靠的防垃圾服务。