APP下载

验证码为什么越来越复杂

2024-09-11斯嘉

读者 2024年17期

这天,考研备考许久的你,踌躇满志地打开考研报名网站。然而,还没来得及填写各种资料,你就被卡在了登录网站的验证码上。重叠在一起的字体,布满马赛克的背景,让你输了几次验证码都没有输对。你屡败屡战,但验证码上出现的“骉叕犇羴”,又瞬间让你怀疑自己的学识水平。

有些验证码更是不满足于只考你的眼力,还要测一下你的智商。在某些网站抢演唱会门票时,不仅要懂点文学典故,读过“四大名著”,末了,还要附带让你算一道数学题。

逼疯你的验证码,为什么变得越来越复杂?

美国斯坦福大学的研究人员指出,验证码已经过于复杂。研究者搜集了8500个多种形式的验证码让受试者辨认,发现他们在判断验证码时,平均要花9.8秒,且同时让3个人辨别同一个验证码,3个人的一致率只有71%。如果是听声音辨识的验证码,准确率会更低,只有31.2%。

其实,验证码也不是一开始就这么复杂的。

在验证码被发明前,许多免费的邮箱网站常遭受恶意外挂软件的攻击。例如,在2000年,雅虎邮箱中曾有大量用机器注册的马甲账号,它们会给用户发大量垃圾邮件、诈骗邮件。

为了解决这个问题,程序开发人员试图找到一种登录验证方式,以判断出正在操作计算机的究竟是人还是机器。

工程师们找到了有效的方式。他们发现,当时即使是配备了最先进的光学字符识别系统的电脑,也很难正确识别出印在纸上的字,尤其当字符被拉伸、扭曲时,电脑就更加难以辨认。

然而,这对人类来说却很容易。我们从小就一直在接受阅读训练,即使纸上的字歪歪斜斜,或部分被遮挡,也不影响我们对整体的判读。扭曲的字符,便成了最常用的登录验证方式,并有了“验证码”这个正式名字。程序员们会预先设定一个字符库,库中的字符会排列组合成字符串,再根据随机变量被扭曲、涂抹,定位在随机背景上,从而成了我们所见的验证码。

这些字符谜题,确实有效减少了网站中的垃圾邮件。到2001年,邮箱中的垃圾邮件便减少了95%。

但随着电脑光学字符识别技术的不断发展,这种形式的验证码越来越难将外挂机器挡在门外。在2014年的一项专业测试中,即使是最难的扭曲字符类验证码,电脑识别的准确率也高达99.8%。为了挡住越来越聪明的机器,验证码被迫进化,出现了图形验证码、逻辑验证码、语音验证码……

不过,你受的每一次苦,都不是白费力气。你在10秒内减少的脑细胞,其实都转移到了AI身上。

我们辨识的一些验证码字符,来自那些年代久远的报纸、典籍。这些手写的、带有污点的字迹,难以被电脑辨识,程序员便将这些字符加入验证码中。

这样的验证码通常由两段组成,前一段是已经成功符号化的单词,后一段则是不知道正确答案的典籍字符。只要用户答对第一段,第二段的判读结果也会被记录下来,程序再比对多个用户的辨识结果,最终得出结论。

我们就陷入这样一个循环怪圈:输入越多验证码,AI的学习能力就越强;技术的进步让更多验证码被破解,而我们就要被迫再次设计出更复杂的验证码……

验证码似乎已背离设计者的初衷,成了一个难住人类,却难不住机器的摆设。

越来越多的科技公司意识到了这个问题,开始试图简化繁杂的验证码。比如,你现在登录很多购物网站进行验证时,就只用拖动滑块。这样的验证码不仅是在评判你操作的结果,更多的是记录并分析你操作时的行为。电脑观察到你移动滑块的速度有变化,就能认出你是人类。

另一种隐性的验证码,也遵循这个原理。当你勾选“我不是机器人”时,程序就能判断你是否在说谎。并不是它真的有读心术,而是在你勾选后,它会自动分析你在浏览该网页时的行为,包括鼠标的移动轨迹、浏览的速率等,借此分析出这些行为是否属于正常人类的操作。

至此,在这场人类与机器的比赛中,我们已不再试图证明自己更聪明,而是转向另一种策略:那不统一的行为轨迹、不精确的答案、笨手笨脚的操作,才是我们生而为人的特征。

不过,这样的隐性验证码也不是万灵丹药。在它出现后不久,加拿大多伦多大学的学者便发表论文,声称他们的机器人可以模仿人类的操作行为,顺利通过隐性验证码的测试。

1950年,著名计算机科学家图灵提出一个思想实验:人类提出一系列问题,机器给出答案,再由人类判断对方是否为机器。如果有超过30%的人将机器误判成人类,那么这个机器就被认为具有人类智能。但70多年过去了,人类陷入完全相反的境地——一个个验证码,正是机器抛给人类的问题:“你是人类吗?”

这一次,审判权掌握在机器手中,而被验证码难住的人类,仍在用力呐喊:“我不是机器人!”

(梅源摘自微信公众号“答案如下”,毕力格图)