解读滑块验证码(滑动验证码)与图形验证码的破解难度

解读滑块验证码(滑动验证码)与图形验证码的破解难度

 

首先给出观点:前沿的基于机器学习建模、多维判断的拖动滑块验证,不是简单计算滑块偏移量和按键精灵所能应付的,而图形验证码在当前不断发展的OCR、神经网络面前却越来越容易失守。

图形验证码的原理和识别,在三四年前就已经有深刻的分析,利用机器学习和机器视觉,把验证码的文字和背景分离,去除干扰线,分割字符,扭曲还原,机器就可以做到自动识别。K-Means、SVM(支持向量机)的分类效果就不错,对于扭曲,神经网络方法更是提供了很高的成功率。不过那时候节点多的大型网络,运算是比较慢的。但现在,数据量积累越来越丰富,深度神经网络模型越来越好,计算能力越来越强,最重要的是机器学习算法的从业者越来越多,不管是重叠粘连的字符,或者是物体识别,识别率的提升是自然的。
据说,有了深度学习,传统字符型验证码被破解的最大概率已经达到98%。

拖动滑块分两种情况。其余答案说的前端拼接,就不用说了,确实不容易防不住有心人。新的滑块验证码方案,验证码后台针对用户产生的行为轨迹数据进行机器学习建模,结合访问频率、地理位置、历史记录等多个维度信息,快速、准确的返回人机判定结果。针对这种方式,单纯分析调用JS是破解无效的。原因如同
@闫先森
所说,深度学习判别策略是黑盒。当然,理论上行为轨迹也可以用深度学习破解,不过还是要积累足够多的训练样本,和足够多的训练时间。

题外话,攻与防技术都是在对抗中不断升级的,无解的验证码还不存在,但防的一方可以不断提升破解成本。应用选择滑块验证,也有部分因素是因为竞争激烈的互联网很看重用户体验,拖动毕竟是趣味性交互且容易完成,而图形验证码既容易被黑客攻破,对用户也并没有那么友好——肉眼识别无趣(可能还很艰难),键盘手动输入更浪费时间,体验比较大。

 

这里分享网易云安全(易盾)的验证码方案:

易盾验证码抛弃了传统字符型验证码展示-填写字符-比对答案的流程,采用验证码展示-采集用户行为-分析用户行为流程,用户只需要产生指定的行为轨迹,不需要键盘手动输入,极大优化了传统验证码用户体验不佳的问题;

 

解读滑块验证码(滑动验证码)与图形验证码的破解难度

 

同时验证码后台针对用户产生的行为轨迹数据进行机器学习建模,结合访问频率、地理位置、历史记录等多个维度信息,快速、准确的返回人机判定结果,优化了传统验证码基于单一字符维度容易被暴力破解的问题。后台会检测破解攻击,如果有破解的情况,会自动切换到更高难度的点选式验证码;除此之外网易云还提供终极验证上行短信验证,确保验证码的安全性。

解读滑块验证码(滑动验证码)与图形验证码的破解难度

 

 网易云安全(易盾)为您提供智能验证码服务,欢迎点击免费试用

相关阅读:

验证码的作用

行为式验证码的前景

三句话读懂滑动验证码的原理

有些验证码看起来很容易但是没人做自动识别的原因分析

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101597.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • tcp拥塞控制机制

    tcp拥塞控制机制为了防止网络的拥塞现象,TCP提出了一系列的拥塞控制机制.主要包括以下几个:1:慢启动(Slowstart)2:拥塞避免(Congestionavoidance)3:快速重传(Fastretransmit)4:快速恢复(FastRecovery)5:选择性应答(selectiveacknowledgement,SACK)算法TCP的拥塞控制主要原理依赖于一个拥塞窗口…

    2022年6月24日
    37
  • 解决: Linux – git: command not found

    解决: Linux – git: command not found出错原因:服务器没有安装GIT,所以导致出错。解决方法:Centos下使用:yuminstallgit-y或者yuminstall-ygitUbuntu/Debian下使用:apt-getinstallgit-y转自:https://my.oschina.net/u/1382365/blog/490262?p=1…

    2022年5月7日
    43
  • python 生成EXE文件 并执行

    python 生成EXE文件 并执行1、电脑桌面,输入“win+R”组合键,在弹出窗口中输入“cmd”,点击确定。2、安装Pyinstaller,在cmd窗口,输入指令“pipinstallpyinstaller”进行网络安装、等待并且确认pyinstaller安装完毕3、安装完毕后,进入要生成exe文件的文件目录。使用指令“pyinstaller-Fxxx.py”生成exe文件。等待生成完毕后,回到源文件目录,在dist目录下,找到生成的exe文件,即可完成Python生成exe文件操作。用python.

    2022年6月7日
    37
  • Vue devServer.proxy代理配置详解

    Vue devServer.proxy代理配置详解constproxy require http proxy middleware module exports devServer host localhost targethost port 8080 proxy api 代理器中设置 api 项目中请求路径为 api 的替换为 target proxy api target http

    2025年8月30日
    0
  • 优化算法——粒子群算法(PSO)

    优化算法——粒子群算法(PSO)一、粒子群算法的概述二、粒子群算法的流程

    2022年6月10日
    29
  • 智能车复工日记【3】:图像处理——基本扫线和基本特征提取和十字补线

    智能车复工日记【3】:图像处理——基本扫线和基本特征提取和十字补线目录前言基本扫线 除了进入环岛状态或者坡道或者十字路口的普通扫线 基本数据和初步特征进一步特征提取 1 计算并且显示前 n 行左右线各丢失数目 不 break 和 break 的都有 2 计算左右线方差 以右线为例 a 计算右线曲率 选三个点 r start 中点 break 点 b 如果右线曲率在一定的范围 就进行右线拟合 从空白行开始计算斜率 否则则从 0 行开始计算前言图像大小 185 70 通过扫线获取

    2025年7月31日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号