当我们打开腾讯的登录页面,可以发现曾经熟悉的登录验证码变了样。
网页端登录QQ,验证码阶段不再是输入正确的数字、英文单词或者移动滑条,而是需要手动选出一张或者两张符合文字描述的、由AIGC生成的图片。
AIGC,即人工智能生成内容,是AI技术的一个具体应用方向。它利用AI技术来生成各种形式的内容,如文本、图像、音频、视频等。AIGC通过训练模型,让机器学习并理解大量数据,然后基于这些数据生成新的、具有创造性的内容。
对用户来说哪种形式的验证都是流程的一环而已,填写正确数字和选择符合描述的图片区别不大,甚至这种由AI生成的图片还更直观一些,有时随机生成的数字、字母,刷新三四次都依然看不清写的是什么。
但对网络安全来说,AI的加入有着重大意义。单单是验证码系统,就曾因为AI发展的需要大幅度改变形态,现在又和AIGC紧密结合到一起,进入了新阶段。
验证码的前世今生
验证码英文叫做 “ CAPTCHA ”,是 “ Completely Automated Public Turing test to tell Computers and Humans Apart ” 的缩写,翻译过来是“ 全自动区分计算机和人类的图灵测试 ”。
从名称可以看出,验证码本质就是一种图灵测试,主要为了区分在电脑前的是人还是机器人(程序)。
21世纪初互联网兴起,大家发现除了能在网上看到各种新奇的消息外,还回收到非常多“来者不善”的垃圾信息,当时最出名的就是垃圾邮件。有居心不良者通过程序,利用当时邮件注册要求不高(无需验证实名、电话号码等)的漏洞,7×24小时无休止地注册大量账号、不断发送垃圾邮件,为当时的上网冲浪选手带来了极大困扰。
卡内基梅隆大学教授路易斯·冯·安(Luisvon Ahn)察觉到程序很难像人一样识别歪歪扭扭的英文单词、数字,如果为注册邮箱、发送邮件设置门槛,要求必须根据歪曲的字符或数字来输入正确的答案才能进行下一步操作,就可以防止程序大量注册邮箱账号发送垃圾邮件。
于是,路易斯成立了CAPTCHA公司,推出了最早的验证码系统。
但真人填写验证码时辨别歪歪扭扭的英文字母也很费时间,有人抱怨每天都会浪费大量时间在填写验证码上,就像我们小学老师爱说的:
“每个人浪费1秒,一百万人就是一百万秒”。
此时路易斯想出了另一个天才主意,将真人填写验证码的时间“废物利用”。当时正值书籍、报刊需要大量扫描电子化的时代,但报刊所使用的英文艺术字,对电脑程序、扫描仪来说简直是鬼画符,根本看不懂。路易斯·冯·安就将验证码系统上毫无意义的英文字母,换成了海量从书籍报刊上扫描的、难以识别的英文单词,让用户帮忙识别。
就这样,reCAPTCHA诞生了。
这是一个功德无量的决定。2007年推出之初,reCAPTCHA每天都能录入3000万个字符;2008年,这个数字飙升到了6000万个。在媒体量子位的报道中,现在全世界每天都有2亿个字符通过 reCAPTCHA录入,相当于人类15万小时的工作量。
路易斯在接受媒体TheHustle采访时这样评价 reCAPTCHA:“我创造了一个系统,以十秒为单位,数百万小时为增量,来利用世界上最宝贵的资源:人的大脑。”
迄今为止, reCAPTCHA已经录入了从1851年至今的所有《纽约时报》,共计1300万篇文章。除《纽约时报》外,reCAPTCHA还数字化了超过2500万本书,而全球的图书数量约为1.3亿本。
验证码和AI的不解之缘
reCAPTCHA的成功启发了谷歌,萌生了利用验证码去完成另一个大项目的念头。2009年,Google以大约2780万美元的价格收购了reCAPTCHA,2012年开始,谷歌陆续将自家街景中拍到的门牌、路牌、红绿灯、自行车、公共汽车等加入到验证码中让用户根据指令选择正确的答案,让用户对程序难以识别的图像进行标注,提高AI的识别能力。
在第一轮验证中,验证码系统已经知道正确答案,如果用户能做对,系统会将该名用户判定为真人;之后验证码系统会放出第二、第三组图片,里面可能会包含一些AI还没有识别出来、需要标注的图。如果10个真人用户都在同一个问题中选择了相同的答案,那么系统就会将这张图片标注为正确答案。
在每天调用千万次、过亿用户的训练下,谷歌AI的识别率显著提高,运用了谷歌 AI 技术的无人驾驶汽车 Waymo,已经在自动驾驶领域处于遥遥领先的地位,被称作是世界上最可能最先到 L5 级别( 完全自动驾驶 )的公司。
谷歌更是毫不忌讳地在reCAPTCHA官网上写明了,他们在利用验证码系统集用户之力标注数据、训练AI。
图源:reCAPTCHA官网
目前reCAPTCHA已经将大部分网站的验证码升级为体验更好的无感验证,技术原理是验证系统会利用AI追踪分析用户的鼠标键盘的轨迹,结合分析浏览器数据,来综合判定用户是不是机器人。这样我们不用再费心力去辨别眼花缭乱的图像或者歪歪扭扭的文字,只需要点击一下“我不是机器人”,系统就能为你正名。用户们帮谷歌训练了那么久的AI,总算能得到一些好处。
新时代,验证码上的AI怎么玩?
不过reCAPTCHA的“我不是机器人”验证码目前还是独家专属,只覆盖了约65万个网站,没有和reCAPTCHA合作的公司,只能继续使用传统“选择正确图片”的图片验证码或“移动滑条”的验证码。
图片验证码需要用到的图片资源有限是一大问题,更重要的是一些灰产同样可以通过人工标记打码的方式,协助黑客程序进行穷举,如果验证码图片库更新不够快、数量不够多,就容易被撞库。
因此,进入了AI新时代后,AIGC技术在验证码系统上更有妙用。当前AIGC每天就可以根据不同的提示词为验证码系统生产超过43万张的图片,每张都不完全一样,能大幅提高软件破解验证码的难度;相比传统的街景、实拍图等图片验证码素材,AIGC生成的图片成本更低效率更高,也无需担心侵权问题。
另外基础的图片选择验证码,实际上可以视为一个目标检测的问题,对于机器视觉来说并不困难。但若改为给定一句文字描述,“找出九宫格中符合该描述的图片”,就可以将目标检测升级为语义匹配,对于机器而言,识别难度提升了多个数量级。AIGC生成内容本就需要提示词,不再需要针对图片另外想问题,和语义匹配验证码系统有天生的契合性。
无论是reCAPTCHA的“我不是机器人”验证码,还是基于AIGC的语义匹配验证码,AI的加入为提高验证码的安全性、易用性体验作出了极其重要的贡献。今天能在众多网站安全快速地注册、浏览,邮箱和站内私信能避免垃圾信息的轰炸,他们居功至伟。
另一方面,从公司层面,效仿谷歌请海量用户们免费为AIGC内容做内容标注,也是诱人的选择。
毕竟从现实角度来考虑,常规方式训练AI、做数据标注实在太费钱了。
当前做数据标注主要分为机标和人标两种。机标是指机器学习算法对数据进行标注,这种方法的优点是速度快、成本低,缺点是标注结果准确度较低。而人标则是由名为AI训练师或数据标注师的工作人员对数据进行标注,部分人还会参与调整提示词。这种标注方式的优点是标注结果准确度高,但耗时耗力,成本较高。
有媒体指出,人标的成本经历了一轮下降后,依然接近数据量的十分之一,如果需要处理1000万级别的数据,就可能需要100万元的人力、租金、设备成本。如果将AIGC生成的图片放到验证码上让用户进行标注,不仅能得到高准确度的标注结果,省下的钱还会是一笔可观的数字。
只不过“让用户帮忙训练AI”这件事也得有限度。像谷歌这样让用户成为免费劳动力,已经惹怒了部分人,他们认为谷歌让几百万人帮他们干活,然后不花一分钱是不合适的;其他公司如果也有意借用验证码系统来让用户无偿劳动,最好关注一下用户对此的感受和接受程度。