作者:袁一雪 来源:中国科学报 发布时间:2015-4-17
选择字号:
验证码防卫战

 

验证码识别的研究永远是一个双赢的结果:或者有一种验证码不能被破解,网络安全依然有保障;或者验证码被识别,则人工智能和机器学习水平得到进一步的提高。

■本报见习记者 袁一雪

高海昌

西安电子科技大学软件学院副教授


 

郭刚制图

全国火车票售卖网站12306日前再次更换了验证码,频繁地出招,却依然没有换来12306在“火车票保卫战”中的胜利。

因为很快,搜狗浏览器、智行火车票等第三方订票渠道已对外宣布成功实现了12306图形验证码的自动识别,用户借此可以实现全自动抢票的体验。

面对日新月异的验证码破解手段,西安电子科技大学软件学院的一只团队默默从事着提升验证码可靠性的工作。这个团队的带头人高海昌称自己的团队是“戴‘白帽’的黑客”。

寻找鲁棒性与可用性的平衡点

黑客(Hacker)一词,最初曾指热心于计算机技术、水平高超的电脑专家,尤其是程序设计人员,后来逐渐区分为白帽、灰帽、黑帽等。利用公共通讯网路,如互联网和电话系统,在未经许可的情况下,攻入对方系统的被称为黑帽黑客(black hat);调试和分析计算机安全系统的称为白帽黑客(white hat)。

“我们对于验证码的研究,概况起来主要关注两方面:鲁棒性和可用性。”高海昌告诉《中国科学报》记者。鲁棒是Robust的音译,即健壮和强壮的意思。它是在异常和危险情况下系统生存的关键。比如,计算机软件在输入错误、磁盘故障、网络过载或有意攻击情况下,能否不死机、不崩溃,就是该软件的鲁棒性。

在验证码的领域中,鲁棒性就是要求验证码机制防破解能力强,不会轻易被计算机程序自动识别。相对的,可用性就是要求验证码机制对于人类的使用交互友好,既不能识别困难,也不能让识别时间过长。

2013年,各大网站普遍推出了空心验证码。它打破了传统的实心字体的模式,用轮廓线的空心字体替代。这样当多个字符重叠粘连的时候,机器识别度较差,但是人类仍然可以很好的识别。

但这并非无法破解,高海昌发现只需先将空心填充成实心字符,使用颜色填充算法得到离散的笔画块。然后使用卷积神经网络和深度优先算法对笔画块进行组合识别,寻求最优解作为识别结果。“我们针对Yahoo、百度、新浪、腾讯、和中国移动在线支付网站的空心验证码分别取得了36%、51%、59%、89%和66%的成功率。国际公认的标准是只要成功率高于1%,就认为破解成功。所以我们的破解方法非常有效。”高海昌解释道。

这篇论文也被信息安全顶级旗舰会议CCS’2013录用发表,“这是中国大陆研究机构首次有论文在这个高档次会议上发表。”高海昌说。成功破解了这些机制后,在论文中提出了一系列改进建议。之后,高海昌提出的部分建议被Yahoo和腾讯网站所采纳,并使用在他们的后续改进版本里面。

随着技术的发展,一些公司也推出了新奇的验证码。在寻找鲁棒性和可用性平衡点的道路上,美国谷歌公司就觅到了一条新路——利用无法识别的门牌号图片。

谷歌公司为了充实“Google Earth(谷歌地图)”和“Google Street View(谷歌街景)”,让车辆沿街拍摄图片,并将这些图片与谷歌地图服务连接,人们便能从地球的此端近距离查看彼端的街景。“街景车扫描过程中,总会遇到一些无法识别的门牌号等,谷歌公司便将其作为验证码。”高海昌说。

具体做法是,设置两种验证码,其中之一作为验证程序,另外就用无法识别的门牌号照片替代,只要将第一种验证码输入正确,无论第二个输入什么都算成功。“他们再将人眼识别的结果进行统计,按照大部分人填写的数字,得出模糊的门牌号到底是什么。可谓一举两得。”高海昌解释道。

验证码:互联网安全的第一道护卫

验证码并非自互联网诞生之日起就存在。在互联网尚不普及的年代,黑客的数量屈指可数,也还没有人想到去占领有限的网络资源。

最先推出验证码的是雅虎公司。他们一边提供免费邮箱,一边还要解决用户们每天遇到的数以百计的垃圾邮件轰炸。

于是,验证码诞生了。“它就像是互联网前端的守护者。”高海昌说。

目前,国际知名的验证码研究团队有三个,而在国内专注研究验证码的恐怕已知的只有高海昌团队。“像中国科学技术大学、南京理工大学、重庆大学、解放军电子工程学院等也有一些学者在关注和进行研究,并发表了一些相关的研究论文,但是他们并未把研究重心都放在验证码研究。”高海昌说。

计算机身份认证领域研究出身的高海昌,最终决定将重点放在验证码上,是因为“验证码作为一种能够防止网络资源被滥用的有效手段,其不易被破解的程度(也称鲁棒性)和可用性迫切需要提高,所以也促使我决定将近几年的研究重心放在验证码研究方面。”

现在,高海昌带领团队的验证码研究获得了国家自然科学基金的资助。在今年12306火车票售卖网站修改验证码事件中,高海昌也向有关部门提出了自己的建议。“不论图片还是字母的验证码,区别的都是人与计算机,这需要找到人工智能(AI)机制,让人容易通过,但是计算机程序则难以跨越。”高海昌说,“在这个过程中,最难的就是,如何保证验证码不易被破解,同时还要实现用户友好。”

安全无小事

研究、破解、提升、再破解、再弥补……在验证码此消彼长的拉锯战中,高海昌看到更多的是乐趣。“破解和防破解在某种程度上是互相促进,水平都在提高。但道高一尺,魔高一丈,验证码机制的设计者在明处,破解者在暗处,两者的较量本来就是不公平的。所以目前来说,还没有人敢说能提出一种永远无法被破解的验证码机制。事实上也是这样,现在99%的网站所使用的验证码机制其实已经都被成功破解了。”高海昌说。

在这个过程中,验证码识别的研究永远是一个双赢的结果:或者有一种验证码不能被破解,网络安全依然有保障;或者验证码被识别,则人工智能和机器学习水平得到进一步的提高。

“但是,现在我们羊圈的围栏很低,也有很多漏洞,而且很多不安全的验证码机制仍然在被大量使用。比如国内的一些银行。”高海昌说。尽管一些银行已经将验证码、U盾、短信等联系在一起,但是却依然存在一些购物网站不用U盾也能完成购物的情况。“这样就给用户带来很大的不安全性。”高海昌表示。

虽然验证码研究只是信息安全领域的一个很小的方面,但是斯诺登的棱镜门事件让人认识到整个计算机和网络空间的安全问题都不容大意。“网络安全无小事,棱镜门让我们认识到国家信息安全和个人信息安全都面临着严峻的形势,需要相关从业者不断努力,提升安全水平。”高海昌说,“验证码就要站好第一班岗。”

《中国科学报》 (2015-04-17 第7版 科普)
 
 打印  发E-mail给: 
    
 
以下评论只代表网友个人观点,不代表科学网观点。 
SSI ļʱ
相关新闻 相关论文

图片新闻
科学网APP论文&基金最新活动来了 他们的15年“铸剑”之路
星链卫星让射电望远镜“失明” 研究生学位论文开题的十大注意事项
>>更多
 
一周新闻排行 一周新闻评论排行
 
编辑部推荐博文
 
论坛推荐