asp下的一个很简单的验证码程序第1/3页

主程序共三个

我的调用方式 <script language="javascript" src="/verify/num.asp"></script> 
验证方式 if trim(Loginnum)<>trim(session("Loginnum")) then 
Response.Write Error("验证码错误!") 
Response.End 
end if

num.asp

<% 
'### To encrypt/decrypt include this code in your page 
'### strMyEncryptedString = EncryptString(strString) 
'### strMyDecryptedString = DeCryptString(strMyEncryptedString) 
'### You are free to use this code as long as credits remain in place 
'### also if you improve this code let me know.

Private Function EncryptString(strString) 
'#################################################################### 
'### Crypt Function ? 2001 by Slavic Kozyuk grindkore@yahoo.com ### 
'### Arguments: strString <--- String you wish to encrypt ### 
'### Output: Encrypted HEX string ### 
'####################################################################

Dim CharHexSet, intStringLen, strTemp, strRAW, I, intKey, intOffSet 
Randomize Timer

intKey = Round((RND * 1000000) + 1000000) '##### Key Bitsize 
intOffSet = Round((RND * 1000000) + 1000000) '##### KeyOffSet Bitsize

If IsNull(strString) = False Then 
strRAW = strString 
intStringLen = Len(strRAW)

For i = 0 to intStringLen - 1 
strTemp = Left(strRAW, 1) 
strRAW = Right(strRAW, Len(strRAW) - 1) 
CharHexSet = CharHexSet & Hex(Asc(strTemp) * intKey)& Hex(intKey) 
Next

EncryptString = CharHexSet & "|" & Hex(intOffSet + intKey) & "|" & Hex(intOffSet) 
Else 
EncryptString = "" 
End If 
End Function

Private Function DeCryptString(strCryptString) 
'#################################################################### 
'### Crypt Function ? 2001 by Slavic Kozyuk grindkore@yahoo.com ### 
'### Arguments: Encrypted HEX stringt ### 
'### Output: Decrypted ASCII string ### 
'#################################################################### 
'### Note this function uses HexConv() and get_hxno() functions ### 
'### so make sure they are not removed ### 
'####################################################################

Dim strRAW, arHexCharSet, I, intKey, intOffSet, strRawKey, strHexCrypData

strRawKey = Right(strCryptString, Len(strCryptString) - InStr(strCryptString, "|")) 
intOffSet = Right(strRawKey, Len(strRawKey) - InStr(strRawKey,"|")) 
intKey = HexConv(Left(strRawKey, InStr(strRawKey, "|") - 1)) - HexConv(intOffSet) 
strHexCrypData = Left(strCryptString, Len(strCryptString) - (Len(strRawKey) + 1))

arHexCharSet = Split(strHexCrypData, Hex(intKey))

For i=0 to Ubound(arHexCharSet) 
strRAW = strRAW & Chr(HexConv(arHexCharSet(i))/intKey) 
Next

DeCryptString = strRAW 
End Function

Private Function HexConv(hexVar) 
Dim hxx, hxx_var, multiply 
IF hexVar <> "" THEN 
hexVar = UCASE(hexVar) 
hexVar = StrReverse(hexVar) 
DIM hx() 
REDIM hx(LEN(hexVar)) 
hxx = 0 
hxx_var = 0 
FOR hxx = 1 TO LEN(hexVar) 
IF multiply = "" THEN multiply = 1 
hx(hxx) = mid(hexVar,hxx,1) 
hxx_var = (get_hxno(hx(hxx)) * multiply) + hxx_var 
multiply = (multiply * 16) 
NEXT 
hexVar = hxx_var 
HexConv = hexVar 
END IF 
End Function

Private Function get_hxno(ghx) 
If ghx = "A" Then 
ghx = 10 
ElseIf ghx = "B" Then 
ghx = 11 
ElseIf ghx = "C" Then 
ghx = 12 
ElseIf ghx = "D" Then 
ghx = 13 
ElseIf ghx = "E" Then 
ghx = 14 
ElseIf ghx = "F" Then 
ghx = 15 
End If 
get_hxno = ghx 
End Function

randomize 
num = int(7999*rnd+2000) '计数器的值 
num2 = EncryptString(num) 
session("Loginnum")=num 
%> 
document.write("<img src='/verify/count.asp?sksid=<%=num2%>'>") ' 这里是调用图片的路径

count.asp

当前1/3页 123下一页阅读全文

(0)

相关推荐

  • asp下的一个很简单的验证码程序第1/3页

    主程序共三个 我的调用方式 <script language="javascript" src="/verify/num.asp"></script>  验证方式 if trim(Loginnum)<>trim(session("Loginnum")) then  Response.Write Error("验证码错误!")  Response.End  end if num.asp <

  • Python实现一个简单的验证码程序

    老师讲完random函数,自己写的,虽然和老师示例的不那么美观,智能,但是也自己想出来的,所以记录一下,代码就需要自己不断的自己练习,实战,才能提高啊!不然就像我们这些大部分靠自学的人,何时能学会.还有就是,这次听老师的,把自己的代码添加注释,所以这次把很简单的代码都写上了注释,而且很大白话,不管有没有接触过python的,我相信仔细看了,肯定能看懂.如果看完,再自己尝试着默写出来,那就是更好到了,好了进入正题: 自己写的: __Author__ = "Zhang Peng" impo

  • 一个很简单的jquery+xml+ajax的无刷新树结构(无css,后台是c#)

    复制代码 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.Linq; using System.Xml; using System.Xml.Linq; namespace WebApplication3 { public

  • asp下tag的实现,简单介绍与部分代码

    标签(Tag)是什么? 标签是一种更为自由.灵活,完全由用户决定的分类方式,而非传统的由网站定义的分类.您可以根据自己的理解,对发表的文章.上传的图片.音乐.视频等各种文件添加一个或多个标签,进行灵活的描述.  添加标签(Tag)有什么作用? 标签体现了群体的力量,使得用户之间可以通过相近的内容产生更多的关联和互动.您在发表日志或上传文件时添加了Tag ,就可以看到woku.com所有和您使用了相同Tag 的日志和文件.  标签频道中不同大小.粗细的文字代表什么? 使用不同大小.粗细字体的标签,

  • 一个很简单的无限分类树实现代码

    简单树形 * {margin:0px; padding:0px;} #categoryTree {margin:0px; padding:0px;} #categoryTree ul {display:none; margin:0px;margin-left:5px; padding:0px 0px 0px 15px;} #categoryTree span {cursor:pointer;} window.onload = function() { var cate = document.ge

  • 一个很简单的办法实现TD的加亮效果.

    复制代码 代码如下: function Menu_Init(obj){    var tds = obj.getElementsByTagName("td");     for (var i = 0; i < tds.length; i++)      {        if (tds[i].className == "MenuOptions")       {         tds[i].onmouseover = switch_bg;         t

  • asp下的一个检测链接是否正常的函数

    Function urlChk(sUrl) on error resume next Set xmlHttp = Server.CreateObject("Microsoft.XMLHTTP") xmlHttp.open "GET",sUrl,false xmlHttp.send     if xmlHttp.Status <> 200 then         urlChk=false     else         urlChk=true     

  • asp下最常用的19个基本技巧第1/2页

    asp的19个基本技巧  1. 现在的日期时间命令是 <%=now%> 即可 2.ASP取得表格(from)数据输入的方法,是使用一个内置的对象(object)-Requect, 它以get,post而异. 3.若要自己用VB或其它语言编写,.dll文件供ASP使用需将DLL文件注册方可:DOS下 输入 regsbr32 *.dll 4.显示五个重复的句子,字体越来越大 <% for i=1 to 5 %> <font size=<% =i %> color=#0

  • 如何编写一个最简单的聊天程序?

    chat.html <html> <head> <title>精彩春风之简单聊天</title> </head> <frameset rows="*,100"> <frame src="chatopinions.asp"> <frame src="chatform.asp"> </frameset> </html> chatop

  • asp.net一些很酷很实用的.Net技巧第1/2页

    一..Net Framework 1.  如何获得系统文件夹 使用System.Envioment类的GetFolderPath方法:例如: Environment.GetFolderPath( Environment.SpecialFolder.Personal ) 2.  如何获得正在执行的exe文件的路径 1)  使用Application类的ExecutablePath属性 2)  System.Reflection.Assembly.GetExecutingAssembly().Loc

随机推荐