□斯嘉
验证码似已背离了初衷,成为一个难住了人类,却难不住机器的摆设
这天,准备考研许久的你,踌躇满志地打开了考研报名网站。
然而,还没来得及一展才学,你就被卡在网站登录的验证码上。重叠在一起的字符,布满马赛克的背景,让你输了几次验证码都没有输对。
你屡败屡战,但验证码上出现的“骉叕犇羴”,又瞬间让你怀疑自己的学识水平。
逼疯你的验证码,为什么变得越来越复杂?
这个究竟是o还是0?是1还是I?
每一次输入验证码时,你都会忍不住发出这样的疑问。它那扭曲的形状,粘连在一起的字符,雪花状的背景,常让你陷入自己是不是眼瞎的怀疑。
然而,这种字符验证码,还只是日常的基础题。高难度的题目,往往出现在春节这样的特殊时刻。
登录铁路12306App时要选择的图片验证码,曾是每个在春节抢过火车票的人的噩梦。
你要在一堆高度模糊的图片中,挑选出各种“犹抱琵琶半遮面”的物体。有时运气不好,碰上排风机、发电机等超出生活常识之外的东西,你就只能被困在一次又一次的选择错误中,眼睁睁地看着余票越来越少。
有些验证码更是不满足于只考你的眼力,还要测一下你的智商。在购票网站抢演唱会门票时,不仅要懂点文学典故,读过四大名著,末了,还要附带让你算一道数学题。
屏幕上的每一个验证码,似乎都在提醒你:没点文化,就别跟人学追星了吧。
研究者们搜集了8500个多种形式的验证码让受试者辨认,发现受试者在判断验证码时,平均要花9.8秒,且同时让3个人辨别同一个验证码,3个人的一致率只有71%。如果是听声音辨识的验证码,准确率会更低,只有31.2%。
其实,验证码也不是一开始就这么复杂。
在验证码被发明前,许多免费的邮箱网站常遭受恶性外挂软件的攻击。例如,2000年,雅虎邮箱中曾有大量用机器注册的马甲账号,给用户发大量的垃圾、诈骗邮件。
为了解决这个问题,程序开发人员试图找到一种登录验证方式,能判断出正在操作的究竟是人,还是机器。
AltaVista(搜索引擎公司)的工程师们便找到了有效的方式。他们发现,在当时,即使是配备了最先进的光学字符识别系统的电脑,也很难正确识别出印在纸本上的字,尤其当字符被拉伸、扭曲时,电脑就更难辨认。
然而,这对于人类来说却很容易。我们从小就一直在接受阅读训练,即使纸上的字歪歪斜斜,部分被遮挡,也不影响我们对整体的判读。作业簿上的乱涂乱画,老师们也能细心辨认;医生写的天书病历,照样有人能破译。
扭曲的字符,便成了最常用的登录验证方式,并有了“验证码”这个正式名字。这些字符谜题,确实有效减少了网站中的垃圾邮件。
但随着电脑光学字符识别技术的不断发展,这种形式的验证码已经越来越难将外挂机器挡在门外。在2014年谷歌工程师的测试中,即使是最难的扭曲字符类验证码,电脑识别的准确率也高达99.8%。
为了挡住越来越聪明的机器,验证码因此被迫进化,出现了图形验证码、逻辑验证码、语音验证码,甚至还有把几种混合而成的验证码。
不过,你受的每一次苦,也不是白费功夫。你在十秒内减少的脑细胞,其实都转移到了一个AI身上。
不只是字符类验证码,谷歌让用户辨认验证码图片中的“斑马线”“红绿灯”,也是在加强机器人的图片辨识能力,并将机器学习成果运用在自动驾驶上。
我们就陷入了这样一个循环怪圈:输入越多验证码,AI的学习能力就越强,技术的进步让更多验证码被破解,而工程师们就要被迫设计出更复杂的验证码……
验证码似已背离了初衷,成为一个难住了人类,却难不住机器的摆设。
越来越多的科技公司也意识到了这个问题,开始试图简化繁杂的验证码。
比如,你现在登录铁路12306App时,只用拖动滑块。
这样的验证码不仅是在评判你操作的结果,更多的是记录并分析你操作时的行为。电脑观察你移动滑块的速度变化,就能识别出你是不是人类。
你颤动的鼠标,对准滑块时的慢悠悠,甚至可能还要重复左右摆动几次才能对准——都是只属于人类的笨拙。
并不是它真的有读心术,而是在你勾选后,它会自动分析你在浏览该网页时的行为,包括鼠标的移动轨迹、浏览的速率等,借此分析出这些行为是否属于正常人类的操作。
至此,在这场人类与机器的比赛中,我们已不再试图证明自己更聪明,而是转向另一种策略:那不统一的行为轨迹、不精确的答案、笨手笨脚的操作,才是我们生而为人的特征。
不过,这样的隐性验证码也不是万灵丹药。在它出现后不久,加拿大多伦多大学的学者便发表论文,声称他们的机器人可以模仿人类的操作行为,顺利通过隐性验证码的测试。
1950年,著名计算机科学家图灵提出了一个思想实验:人类提出一系列问题,机器给出答案,再由人类判断对方是否为机器。
如果有30%以上的人将机器误判成人类,那么这个机器就被认为具有人类智能。
但70多年过去,人类陷入了完全相反的境地——一个个验证码,正是机器抛给人类的问题:“你是人类吗?”
这一次,审判权握在机器手中,而被验证码难住的人类,仍在用力呐喊:我不是机器人。