验证码背后的数字专家

2018-08-06 07:31梁水源
新青年 2018年6期
关键词:梅隆刷票卡耐基

梁水源

1亿人的举手之劳能带来什么?1亿人的举手之劳要是能为你所用,那是一件多么伟大的事。许多人认为这简直是天方夜谭,然而有个数码专家做到了,他就是美国卡耐基梅隆大学教授路易斯·冯·安。

出生于1978年的路易斯,他从小就是一名学霸,也很爱动脑筋。2000年,他在杜克大学获得了数学学士学位,随后就进入卡耐基梅隆大学读博士。21世纪初,随着网络的广泛应用,网络给人类带来方便的同时,也出现恶意破解密码、刷票、论坛灌水、黑客攻击等漏洞,于是有人提出了使用验证码的初步想法。直到2003年,路易斯提出了“CAPTCHA”设想,这个愿望得到了实现。

怎样才能区分用户是计算机还是人类呢?路易斯经过长时间的研究,发明了验证码(CAPTCHA),即全自动区分计算机和人类的图灵测试系统。验证码不仅可以防止恶意破解密码、刷票等,还能有效防止黑客对某一个特定注册用户,用特定程序暴力破解方式进行不断的登陆尝试,而且利用比较简易的方式实现了这个功能。有这个功能,问题就变得简单多了,由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。

路易斯的验证码切实可以抵制网络上的不良软件程序,比如你要在线抢购一张火车票,那么你需要过目一组扭曲的字母,并输入正确内容。这样,系统可以将你判定为人类,而非机器程序。然而,这个发明在许多人看来很蠢,扭曲的字母很丑,原理看起来简单粗暴,一点都不“高级”,而且浪费用户大把的时间。据Google统计,每天地球人至少要填写2亿个验证码,人们搞定一个验证码平均需要10秒的时间,往往还会因为看不清楚而不得不换一个新的验证码来输入。按此计算,人类每天在验证码上就浪费了50多万个小时,这实在是一件令人沮丧的事。

这样大数量级的时间浪费问题再一次激发了路易斯,他开始思考,是否有什么方法可以把这些碎片时间利用起来,哪怕仅仅是那短暂的10秒。令人难于想象的是,面对如此奇妙的设想,他居然找到了答案。他想,如果将计算机出现之前大量的书籍、报刊等书面资料电子化,那是一项很有意义却又繁重的工作,虽然OCR是这方面较为有效的自动化技术,但有些文献由于字迹模糊、褪色、污损等原因,无法被OCR识别,而这些OCR无法识别的内容由人工辨认却相对较为容易。路易斯要解决的问题是,让所有填写过验证码的人,或许可能并不知情,但实际上已经在做着一件很有意义的事情,那就是为旧书数字化或翻译文档做出贡献。

2007年,为了实现这一设想,已经是卡耐基梅隆大学副教授的路易斯,设计了一个名叫reCAPTCHA的强大系统,他开始让电脑去向人类求助。具体做法是:将OCR软件无法识别的文字扫描图传给世界各大网站,用以替换原来的验证码图片,那些网站的用户在正确识别出这些文字之后,其答案便会被传回。在reCAPTCHA系统中,验证码有两个单词组成,一个叫“controlword”(控制系統知道答案),另一个叫“unknowword”(来源于OCR无法识别的部分,控制系统不知道答案),因此,对于用户的输入,只能验证“controlword”部分,如果这部分是对的,就认为“unknownword”部分用户也提供了可信的答案。短时间内,它帮助纽约时报数字化了从1851年至今的所有文章,功能非常强大。

路易斯的验证码,这个外行人看起来有些蠢的设计,实际上却精妙无比。它既防止恶意的攻击、注册、刷票、抽奖等,又巧妙地利用网民在识别一串串字符时,把这些脑力、时间利用起来,然后集合起来做一些有益于人类的事。

猜你喜欢
梅隆刷票卡耐基
戴尔·卡耐基
梅隆家族:渐行渐远的财富大佬(下)
要改变对网络投票的过度依赖
没有什么不可能
微信投票乱局与治道变革