当前位置: 首页 > 图文教程 > 网络编程 > ASP > 纯猝使用VBScript来实现加密

ASP
JS复制特定内容到粘贴板
ASP+Access数据库安全设置方法小结
ADSI+ASP添加IP到IIS禁止访问列表中
ASP Google的translate API代码
最小asp后门程序
asp xml 缓存类
asp 过滤尖括号内所有内容的正则代码
ASP去掉字符串头尾连续回车和空格的Function
ASP IE地址栏参数的判断
SQL 注入式攻击的终极防范
ASP也使用ORM,给ASP上所有的SQL注入画上句号
判断Session的过期时间 采用JavaScript实时显示剩余多少秒
asp 动态生成rss(不成生xml文件)代码
ASP XML制作菜单管理程序
asp之自动闭合HTML/ubb标签函数附简单注释
asp 读取文件和保存文件函数代码
asp 随机字符串函数
asp form 表单验证函数
ASP 循环导入导出数据处理 不使用缓存
asp 数据库连接函数代码

ASP 中的 纯猝使用VBScript来实现加密


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

  <%
'### 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 = 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
hexVa