验证码越来越奇葩和抽象,我都无法证明自己是人类了!
来源:把科学带回家
作者:阿娴
网购下单时,为什么总是突然出现烦人的验证码啊?
Google网站为什么总是在你需要急切查询一个问题时,跳出来要求你证明自己是人?
每天打工人发出最多的灵魂拷问:屏幕上这个字母究竟是9还是q?是vv还是w?这个格子到底算不算得上是交通信号灯、消防栓、摩托车的一部分?
这个角究竟算不算交通信号灯的一部分?!|boredpanda
这些总是阻碍我们在网络上快乐冲浪的东西,叫做验证码,全称是全自动区分电脑和人类的图灵测试(Completely Automated Public Turing test to tell Computers and Humans Apart,简称CAPTCHA),是一种用来区分上网者是机器还是人类的公共全自动程式。它的出现是为了应对故意捣乱并尝试通过暴力攻击登录网站的恶意软件,给上网冲浪设置门槛,如此一来垃圾邮件、黄牛插件和恶意攻击的爬虫程序,就被轻松挡在了网页外。
在CAPTCHA测试中,电脑会自动生成一个问题让使用者来解答,由于机器无法回答出CAPTCHA的问题,所以逻辑反推,能回答出问题的使用者即可视为人类。
早期的Captcha验证码 "smwm" ,由EZ-Gimpy程序产生,使用扭曲的字母和背景颜色梯度|Wiki
验证码从诞生到现在,主要可以归为四大类:短信验证码、语音验证码、图形验证码、问题验证码。网站后台的大数据,可以自动区分机器与正常用户,向机器下发验证码拦截。比如登陆密码时的验证码就可以防止机器通过无限尝试密码排列组合,从而恶意登录账户,盗取信息。
一般图形验证码会通过故意模糊中心部位、添加中心线、扭曲变形字母或数字等手段,使光学字符识别之类的电脑程序无法辨识出图片上的文字。对于无法看到图像的视力障碍者,替代的方法则是用语音读一段文字,当然,为了防止相应的语音辨识软件分析声音,语音内容会掺有杂音或者做出一定程度内仍可以被人类接受的变声。
研究人员还发现不同方案的验证码难度存在很大差异,authorize.net 图像验证码是最简单的,而 google.com 音频验证码是最难的。|参考资料[1]
根据斯坦福大学科学家2010年发表的一篇研究论文,普通人平均需要9.8秒才能验证成功一个初代验证码,平均28.4秒才能验证成功一个语音验证码。更重要的是,随着时间的推移,机器人和人工智能高速发展,初代验证码很容易就被那些擅长进行图形识别的机器人所破译。谷歌公司的验证码负责人曾预言,五到十年后,传统的验证码在人工智能面前将毫无阻碍。
但如今,难度系数日益增加的验证码仍然是市场的主流。
有这样的👇
??????无奖竞猜,在评论区里留下你的答案吧!|图源网络
也有这样的👇
??????|图源网络
一项研究发现,在全球100万个使用验证码的大型网站中,94%的网站都部署了Google reCAPTCHA。与此同时,也导致了许多不愉快的用户体验。比如,19%的美国人会因为遇到验证码而放弃在线交易。
(图源参考资料[2])
2018 年, Baymard Institute进行了一项用户体验研究,向1027名受试者展示了上图所示的两个验证码(取自亚马逊密码重置的验证码),并要求其准确输入两个页面上所示的字符。结果表明,受试者遇到纯文本验证码第一次输入失败的概率为8.66%,如果该验证码还必须区分大小写,那么失败率将会上升到29.45%。
许多网友也对越来越“变态”的验证码和糟糕的体验大力吐槽:上网输入验证码堪比做考题,非常费眼睛、费精力;快乐网购却因为验证码输错了七八次,而瞬间浇灭了购物欲;
(图源gifer)
从短信界面复制好验证码,等再回到验证界面后却被提示“你的验证码已失效”;验证码一旦输入错误,网站就会重新加载并自动清除已经填好的其他信息;亦或者是,页面上其他信息存在验证错误,即便是验证码已正确完成,重新提交时又会刷新出新的验证码要你重填……
不知道算不算增加了趣味性的五子棋验证码(?|截图
为了增加趣味性,减少用户糟糕体验,也有不少公司制作了一些另辟蹊径的验证码,抛弃了传统的字符型验证码“展示图形→→填写字符→→比对答案”的流程,而是采用“展示验证码→→采集用户行为→→分析用户行为”的流程。
比如谷歌开发的一款验证码,只需要点击“我不是机器人”就能通过。用户只需要产生指定的行为轨迹,不需要键盘手动输入,计算机就会根据用户点击验证框前后的行为和时间、基于在页面上的操作行为、操作轨迹,以及当前设备的指纹、所运行的环境等维度进行大数据分析,来判断是否是人在操作,极大优化了传统验证码用户体验不佳的问题。
(图源网络)
“人类发明验证码是为了反机器,现在的网站却用它来反人类。”
微信扫码关注该文公众号作者