可逆加密,支持中文,支持密钥,支持ASP,加密后的密文每次都不同,且可随意改变算法
可逆加密组件
====================== 使用方法 ==========================
Dim objEncrypt
Set objEncrypt = Server.CreateObject("myEncrypt.clsEncrypt")
Dim strReturn '加密后文本
Dim strValue '加密前文本
'加密开始
'设置密钥(此行可以省略)
objEncrypt.KeyCode="1111"
'开始加密
strReturn = objEncrypt.Encrypt(strValue)
'解密
'设置密钥(如果加密时没有设置,此行可以省略)
objEncrypt.KeyCode="1111"
'开始解密
strReturn = objEncrypt.UnEncrypt(strValue)
注意:
strReturn可能返回以下值
-3 : 密钥长度超过10
-2 : 表示文本设置了密钥,但是解密时没有指定密钥
-1 : 表示文本设置了密钥,但是解密时指定的密钥与原先设置的密钥不一样
注意:密钥需要小于10个字符且必须为键盘上的字符,否则可能导致无法正确解密
====================== 版本历史 ============================================
20041130:
修正大文本溢出错误
更改特殊字符处理方式,理论上提高执行速度1000倍
增加密钥,进一步增加安全性
20041126:
临时解决双引号字符加密和解密问题,但是导致效率降低
20041125:
目前的可逆算法处理中文的时候都有些问题
我现在用的在VB中使用没有问题,但是在ASP中因为少了个函数所以解密不能实现
我专门写了个组件和测试文件
如果你可以使用组件的话直接用我的那个组件就可以了
另外附上组件的完整代码
有一个小问题就是
因为ASP中双引号的特殊用途
对有双引号字符加密和解密会有问题