验证码作为人机交互界面经常出现的关键要素,是身份核验、防范风险的重要组成部分,广泛应用网站、APP上,在注册、登录、交易、交互等各类场景中都发挥着巨大作用。 验证码的全名是全自动区分计算机和人类的图灵测试,核心利用人类可以用肉眼轻易识别图片里
验证码作为人机交互界面经常出现的关键要素,是身份核验、防范风险的重要组成部分,广泛应用网站、APP上,在注册、登录、交易、交互等各类场景中都发挥着巨大作用。
验证码的全名是“全自动区分计算机和人类的图灵测试”,核心利用“人类可以用肉眼轻易识别图片里的文字信息”,诞生于21年前。2002年,路易斯·冯·安(Luis von Ahn)斯和他的小伙伴在卡内基梅隆第一次提出了“验证码(CAPTCHA)”这样一个程序概念。该程序基于重要假设:提出的问题要容易被人类解答,并且让机器无法解答。
验证码拥有真人识别、身份核验的功能。
1、真人识别。真人识别的应用主要出现在网站平台或App的注册、登录界面,用于判断操作者是真人还是机器程序。主要是通过识别、输入区分出操作者的真伪。真人识别是验证码出现的初衷,也是验证码的首要价值。
2、身份核验。身份核验的应用主要出现在账户登录状态下,操作者在服务申请、重要信息发送、隐私信息修改、服务等界面,用于核实账号操作者真伪。主要是基于账户预留信息与操作者提交信息比对,从而实现操作者的身份进行二次核验或确认。
验证码保障账户安全等方面具有重要作用,但对于用户来说,验证码带来干扰、浪费时间、影响体验。市面上哪家的网络验证码既能够保障安全,又不影响用户体验呢?
五家主流验证码评测
评测目标:腾讯云验证码、阿里云验证码、顶象无感验证、极验验证码、易盾验证码。
数据来源:5个产品的官网、公众号。
评测指标:验证方式、前端接入方式、服务接入方式、个性化定制、验证字库设置、风险预警、风险处理、数据查看、 与风控协同、部署方式等。
1679301025671376.png
1679301036454398.png
1679301044111317.png
1679301059141720.png
验证方式对比——顶象拥有13种
原则上,验证方式越多越复杂安全性越好。不过但是凡事都有张有弛,因为机器识别麻烦的,人同样也麻烦。因此多种验证方式轮换,方便业务和用户智能选择。
腾讯云验证码拥有4种验证方式:滑动拼图、文字点选、VTT空间语义、无感验证;
阿里云验证码拥有3种验证方式:滑动验证、无痕验证、智能验证;
顶象无感验证拥有13种验证方式:智能随机、滑动拼图、文字点选、图标点选、语序点选、刮刮卡、空间语义、乱序拼图、旋转验证、面积验证、差异点击、语音验证、字体识别、滑动还原;
极验验证码拥有8种验证方式:一点即过、滑动拼图、文字点选、图标点选、语序点选、消消乐、五子棋、九宫格;
易盾验证码拥有9种验证方式:智能无感、滑动拼图、文字点选、图标点选、推理拼图、语序点选、空间推理、语音验证、短信上行验证。
支持的服务平台对比——五家不分彼此
平台支持的越多,应用愈加官方。用户使用网络的平台除了WEB、移动还有小程序。支持的越多,用户体验的越多。在支持的平台方面,5家验证码均相差无几。
腾讯云验证码:Web、Android、iOS、(腾讯)小程序;
阿里云验证码:Web、Android、iOS,不支持小程序;
顶象无感验证:Web、Android、iOS、小程序(腾讯/阿里/百度);
极验验证码:Web、Android、iOS、小程序(腾讯/阿里/百度/字节/快手);
易盾验证码:Web、Android、iOS、小程序(腾讯/阿里/百度/字节)。
支持的技术语言对比——腾讯云最多
Java广泛用在安卓、iOS、视频游戏、桌面GUI和软件开发上,PHP主要面向Web及数据库开发,.NET适用软件、Web、云应用、移动应用、桌面应用开发,C++主要用于软件、搜索引擎、操作系统和视频游戏的开发,Python适用Web、视频游戏、桌面GUI开发,Go适用服务器、分布式系统、数据库代理器、中间件、开平台、游戏服务端开发,nodeJs适用前端工具、辅助工具类以及api中间层、代理层的后端开发,Ruby适用于Web应用、 Web服务器的开发,C#适用于Windows应用、企业级业务、软件开发。
支持的编程越多,支持的技术平台也就越广泛。在技术语言支持上,腾讯云验证码支持8种技术语言,支持类型最多。
腾讯云验证码支持8种语言:Java、PHP、.NET、C++、Python、Go、NodeJS、Ruby;
阿里云验证码支持6种语言:Java、.NET、PHP、Python、Go、NodeJS;
顶象无感验证支持6种语言:Java、PHP、C#、Python、Go、NodeJS;
极验验证码:Java、PHP、C#、Python、Go、NodeJS;
易盾验证码:Java、PHP、C#、Python、Go。
字库字体设置对比——顶象最佳
验证码由图片、文字、字符、数字等任意组合组成。很多企业希望设置专属的验证图片文字,不仅能够提高安全性,更进一步宣传推广企业。在个性化配置方面,顶象提供的功能最全,不仅可以进行文字、字体设置,更提供背景图设置,而且安全配置能力有保障。
腾讯云验证码:功能一般(无字体设置,安全配置能力弱;
阿里云验证码:无渠道管理;有业务场景选择,可编辑管理;
顶象无感验证:功能丰富(有字体/词语库/背景图集、安全配置能力好);
极验验证码:功能丰富(无字体/词语库、有背景图集、安全配置能力弱);
易盾验证码:功能一般(无字体/词语库、有背景图集、安全配置能力缺失)。
风险预警功能对比——仅顶象极验符合
众所周知,验证码是提供人机验证、真伪识别,能够拦截异常操作,对风险及时预警。不过三家验证码并不支持风险预警。仅有顶象与极验支持风险预警。
腾讯云验证码:无;
阿里云验证码:无;
顶象无感验证:系统监控丰富,有预警功能;
极验验证码:无系统监控、有预警功能;
易盾验证码:无。
安全策略配置对比——顶象独有
不仅是真及时别、真伪校验,对于正常操作、异常行为,采取不同能够智能判断,这就需要集成安全策略。顶象验证码独有安全策略,对于合法用户无需验证即可通过,对于可疑操作进行二次验证,对于风险操作直接拦截。
腾讯云验证码:无;
阿里云验证码:无;
顶象无感验证:有,天然就具备决策系统的部分核心能力;
极验验证码:无;
易盾验证码:无。
数据查看对比——顶象与极验拔得头筹
昨天的风险来自哪里?半夜的防御效果如何?安全运维人员需要实时的安全报告。顶象与极验提供了全面的数据分析报告,并提供了恶意IP的TOP和恶意攻击类型TOP列表,帮助安全人员快速定位风险源头。
腾讯云验证码:功能一般,基础统计;
阿里云验证码:功能较弱,最基础统计;
顶象无感验证:功能完善,有IP分布&风险排行&top 10数据;
极验验证码:功能完善,有IP分布&top10数据;
易盾验证码:功能尚可,有IP区域分布,没有风险排行和top 10数据。
风险处理能力对比——顶象最佳
验证码主要为业务提供安全保障,如果被破解、绕过则会失去作用,因此验证码自身的安全性非常重要,针对恶意破解和入侵攻击,顶象验证码独有集成验证魔方,10s内完成配,60s即可生效,可实现快速攻防对抗。
腾讯云验证码:较弱;
阿里云验证码:无;
顶象无感验证:较强,有针对性设计(验证魔方、应急策略等功能);
极验验证码:一般,有相关设计(紧急处理);
易盾验证码:无。
协同风控系统对比——顶象独有
攻防节奏加快、安全事件频发、欺诈手段复杂多变。验证码无法单点防御需要风控体系的联防联控安全机制,以快速精准有效狙击威胁。由于顶象无感验证与风控系统无缝融合。
腾讯云验证码:无。
阿里云验证码:无;
顶象无感验证:天然就具备防控链路融合能力,支持更灵活;
极验验证码:支持;
易盾验证码:无。
部署方式对比——顶象极验易盾均支持两种模式
SaaS部署快,私有化部署客户专有资源,目前大部分验证码支持SaaS和私有化部署。
腾讯云验证码:SaaS部署;
阿里云验证码:SaaS部署;
顶象无感验证:SaaS部署、私有化部署;
极验验证码:SaaS部署、私有化部署;
易盾验证码:SaaS部署、私有化部署。
最后是试用开通申请体验对比——顶象最快
腾讯云验证码:无电话联系,自助服务,提工单;
阿里云验证码:无电话联系,自助服务,提工单;
顶象无感验证:注册成功就即可免费试用,30分钟内有沟通电话。
极验验证码:注册后需等审核,30分钟内有电话联系,采集需求后转给客户经理,大致1小时内再次接到电话,然后继续走注册流程才能登录后台开通服务。
易盾验证码:需要先等试用审核通过,第2天上午也无人联系(不知是我一个人出现该情况,还是普遍现象?),然后一直是试用审核中状态。
整体评测对比是参考了各厂商官网、公众号等文章资料,也结合了自己对验证码实际的使用经验和研究,以及身边朋友的反馈,难免有一定局限性,欢迎大家斧正。
本文源自:南早网