图形验证码 PK 文字OCR ,谁会赢?

易小识 2019.08.22 12:00:00

易道博识

常在网上冲浪的朋友们,对这个东西太熟悉了。

在手机短信的主要功能还不是收动态验证码的时候,这种图形验证码已经到处都是了。

不过你有没有想过验证码到底是干啥的?是单纯为了给我们登陆网站增加障碍么?

当然不是,使用验证码是现在很多网站通行的方式。主要是为了有效防止黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试,主要防止恶意破解密码、刷票、论坛灌水、刷页等等。

虽然登录时候麻烦一点,但是对大家的密码安全来说,这个功能还是很有必要,也很重要的。

再专业一点说,验证码(CAPTCHA)是“CompletelyAutomated Public Turing test to tell Computers and HumansApart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序。这个词最早是在2002年由卡内基梅隆大学的路易斯·冯·安、ManuelBlum、NicholasJ.Hopper以及IBM的JohnLangford所提出。

一种常用的CAPTCHA测试是让用户输入一个扭曲变形的图片上所显示的文字或数字,扭曲变形是为了避免被光学字符识别(OCR,Optical CharacterRecognition)之类的电脑程序自动辨识出图片上的文数字而失去效果。由于这个测试是由计算机来考人类,而不是标准图灵测试中那样由人类来考计算机,人们有时称CAPTCHA是一种反向图灵测试。

说到这里大家就应该明白,为什么验证码通常使用一些线条和一些不规则的字符组成了。

图形验证码和OCR是天然对立的技术,图形验证码的首要功能就是防止OCR识别成功。

但是OCR技术也在发展进步,传统的验证码还能抵抗OCR破解么?我们可以做一些测试。

易道博识

这是一种相对来说非常简单的一种验证码了,背景杂质不多,只是文字色彩不同,排列不整齐。我们试一下OCR识别效果——

易道博识

果然,毫无难度,这种等级的验证码形同虚设,在现在的OCR技术面前毫无抵抗之力。

易道博识

这次在同色字母下叠加了同色的线条进行干扰,那OCR识别还能精准识别么?

易道博识

答案依然是:可以。

所以还在使用以上这些类型的验证码的网站,可得注意提个醒了。这样的验证码完全起不到防止OCR的效果。

那么什么样的验证码相对安全呢?就目前的OCR识别技术而言,以下这几类被识别出来的可能性会低一些,相对的安全系数也会高。

易道博识易道博识

字母粘连严重,或者是背景干扰严重的验证码,相对来说就比较难被机器识别出来。不过未来随着OCR技术的进一步发展,抗干扰能力更强,也许这种验证码也会失去效果。

话说回来,验证码的作用主要是为了区分人和机器。但不是所有验证码都能做到区分人和机器。

有些验证码由于太过简单,人和机器都能通过,我们前面讲过了。还有一种验证码,由于太过复杂,人和机器都通不过……

比如……

易道博识

还有经典的12306验证码

易道博识

易道博识



标签:   人工智能 OCR技术

相关推荐