◆胖瓜
讓人又愛(ài)又恨的驗(yàn)證碼
◆胖瓜
現(xiàn)在的驗(yàn)證碼多種多樣,包括文字、字母、圖案和問(wèn)題等,有的相當(dāng)復(fù)雜,讓人看了忍不住發(fā)牢騷:萬(wàn)惡的驗(yàn)證碼!
雖然驗(yàn)證碼讓一些人恨之入骨,但是沒(méi)了它,我們可能會(huì)被黑客攻擊哦。
當(dāng)驗(yàn)證碼尚未出現(xiàn)時(shí),黑客就相當(dāng)猖狂。他們編寫(xiě)了一種能重復(fù)編寫(xiě)信息的程序,偽裝成人類(lèi)用戶,肆無(wú)忌憚地朝網(wǎng)上傳遞大量無(wú)意義的“僵尸”信息,導(dǎo)致垃圾郵件、垃圾廣告、垃圾評(píng)論到處都是,論壇被灌水,有用的信息被淹沒(méi),很多網(wǎng)站無(wú)法正常運(yùn)營(yíng)。
另外,還有數(shù)不盡的程序機(jī)器人不斷嘗試破解密碼、惡意刷票,從中非法謀利。
其中受影響最大的是電子郵件提供商。他們的用戶每天收到數(shù)以百計(jì)的垃圾郵件,嚴(yán)重影響了正常工作,更要命的是,這些垃圾郵件都是他們的免費(fèi)郵箱發(fā)出的。
有什么方法可以約束程序機(jī)器人呢?
當(dāng)時(shí)最有實(shí)力的郵件提供商雅虎公司決定下狠勁改善這個(gè)問(wèn)題。公司的負(fù)責(zé)人聯(lián)系了卡內(nèi)基梅隆大學(xué)的學(xué)生路易斯·馮·安。
路易斯這個(gè)計(jì)算機(jī)天才認(rèn)真研究了程序機(jī)器人的“工作手法”后,給出了一個(gè)獨(dú)特的方案:在用戶進(jìn)行操作前,將試圖偽裝成人類(lèi)的那些機(jī)器人鑒定出來(lái)并揪出來(lái)。
如何將人類(lèi)和機(jī)器人區(qū)別開(kāi)來(lái)?或者說(shuō),有什么是人類(lèi)能夠輕易做到,而機(jī)器做不到的呢?
數(shù)學(xué)題?機(jī)器做得比人類(lèi)出色多了;寫(xiě)一篇洋洋灑灑的保證書(shū)保證“我是人類(lèi)”?機(jī)器絕對(duì)寫(xiě)得又快又好;畫(huà)一幅畫(huà)?拜托,誰(shuí)有空每次在論壇發(fā)一次帖就畫(huà)一幅畫(huà)?而且說(shuō)真的,機(jī)器畫(huà)畫(huà)也絕對(duì)比人類(lèi)強(qiáng)……
路易斯發(fā)現(xiàn),對(duì)于鑲嵌在圖片中、被扭曲過(guò)、污染過(guò)的文字,人類(lèi)可以用肉眼輕易地識(shí)別出來(lái),而機(jī)器不能。他在導(dǎo)師曼紐爾·布魯姆的幫助下很快設(shè)計(jì)了一個(gè)程序,這個(gè)程序先會(huì)產(chǎn)生一個(gè)隨機(jī)的字符串,如smwm,然后對(duì)這串字符進(jìn)行隨機(jī)的扭曲、重疊、污染,再顯示給要進(jìn)行操作的用戶。只要能識(shí)別變形了的字符串,就是人類(lèi)。
這個(gè)設(shè)計(jì)方案后來(lái)被命名為“CAPTCHA”,意思是全自動(dòng)區(qū)分計(jì)算機(jī)和人類(lèi)的圖靈測(cè)試,中文譯名就是驗(yàn)證碼。(節(jié)選自蝌蚪五線譜)