作家
登录

一段在asp中加密与解密对应的函数

作者: 来源:www.28hudong.com 2013-03-30 08:45:31 阅读 我要评论

在ASP中加密方法有对应的解密方法好象不多,现在根据前辈资料整理出在asp中加密与解密函数 rsa.asp <% rem 在ASP中实现加密与解密,加密方法:根据RSA rem 联系:hnsoso@sina.com Class clsRSA   Public PrivateKey   Public PublicKey   Public Modulus            Public Function Crypt(pLngMessage, pLngKey)     On Error Resume Next     Dim lLngMod     Dim lLngResult     Dim lLngIndex     If pLngKey Mod 2 = 0 Then       lLngResult = 1       For lLngIndex = 1 To pLngKey / 2         lLngMod = (pLngMessage ^ 2) Mod Modulus         ' Mod may error on key generation         lLngResult = (lLngMod * lLngResult) Mod Modulus         If Err Then Exit Function       Next     Else       lLngResult = pLngMessage       For lLngIndex = 1 To pLngKey / 2         lLngMod = (pLngMessage ^ 2) Mod Modulus         On Error Resume Next         ' Mod may error on key generation         lLngResult = (lLngMod * lLngResult) Mod Modulus         If Err Then Exit Function       Next     End If     Crypt = lLngResult   End Function   Public Function Encode(ByVal pStrMessage)     Dim lLngIndex     Dim lLngMaxIndex     Dim lBytAscii     Dim lLngEncrypted     lLngMaxIndex = Len(pStrMessage)     If lLngMaxIndex = 0 Then Exit Function     For lLngIndex = 1 To lLngMaxIndex       lBytAscii = Asc(Mid(pStrMessage, lLngIndex, 1))       lLngEncrypted = Crypt(lBytAscii, PublicKey)       Encode = Encode & NumberToHex(lLngEncrypted, 4)     Next   End Function      Public Function Decode(ByVal pStrMessage)     Dim lBytAscii     Dim lLngIndex     Dim lLngMaxIndex     Dim lLngEncryptedData     Decode = ""     lLngMaxIndex = Len(pStrMessage)     For lLngIndex = 1 To lLngMaxIndex Step 4       lLngEncryptedData = HexToNumber(Mid(pStrMessage, lLngIndex, 4))       lBytAscii = Crypt(lLngEncryptedData, PrivateKey)       Decode = Decode & Chr(lBytAscii)     Next   End Function      Private Function NumberToHex(ByRef pLngNumber, ByRef pLngLength)     NumberToHex = Right(String(pLngLength, "0") & Hex(pLngNumber), pLngLength)   End Function   Private Function HexToNumber(ByRef pStrHex)     HexToNumber = CLng("&h" & pStrHex)   End Function End Class %> test.asp <!--#INCLUDE FILE="RSA.asp"--> <% function Encryptstr(Message) Dim LngKeyE Dim LngKeyD Dim LngKeyN Dim StrMessage Dim ObjRSA   LngKeyE = "32823"   LngKeyD = "20643"   LngKeyN = "29893"   StrMessage = Message      Set ObjRSA = New clsRSA            ObjRSA.PublicKey = LngKeyE       ObjRSA.Modulus = LngKeyN       Encryptstr = ObjRSA.Encode(StrMessage)   Set ObjRSA = Nothing end function function decryptstr(Message) Dim LngKeyE Dim LngKeyD Dim LngKeyN Dim StrMessage Dim ObjRSA   LngKeyE = "32823"   LngKeyD = "20643"   LngKeyN = "29893"   StrMessage = Message      Set ObjRSA = New clsRSA       ObjRSA.PrivateKey =LngKeyD       ObjRSA.Modulus=LngKeyN       decryptstr=ObjRSA.Decode(StrMessage)   Set ObjRSA = Nothing end function dim last,first first="sohu" Response.Write "加密前为:"&first last=Encryptstr(first) Response.Write "加密后为"&last Response.Write "解密后为" &decryptstr(last) %>

  推荐阅读

  用asp实现批量删除bak文件

复制代码 代码如下:<% @language=vbscript codepage=936 %> <% '批量文件自动搜索替换插入器 Ver2.0 '飞云编写,CSDN帐号:jspadmin,QQ:33323489 '个人网站http://www.pifoo.com 蚍蜉中文站,欢迎交换链接。本站提供>>>详细阅读


本文标题:一段在asp中加密与解密对应的函数

地址:http://www.17bianji.com/kaifa2/ASP/32699.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)