关于12306网站图形验证码的猜想

来源:互联网 发布:linux select 实例 编辑:程序博客网 时间:2024/06/14 17:05

      以前一直以为12306的图形验证码是根据普通验证码识别规则,只不过是加上了变态的不清晰低像素图片而已。

      然后F12查看了一下网络请求,它的验证码规则,远远不是我之前我想的那么简单的。

      很久以前一直单纯的以为,可以通过图片的识别,机器学习,根据像素点来识别其中的图片。但是那种对付问题跟验证码图片是分离的话,这种通过像素点机器识别来识别图片,可以轻松的绕过验证码。不过12306的验证码跟问题是同时随机生成的,这个不是单纯的验证码跟问题分离的。


     这样虽然也可以通过像素点来识别,连通问题一起识别出来,然后识别出相对应的答案。再做出正确的选择,打码自动提交,估计现在很多宣称破解了12306的验证码就是这种吧,通过程序来识别,但是这种需要耗时,同时也不能保证命中率百分百,而且中间存在程序计算的消耗。所以这种不一定会比人工选择验证码快。做的好的成熟的程序,运行起来的速度跟正确度可能比人工操作要快,谁让这BT的图片,正常人就没法好好选择。

     其次,还发现一个问题,12306选择图片验证码,不是单纯给没张图片做好了唯一标记位,而是所有的图片都拼成了一个张大的图片版。根据你选择的坐标区域,提交到后台进行验证的。普通的验证码,最多把图片做成一个唯一难以识别的标记字符串,而12306不是。

   

   像这样,你可以在正确的图片区域类,选择多个坐标点都可以。

     所以之前想的,根据图片识别程序,来自动验证铁总的验证码似乎是我太天真啦。下面是天真之后,自己关于的12306验证码的猜想。

--------------------------------------------***********************************--------------------------------------------------------------纯属个人猜想--------------------

    每次刷新得到的图形验证码都不一样,且后图片请求验证码后面那是跟着一串随机数字,而且根据命名,也可以看出来,那就是随机数。应该是根据某个复杂的方程式得到的随机结果。

    同时,验证码规则的生成肯定会包含有当前的时间点的参数,因为每次刷新,得到的验证规则都不同。但是请求的参数不变,所以这个验证规则一定是加入了时间点作为参数参加运算的。

     由此再推测,根据区域选择正确的答案,应该这是一整套的跟当前时间节点相关的一个复杂计算式。同时生成答案跟问题。

     要真正破解这个根据时间节点进行生成的验证码才是破解的根本。那样的话,就能不用铁总的验证码,直接根据请求的时间节点,自己在机器上计算出来答案,把答案坐标给打点,直接提交。那样才是王道,根据目前的市场各大互联网公司的反应来看,好像还没有被攻破。铁总的这套高(傻)深(B)计算规则确实还没有被破解,说到高明,确实通过这种验证码计算生成规则,绝对是关于安全方面对IT领域一个提高。所以说他高深。但是TM说他傻叉,是让正常乘客想买票的抢不到车票啦。这就是铁总傻逼啦。

      但是这种确实也称不上太牛逼,不是因为360、猎豹等浏览器今年没有攻破这个验证码,就认为这个设计是是比360的技术大神都牛逼。其实这个就是相当于矛跟盾。这个就相当于一个密码传递,要破解密码远远比稍微花点心思设计的密码要难得多。这就跟我跟家乡人讲湘潭话一样,让一个密码专家花上一年两年,都不一定能够完全破解我每句湘潭话的要传达的意思。

    所以也就别费神去破解这玩意了,等着设计这套规则孙子自己把这套规则给自爆出来吧~~~咱们还是老老实实,实时监控这傻叉网站,一边抢票一边骂骂就得了。不要太较真啦,毕竟谁都不容易。

    不过关于12306的服务器,确实今年做的不如去年强大,因为至少去年我抢票不会出现狗屁网络繁忙,网络无法访问的情况。今年可不止一两次出现啦,铁总买买带宽总是可以的吧~~把服务器给给强化一下,提升一下网络带宽总行吧。

0 0
原创粉丝点击