服务介绍

易盾验证码是一个用于区分人和机器的通用验证码组件。传统的字符型验证码由于存在破解率高,用户体验不友好等问题,已不适用于现今的互联网环境。易盾验证码抛弃了传统字符型验证码展示-填写字符-比对答案的流程,采用验证码展示-采集用户行为-分析用户行为流程,用户只需要产生指定的行为轨迹,不需要键盘手动输入,极大优化了传统验证码用户体验不佳的问题;同时验证码后台针对用户产生的行为轨迹数据进行机器学习建模,结合访问频率、地理位置、历史记录等多个维度信息,快速、准确的返回人机判定结果,优化了传统验证码基于单一字符维度容易被暴力破解的问题。

使用场景

易盾验证码可以应用于任何需要区分人机访问的模块,例如注册、登录、发帖、领优惠券、投票等。

可靠性

后端接口稳定性99.99%

性能

接口响应时间50-150ms

兼容性

易盾验证码兼容多个平台浏览器,支持的浏览器列表

PC端浏览器

Chrome

Firefox

Safari

搜狗/猎豹/QQ浏览器/360极速浏览器

IE7/8/9/10/11

移动端浏览器

Safari

UC浏览器

// TODO 待QA补充

开发文档

术语解释

验证码id(captcha_id)

验证码唯一标识,公开可见,用于区分不同的验证码使用场景,如登录、投票、发帖等。

验证码key(captcha_key)

验证码id对应的私钥,不可公开,用于和易盾后台传输时进行签名校验,防止伪造请求。

验证

用户拖动/点击一次验证码拼图即视为一次“验证”,不论拼图(图片验证码)/点击是否正确。

二次校验

验证数据随表单提交到产品后台后,产品后台需要将验证数据发送到易盾后台做二次校验,目的是核实验证数据的有效性。

组件工作流程

易盾验证码整体的工作流程如下

1. 用户访问产品应用页面,请求显示易盾验证码

2. 用户按照提示要求完成易盾验证码拼图/点击

3. 用户提交表单

4. 产品后台将用户提交表单的验证码相关数据发送到易盾后台进行二次校验

5. 易盾后台返回校验通过/失败

服务流程示意图

组件接入流程

前端接入

引入易盾验证码相关javascript

<script src="http://c.dun.163yun.com/js/c.js"></script>

如果接入站点为https站点,需要把地址修改成

<script src="https://c.dun.163yun.com/js/c.js"></script>

初始化验证码组件(最简配置)

<script>var opts = {"captchaId": "YOUR_CAPTCHA_ID", // 这里填入申请到的验证码id"width": 320 // 验证码组件显示宽度}NCaptchaInit(document.getElementById('ncaptcha_id'), opts);</script>

前端配置参数说明

参数

参数类型

默认

说明

captchaId

string

""

验证码id

width

number

320

验证码组件显示宽度

initCallback

function

null

验证码组件初始化完成回调函数

verifyCallback

function

null

验证码验证结束回调函数

captchaId

验证码唯一标识,公开可见,用于区分不同的验证码使用场景,如登录、投票、发帖等。

width

验证码组件显示宽度,单位px

initCallback

验证码组件初始化完成回调函数

initCallback:function(){// 示例console.log("易盾验证码初始化完成!");}

verifyCallback

验证码验证结束回调函数,用户拖动/点击验证码后,会调用这个回调函数,回调函数可以针对不同的验证结果做出不同的处理。

"verifyCallback":function(ret){// 示例if(ret["value"]){// 回调参数的value值表示验证结果true:验证通过 false:验证失败$("#submit-btn").removeAttribute("disabled");// 完成验证后再启用提交按钮}}

后端接入

用户提交表单(post-form)到产品应用后台,会携带一个验证码相关的参数,参数名为

NECaptchaValidate

产品应用需要将该参数传给易盾验证码后台做二次校验,以确保该次验证是有效并且是最近完成的。

二次校验接口

http://c.dun.163yun.com/api/v1/verify

请求参数

参数

类型

必填

备注

id

string

Y

captcha_id

validate

string

Y

提交二次校验的验证数据,即NECaptchaValidate值

user

string

N

用户信息【选填】

signature

string

Y

签名信息,见签名计算

签名计算

// TODO 这里直接参考易盾反垃圾的签名生成说明文档

响应参数

参数

类型

必填

备注

result

boolean

Y

二次校验结果 true:校验通过 false:校验失败

error

int

Y

错误代号

msg

string

Y

错误描述信息

FAQ

为什么需要二次校验?

用户每完成一次验证码验证(拖动拼图),易盾验证码后台会记录该次验证相关的验证信息,并且会对这些验证信息做衰减失效处理(目前默认为10分钟),二次校验是为了确保这次验证是最近10分钟内完成的。如果不做二次校验,那么将可能导致攻击者预先人工完成大量验证码校验,并集中一次提交的攻击行为。

文章来自:网易云

相关导读:

滑块验证码(滑动验证码)相比图形验证码,破解难度如何?

关于网易云验证码的服务介绍

关于网易云验证码V1.0版本的服务介绍相关推荐

  1. 团队工作室展示官网源码带后台-源团V1.0版本

    介绍: 源团V1.0版本-一款团队展示官网,该项目适用于团队/工作室等类型,源团程序是一款团队展示性质的官网程序,小白式安装,把程序上传到主机或者服务器内,设置好伪静态[Thinkphp]和运行目录[ ...

  2. python 桌面歌词_GitHub - Python-Z/musicbox: 网易云音乐命令行版本

    NetEase-MusicBox 感谢为 MusicBox 的开发付出过努力的每一个人! 高品质网易云音乐命令行版本,简洁优雅,丝般顺滑,基于Python编写. 功能特性 320kbps的高品质音乐 ...

  3. android 换肤 视频,网易云音乐4.0版体验:自定义换肤和短视频来了

    原标题:网易云音乐4.0版体验:自定义换肤和短视频来了 日前,网易云音乐的iOS和Android更新到了4.0版本,对于期待更多创新功能的忠实粉来说,这着实是一个好消息.在新版本到来之后,不少人开始发 ...

  4. android 网易云短信,求助:网易云音乐v6.0安卓版,如何关闭“自动匹配曲目信息”?...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 如题.请教各路大神,有谁知道如何关闭 手机端网易云音乐的"自动匹配曲目信息"这个功能? (我用的是安卓手机端的网易云音乐 v6.0版. ...

  5. 5万字的《Java面试手册》V1.0版本,高清PDF免费获取

    利用空余时间整理了一份<Java面试手册>,初衷也很简单,就是希望在面试的时候能够帮助到大家,减轻大家的负担和节省时间. 前两天,朋友圈分享了这份这份面试手册的初稿,再几位同学的提议下,对 ...

  6. 内网环境部署zabbix5.0版本监控(一)

    内网环境部署zabbix5.0版本 首先需要在有网的环境先做一个yum源本地配置zabbix5.0.mysql5.7.epel源 Zabbix: rpm -Uvh https://repo.zabbi ...

  7. Hackintosh Dell vostro 5460 alpha v1.0 版本

    Hackintosh Dell vostro 5460 alpha v1.0 版本 基本信息 机器型号: DELL vostro 5460 (i3-3120m) Mac版本: Mavericks 10 ...

  8. 开放原子开源峰会 - SmartIDE正式开源并发布v1.0版本丨IDCF

    在上周刚刚结束的[2022开放原子全球开源峰会]上 SmartIDE作为正在进行开放原子基金会TOC审核的开源项目,在云原生论坛上向全球的开源开发者介绍了下一代云原生CloudIDE的全新使用体验,并 ...

  9. 企业综合管理系统 V1.0 版本 使用说明

    使用说明 企业综合管理系统 V1.0 版本 数据库:Office Access SqlServer 2005 现2.0版本己完成正在编写使用说明 智能综合管理系统2.0版本 使用说明 系统简介: 本人 ...

最新文章

  1. u盘盘符不显示 win10_学会这三招,在win10上安全弹出U盘,保证数据不损坏
  2. Nova — 虚拟机密码修改
  3. Maxon Cinema 4D Studio S22.114中文版
  4. spring Boot 2.1.5 (1)---安装环境
  5. Android-opencv之CVCamera (转载)
  6. android开发分页查询,Android开发中实现分页效果的简单步骤
  7. 联想记忆计算机网络,联想记忆网络,associative memory network,音标,读音,翻译,英文例句,英语词典...
  8. 计算机密码忘了 开不了机怎么办,开机密码忘了怎么办
  9. 重发布直连路由到 OSPF
  10. MATLAB 中跳出if条件判断
  11. Windows7安装教程
  12. 安卓开发(简单打开前置摄像头并显示)
  13. 百度运维部—趣味运动会
  14. Windows控制台的打开方式
  15. Python通过MQTT协议上传物联网数据给ThingsBoard
  16. Octopus Deploy云程序部署,真正正确地完成其工作
  17. B2 - H - Historic Exhibition(二分图匹配+优化建图)
  18. 小米8se刷android7系统,小米8SE Flyme8系统刷机包(系统刷机最新固件升级包)
  19. matlab仿真及分析,CSMACD性能分析及MATLAB仿真.pdf
  20. 2022T电梯修理考试模拟100题及答案

热门文章

  1. 论软件体系结构风格及其应用
  2. 设计模式学习笔记(六) - 组合模式 Composite (树状结构专用模式)
  3. 求arcsecx的层数
  4. python使用matplotlib制作画板和轴
  5. 河南职称计算机证书领取,河南省职称改革领导小组办公室关于启用新版《河南省专业技术人员职务聘任证书》有关问题的通知...
  6. C++11知识点简要复习(一)
  7. Word取消默认文档只读
  8. PAR(Projected AR)投影增强现实系统使用Vuforia
  9. 使用 Excel 数据透视表深入研究数据分析
  10. 泛统计理论初探——余弦距离简介