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下arguments,caller,callee,call,apply示例及理解
Dec 24 Javascript
jQuery关键词说明插件cluetip使用指南
Apr 21 Javascript
BootStrap下jQuery自动完成的样式调整
May 30 Javascript
Vue中img的src属性绑定与static文件夹实例
May 18 Javascript
Vue2.0 vue-source jsonp 跨域请求
Aug 04 Javascript
JS计算两个时间相差分钟数的方法示例
Jan 10 Javascript
微信小程序实现YDUI的ScrollTab组件
Feb 02 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 Javascript
js操作table中tr的顺序实现上移下移一行的效果
Nov 22 Javascript
在Vue mounted方法中使用data变量详解
Nov 05 Javascript
Node Mongoose用法详解【Mongoose使用、Schema、对象、model文档等】
May 13 Javascript
javascript贪吃蛇游戏设计与实现
Sep 17 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
PHP删除特定数组内容并且重建数组索引的方法.
2011/03/25 PHP
PHP获取网址的顶级域名函数代码
2012/09/24 PHP
关于JSON以及JSON在PHP中的应用技巧
2013/11/27 PHP
php单例模式实现方法分析
2015/03/14 PHP
Yii2中使用join、joinwith多表关联查询
2016/06/30 PHP
php+MySql实现登录系统与输出浏览者信息功能
2016/07/01 PHP
Laravel框架自定义验证过程实例分析
2019/02/01 PHP
PHP开发实现快递查询功能详解
2019/04/08 PHP
javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2010/02/04 Javascript
jquery ajax post提交数据乱码
2013/11/05 Javascript
jQuery中[attribute]选择器用法实例
2014/12/31 Javascript
js css+html实现简单的日历
2016/07/14 Javascript
JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法
2016/08/19 Javascript
微信小程序 http请求详细介绍
2016/10/09 Javascript
Angular中ng-options下拉数据默认值的设定方法
2017/06/21 Javascript
nodejs调取微信收货地址的方法
2017/12/20 NodeJs
VUE DOM加载后执行自定义事件的方法
2018/09/07 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析
2020/03/14 Javascript
js实现百度登录窗口拖拽效果
2020/03/19 Javascript
[15:56]Heroes18_暗影萨满(完美)
2014/10/31 DOTA
[01:00:13]完美世界DOTA2联赛 LBZS vs Forest 第一场 11.07
2020/11/09 DOTA
python代码检查工具pylint 让你的python更规范
2012/09/05 Python
Python去除列表中重复元素的方法
2015/03/20 Python
基于python框架Scrapy爬取自己的博客内容过程详解
2019/08/05 Python
Python ATM功能实现代码实例
2020/03/19 Python
CSS3新属性transition-property transform box-shadow实例学习
2013/06/06 HTML / CSS
Staples加拿大官方网站:办公用品一站式采购
2016/09/25 全球购物
全球度假村:Club Med
2017/11/27 全球购物
出纳岗位职责模板
2013/11/27 职场文书
产品推广策划方案
2014/05/10 职场文书
企业安全生产责任书范本
2014/07/28 职场文书
我爱幼儿园演讲稿
2014/09/11 职场文书
材料采购员岗位职责
2015/04/03 职场文书
2016特色励志班级口号
2015/12/24 职场文书
JavaCV实现照片马赛克效果
2022/01/22 Java/Android