江苏网信网 > 传播前沿 > 网络传播 > 正文
耳熟能详的验证码,隐藏哪些科学密码?
2020-08-12 10:49:00  来源:中国江苏网

上过网冲过浪的“老司机”都知道网站验证码,现在几乎每个网站和论坛都会有验证码的出现。

有人说,验证码保护了网站服务器和用户的隐私安全;还有人说,验证码严重影响了用户体验,是在浪费时间。那验证码到底是好是坏?验证的原理是什么?什么样的验证码才最安全?《科技周刊》记者采访计算机视觉图像领域专家,揭开验证码背后的科学密码。

验证码的诞生:区分计算机和真正的人

急冲冲地购买火车票,输入账号密码后跳出一幅九宫格要求点击指定图片验证,好不容易玩完“大家来找茬”,一看火车票已被抢光,这样的情形你是否经常遇到?对,阻碍你的就是耳熟能详的验证码。验证码的存在似乎让用户体验不佳,那它存在的意义是什么?

“现在很多网站的注册和登录都需要用到验证码,为了区分计算机和真正的人。” 南京大学信息科学博士、南京视网么信息科技有限公司创始人张帅告诉《科技周刊》记者,验证码英文“ CAPTCHA”直译就是“全自动区分计算机和人类的图灵测试 ”,而图灵测试是人工智能圈一个著名的实验,实验者询问一台机器和一个人类一些问题,如果实验者无法分辨他俩的差别,那么这台机器便通过图灵测试。验证码就是这个图灵测试的反向和变种,用来区分计算机和人类。

早在验证码出现之前,垃圾邮件满天飞,有人通过注册大量新邮件账号发送垃圾推广邮件。邮件公司封号删除的速度甚至赶不上他们注册的速度,很多人深受其害。直到有程序员发现计算机程序难以识别手写的文本,而人类可以轻易看懂,于是程序员在注册账号时设置一道门槛——必须输入“歪曲”的文本才能完成注册,用来区别计算机和真人,从此验证码登上历史的舞台。

“有了图形验证码,可以拒绝重放攻击(破坏身份认证的正确性),有效避免了暴力请求破解的威胁。在图形(数字)验证码的基础之上,慢慢演化出了滑块验证码、图像验证码、智能验证码等新的验证形式。” 张帅说,除此以外还有短信验证码,可用于对安全性要求较高的应用,比如支付宝、登录银行客户端等,可以一定程度上避免账号密码泄露、身份伪造等行为。

那电脑程序是如何判断验证码输入的背后是人类还是软件?张帅介绍,随着技术的发展,通过图像识别文字和人工智能技术,机器也具备了识别和理解验证码的能力。常见的方式是通过在图像验证码中加入噪点,来影响机器识别验证码图片的真实信息;还通过页面上的脚本运行来进一步辅助判断,来识别该操作是人类行为还是机器行为。

新式验证码有贡献:每年数字化230多万本旧书

有网友做过计算,全世界的网民一天共要输入上亿次验证码,粗略估计,人类每天输入验证码的时间已经超过了50万小时,验证码的存在是不是浪费时间和资源?

对此,从事视觉图像领域工作多年的系统架构师王之琳表示,“存在即合理,验证码并不是一无是处。”他举例,很多公益组织将旧书籍扫描成电子版时经常出现无法识别的现象。书籍的内容大部分是文本,验证码也是文本,把扫描版的书籍文本对接到验证码上,让用户来识别。

简单来说,就是打造一款新式验证码系统,系统会提供两个单词给用户来识别,这两个单词都是书籍扫描版的一部分。计算机其实已经知道第一个单词的正确答案,之所以要展示出来,是为测试用户是否是真人。而第二个单词计算机暂时无法识别。对于这第二个单词,一旦有10个人输入了同样的答案,那么这答案就会被当作是正确答案。靠这种方法,新式验证码系统每年能成功数字化230多万本旧书,为人类文化事业做出了巨大的贡献。

“用户输入验证码时,程序会不可避免地收集到用户的行为数据,通过分析和训练这些数据,得到各种用户的行为模型和习惯。” 王之琳说,输入验证码是一把双刃剑,验证用户是否是真人的同时,带来数据隐私泄露的风险。

“没有绝对的好人,也没有绝对的坏人。” 王之琳表示,一般情况下在许可协议和隐私协议中会有提到,系统会采集用户的哪些数据,用于哪些用途。但截至目前,很多时候,用户并没有权力去选择是否要分享这部分数据。

直到2018年,欧盟颁布了通用数据保护条例GDPR,才有了对个人数据的严格保护。但王之琳坦言,个人数据是很狭窄的范围,如位置、DNA、联系方式等。用户鼠标在屏幕上从左往右滑动了一次都会被电脑程序记录下来,但是这是否属于隐私行为数据在协议中很难界定,也得不到保护。而且这种隐私的泄露不仅仅存在于智能验证码的学习过程中,还存在于整个互联网。

AI越来越聪明:验证码未来何去何从

在人工智能不断发展的现在,机器能通过越来越多类型的图灵测试,并且经过了大量验证码类型的机器训练,未来的验证码还能起到效用吗?如果AI学会识别验证码并被别有用心的人利用,有哪些反制措施?

张帅认为,不管AI多聪明,验证码都不会被淘汰。他说,没有绝对安全的系统。在利益的驱动下,反验证码的技术也会不断提升。网站通过判断是否有真人操作的行为来区别人机,攻击者可以反复训练机器去模拟真人的操作来混淆校验的判断。验证码和反验证码的技术会在此消彼长中交替着前行。破坏安全的方式也会越来越刁钻,系统安全性措施会越来越严谨完善,所以不必太担心。

还有网友表示,有的验证码过于复杂,有时多次验证失败难以注册,非常影响用户体验。对此,王之琳表示,验证码已进入智能时代,操作体验已经变得简单,用户只需在页面上点击“I'm not a robot”(我不是机器人)的勾选按钮即可。但其实从用户打开页面,加载出验证码的那一刻起,校验的过程就已经开始了。通过用户在页面上的停留时间、鼠标的移动速度、位置偏移,通过浏览器信息请求头信息等共同作为参考因素,将这些复杂的数据传到校验服务器的后台进行AI分析,来判断是不是真人用户的操作。

展望未来,张帅说,目前国内验证码技术大多停留在图形图像相关方向,忽略了对于语音和无障碍访问的支持。虽然有部分网站提供了语音验证码的功能,但还是少数,他期望多关注和支撑残障人士的使用体验,提供更多形式的验证方式。

记者 王 拓 张 宣

编辑:韩震霞
版权所有:中共江苏省委网络安全和信息化委员会办公室
备案号:苏ICP备20035922号
技术支持:中国江苏网