用滑动取代文字识别,这也许是目前最人性的验证码 | 今日最佳
天天在上网的你,肯定不会对验证码陌生。各种抽象文字、字母和数字,再加上各种神奇的配色、进一步加强干扰的线条和形状,让每一个尝试填写的人都叫苦不迭。而这一切只是为了一件事——验证是机器还是人。
但对于使用验证码技术的人和网站来说,这又是必不可少的,因为失去了验证码的入口就是恶意攻击的最佳窗口。而且各种恶意脚本也在不断进步,早期难度较低的验证码已经失效,唯一的办法就是不断提升验证码的难度,最终只能引起用户的反感。
今天提交到 Mindstore.io 上的一款产品就打算解决这个问题,它就是来自国内的极验验证(geetest)。从官方的数据看,它目前正在为 6 万家网站提供服务,日均验证次数已经超过 1 亿。
已经过时的传统验证码
当然我们也要先看看传统的验证码是怎么做的,这其中最好的例子非 12306 莫属。回顾其发展历史,验证码的变化就经历了:“简单数字——数字加字母——加减法算式——闪烁变形字母(动态码)——中间添加干扰线的变形字母——图形验证码”这样复杂的一个过程。
但需要注意的是除了最后一种,其他实际上还是对字符的识别,只不过难度在递增。最后也是被人吐槽最多的图形验证码对于机器来说的确很难解决,但同样也让用户躺枪。更不要提传统的观点:“人类可以理解图片的意思,但机器不能”,随着图形分析技术的发展,这个理论也终将会被打破。
用户感觉简单,结果背后复杂
我也亲自尝试了果壳网注册页面的验证码,整个过程就是通过移动滑块把一个拼图放到指定位置。从测试过程来看,哪怕是同一张图这个位置也是随机的,如果最终没有正确拼合是肯定不能通过的,其他似乎并没有太过复杂的验证。
这么简单的过程能够取代传统验证码么?识别出起点和终点之后用代码直接移动滑块不就好了么?事实上,滑动的开始和结束并不是关键,整个过程才是验证的关键。每个人滑动时的用户行为特征都会被收集到云端,然后通过大数据和机器学习加以判断归类。官网上表示,能够从 200 个维度来分析并且判定究竟是人还是恶意程序。
究竟这 200 个维度是什么我们不得而知,但基础的速度、加速度、以及因为人的思考而体现的特殊操作习惯应该都属于其中。这样一来,验证码就从人遵从机器的思维转变为了,机器遵从人的思维。如果你手头没有那么用户数据,也就无法去倒推其规则并且破解了,这些难以从机器理解的规则还会随着用户使用数据的不断增加而完善。
最重要的是:用户觉得简单,但又能非常有效地剔除恶意软件。
技术理念的领先还不是极验这么受欢迎的全部原因。另外一个主要原因是其更加贴近用户的服务设计。极验首页上专门有一个“安装文档”入口,提供了各种开发环境的解决方案,通过详细的指导让用户快速添加极验到自己的产品当中。
另外值得一提的是,极验更大的作为还是在移动端。不但滑动本身就是来自移动端的设计,而且传统验证码的输入对于移动设备来说更加显得复杂。
最后再来看看价格,收费等级被划分为了 5 个等级。包括免费版、个人版、企业版、旗舰版和定制版,基本涵盖了所有大小的网站。最便宜的个人版价格为每月 49 元,企业版和旗舰版的价格分别为 399 元/月和 2699 元/月。
“今日最佳”是由产品发现社区 MindStore.io 中挑选出新鲜、有趣、有启发的项目,进行分享和介绍的栏目。如想获得推荐机会,请将产品分享到 MindStore.io 上。
题图来自 Giesendesign
插图来自 极验