护目镜厂家
免费服务热线

Free service

hotline

010-00000000
护目镜厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

12306验证码屡遭轻易破解验证安全路在何方

发布时间:2020-03-10 11:29:56 阅读: 来源:护目镜厂家

A5交易A5任务 SEO诊断淘宝客 站长团购

作为一个程序员,看到这样的标题,十分困惑这些媒体是怎样用上帝视角这么直接判定抢票软件将全部失效的,可以想象1大波刷票公司正准备捋起袖子干活就直接听到12306宣布自己成功了。固然,我们反对一切的黄牛党,本文只是谈谈验证码技术。

重技术的验证码是一场拉锯战

当我们谈论验证码时,不免地提到两个人。第一个是计算机科学之父、人工智能之父艾伦.图灵,图灵对全部计算机科学的贡献和意义在此就不用展开,之前所以提到他,是由于他提出的图灵测试,这1理论第一次提到将电脑和人辨别开。第二个必须提到的是卡内基梅隆大学的路易斯冯安,他在2002年第一次将扭曲的文字用于区分人和计算机,就是我们现在普遍见到的英文字符验证码,后来他将验证码公司Re-CAPTCHA卖给了google。

现在12306一样也用了扭曲的英文字符,但是却抵挡不住黄牛党和刷屏软件机器辨认,是由于在这近十年计算机科学技术的发展,OCR(Optical Character Recognition,光学字符辨认)等技术发展的已十分成熟,辨认扭曲英文字符并不是难事,根据现有实验报告统计及真实调查,普通的验证码的破解率基本在75%以上。说到这里我们看看百度和腾讯是怎样解决的。

腾讯将验证码图片背景直接贴上真实图片做干扰,而且色彩采取的近似值。

被称为百度神兽的九宫格汉字验证码,利用中文的博大精深,在防刷上有较大的提升,但是对人的用户体验上就略差了。

12306的验证码出发点是安全?用户体验?

那末,我们来谈谈12306的图片验证码到底是个甚么鬼。12306所采取的图片式验证码的验证情势,其实不是什么首创,早在一些游戏网站上也采取过这样的验证情势,请看下图。

这把人都能吓懵的验证码还真出现过,而且很不幸的是,上了一阵子以后就被破解了。

现在12306推出的图片验证码,首先从用户体验上来说,并没有比之前的文字验证码好用多少。虽然用户不再依托键盘输入,但是面对小且密集的8张图片,选出所有正确的图片,那必须把所有图片仔细看一遍,这1进程带来的不确认型其实是同用户分辨G和9和心里进程是一样的。不信你瞅瞅下面哪些是邮票?重要的是这一进程中带来很大的不确认性,心理负担略重。

用户体验这个标准,不好衡量,我们再来谈谈安全性。从一开始变成图片验证情势,事情就不会像今天新闻标题说的那样,刷票软件将全部失效(我本着好奇的态度,搜了一下相干新闻,基本上从2012年起,每次12306更换比较明显的验证码,媒体都是这样报导的),为何呢?前面我们讲到成熟的OCR技术致使英文字符验证码很难起作用,事实上,图象辨认的发展也是趋于成熟。所以,12306的图片验证码被迅速破解也不是什么难事,反而将门坎下降。

下面的具体破解举例援用知乎用户王猫猫在问题如何评价 12306 的最新版验证码?下的回答。

(此图来自知乎用户王猫猫的回答)

直接将图片处理后丢入google、百度的识图接口,返回的数值让人惊讶(第二张图竟然能精准辨认到是沙县小吃?)。后来根据王同学提供的代码,我进行了下一步的处理工作,再次利用第三方软件辨认中文字符,然后将字符与图片字符进行匹配,以后选择图片。全部测试图片大概200张(只是摹拟了登录,没有去刷掉一整车票),通过率在85%左右。所以,仅仅是技术爱好者动用一些公用接口就轻松能辨认图片类容,而且一旦辨认后,还可以将这张出现过的图片存库,再次出现就更加快速准确的定位了。暂且不谈图象辨认和机器学习这样高大上的破解方法了。

图片验证码之所以不安全,是由于目前的图片辨认技术也是相当的成熟。12306这些图片如果是人工标记,无疑是将自己摆到一个愚公移山的悲壮位置;如果是机器辨认,也一样是可以被辨认内容,即用图片内容的辨认作为验证核心将毫无意义。

从12306这次更新来看,12306的验证思路,还是在玩已过时的技术,对验证的视野和理解并不是很透彻,才会落到上线不到一天就被破解的为难局面。固然,12306有面对黄牛的进行创新的勇气是可嘉的,但是方向走错了,进行购票流程上的全面优化才能让问题得到终究的解决,将赌注放在验证码身上,目前看来不太现实。

走在前面的仍然是Google

那末,验证安全的终极奥义是什么呢?我们可以回顾一下去年的关于google的No-CAPTCHA(No-Capthcha是Re-Capthcha的子项目)的文章,google提出了一个概念叫human behavior analysis,大意是将用户的行动做为判断人与计算机的准则。这个理念提出的意义在于,不再依托图灵测试即单一的答案来判断人机,而是通过用户一系列的上网行动来肯定访问者是人,还是机器。但是从google目前的前端代码层和具体流程来看,目前只是试探性的的发展,如果这个理念能够实际操作并完善,那末验证码的安全性将提高的一个史无前例的高水平,最少破解门坎不会低到仅仅调用一下公共接口就瞬间破解。

中南天使(湖南)文化传媒有限公司

舟山中顺置业有限公司

重庆多笠原食品有限公司

中国旅游商贸服务有限公司