- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JAVAWEB_14_验证码 水印特效
第4 章 验证码、水印特效
- 0 -
在上一章我们介绍了Ajax 的原理、以及其实现。由于Ajax编程可以大大的提高用户的体
验程度,所以在目前的web应用程序开发中使用的越来越多,并涌现出了一些比较优秀的Ajax
框架,如dwr、ext等。本章我们将介绍一种用于防止黑客攻击的编程方法,就是验证码技术。
4.1 验证码简介
在黑客的攻击手段中,有一种方法叫做 “暴力破解”。就是根据获取到的账号,对不同的密
码不停进程尝试登陆。如得知一个账号“张三”、密码有三位,就可以使用一个小的暴力破解的
程序,使用密码 “001”到 “999”不停的访问登录,直到登录成功为止。这就是 “暴力破解”。
“暴力破解”看似很愚笨的方法,但是确实实际可行的,所以我们在开发过程中必须防止
这类的非法访问。这就需要验证码技术。
验证码就是在一张图片上随机生成一些字符,使用这些随机生成的字符作为系统的第一次
登录入口。由于在客户端看到的验证码是以图片的形式存在、所以普通的网页机器人很难从中
获取到字符数据,又因为生成的图片数据是随机的,所以使用 “暴力破解”的穷举方法不能破
解这第一次登录。
4.2 验证码实现
4.2.1 验证码原理
验证码就是在普通的登录或者操作之前添加了一个随机密码的登录,从而防止使用网页机
器人来实现 “暴力破解”,其原理如图4-1所示。
图4-1 验证码原理图
如图4-1所示,在客户端访问登录页面时使用一段java代码生成验证码图片,并将验证码
图片的数据保存在session 中,然后将生成的验证码图片显示在客户端访问的页面中,根据客
户端端输入的验证码数据和保存在session 中的数据比较判断验证结果。当客户端输入的验证
- 1 -
码内容和session 中保存的验证码数据一致是表示通过验证,因为使用暴力破解的一般使用的
是网页机器人,而在网页中验证码的数据是显示在一张图片中的,所以很难读取到,起到防止
暴力破解的作用。
4.2.2 API 介绍
在验证码技术中需要将随机生成的验证码数据显示在图片上,从这个需求我们可以看出,
我们需要使用代码创建一张图片文件、或者图片流,还需要使用随机函数生成随机数据。在JDK
的java.awt包中提供了用于创建和绘制图片的类。
1、BufferedImage类
BufferedImage类表示可访问的图片缓冲区,一个该类型的对象表示一张图片的缓冲区,
可以将该缓冲区的图片数据输出到某一个数据流中,如文件流、response响应流。该类常用的
构造方法如下:
public BufferedImage (int width,int height,int imageType)
其中:
width表示缓冲区所创建图像的宽度,单位是像素。
height表示创建图像的高度,单位是像素。
imageType表示所创建图像的类型,该类型有BufferedImage类中的一组常量指定。
BufferedImage类还定义了许多用于得到图片信息的方法,和设置图片数据的方法。该类常用
的方法如表4-1所示。
表4-1 BufferedImage类常用方法
返回类型 方法名 描述
Graphics2D createGraphics() 创建一个 Graphics2D,可以将它绘制到此
BufferedImage 中。使用得到的Graphics 对
象可以在图片中绘制想要的图形或者文字。
void flush () 刷新所有正用于缓存优化信息的资源。
Graph
您可能关注的文档
最近下载
- 2016-207年度(第18届)研究生支教团服务地分配表.doc VIP
- 大中型野生兽类调查监测技术规范.pdf VIP
- 心内科医疗质量改进措施.pptx VIP
- 交通银行信用卡协商困难证明模板.docx VIP
- 数学01-2024届新高三开学摸底考试卷(新高考专用) (原卷版).docx VIP
- TSCCX A 0010-2024 TCQXS A 0001-2024 信息技术应用创新项目建设规范.pdf VIP
- 工业机器人操作与编程(ABB)课件 项目八 ABB机器人智能分拣.pptx VIP
- 临时用工协议书与临时用工协议书标准9篇.docx VIP
- 2024小学《英语》教师职称考试模拟试卷附参考答案 .pdf VIP
- 医院内部控制管理手册.pdf VIP
文档评论(0)