Linux.中国 - 开源社区

 找回密码
 骑士注册

QQ登录

微博登录


透过现象看本质—戏说12306验证码

2015-12-9 15:51    评论: 22    

年关将至,一场世界级的社会壮举又将上演,那就是咱们的春运,短短的十几天将搬运30亿人次的客流,让国外的记者和看客们都不得不佩服咱们伟大祖国的交通运输能力。为了准备这场“大戏”,抢票这种全民级现象已经提前上演,虽然买票难的问题已经逐年好转,但在抢票过程中仍然槽点不断,其中的明星当属验证码了,这两天12306的验证码已经被大家各种吐槽各种调侃,那么这次和大家一起来研究一下关于这个验证码背后的问题。

验证码的由来

其实一开始,互联网上是没有验证码的。那时想要在论坛上发帖,只需轻轻敲一下回车键。然而,当时的黑客也十分猖狂,他们编写了一种能够大量、重复编写信息的程序,伪装成人类用户,肆无忌惮地朝网络上倾倒大量的、无意义的“僵尸”信息,垃圾邮件、垃圾广告、垃圾评论到处乱飞。这时出现了一个人,他的名字叫路易斯·冯·安,他在研究过程序机器人的“工作手法”之后,给出了一个独特的方案,就是在用户进行操作之前,就将那些机器人从正常用户里揪出来。通常人类可以用肉眼很轻易地识别图片里的文字信息,而机器就不能,并且当时的计算机辨识技术还很落后,对于那些镶嵌在图片中的、被扭曲过的文字无法辨识,而人类只需要稍稍皱眉就可以识别出来,所以验证码就诞生了

(验证码的作用:防止有人利用机器人自动批量注册、对特定的注册用户用特定程序暴力破解方式进行不断的登陆、灌水等)。

                                                          (2015年,时年36岁的路易斯)

时过近迁,原来的配方,熟悉的味道

就像那句广告词“原来的配方,熟悉的味道”,从验证码发明到现在的15年间,这种针对于网站的探测式攻击呈逐年增长的态势(据安全狗2014年发布的《中国互联网服务器安全分析报告》提供的数据,全年的探测试攻击已经超过2.5亿次),正所谓一攻一防,一防一攻,大家在打打闹闹中无形的为网络安全的发展做出了贡献。同样的经过这些年的发展,普通的验证码早已难不倒那些黑客了,为了应对这种情况,也就迸发出了无数千奇百怪的验证码。

令人惊叹的验证码艺术

在这里把验证码称为艺术可能有一些过了,可是发展至今验证码已经深入到每个人的生活中了,手机短信验证、图片验证码、字母验证码、语音验证码、拼图验证码、选择题验证码、问答验证码…….等等各式各样花样百出,如果把验证码当成一件作品,相信每年还可以搞一次评选,如“年度最佳验证码奖”“年度最难验证码奖““年度最具创意验证码”等等。在这里不得不佩服验证码设计师的脑洞。

 

为什么会产生这些天才般的验证码设计?因为许多数字和字母组成的二维码,黑客可以用OCR(光学字符识别)技术识别,12306之前的验证码被抢票软件轻易破解了。而据某些专家认为,采取图片技术之后,就很难有黑客能破解了,就算图像识别技术能识别图片,也很难识别出问题,更别说将两者对应起来了。

但实际测试表明,借助于Google等巨头的智能识图技术,能够识别大部分图片的涵义,准确率85%。于是聪明的12306工程师开始琢磨着让验证码变得更加复杂、图片变得更难认、并且经常更新,这是一场浩大的技术攻防持久战,为了保证百姓能买到回家的车票,为了提防抢票软件和背后的黄牛党,在这里不得不赞叹一下工程师们的劳苦用心。

互联网+思维与12306的激情碰撞

12306的工程师们为了打好这场防御战不得不说是做足了功课,要设计出足够复杂又要让人类可以辨识的验证码,真得要上知天文,下知地理,娱乐、动漫、网络热点须无一不通。

 小编相信这种图片验证码还能起到科普作用(亮点自寻)。

 看到这种强大到连自己都怕的验证码,一股浓浓互联网味道扑面而来,不得不说互联网+思维成功的和铁路局来一次完美的融合,而小编刚有更棒的点子,那就是:广告植入。

“请选出下面哪款洗发水是沙宣、请选出下图中的超薄款Durex、以下哪位明星代言了宝洁的广告、请选出奔跑吧兄弟的冠名赞助商……”

这,就是互联网思维,互联网+12306,激发巨大的想象空间,中国铁路未来扭亏为盈不是梦。(其实图片验证码广告技术是国内一位大学生的创意,现在这技术被铁路局发扬光大了。PS:办公室的某位小伙伴,今天中午一直在抢票,最后红着眼告诉我说:终于订了张火车票)

验证码辛酸的背后是反黑技术不够聪明

人类一直在与机器就验证码展开拉锯战,网页和App上验证码出现的原因只有一个:确保你是活人,而不是机器代码。最初验证码是数字,后来被破解了;所以验证码加入了字母,还是被破解了,而更复杂的数字和图片,继续被破解,就以这次12306的强大验证码而言,近日已经有互联网公司宣称攻破了12306的图形验证码,并首次公布一组验证码大数据。数据显示图形码的数量已经多达581种,按照要输入两个关键词的登录规则,用户将有机会尝试336980道不同验证码题目的机会,而一次性输入正确的仅为8%。强大的验证码虽然挡住了一部份黑客和黄牛,但同时也挡住了用户,杀敌一千自损八百,需要有更为聪明的防御方法。

不妨借鉴一下某些安全行业的方式,像知名的云安全厂商安全狗,在之前的互联网安全大会上就发布了全新的安全防御理念,通过云端收集客户端上的被攻击数据,对用大数据对攻击方式、来源等进行分析后再匹配相应的防御策略进行下发,这种方式就相当的聪明和智能。

最后,其实票难抢,是因为票少人多,主要的原因并不是验证码,在这一场持久战中铁路局已经竭尽所能,建议大家更予更多的理解和支持。

 

发表评论


最新评论

我也要发表评论

来自北京的 Chrome 30.0|Windows 7 用户 2016-1-7 15:54
1
来自安徽滁州的 Chrome 46.0|GNU/Linux 用户 发表于 2015-12-15 19:39 的评论:
就我的买票经历来说,感觉并不是很难。国庆节、春节,而且是京沪线,往南京或是北京,都能通过12306顺利买到。比如12306自带的自动刷新功能,看一集泡面番的功夫就订到了。不过这和人品也是密不可分的蛤蛤
你这条线的票不在抢票范围内,交通那么便利。抢票难的是大量不发达地区外出打工的人。
回复
来自北京的 Chrome 30.0|Windows 7 用户 2016-1-7 15:50
验证码难为的只有老百姓,黄牛每天研究怎么抢到票,老百姓每天要工作要挣钱哪有空研究怎么抢票?黄牛靠抢票挣钱可以花钱去搞软件抢,老百姓为了买张票难道还去买专业的抢票软件?验证码搞成这样可能只有两个原因:一个是拼业绩,一个是联合黄牛背后搞猫腻挣钱。
回复
来自广东的 Chrome 45.0|Windows 10 用户 2015-12-17 14:22
1
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-9 22:25 的评论:
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
2
来自北京的 Chrome 45.0|Windows 10 用户 发表于 2015-12-10 18:42 的评论:
典型的不切实际的观点,平常不过年的时候你买不到票?为了过年那10几天花费无数的金钱和时间去建设运力,然而等过了这个时间段这些运力白白闲置?不是供需的原因,这是一个文化原因,除非大家都不过年了,自然也不会有抢票的问题。
运力不足?怎么航空公司没有报怨他们运力不足?航空公司为什么没有搞验证码?航空公司没有春运吗?归根结底,主要还是因为垄断。如果铁路市场开发,像春运这样的盛宴,谁运力不足就看别人挣钱吧!
回复
来自广东的 Chrome 45.0|Windows 10 用户 2015-12-17 14:22
1
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-9 22:25 的评论:
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
2
来自北京的 Chrome 45.0|Windows 10 用户 发表于 2015-12-10 18:42 的评论:
典型的不切实际的观点,平常不过年的时候你买不到票?为了过年那10几天花费无数的金钱和时间去建设运力,然而等过了这个时间段这些运力白白闲置?不是供需的原因,这是一个文化原因,除非大家都不过年了,自然也不会有抢票的问题。
运力不足?怎么航空公司没有报怨他们运力不足?航空公司为什么没有搞验证码?航空公司没有春运吗?归根结底,主要还是因为垄断。如果铁路市场开发,像春运这样的盛宴,谁运力不足就看别人挣钱吧!
回复
来自内蒙古呼和浩特的 Firefox 42.0|Windows 7 用户 2015-12-15 22:16
其实验证也很简单。全完实名制就好了。
所有中国人,必须有一个基于身份证号的数字证书(类似于U盾),上网进行注册用户登录必须插入U盾,不提供数字验证的网站全部强行关闭。
数字证书有公安部的CA中心统一发放与验证。
这样没有什么软件能抢的了票,因为必须插一个物理证书,一台电脑只能插一个。

所有中国人,只能在所有银行开一个基于身份证号的帐户,也就是全中国人,每人只有一个帐户,不管哪个银行。
汇款只要填写开户银行(如工商银行),户名,身份证号即可。

这样就不能借用他人银行卡做违法事,防止洗钱,防止偷税,
因为每
回复
来自安徽滁州的 Chrome 46.0|GNU/Linux 用户 2015-12-15 19:39
就我的买票经历来说,感觉并不是很难。国庆节、春节,而且是京沪线,往南京或是北京,都能通过12306顺利买到。比如12306自带的自动刷新功能,看一集泡面番的功夫就订到了。不过这和人品也是密不可分的蛤蛤
回复
来自黑龙江的 Chrome 47.0|Windows 10 用户 2015-12-15 09:00
安全狗?想买票先去买个狗?黄牛有钱,买了1000个,然后没票了。
回复
不简单 [Chrome 31.0|Windows 7] 2015-12-11 19:07
[点击展开更多楼层]
2
来自北京的 Chrome 45.0|Windows 10 用户 发表于 2015-12-10 18:42 的评论:
典型的不切实际的观点,平常不过年的时候你买不到票?为了过年那10几天花费无数的金钱和时间去建设运力,然而等过了这个时间段这些运力白白闲置?不是供需的原因,这是一个文化原因,除非大家都不过年了,自然也不会有抢票的问题。
3
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-10 19:41 的评论:
是我考虑不周了,没有注意到 春运 等现象的周期性。
但是文化上的原因我们不能改变也不应该改。
所以,要找到一种既能应付突发性的运力缺口,也不会在平时存在严重的资源浪费。
比如说,平时按正常状况跑,春运之类的时候提高发客的速度,现在铁路的速度潜力还是很大的。
增加列车节数,或者 双层车厢 怎么样?
4
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-11 14:21 的评论:
刚刚在cnbeta上看到另一位的分析,感觉更加深刻:
  让谁来做都一样的。往浅了说是人多票少,现有的技术只能尽量的让大家都在一个起跑线上公平的去抢,但总有抢不到的。往深了说是地区发展得不均衡,导致人口在短时间里大范围大批次流动。啥时候每个省都有一个类似北上广深的区域中心,才能彻底解决问题。就业环境好,谁尼玛愿意背井离乡啊。
最后一句话说得很对!
回复
来自云南昆明的 Chrome 44.0|Windows 7 用户 2015-12-11 18:13
延长春节假期是王道
3 回复
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 2015-12-11 14:21
1
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-9 22:25 的评论:
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
2
来自北京的 Chrome 45.0|Windows 10 用户 发表于 2015-12-10 18:42 的评论:
典型的不切实际的观点,平常不过年的时候你买不到票?为了过年那10几天花费无数的金钱和时间去建设运力,然而等过了这个时间段这些运力白白闲置?不是供需的原因,这是一个文化原因,除非大家都不过年了,自然也不会有抢票的问题。
3
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-10 19:41 的评论:
是我考虑不周了,没有注意到 春运 等现象的周期性。
但是文化上的原因我们不能改变也不应该改。
所以,要找到一种既能应付突发性的运力缺口,也不会在平时存在严重的资源浪费。
比如说,平时按正常状况跑,春运之类的时候提高发客的速度,现在铁路的速度潜力还是很大的。
增加列车节数,或者 双层车厢 怎么样?
刚刚在cnbeta上看到另一位的分析,感觉更加深刻:
  让谁来做都一样的。往浅了说是人多票少,现有的技术只能尽量的让大家都在一个起跑线上公平的去抢,但总有抢不到的。往深了说是地区发展得不均衡,导致人口在短时间里大范围大批次流动。啥时候每个省都有一个类似北上广深的区域中心,才能彻底解决问题。就业环境好,谁尼玛愿意背井离乡啊。
4 回复
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 2015-12-10 19:41
1
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-9 22:25 的评论:
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
2
来自北京的 Chrome 45.0|Windows 10 用户 发表于 2015-12-10 18:42 的评论:
典型的不切实际的观点,平常不过年的时候你买不到票?为了过年那10几天花费无数的金钱和时间去建设运力,然而等过了这个时间段这些运力白白闲置?不是供需的原因,这是一个文化原因,除非大家都不过年了,自然也不会有抢票的问题。
是我考虑不周了,没有注意到 春运 等现象的周期性。
但是文化上的原因我们不能改变也不应该改。
所以,要找到一种既能应付突发性的运力缺口,也不会在平时存在严重的资源浪费。
比如说,平时按正常状况跑,春运之类的时候提高发客的速度,现在铁路的速度潜力还是很大的。
增加列车节数,或者 双层车厢 怎么样?
回复
来自北京的 Chrome 45.0|Windows 10 用户 2015-12-10 18:42
1
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 发表于 2015-12-9 22:25 的评论:
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
典型的不切实际的观点,平常不过年的时候你买不到票?为了过年那10几天花费无数的金钱和时间去建设运力,然而等过了这个时间段这些运力白白闲置?不是供需的原因,这是一个文化原因,除非大家都不过年了,自然也不会有抢票的问题。
回复
来自广东广州的 Mobile Safari 9.0|iOS 9.1 用户 2015-12-10 15:16
好敬佩
回复
来自广东广州的 Mobile Safari 9.0|iOS 9.1 用户 2015-12-10 15:14
回复
来自云南昆明的 Internet Explorer 11.0|Windows 10 用户 2015-12-10 10:00
1
jingwang [Chrome 47.0|Windows 10] 发表于 2015-12-9 17:02 的评论:
怎么说呢  就是 12306脑残,除了 让买票更加困难
2
来自北京的 Chrome 45.0|Windows 10 用户 发表于 2015-12-9 17:21 的评论:
发出这种评论你不光侮辱浏览网页的人,也侮辱了这个网站。
智商太低就多吃脑残片别出来瞎晃。
哎~不防黄牛被喷,防黄牛还被喷。上面那些图片怕是网友恶搞PS上去的。
1 回复
来自四川南充的 Firefox 42.0|Ubuntu 用户 2015-12-9 22:29
1
jingwang [Chrome 47.0|Windows 10] 发表于 2015-12-9 17:02 的评论:
怎么说呢  就是 12306脑残,除了 让买票更加困难
其实还是可以体谅的,农民工和一些人没能力网上购票,只有去站台购票的艰难呢?
回复
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 2015-12-9 22:25
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
4 回复
sunriders [Iceweasel 38.4|GNU/Linux] 2015-12-9 19:26
哈哈 有点意思@!~
回复
绿色圣光 [Firefox 42.0|Windows 7] 2015-12-9 17:33
然而配图中的都是假的。
2 回复
来自四川成都的 Chromium 47.0|Ubuntu 用户 2015-12-9 17:21
就是为了他们自己的人有票拿出来高价出售~~~
回复
12下一页

热点评论

来自北京的 Chrome 45.0|Windows 10 用户 2015-12-9 17:21
发出这种评论你不光侮辱浏览网页的人,也侮辱了这个网站。
智商太低就多吃脑残片别出来瞎晃。
12
jingwang [Chrome 47.0|Windows 10] 2015-12-9 17:02
怎么说呢  就是 12306脑残,除了 让买票更加困难
6
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 2015-12-11 14:21
刚刚在cnbeta上看到另一位的分析,感觉更加深刻:
  让谁来做都一样的。往浅了说是人多票少,现有的技术只能尽量的让大家都在一个起跑线上公平的去抢,但总有抢不到的。往深了说是地区发展得不均衡,导致人口在短时间里大范围大批次流动。啥时候每个省都有一个类似北上广深的区域中心,才能彻底解决问题。就业环境好,谁尼玛愿意背井离乡啊。
4
来自江苏镇江的 Firefox 42.0|Ubuntu 用户 2015-12-9 22:25
最终目的还是打击黄牛党吧,不过“一刀切”的政策导致殃及池鱼。
如果不解决 供不应求 的本质,还是会有人买不到火车票,还是会有黄牛的市场。
4
来自云南昆明的 Chrome 44.0|Windows 7 用户 2015-12-11 18:13
延长春节假期是王道
3
返回顶部

分享到微信朋友圈

打开微信,点击底部的“发现”,
使用“扫一扫”将网页分享至朋友圈。