12306验证码破解思路分享


Posted in Javascript onMarch 25, 2015

一个12306验证码破解思路,
图片采集 + 概率

//分析:
1. 单次验证码里面有8个图片,类型最多8种,最少不太确定
2. 8个图是规则排列,可以很容易分隔
3. 图片库应该是有限的,可以采集,计算hash入库,这里需要关联相同类型图片
(比如  “杯子”,“刷子”等)
备注:这里的图片hash并不是md5,有很多算法,自行搜索吧。
 
//下面,我假设图片已经采集好了,分类也完成了,开始进行识别:
1. 选一张验证码,分隔成8个图片,分别计算hash,然后查询 这些hash对应的
类型(比如  “杯子”,“刷子”等),这里 假设图片识别正确率 100%
 
2. 随机选择一个上一步中查询到的类型,点击相应位置。 这里不需要识别上面的
汉字,按概率来说,极端情况,8个图片都不同,随机选择正确率 12.5%。于是,
理论上尝试8次以内,就能成功登录。
 
//难点:
1. 麻烦的可能是要分类,需要将相同类型的图片关联起来
 
//一些增加识别难度的建议
1. 图片中加入线形干扰,或者是 扭曲图片
2. 不规则排列8个图片,使之难以分割
 
// 仅仅凭借以往经验的一些思路,尚未实践。欢迎吐槽...

以上所述就是本文的全部内容了,请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

Javascript 相关文章推荐
Javascript 面向对象之重载
May 04 Javascript
21个值得收藏的Javascript技巧
Feb 04 Javascript
怎么判断js脚本加载完成
Feb 28 Javascript
javascript在网页中实现读取剪贴板粘贴截图功能
Jun 07 Javascript
AngularJS入门教程之Hello World!
Dec 06 Javascript
jQuery学习笔记之jQuery+CSS3的浏览器兼容性
Jan 19 Javascript
如何利用Promises编写更优雅的JavaScript代码
May 17 Javascript
AngularJS实践之使用ng-repeat中$index的注意点
Dec 22 Javascript
Vue.js中数据绑定的语法教程
Jun 02 Javascript
微信小程序chooseImage的用法(从本地相册选择图片或使用相机拍照)
Aug 22 Javascript
layui自定义验证,用ajax查询后台是否有重复数据,form.verify的例子
Sep 06 Javascript
解决antd的Form组件setFieldsValue的警告问题
Oct 29 Javascript
jQuery获得包含margin的outerWidth和outerHeight的方法
Mar 25 #Javascript
jQuery获得document和window对象宽度和高度的方法
Mar 25 #Javascript
jQuery设置指定网页元素宽度和高度的方法
Mar 25 #Javascript
jQuery使用load()方法载入另外一个网页文件内的指定标签内容到div标签的方法
Mar 25 #Javascript
Jquery实现鼠标移动放大图片功能实例
Mar 25 #Javascript
jQuery延迟加载图片插件Lazy Load使用指南
Mar 25 #Javascript
jQuery实现购物车计算价格功能的方法
Mar 25 #Javascript
You might like
磨咖啡豆的密诀
2021/03/03 冲泡冲煮
有关PHP中MVC的开发经验分享
2012/05/17 PHP
PHP后期静态绑定之self::限制实例分析
2018/12/21 PHP
thinkPHP3.2使用RBAC实现权限管理的实现
2019/08/27 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
asp javascript 实现关闭窗口时保存数据的办法
2007/11/24 Javascript
JavaScript Timer实现代码
2010/02/17 Javascript
contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2011/09/13 Javascript
jQuery-serialize()输出序列化form表单值的方法
2012/12/26 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
JS实现的通用表单验证插件完整实例
2015/08/20 Javascript
Bootstrap 折叠(Collapse)插件用法实例详解
2016/06/01 Javascript
详解基于Angular4+ server render(服务端渲染)开发教程
2017/08/28 Javascript
JavaScript数据结构之栈实例用法
2019/01/18 Javascript
ES6 Proxy实现Vue的变化检测问题
2019/06/11 Javascript
JS实现的简单tab切换功能完整示例
2019/06/20 Javascript
15个简单的JS编码标准让你的代码更整洁(小结)
2020/07/16 Javascript
python生成随机验证码(中文验证码)示例
2014/04/03 Python
基于python编写的微博应用
2014/10/17 Python
python中闭包Closure函数作为返回值的方法示例
2017/12/17 Python
Python基于xlrd模块操作Excel的方法示例
2018/06/21 Python
python 通过麦克风录音 生成wav文件的方法
2019/01/09 Python
Django 开发环境与生产环境的区分详解
2019/07/26 Python
Python 使用list和tuple+条件判断详解
2019/07/30 Python
python如何求数组连续最大和的示例代码
2020/02/04 Python
基础的CSS3弹性盒Flexbox布局使用实例
2016/04/08 HTML / CSS
加拿大鞋子连锁店:Town Shoes
2016/09/26 全球购物
澳大利亚领先的美容护肤品零售商之一:SkincareStore
2018/01/22 全球购物
Shell编程面试题
2012/05/30 面试题
2014年三八妇女节活动方案
2014/02/28 职场文书
缓刑人员思想汇报500字
2014/09/12 职场文书
助学贷款贫困证明
2014/09/23 职场文书
企业领导班子四风对照检查材料
2014/09/27 职场文书
教师查摆问题及整改措施
2014/10/11 职场文书
2014年个人总结范文
2015/03/09 职场文书
奖励通知
2015/04/22 职场文书