asp 可逆加密算法

转载 2007年10月09日 14:55:00

 

<%

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

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="love"
Response.Write "加密前为:"&first
last=Encryptstr(first)
Response.Write "加密后为"&last
Response.Write "解密后为" &decryptstr(last)

 

%>

java实现AES可逆加密算法

JAVA实现AES可逆加密算法
  • u011768325
  • u011768325
  • 2014年10月23日 08:34
  • 5439

对称与非对称和可逆不可逆加密算法总结

记得之前考软考和最近考试,总是出现加密算法的题目,在这里总结一下。 对称与非对称和可逆不可逆加密算法总结: 根据密钥类型不同可以将现代密码技术分为两类:对称加密算法(私钥密码体系)和非对称...
  • yang_best
  • yang_best
  • 2014年12月01日 10:16
  • 6410

简易可逆加密解密算法

分享一个简单的可逆加密解密算法 1.基本原理 (1)使用base64_encode和base64_decode函数作为可逆的加密和解密工作函数 (2)把base64_encode出来的字符串通过...
  • PHPSpreader
  • PHPSpreader
  • 2016年12月05日 23:57
  • 3825

MD5、SHA256、SHA512加密算法,以及可逆算法

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We...
  • hdhai9451
  • hdhai9451
  • 2013年09月09日 16:11
  • 19881

java-可逆加密算法

package main;import java.security.Key; import java.security.NoSuchAlgorithmException; import java.se...
  • want_water_fish
  • want_water_fish
  • 2017年06月20日 15:29
  • 338

通过java实现DES可逆算法

/** *@Company: *@Copyright: * */ package com.hcj.test; import java.security.Key; import...
  • u011768325
  • u011768325
  • 2014年10月20日 15:13
  • 1343

PHP可逆加密解密算法

对于大部分密码加密,我们可以采用md5、sha1等方法。可以有效防止数据泄露,但是这些方法仅适用于无需还原的数据加密。   对于需要还原的信息,则需要采用可逆的加密解密算法。 下面一...
  • qq1355541448
  • qq1355541448
  • 2017年05月24日 11:08
  • 316

DES-可逆加密算法

package main;import java.security.Key; import java.security.NoSuchAlgorithmException; import java.se...
  • want_water_fish
  • want_water_fish
  • 2017年06月05日 11:06
  • 225

php可逆的加密解密算法实现

/********************************************************************* 函数名称:encrypt 函数作用:加密解...
  • u012581409
  • u012581409
  • 2014年12月05日 14:46
  • 1487

node不可逆加密和可逆加密的简单实例 crypto模块

加密算法crypto 我很难想象在php里面md5加密只是三个字符的一个方法而已,在node.js中没封装前竟然那么长!! 无法反编译的加密方式 话不多说直接上代码品鉴吧 ...
  • binginsist
  • binginsist
  • 2017年07月19日 11:11
  • 350
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:asp 可逆加密算法
举报原因:
原因补充:

(最多只允许输入30个字)