论文部分内容阅读
因特网的发展,方便了人们的生活,电子邮箱、网络聊天系统、电子论坛等免费网络服务逐渐成为人们生活中的一部分。然而,恶意程序对这些服务资源的非法攻击,也给互联网安全性问题带来了新的挑战,验证码的应用由此而生。研究验证码破解算法可以改善验证码的缺陷,在防护恶意程序攻击、增强互联网安全性等方面具有重要的意义。本文分析了互联网上不同验证码的特点,统计了国内外研究者破解验证码的情况,并从验证码预处理、验证码字符分割以及验证码字符识别三个方面研究了验证码破解算法。本文的主要工作如下:(1)阐述了验证码预处理过程中涉及的基本数字图像处理算法。针对一类采用迭代法和大律法均失效的验证码,设计了基于HSL颜色空间色调分量的阈值处理算法,实验表明了该算法的有效性。(2)在验证码字符识别阶段,首先,介绍了神经网络基础。其次,研究和实现了基于简化的卷积神经网络字符识别算法。最后,实现了弹性变形提高网络字符识别性能的方法。(3)预处理后验证码中的字符是非粘连,或者粘连的。根据这个特点,研究了非粘连字符验证码的分割算法:传统投影法、上下轮廓差投影法和连通域法。接着重点研究了粘连字符验证码分割算法,提出了基于最大连通域的分割算法,实现和改进了基于背景细化的分割算法。(4)选取工商银行和58同城验证码作为非粘连字符验证码破解的典型例子,采用投影分割算法破解工商银行验证码,采用连通域分割算法破解58同城验证码。选取微软Hotmail和腾讯邮箱登陆验证码作为粘连字符验证码破解的典型例子,均采用基于改进的背景细化分割算法破解这两种验证码。对这些验证码的破解率分别为94.5%、41%、61%和42%。(5)设计了三个工具软件模块:验证码预处理模块、验证码字符分割模块和验证码字符识别模块。这些软件模块能够加速验证码破解的研究工作。