病毒|iOS 16的这项新功能,让你不用再与验证码斗智斗勇( 二 )


无论字符的变形程度再高、再厉害 , 只需用图像分割技术切到一定的颗粒度 , 再用卷积神经网络算法就能准确地识别出来 。 甚至根据一项腾讯安全在多年前的爆料信息表明 , 国内当时就已有黑产团队实现了对字符验证码98%的“爆破”几率 。
为此 , 互联网厂商也纷纷升级了验证码相关技术 。 既然纯粹的字符、图片已被攻克 , 而其核心又是区分人类与机器 , 那么验证码与相关知识的结合 , 也使得“做题家”模式开始出现 , 让用户需要根据问题去寻找验证码的正确答案 。



这一时期 , 想必有些玩家可能听过EA旗下Origin平台骰子验证码的大名 。 这个验证码要求用户从六张骰子图中 , 找到一张结果相加等于特定数字的图片 , 而且要求在限定时间里连续答对15次 。 此外 , 最“经典”的则莫过于12306的验证码识图了 , 其不仅让机器束手无策、更是难倒了许多用户 。 而这些 , 也使得好好的验证码变成了考验用户知识积累、观察能力 , 以及手速的玩意 。



显然 , 验证码技术的问题就出现在了这里 , 随着攻防双方不断在技术端的升级 , 使得其对用户的友好性已经逐渐消失 , 并变得极为“反人类” 。 同时 , 也有部分厂商借助验证码技术来实现商业目的 , 许多朋友可能遇到过谷歌、Meta、Twitter的九宫格图片验证方式 , 即“选出下图中的xxx”类型的的验证码 , 虽然表面上是让用户标识出特定物品 , 但背地里是却借助用户积累数据来训练自己的AI模型 。



因此在相当长的一段时间里 , 许多用户对于验证码可谓是厌烦透顶 。 为此 , 验证码技术再次升级为行为验证模式或者说无知识型验证 , 如今各平台常用的滑块验证就是其中的典型 , 其特色就是采集用户数据 , 并借助基于人类固有的生物特征以及操作环境信息 , 来综合决策判断屏幕前到底是人还是机器 。
比如说看起来简单的滑块验证 , 尽管看似就是将拼图拼完整 , 但是这其中的原理是人类拖动滑块通常是先快后慢 , 需要先快速拖到缺口附近、再在缺口附近进行精准校验 , 而机器则往往是匀速拖动这一滑块 。
那么问题来了 , 既然行为验证更为先进 , 为什么目前还有许多APP和网站依然在使用传统的图文验证码呢?原因其实很简单 , Web前端因为代码都是明文形式的脚本语言 , 行为验证模式的核心就是将不可信的Web前端打造成可信的客户端 , 这就需要代码混淆与行为数据加密的支持 。 然而遗憾的是 , 很多基于Web的APP或网站并没有这样的技术能力 。



无论如何 , 过去的二十年间互联网行业关于验证码的攻防 , 就一直都带有非常明显的身份特征 , 黑产方面希望攻破验证码系统来实现批量化的推送垃圾广告、机器人等等行为 , 而互联网厂商则希望用验证码技术来保护账号体系的安全和稳定 。 尽管苹果方面目前并未公开Automatic Verification这一功能的原理 , 但其无外乎还是生成对抗网络、卷积神经网络等人工智能技术的应用 。



【病毒|iOS 16的这项新功能,让你不用再与验证码斗智斗勇】诚然 , 这一自动验证功能确实能够在一定程度上 , 帮助用户从绞尽脑汁填写验证码的苦海中脱离 , 但从技术伦理的角度出发 , 这可能是一个非常危险的举措 。 毕竟在第三方开发者的视角 , 自动验证功能与黑产的自动化脚本其实并没有本质的区别 , 同样违反了验证码技术是用于区分人和机器行为的宗旨 。