📄 验证码的程序及原理.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0046)http://www.aspsky.net/article/list.asp?id=2796 -->
<HTML><HEAD><TITLE>验证码的程序及原理|http://www.aspsky.net</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type><LINK
href="的程序及原理http--www_aspsky_net.files/style.css" rel=stylesheet>
<META content="MSHTML 5.00.2919.6307" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff topMargin=2 marginheight="4">
<CENTER>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR>
<TD class=p2 width=466><LINK
href="的程序及原理http--www_aspsky_net.files/style.css" rel=stylesheet>
<META content="Microsoft FrontPage 4.0" name=GENERATOR>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR>
<TD height=54 width=181><IMG border=0 height=60
src="的程序及原理http--www_aspsky_net.files/LOGO.gif" width=181></TD>
<TD align=middle class=p2 height=70 width=492>
<DIV id=flash2 style="VISIBILITY: visible; Z-INDEX: -1"><A
href="http://www.ruixun.net/index.htm" target=_blank><IMG border=0
height=60 src="的程序及原理http--www_aspsky_net.files/ad1.gif"
width=468></A></DIV></TD>
<TD align=middle class=p2 style="LINE-HEIGHT: 150%" width=82><BR><A
href="http://www.aspsky.net/tell.asp">联系方法</A></TD></TR>
<TR>
<TD height=8 width=181></TD>
<TD class=p2 width=492></TD>
<TD class=p2 width=82></TD></TR></TBODY></TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR>
<TD colSpan=3 height=22>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=738>
<TBODY>
<TR>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top01.gif height=30
width=81><B><FONT color=#ffffff><IMG height=15
src="的程序及原理http--www_aspsky_net.files/dstop.gif" width=1><A
class=lb href="http://www.aspsky.net/">动网首页</A></FONT></B></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.dvbbs.net/">动网论坛</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="" width=1></FONT><A class=lb
href="http://www.aspsky.net/article/index.asp?classid=2">ASP技术</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.aspsky.net/article/index.asp?classid=1">.NET专区</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.aspsky.net/article/index.asp?classid=5">数据库</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.aspsky.net/article/index.asp?classid=3">PHP技术</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.aspsky.net/article/index.asp?classid=4">JAVA技术</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.aspsky.net/download/index.asp">下载中心</A></B></FONT></TD>
<TD align=middle
background=的程序及原理http--www_aspsky_net.files/top02.gif
width=82><FONT color=#719bc1><B><FONT color=#ffffff><IMG
height=15 src="的程序及原理http--www_aspsky_net.files/dstop.gif"
width=1></FONT><A class=lb
href="http://www.aspsky.net/itrade/index.asp">项目交易</A></B></FONT></TD></TR></TBODY></TABLE></TD></TR>
<TR bgColor=#2b7eff>
<TD bgColor=#2b7eff width=64><IMG height=23 src="" width=5></TD>
<TD bgColor=#2b7eff width=343><FONT color=#0000ff><FONT
color=#3399ff><FONT color=#ccffff>
<SCRIPT language=JavaScript>
var today = new Date();
var strDate = (today.getFullYear() + "年" +
(today.getMonth() + 1) + "月" + today.getDate() + "日 ");
var n_day = today.getDay();
switch (n_day)
{
case 0:{
strDate = strDate + "星期日"
}break;
case 1:{
strDate = strDate + "星期一"
}break;
case 2:{
strDate = strDate + "星期二"
}break;
case 3:{
strDate = strDate + "星期三"
}break;
case 4:{
strDate = strDate + "星期四"
}break;
case 5:{
strDate = strDate + "星期五"
}break;
case 6:{
strDate = strDate + "星期六"
}break;
case 7:{
strDate = strDate + "星期日"
}break;
}
document.write(strDate);
</SCRIPT>
</FONT></FONT></FONT></TD>
<TD align=middle width=385><FONT color=#ccffff><IMG align=absMiddle
height=15 src="的程序及原理http--www_aspsky_net.files/home.gif" width=15>
</FONT><A href="http://www.aspsky.net/#"
onclick='this.style.behavior="url(#default#homepage)";this.setHomePage("http://www.aspsky.net")'
target=_self><FONT color=#ccffff>设为首页</FONT></A><FONT color=#ccffff>
<IMG align=absMiddle height=15
src="的程序及原理http--www_aspsky_net.files/favorite.gif" width=15>
</FONT><A
href="javascript:window.external.AddFavorite('http://www.aspsky.net','动网先锋(www.aspsky.net)')"
target=_self><FONT color=#ccffff>加入收藏</FONT></A><FONT color=#ccffff>
<IMG align=absMiddle height=15
src="的程序及原理http--www_aspsky_net.files/email.gif" width=15><A
href="http://www.dvbbs.net/" target=_top><FONT
color=#ccffff>会员中心</A></FONT></FONT></TD></TR></TBODY></TABLE>
<TABLE align=center border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR bgColor=#3366ff>
<TD height=2></TD></TR></TBODY></TABLE>
<CENTER></CENTER></TD>
<TD class=p2 width=102></TD></TR></TBODY></TABLE>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR>
<TD height=1></TD></TR>
<TR bgColor=#ffcc00>
<TD align=right height=23 width=355>
<CENTER></CENTER>
<P align=center>中国动感资源交流,网络动感资源荟萃</P></TD>
<TD align=middle>
<P align=center><A href="http://www.moonet.com/edu/">教育网</A>
英文版</P></TD></TR></TBODY></TABLE>
<CENTER>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR vAlign=top>
<TD bgColor=#297dff width=1> </TD>
<TD width=753></TD>
<TD bgColor=#297dff width=1> </TD></TR></TBODY></TABLE>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=755>
<TBODY>
<TR vAlign=top>
<TD bgColor=#297dff width=1> </TD>
<TD width=753>
<TABLE border=0 cellPadding=0 cellSpacing=0 width="100%">
<TBODY>
<TR>
<TD bgColor=#297dff colSpan=2 height=20><FONT color=#ceffff> →
<A href="http://www.aspsky.net/article/index.asp?classid=2"><FONT
color=#ceffff>ASP技术</FONT></A> >> <A
href="http://www.aspsky.net/article/index.asp?classid=2&Nclassid=2"><FONT
color=#ceffff>ASP应用</FONT></A> >> 《验证码的程序及原理》</FONT></TD></TR>
<TR>
<TD bgColor=#586011 colSpan=2 height=1><SPACER type="block"
width="1"></TD></TR>
<TR>
<TD colSpan=2 height=7></TD></TR>
<TR>
<TD align=middle class=p4
colSpan=2><B>验证码的程序及原理</B></FONT><BR>2002-11-28 动网先锋
</TD></TR>
<TR>
<TD class=p4 colSpan=2>
<BLOCKQUOTE><BR>##### 版权所有 转载请保留 谢谢合作 <BR>##### 部分程序取自网络 <BR>#####
作者:扬子 <BR>##### Email: yangzinet@hotmail.com <BR>##### QQ:
21112856<BR>##### WebSite: www.tingfo.net
<P></P>
<P></P>
<P>一共4个页面:form.asp; chk.asp; num.asp;
count.asp<BR>得到一个随即数字。加密!<BR>解密后成成XBM图片<BR>利用session 判断</P>
<P>form.asp</P>
<P><BR><%<BR>'### To encrypt/decrypt include this code in your
page <BR>'### strMyEncryptedString =
EncryptString(strString)<BR>'### strMyDecryptedString =
DeCryptString(strMyEncryptedString)<BR>'### You are free to use
this code as long as credits remain in place<BR>'### also if you
improve this code let me know.<BR><BR>Private Function
EncryptString(strString)<BR>'####################################################################<BR>'###
Crypt Function (C) 2001 by Slavic Kozyuk grindkore@yahoo.com
###<BR>'### Arguments: strString <--- String you wish to
encrypt ###<BR>'### Output: Encrypted HEX string
###<BR>'####################################################################<BR><BR>Dim
CharHexSet, intStringLen, strTemp, strRAW, i, intKey,
intOffSet<BR>Randomize Timer<BR><BR>intKey = Round((RND * 1000000)
+ 1000000) '##### Key Bitsize<BR>intOffSet = Round((RND * 1000000)
+ 1000000) '##### KeyOffSet Bitsize<BR><BR>If IsNull(strString) =
False Then<BR>strRAW = strString<BR>intStringLen =
Len(strRAW)<BR><BR>For i = 0 to intStringLen - 1<BR>strTemp =
Left(strRAW, 1)<BR>strRAW = Right(strRAW, Len(strRAW) -
1)<BR>CharHexSet = CharHexSet & Hex(Asc(strTemp) *
intKey)& Hex(intKey)<BR>Next<BR><BR>EncryptString = CharHexSet
& "|" & Hex(intOffSet + intKey) & "|" &
Hex(intOffSet)<BR>Else<BR>EncryptString = ""<BR>End If<BR>End
Function<BR><BR><BR><BR><BR>Private Function
DeCryptString(strCryptString)<BR>'####################################################################<BR>'###
Crypt Function (C) 2001 by Slavic Kozyuk grindkore@yahoo.com
###<BR>'### Arguments: Encrypted HEX stringt ###<BR>'### Output:
Decrypted ASCII string
###<BR>'####################################################################<BR>'###
Note this function uses HexConv() and get_hxno() functions
###<BR>'### so make sure they are not removed
###<BR>'####################################################################<BR><BR>Dim
strRAW, arHexCharSet, i, intKey, intOffSet, strRawKey,
strHexCrypData<BR><BR><BR>strRawKey = Right(strCryptString,
Len(strCryptString) - InStr(strCryptString, "|"))<BR>intOffSet =
Right(strRawKey, Len(strRawKey) - InStr(strRawKey,"|"))<BR>intKey
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -