网页特效代码┊JsCode.CN
网页特效代码 您的位置:首页 > 网页制作教程 > 动态网站制作
RSS订阅

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

[ 发布者:佚名┊来源:网络整理┊时间:2006-03-25┊浏览: 人次 ]
    在ASP中加密方法有对应的解密方法好象不多,现在根据前辈资料整理出在asp中加密与解密函数
  
  rsa.asp
  <%
  rem 在ASP中实现加密与解密,加密方法:根据RSA
  rem 联系:[email protected]
  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编程技巧大全
本类相关信息
改mdb为asp就能防下载技术的探讨
  引子:昨天和animator试验了一下,把data.mdb文件改名为data.asp文件...
Active Server Pages是什么?
Active Server Pages 是什么?     Active Server Pages实际上是将标准...
树型结构在ASP中的简单解决
>>>>树型结构在我们应用程序中还是很常见的,比如文件目录,...
asp判断函数一览及网页制作常用技(2)...
ASP网页制作技巧1.获得系统时间:   <%=now()%>2.取得来访用的IP:...
CopyRight © 2005-2008 JsCode.CN All Rights Reserved
网页特效代码┊JsCode v3.0 Designed By 在远方
说明:本站提供最新精选的免费网页特效代码,包括网页背景特效,网页文字特效,网页图片特效,导航菜单特效代码等20多种常用网页特效代码下载,以及Flash特效,网页模版,字体大全,字体下载等网页制作特效素材资源。网页特效代码欢迎您的光临!