什么是验证码2.0
验证码2.0是阿里云推出的新一代验证码产品,广泛地应用在账号注册、短信发送、票务预订、信息查询、免费下载、论坛发帖、在线投票等交互模块,通过简单、安全、多样的交互逻辑,提供区分机器脚本和自然人的验证服务,能够缓解及防止计算机程序模拟人类用户来滥用网络资源,在提升网站资源不被恶意程序访问的防御能力的同时,保持真实的用户体验。
产品优势
相比较验证码1.0版本,验证码2.0具有如下优势:
All in One:一次集成无需更新代码,自动迭代攻防能力和验证码形态。
支持行为和语义多种验证码形态:从推理逻辑、设备数据、交互行为模型等多维度完成立体防护。
个性化配置:支持Web、H5、iOS、Android和微信小程序的多客户端接入。
完善的容灾方案:保障业务99.99%高可用。
本文档为验证码2.0的使用指南。如果您希望了解更多关于验证码1.0的信息,请参见验证码1.0用户指南。
支持的验证码形态
验证码2.0提供空间推理、滑块验证、拼图验证、无痕验证和图像复原等多种验证形态,可通过生物特征判定操作计算机的是人还是机器,从而取代传统的验证方式。
验证流程
空间推理、滑块验证、拼图验证和图像复原
无痕验证
验证时序图
空间推理、滑块验证、拼图验证和图像复原
时序图说明:
客户在客户端网页初始化验证码,应用客户端会请求阿里云服务器,获取验证码资源(例如图片、题目等)。
如果请求失败,客户可以通过应用客户端获取的请求报错信息来排查失败具体原因并进行相应调整或修复。
用户在网页完成验证码交互(例如滑块、拼图、空间推理和图像复原)和应用业务交互(例如登录、注册等)。
完成后,应用客户端会发送验证码信息和业务信息到应用服务端。
应用服务端调用VerifyIntelligentCaptcha接口后,会向阿里云服务端发起验证请求,进行风险咨询。
阿里云服务端判断验证风险,并将验证结果返回给应用服务端。
应用服务端结合业务逻辑处理业务。完成后,向客户端网页返回验证结果和业务处理结果。
客户端页面显示提示信息,进行业务处理。
如果验证不通过,验证码会刷新,流程返回步骤1。
无痕验证
时序图说明:
客户在客户端网页初始化验证码,应用客户端会请求阿里云服务器,获取验证码资源(例如图片、题目等)。
如果请求失败,客户可以通过应用客户端获取的请求报错信息来排查失败具体原因并进行相应调整或修复。
用户在网页完成应用业务交互(例如登录、注册等)。
完成后,应用客户端会发送无痕验证信息和业务信息到应用服务端。
应用服务端调用VerifyIntelligentCaptcha接口后,会向阿里云服务端发起验证请求,进行风险咨询。
阿里云服务端判断验证风险,并将验证结果返回给应用服务端。
应用服务端结合业务逻辑处理业务。
如果用户无风险,验证流程结束。
如果用户存在风险,触发二次验证。
用户在网页完成验证码交互(例如滑块、拼图、空间推理和图像复原)和应用业务交互(例如登录、注册等)。
完成后,应用客户端会发送验证码信息和业务信息到应用服务端。
应用服务端调用VerifyIntelligentCaptcha接口后,会向阿里云服务端发起验证请求,进行风险咨询。
阿里云服务端判断验证风险,并将验证结果返回给应用服务端。
应用服务端结合业务逻辑处理业务。完成后,向客户端网页返回验证结果和业务处理结果。
客户端页面显示提示信息,进行业务处理。
如果验证不通过,客户端页面会重新唤起验证码,流程返回步骤i。
相关文档
验证码2.0支持按量付费(后付费)模式。您也可以购买资源包,用于抵扣按量付费模式下的所有费用,降低费用成本。更多详情,请参见计费说明。
关于如何开通使用验证码2.0,请参见开通验证码2.0。
开通验证码2.0后,您需要在客户端和服务端接入验证码,才能使用验证码进行验证。更多详情,请参见接入指引。
在控制台添加验证场景后,您需要在使用验证功能的Web或H5页面中,集成验证码初始化代码,实现客户端接入。更多详情,请参见客户端接入(Web或H5)。
完成客户端接入后,您还需要在服务端调用VerifyIntelligentCaptcha接口,发起验证请求。更多详情,请参见服务端接入。
接入验证码2.0后,您可以通过概览页面,查询近期验证数据,实时了解验证码的防护数据。更多详情,请参见数据统计。