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 相关文章推荐
jQuery 瀑布流 浮动布局(一)(延迟AJAX加载图片)
May 23 Javascript
hover的用法及live的用法介绍(鼠标悬停效果)
Mar 29 Javascript
js实现鼠标感应图片展示的方法
Feb 27 Javascript
JavaScript中原型链存在的问题解析
Sep 25 Javascript
js倒计时小实例(多次定时)
Dec 08 Javascript
JavaScript中数组常见操作技巧
Sep 01 Javascript
VUE实现一个分页组件的示例
Sep 13 Javascript
template.js前端模板引擎使用详解
Oct 10 Javascript
微信小程序实现图片懒加载的示例代码
Dec 13 Javascript
在vscode中统一vue编码风格的方法
Feb 22 Javascript
javascript变量提升和闭包理解
Mar 12 Javascript
基于IView中on-change属性的使用详解
Mar 15 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 作用域解析运算符(::)
2010/07/27 PHP
无需重新编译php加入ftp扩展的解决方法
2013/02/07 PHP
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
2014/06/05 PHP
PHP ignore_user_abort函数详细介绍和使用实例
2014/07/15 PHP
php微信公众平台配置接口开发程序
2016/09/22 PHP
JQuery AJAX实现目录浏览与编辑的代码
2008/10/21 Javascript
Javascript 表单之间的数据传递代码
2008/12/04 Javascript
为JavaScript添加重载函数的辅助方法
2010/07/04 Javascript
Dom操作之兼容技巧分享
2011/09/20 Javascript
为Javascript中的String对象添加去除左右空格的方法(示例代码)
2013/11/30 Javascript
Javascript异步编程模型Promise模式详细介绍
2014/05/08 Javascript
使用JavaScript和C#中获得referer
2014/11/14 Javascript
jquery中EasyUI实现同步树
2015/03/01 Javascript
jquery简单插件制作(fn.extend)完整实例
2016/05/24 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
2016/07/22 Javascript
js制作网站首页图片轮播特效代码
2016/08/30 Javascript
微信小程序 wxapp内容组件 progress详细介绍
2016/10/31 Javascript
JS简单实现数组去重的方法示例
2017/03/27 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
详解react-webpack2-热模块替换[HMR]
2017/08/03 Javascript
vue单页缓存存在的问题及解决方案(小结)
2018/09/25 Javascript
简单使用webpack打包文件的实现
2019/10/29 Javascript
[01:07]2015国际邀请赛 中国区预选赛精彩回顾
2015/06/15 DOTA
wxPython使用系统剪切板的方法
2015/06/16 Python
Linux下python3.6.1环境配置教程
2018/09/26 Python
Python math库 ln(x)运算的实现及原理
2019/07/17 Python
基于pytorch的保存和加载模型参数的方法
2019/08/17 Python
python 实现人和电脑猜拳的示例代码
2020/03/02 Python
css3学习心得分享
2013/08/19 HTML / CSS
轻松掌握CSS3中的字体大小单位rem的使用方法
2016/05/24 HTML / CSS
美国学校用品、教室和教学商店:Discount School Supply
2018/04/04 全球购物
期末总结的个人自我评价
2013/11/02 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
2015年信访维稳工作总结
2015/04/07 职场文书
大国崛起观后感
2015/06/02 职场文书
spring IOC容器的Bean管理XML自动装配过程
2022/05/30 Java/Android