- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Web的图形验证码技术的研究与实现.doc
基于Web的图形验证码技术的研究与实现
摘要:该研究主要探讨验证码的设计,在详细分析比较各种图形验证码的基础上,运用vb.net语言,在微软公司.net框架下,独立设计开发较为难被 OCR字符识别软件攻破的图形验证码,保护后台数据库的安全,同时也对验证码技术的发展进行了展望。
关键词:Web;图形验证码;数据库
中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2013)27-6122-03
互联网技术的高速发展带来了现代社会飞速进步和信息技术日新月异,Web服务变的无处不在,伴随而来的就是Web系统的安全性问题,尤其是以.NET技术为代表的新兴Web开发技术的兴起,基于B/S架构的Web服务在互联信息领域得到了前所未有的广泛应用,图形验证码技术的出现正是加强web系统安全的产物,实现对后台数据的防护。
1 实现原理
1.1 图形验证码
验证码,其英文名称叫 CAPTCHA,是 Completely Automated Public TuringTest to Tell Computers and Humans Apart(全自动区分计算机和人类的图灵测试)的简称。CAPTCHA实质是区分计算机和人类的一种程序算法,这种程序能生成人类能很容易通过但计算机却通不过的测试,这意味着一个 CAPTCHA必须能生成一个它自己不能通过的测试。一般上来说,我们理解的验证码就是指包含有一串数字或其它字符的一幅图片,图片里加上一些干扰像素,在用户浏览网页时显示出来,经过终端用户肉眼识别后,将其中的附加码信息连同用户名和密码一起输入到Web 表单提交Web 系统验证,验证成功后才能使用某项功能。
1.2 验证码的作用
设计合理的验证码可在很大程度上起到加强 B/S结构的 web系统安全的作用。第一,可以防止对网站的大量恶意注册、论坛灌水、垃圾信息回复及发布等等;第二,可以有效的防止暴力破解密码,即用无穷列举的方法尝试用户名或密码,这样该算法就会以非常快的速度排列组合事先定义好的数据字典里所列出的可能字符以各种既定规则去尝试密码;第三,可以有效防止对网站的恶意攻击。Web网站经常会受到合法客户机的恶意攻击,攻击者们利用装载了恶意代码的合法网页来植入按键记录器,当合法用户登录时,就从中窃取用户密码,或者将计算机引向代理服务器进行其他攻击。
1.3 验证码的session机制
2 基本图形验证码的技术实现及探讨
基于演示的方便性角度考虑,本设计采用四个字符的验证码,并且仅使用26个英文字母(包括大小写)和0-9的阿拉伯数字组合,同时通过给不同的像素点附上不同的颜色,从而构建出彩色验证码。另外,为最大程度防止验证码被识别软件分割和匹配识别,设计中适当的增加验证码中的干扰因素,如增加干扰像素点、增加随机彩色干扰线等。
2.1 功能模块实现
1)界面模块 login.aspx():实现填写验证码的登录界面。
2)验证码载入模块 imageload.aspx():通过 drawimage()函数将最终生成的验证码回传到网页上,形成最终用户看到的效果界面,以供用户识别并填入验证。
3)验证字符随机生成模块 Rndchar():实现验证码字符的随机生成,用字符串变量来存储字符集。
4)输入验证图片模块:将验证码设置为通用的4位字符,并在每次网页发送到客户端浏览器前,将验证码存贮到服务器端的“session”里面,以便和用户的填入结果做比对,验证用户的合法性。
5)生成验证图片模块:实现对验证码图片大小背景颜色初始化,
6)给代码添加干扰因素模块。
① 添加随机噪点,这里的噪点就是随机出现的像素块,起到干扰图片上面字符的作用。
基本的图形验证码实现了随机生成字符,并具有一定的反识别能力,但随着字符识别技术的进步,对验证码的识别破解技术也发展的非常迅速,目前比较流行的是 OCR识别技术。所谓 OCR识别,即光学字符识别(Optical Character Recognition,简称OCR),简而言之就是用计算机自动辨识印刷在纸上和人写在纸(或介质)上的文字。通常根据不同的技术策略,识别方法可以分为基于统计特征的字符识别技术、基于结构特征的字符识别技术和基于神经网的识别技术。
3 改进型的图形验证码设计分析
为了设计更安全可靠的图形验证码,掌握识别验证码的一般流程就尤为重要。通常的验证码识别流程如图4所示。
4 总结和展望
图形验证码从开始出现到今天已有几十年的历史了,但真正开始进入应用也不过才10年。在这十年中,图形验证码从最初的仅仅几个标准字符发展到现在各种各样的扭曲变形、粘结,这期间信息水平的进
原创力文档


文档评论(0)