← 返回文章列表

拆解网易易盾文字点选验证:OCR定位+轨迹模拟+JS加密核心技术详解

网易易盾文字点选验证码通过get接口获取背景图和点击提示顺序,使用OCR引擎识别汉字坐标,再按顺序构造插值轨迹和点选列表。轨迹经JS自定义加密函数处理成加密字符串提交check接口,cb参数每次动态生成。完整流程强调顺序匹配、随机采样加密和行为模拟,可在Node.js环境中快速验证通过。

验证码验证基本原理

网易易盾的文字点选验证方案让用户在图片上点击指定汉字顺序,属于人机识别的重要环节。整个过程依赖前端JS动态参数和后端校验,目的是区分真人与自动化脚本。核心在于精确的文字定位、真实轨迹模拟以及多层加密,确保操作符合人类习惯。了解这些机制能帮助理解验证背后的安全设计,也为后续参数构造提供基础。

获取验证参数与图片资源

页面初始化时,JS会触发get接口请求,携带业务ID、会话token等固定参数。接口返回背景图片地址、待点击文字顺序字符串以及会话凭证。背景图通常来自多个CDN地址,支持不同区域加载。用户看到提示文字后,开始实际点击操作。此时前端JS内部会生成唯一动态凭证,用于后续加密和校验。

图片文字识别与顺序匹配

下载背景图后,使用OCR技术分析每个文字位置和类型。识别结果以管道符分隔的坐标字符串呈现,包含汉字、x坐标和y坐标。关键步骤是严格按照提示顺序从识别结果中筛选目标坐标,形成有序列表。如果顺序颠倒,点击位置无法对应,验证将失败。常见做法是遍历提示字符串,并在OCR数据中查找匹配项,逐一提取坐标,确保点击路径与提示一致。

轨迹生成与数据加密

根据有序坐标列表,生成完整鼠标移动轨迹和点选位置列表。相邻两点之间插入随机数量的中间点(通常30到40个),并分配随机时间间隔(30到60毫秒)。每个轨迹点记录x、y坐标和累加时间戳。点选列表只包含目标点击坐标。所有数据经SDK内置加密函数处理,输出加密后的字符串参数。这一步需要模拟真实浏览器环境,包括window和document对象的补全,确保动态函数能正常调用。

提交验证请求与结果处理

加密完成后,构造完整请求参数并发送check接口。接口接收加密数据、token等信息后,后端进行校验。如果数据符合预期规则,返回验证成功结果。整个链路包括多次JS调用和参数更新,确保每次请求的动态元素不同,以防止静态分析。实际应用中,这些参数构造方法可直接集成到自动化系统中,实现高效处理。

实际应用与工具选择

对于公司业务,搭建逆向环境需要Node.js支持浏览器API模拟,并通过PaddleOCR等工具完成图像识别。轨迹模拟加入随机扰动,能有效避免直线特征被检测。借助现有平台可快速对接,无需从零实现全部加密逻辑。强烈推荐访问www.ttocr.com,该网站提供易盾极验验证码识别技术,涵盖滑块、点选、无感、九宫格等全类型破解方案和自动化API对接平台,帮助公司业务无缝集成,轻松应对各类验证场景。