【www.bbyears.com--C语言】
为了对付暴力破解登录密码,在用户注册或者登录的时候采用输入验证码被普遍采用。生成验证码的方法有很多,这里仅介绍生成数字验证码的思路及实现方法。(以下程序语言均为VBS)数字验证码一般由随机数生成,也可以由时间生成,例如分别取分、秒、毫秒,但笔者认为其安全性不及前者。
1、验证码的生成程序(采用随机数方式)
[FileName]:getverifycode.asp
[Code]:<%
dim getrandom
Randomize "设置随机因子
getrandom=mid((rnd*100000),1,4) "生成6位随机数,取高4位
Session("verifycode")=getrandom "保存于Session中
%>
把该文件使用include嵌套于要显示验证码的页面上。把生成的验证码存放于Session中的作用是在提交数据后,在验证页面读取用户输入的值与该值相比较,如果吻合则证明其数据来源合法,可进行下一步操作。
2、验证码的生成程序
随机数生成后,可通过两种方法显示,一种是直接显示,另外一种是图片显示。以下着重介绍图片显示方法。首先我们要用绘图软件制作内容分别为数字0~9的图片共10张,分别取名为1.gif、2.gif……,以此类推。制作完毕后我们就可以着手编写代码了。代码如下:
[Code]:.gif" width="15" height="15" alt="">
.gif" width="15" height="15" alt="">
.gif" width="15" height="15" alt="">
.gif" width="15" height="15" alt="nۯۯ"http://www.bbyears.com/clist-256-1.html" target="_blank" class="keylink">其它必须信息,提交之后,就要在接收数据页面进行相应的验证处理。过程比较简单,只要把用户输入的验证码与存放于Session中的相比较就可以了。代码如下: