您的位置:首页网页设计ASP实例 → 简单的加密方法:XOR

简单的加密方法:XOR

时间:2004/11/7 2:56:00来源:本站整理作者:蓝点我要评论(0)

念书的时候使用对数据进行加密的方法最简单的就是异或了,看到有人想要加密算法,就把以前的资料翻了一下,整理了一系列加密的函数,当然简单的加密也是容易破解的,但聊胜于无(记得把密要钥放好了),总比让人一打开数据库就看见密码明码好吧。:-)



<%

'最简单的加密方法:XOR

'----------------------



g_CryptThis = "中国-China"

strFullKeyLen = Len(g_CryptThis)



strFullKey = KeyGen(strFullKeyLen)



Response.Write "

原始字符串: " & g_CryptThis & "

"

Response.Write "

密钥: " & strFullKey  & "

"

Response.Write "

加密后: " & Server.URLEncode(EnCrypt(g_CryptThis)) & "

"

Response.Write "

解密后: " & DeCrypt(EnCrypt(g_CryptThis)) & "

"



'异或加密

Function EnCrypt(strCryptThis)

   Dim strChar, iKeyChar, iStringChar, i

   for i = 1 to Len(strCryptThis)

      iKeyChar = Asc(mid(strFullKey,i,1))

      iStringChar = Asc(mid(strCryptThis,i,1))

      iCryptChar = iKeyChar Xor iStringChar

      strEncrypted =  strEncrypted & Chr(iCryptChar)

   next

   EnCrypt = strEncrypted

End Function



'异或解密

Function DeCrypt(strEncrypted)

Dim strChar, iKeyChar, iStringChar, i

   for i = 1 to Len(strEncrypted)

      iKeyChar = (Asc(mid(strFullKey,i,1)))

      iStringChar = Asc(mid(strEncrypted,i,1))

      iDeCryptChar = iKeyChar Xor iStringChar

      strDecrypted =  strDecrypted & Chr(iDeCryptChar)

   next

   DeCrypt = strDecrypted

End Function



'产生指定长度的随机密钥

Function KeyGen(strlength)

    Dim i,UB

    Dim Temp

    Dim Poss

    Poss = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"

    Temp = ""



    UB = Len(Poss)

    For i = 1 To strlength

        Randomize

        Temp = Temp & Mid(Poss,Int((UB - 0 + 1) * Rnd + 1),1)

    Next

    KeyGen = Temp

End Function

%>




相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 迅雷新手完全入门手册 asp下面javascript上传图片限制格式大小方法告诉大家网页弹出窗口应用总结ASP常见错误类型大全asp常见错误分析和解决办法

人气排行 总是弹出visual studio 实时调试器 三种解决SQLSERVER存储过程及调用详解Asp获取真实IP地址ASP中连接Mssql的几种方法一个简单好用的UBB编辑器(含代码)如何用Split将字符串转换为数组并获取数组下ASP防止表单重复提交的办法告诉你免费的简单聊天室源代码