asp 加密 解密 类
来源:互联网 发布:安卓看片用什么软件 编辑:程序博客网 时间:2024/03/29 16:31
<%
rem ##############################################
rem 加密解密
rem ##############################################
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
%>
<%
rem 加密调用
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
rem 解密调用
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 加密 解密 类
- Asp.net 加密解密类
- asp编写的加密和解密类
- asp编写的加密和解密类
- asp加密解密程序
- asp文件解密 加密
- ASP.NET加密解密
- Asp.Net 加密解密
- ASP.NET加密解密
- asp.net DES加密解密
- asp.net DES加密解密
- ASP的DES加密解密
- asp.net DES加密解密
- asp.net 加密解密URL
- asp.net DES加密解密
- asp.net中的加密解密
- ASP.NET常用加密解密
- ASP.NET URL加密解密
- The C++ Programming Language 学习笔记(ch1 ,ch2)
- 字符内存动态分配管理类(CAutoMem)
- apache 配置疑难之一 让未知文件提示下载
- 正宗港行诺基亚N70的极速鉴别方法
- 让浏览器定时刷新网页或跳转至其他页面
- asp 加密 解密 类
- 排序算法五例
- 各种排序算法
- 设计模式之Composite(组合)
- Apache 服务器负载测试
- php 实现的基本数据结构
- 设计模式之Decorator(油漆工)
- Design Patterns -- Bridge
- 用javaScript写了两个简单网页,留着以后参考(之一)