03月16日上午,12306网站更新了本身的验证码形式,将原有的验证码从英文字符变换到8张小图片,用户必须根据问题提示来点击选中正确的图片,而后才能预约车票。紧接着,各路媒体开始发稿,《12306官网放大招:启用图片验证码全部抢票软件将失效》《12306官网推出全新图片验证码抢票软件将失效》等新闻层出不穷。做为一个程序员,看到这样的标题,十分困惑这些媒体是怎么用上帝视角这么直接判定抢票软件将所有失效的,能够想象一大波刷票公司正准备捋起袖子干活就直接听到12306宣布本身胜利了。固然,咱们反对一切的黄牛党,本文只是谈谈验证码技术。html
重技术的验证码是一场拉锯战程序员
当咱们谈论验证码时,难免地提到两我的。第一个是计算机科学之父、人工智能之父艾伦.图灵,图灵对整个计算机科学的贡献和意义在此就不用展开,以前因此提到他,是由于他提出的“图灵测试”,这一理论第一次提到将电脑和人区分开。第二个必须提到的是卡内基梅隆大学的路易斯·冯·安,他在2002年第一次将扭曲的文字用于区别人和计算机,就是咱们如今广泛见到的英文字符验证码,后来他将验证码公司Re-CAPTCHA卖给了google。ide
如今12306一样也用了扭曲的英文字符,可是却抵挡不住黄牛党和刷屏软件机器识别,是由于在这近十年计算机科学技术的发展,OCR(Optical Character Recognition,光学字符识别)等技术发展的已经十分红熟,识别扭曲英文字符并不是难事,根据现有实验报告统计及真实调查,普通的验证码的破解率基本在75%以上。说到这里咱们看看百度和腾讯是怎么解决的。测试