当前位置: 首页 > 图文教程 > 网络编程 > ASP > 验证码的程序及原理

ASP
[原创]asp下用实现模板加载的的几种方法总结
asp下利用fso实现文件夹或文件移动改名等操作函数
asp cint clng的范围与防止cint和clng的溢出解决方法大全
asp防范跨站点脚本攻击的的方法
独孤剑写的马克斯迅雷片库采集插件1.4 官方最新版提供下载了
根据日期得到生肖的ASP函数
不错的主要用于加密的vbs(asp)位移运算类
Script.VBS.Agent.ai juan.vbs专杀
循环取值Request.QueryString的用法
asp下实现字符串的补充fill()
无服务器做任意二级米子站
几种另类的ASP后门
asp事物功能简单小应用
ASP获取网页全部图片地址并保存为数组的正则
通过客户端验证上传图片文件大小的ASP源码
asp下计算分页的几种方法
谈动态多行多列,循环行和列,输出M行N列的ASP代码
asp在线执行sql语句的函数
asp正则html的图片,对图自动缩放大小
文件名 正则表达式提取方法

ASP 中的 验证码的程序及原理


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 101 ::
收藏到网摘: n/a

       ##### 版权所有 转载请保留 谢谢合作
  ##### 部分程序取自网络
  ##### 作者:扬子
  ##### Email: [email protected]
  ##### QQ: 21112856
  ##### WebSite: www.tingfo.net
  
  
  一共4个页面:form.asp; chk.asp; num.asp; count.asp
  得到一个随即数字。加密!
  解密后成成XBM图片
  利用session 判断
  
  form.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 (C) 2001 by Slavic Kozyuk [email protected] ###
  '### 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 (C) 2001 by Slavic Kozyuk [email protected] ###
  '### 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 = U