ASP对字符串包括汉字及特殊字符简单可逆性加密与解密函数

本函数可以加密和解密英文字母、数字、中文、标点符号、特殊符号、日文等所有字符。

在线预览地址:http://www.lingchenliang.com/demo/asp/gw_jiami.asp

<%
'=================== ASP对字符串简单可逆性加密与解密算法 =======================
'作者:凌陈亮www.lingchenliang.com(QQ:57404811)
'声明:自制的可逆性加密算法,应用于简单的加密方案。可加以修改,将其变为更精妙的加密算法。
'gw_jiami函数为:将原字符串加密为密文。
'gw_jiemi函数为:将密文还原为原字符串。
'=================================================================
function gw_jiami(text)
    const key="gw" '自定义密钥
    dim str : str=key & text '密钥与字符结合
    dim str1
    dim str2
    for i=1 to len(str)
        'asc函数:返回字符串的第一个字母对应的ANSI字符代码
        'AscW函数:返回每一个GB编码文字的Unicode字符代码
        'hex函数:返回表示十六进制数字值的字符串
        str2=hex(AscW(mid(str,i,1)))
        for j=1 to 4-len(str2)
            str2="0" & str2 '每个字符都转成4位编码
        next
        str1=str1 & str2
    next
    gw_jiami=strreverse(str1) '将字符串倒序排列
end function
function gw_jiemi(text)
    const key="gw" '自定义密钥,需和加密时的密钥相同
    dim str : str=text
    dim str1
    dim str2 : str2=strreverse(str) '将字符串倒序排列
    for i=1 to len(str2) step 4 '4位编码为一个字符
        'cint函数:将Variant类型强制转换成int类型
        'chr函数:返回数值对应的ANSI编码字符
        'ChrW函数:返回数值对应的Unicode编码字符
        str1=str1 & ChrW(cint("&H" & mid(str2,i,4)))
    next
    gw_jiemi=mid(str1,len(key)+1,len(str)-len(key))
end function
%>