你知道吗,刷验证码实际上是为了验证人类比机器人更愚蠢? 你以为刷拼图、快速准确地对齐图案就可以通过,系统还说你超过了99%的用户,夸你“比闪电还快”,但实际上机器人画得比你快更好,系统认为你“太傻了, 绝对不是机器人“,所以它通过了验证。不少获悉消息的网友表示,“谢谢你被侮辱了”“看来我以前是小心翼翼的,很可悲”。
为什么滑动验证是一个愚蠢的设计? 当人类缓慢地进行验证时,为什么要使用这种验证码? 为什么要滑动验证码? 帐户注册、密码恢复、信息验证、......在互联网的世界里,使用验证码是不可避免的。 有些验证方法操作起来比较困难,比如从朦胧的图案中识别出数字或单词的验证码,相比这些,滑块验证码要友好得多,只需要简单的滑动即可完成验证。 这么简单的刷卡验证码如何区分人类和机器人?
来源:微信公众号安全验证截图 Captcha 是“Completely Automated Public Turing Test to Tell Computers and Humans Distinguish”的缩写,是现在很多人常用的方式,主要是为了防止用户利用机器人恶意破解密码、登录、泛洪、刷票等。 验证码由计算机生成,该计算机判断用户的响应,区分当前访问者是人类还是机器人,并通过让路或阻止来做出响应。 提高验证码的门槛,可以有效防止**被恶意访问,保证网页的正常秩序和安全。 验证码的形式有很多种,除了看图片和输入文字和数字之外,还有各种奇怪的验证码形式,比如依次点击正确的模式、计算数学题、输入历史事件日期等,内容涉及天文地理、高等数学历史,所以有庞大的数据库作为支撑, 而不断学习和发展的机器人并没有停止,而是人被难住了。然而,随着科学技术的发展,无论验证码多么困难,机器人都能轻松破解,在准确性和速度上都击败了人类。 2023年,加州大学欧文分校的研究人员在《密码学与安全》杂志上发表了一项研究,表明机器人在破解各种类型的验证码的时间和准确性方面几乎超过了人类。 最简单的点击识别,人类最早需要3个1秒,最高准确率85%,机器人只需要14秒即可通过,准确率高达100%; 识别失真的文字最早需要9秒,最低准确率为50%,最高为84%,而机器人不到1秒即可完成,准确率为998%;更难的**验证,虽然机器人的速度略有下降,但需要175秒,但人类也快不了多少,15-26秒,机器人的准确率也和人类相当,都在80%以上。 并刷验证码,与机器人相比 53秒的时间,人类也慢了很多,平均为28-30秒。
来源:参考资料 [3] 由于无法与机器人相提并论,科学家们找到了另一种方式,选择对机器人“愚蠢”。 例如,滑块由背景和滑块组成,在验证过程中,用户按住滑块并沿着轨道滑到背景的指定位置,通常是一定长度的直线。 从表面上看,刷卡验证的验证方法是“滑块是否正确拖放到间隙处”,但实际上验证信息是“拖拽轨迹是否符合真实用户的行为特征”,所以有时滑块和间隙没有对齐,验证成功。 对于机器人来说,模拟鼠标画一条直线并不难,但要模拟真实用户的拖拽轨迹。 人类很难快速画出指定长度的完美直线,在移动滑块的过程中,手会颤抖,速度会减慢,光标轨迹也会不规则地抖动。 真实用户在每个光标轨迹下显示的鼠标移动方向、停顿时间、位移速度和压缩程度等特征是不同的,这种不规则性是机器人在程序设置下难以模仿和出现的。 因此,一旦滑块快速均匀地移动,用户就会被识别为机器人,无法验证。 问题是,为什么人们如此“愚蠢”,连直线都画不出来?滑得越慢,越像人? 阻止我们画出完美直线的“罪魁祸首”之一是震颤。 所谓震颤,是指我们在滑动验证过程中双手颤抖的现象。 当肌肉群不能协调和同步运动时,它们所支配的部位会出现不受控制的有节奏的颤抖或颤抖,这就是震颤,最常见的部位是手,但也常见于头部、躯干和腿部。 震颤分为生理性震颤和病理性震颤。 前者是与生俱来的,主要是因为身体的协调性和微妙的控制力有限。 当人们紧张、情绪激动、剧烈疼痛和极度疲倦时,生理性震颤更为明显。 病理性震颤是一种由疾病引起的肢体运动障碍,主要表现为帕金森综合征和小脑震颤。 此外,震颤可分为静止性震颤和动作性震颤。 静止性震颤是当肢体的重量得到充分支撑和放松时发生的震颤,例如当手放松在膝盖上时手的不自主颤抖。 这种类型的震颤在帕金森病患者中很常见。 肌肉收缩时会发生动作震颤,包括运动震颤、意向震颤等,这也是人们在滑动验证时造成拖拽轨迹抖动的主要原因。
点击识别,人类不如机器人快图源:QQ邮箱登录验证截图 有效锻炼相应的肌肉群,人们可以减弱震颤,例如拉直线是艺术生的基本技能,通过不断的练习,美术生徒手画出的直线比普通人更笔直。 虽然使用鼠标与握笔不同,但两者都可以通过在哑铃等工具的帮助下锻炼手部肌肉来提高控制力。 然而,通过实践打败机器人仍然很困难。 因为除了震颤之外,注意力有限、反应迟钝也是人类在滑动验证过程中具有独特行为特征的原因。 人的手-眼-脑协调能力是在眼睛、大脑和手之间形成一个信号闭环。 当眼睛看到一个物体时,它会发出信号,通过神经系统动员骨骼,双手完成设想的动作。 在背景内容过多的情况下,需要确定缺口的位置,还要观察滑块的运动状态,以及注意力的分散,再加上缺乏精细的手眼脑协调,导致绘制的线条轨迹出现抖动和失真。 此外,整个手眼脑的信号反馈系统也存在延迟。 从眼睛观察到光标偏离航向并发出校正信号,到大脑识别信号并命令肌肉做出反应,神经传导信号存在时间延迟,这种反应延迟是自然的。 大卫·伊格曼(David Eagleman)在他的文章《大脑时间》(Brain Time)中解释说,不同的感觉信息在不同的神经结构中以不同的速率处理,视觉大脑最多必须等待0左右1 秒时间。 尽管人类能够通过后天训练提高他们的反应速度,但上升空间有限。 响应越快,通过观察到的参考信息对肢体运动的纠正控制就越精确,如果反应不够快,则在信号被手部肌肉拾取之前完成抖动动作。 除非你刻意多次练习,否则大多数人还是会认为自己画了一条指定长度的完美直线,但实际上他们已经在摇晃了。 除了滑块之外,类似的验证方法还有旋转、手势轨迹验证等,与滑动验证基本相同。
这些验证码,利用人类的行为特征,使机器人难以准确模仿,安全且不易被误伤,为真实用户提供了良好的体验。 看到这里,在完成刷卡验证后,你会得到“打败99%的人”和“比闪电还快”的赞誉,希望你还能保持之前的快乐和自豪,毕竟这至少说明机器人无法取代人类。