1 什么是验证码?
验证码(CAPTCHA)是“Completely Automated Public Turing test to tell Computers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序。可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上用验证码是现在很多网站通行的方式,我们利用比较简易的方式实现了这个功能。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。——百度百科
简单来说,验证码是检测用户是不是人类,且判断其行为是否异常的一种方式。
2 传统验证码
传统验证码是让我们手动输入图形中的数字、字母、汉字或者某些简单问题的答案。但为了防止恶意程序的破解识别,往往这些图形会进行变形处理,同时还显示出一些干扰元素,如线条、斑点、近义词等等。最终,我们看到的验证码比当下流行的二维码还要丑的抽象。看不清,换张图!这样的无奈之举,我们已经受够了。
3 新验证2.0
传统验证是建立在复杂图形+文本输入基础上,体验欠佳。稍动脑筋,改复杂图形为易识别图形,改文本输入为鼠标点击或拖拽,即可升级验证体验。
3.1 特例12306
12306是以点击方式进行验证,看图识物。可缺陷在于图片不清晰,部分图片难以作出正确判断,即便我已是真实的用户。上图第一行左起第2张图里有锅铲吗?我已老眼昏花,你还是饶了我吧。
除了12306这种奇葩的验证以外,还有哪些体验友好且趣味的验证呢?我们来搜罗一下。
3.2 极验验证
极验验证采用鼠标拖拽方式进行拼图,拖动一次即可。拖拽前后的图案和提示简单有趣呆萌,有奥特曼打小怪兽的快感。
3.3 sweetCaptcha
同极验验证一样,专注于验证码服务,采用拖动行为验证。上图提示把奖牌拖动到球上面进行验证。
3.4 are you a human
国外验证服务平台,其验证动画效果很棒。来,放松一下,我们玩个小游戏。
3.5 淘宝验证
作为国内最大购物网站,淘宝网在用户体验和安全上都足够重视。目前淘宝的注册验证采用的是拖拽+点击两次验证。其拖拽行为类似iPhone屏幕解锁效果。
3.6 腾讯验证
在QQ安全中心修改密码时,我们会发现腾讯采用了新的点击验证方式。点击时通过点击区域和点击顺序进行安全验证。
3.7 点触验证
点触验证和极验验证同属于国内验证服务商,其验证方式要更丰富一些,有图文、图标、拖动、移动端多种形式。上图的演示效果是不是和腾讯验证有一些相似之处?
3.8 谷歌验证 Google reCAPTCHA
验证码是检测用户是不是人类,行为是否异常的一种方式。那么,能不能智能一点。Google reCAPTCHA 给出了现阶段的最佳方案:仅通过用户的一次点击动作以及对浏览器环境的分析,就足够确定绝大多数真实用户。而对于可疑用户,才需要回答验证问题。
如果再根据可疑用户的危险程度,给出不同难度级别的验证问题,就更完美了。下面是风车视频翻译的Google reCAPTCHA 介绍视频,让我们来感受下Google的技术魅力。
4 总结
移动端验证码是什么现状?显然我们人手一部手机,发个短信验证一下即可,要不然你的手机短信功能还有什么用呢?社交APP的出现让手机短信边缘化,收收验证码也算是发挥余热。
随着科技的不断发展,终有一天验证码会消失,但验证不会消失,验证在云端,你是人还是机器?你是什么样的人?在前往未来的云端验证过程中,我们是不是应该先换掉那些丑陋落后的传统验证码,让新的验证体验更普及更方便于每一位用户呢!