在asp中通过vbs类实现rsa加密与解密

鸿泰众和兔业

鸿泰众和兔业

2016-01-29 20:24

在asp中通过vbs类实现rsa加密与解密,在asp中通过vbs类实现rsa加密与解密

本文章有两文件组成
test.asp 测试演示文件
clsrsa.asp 实现rsa加密与解密的vbs类文件
下面是代码:

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/asp/)

1. test.asp

<%
rem 文章标题:在asp中通过vbs类实现rsa加密与解密
rem 收集整理:yanek
rem 联系:aspboy@263.net

%
<%Option Explicit%
<!--#INCLUDE FILE="clsRSA.asp"--
<%

Dim LngKeyE
Dim LngKeyD
Dim LngKeyN
Dim StrMessage
Dim ObjRSA
If Not Request.Form = "" Then

LngKeyE = Request.Form("KeyE")
LngKeyD = Request.Form("KeyD")
LngKeyN = Request.Form("KeyN")
StrMessage = Request.Form("Message")

Set ObjRSA = New clsRSA

Select Case Request.Form("Action")
Case "Generate Keys"
Call ObjRSA.GenKey()
LngKeyE = ObjRSA.PublicKey
LngKeyD = ObjRSA.PrivateKey
LngKeyN = ObjRSA.Modulus
Case "Encrypt"
ObjRSA.PublicKey = LngKeyE
ObjRSA.Modulus = LngKeyN
StrMessage = ObjRSA.Encode(StrMessage)
Case "Decrypt"
ObjRSA.PrivateKey = LngKeyD
ObjRSA.Modulus = LngKeyN
StrMessage = ObjRSA.Decode(StrMessage)
End Select

Set ObjRSA = Nothing

End If
%
<HTML
<HEAD
<TITLERSA Cipher Demonstration</TITLE
</HEAD
<BODY
<H1RSA Cipher Demonstration</H1
<P
You will first need to generate your public/privage key-pair
before you can encrypt/decrypt messages.
</P
<FORM method="post"
<TABLE
<TR
<TDPublic Key</TD
<TD<INPUT name="KeyE" value="<%=Server.HTMLEncode(LngKeyE)%"</TD
<TD rowspan="3"
<INPUT type="Submit" name="Action" value="Generate Keys"
</TD
</TR
<TR
<TDPrivate Key</TD
<TD<INPUT name="KeyD" value="<%=Server.HTMLEncode(LngKeyD)%"</TD
</TR
<TR
<TDModulus</TD
<TD<INPUT name="KeyN" value="<%=Server.HTMLEncode(LngKeyN)%"</TD
</TR
<TR
<TD colspan="3"
Test Message:<BR
<TEXTAREA name="Message" cols="50" rows="7"<%=Server.HTMLEncode(StrMessage)%</TEXTAREA
</TD
</TR
<TR
<TD align="right" colspan="3"
<INPUT type="Submit" name="Action" value="Encrypt"
<INPUT type="Submit" name="Action" value="Decrypt"
</TD
</TR
</TABLE
</FORM
</BODY
</HTML

clsrsa.asp

<%
rem 实现rsa加密与解密的vbs类文件
rem 文章标题:在asp中通过vbs类实现rsa加密与解密
rem 收集整理:yanek
rem 联系:aspboy@263.net

' RSA Encryption Class
'
' .PrivateKey
' Your personal private key. Keep this hidden.
'
' .PublicKey
' Key for others to encrypt data with.
'
' .Modulus
' Used with both public and private keys when encrypting
' and decrypting data.
'
' .GenKey()
' Creates Public/Private key set and Modulus
'
' .Crypt(pLngMessage, pLngKey)
' Encrypts/Decrypts message and returns
' as a string.
'
' .Encode(pStrMessage)
' Encrypts message and returns in double-hex format
'
' .Decode(pStrMessage)
' Decrypts message from double-hex format and returns a string
'
Class clsRSA

Public PrivateKey
Public PublicKey
Public Modulus

Public Sub GenKey()
Dim lLngPhi
Dim q
Dim p

Randomize

Do
Do

' 2 random primary numbers (0 to 1000)
Do
p = Rnd * 1000 1
Loop While Not IsPrime(p)

Do
q = Rnd * 1000 1
Loop While Not IsPrime(q)

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/asp/)


' n = product of 2 primes
Modulus = p * q 1

' random decryptor (2 to n)
PrivateKey = Rnd * (Modulus - 2) 1 + 2

lLngPhi = (p - 1) * (q - 1) 1
PublicKey = Euler(lLngPhi, PrivateKey)

Loop While PublicKey = 0 Or PublicKey = 1

' Loop if we can't crypt/decrypt a byte
Loop While Not TestCrypt(255)

End Sub

Private Function TestCrypt(ByRef pBytData)
Dim lStrCrypted
lStrCrypte

展开更多 50%)
分享

猜你喜欢

在asp中通过vbs类实现rsa加密与解密

ASP
在asp中通过vbs类实现rsa加密与解密

在ASP.Net中实现RSA加密

ASP
在ASP.Net中实现RSA加密

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

android md5加密与rsa加解密实现代码

编程语言 网络编程
android md5加密与rsa加解密实现代码

asp编写的加密和解密类

ASP
asp编写的加密和解密类

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

用Asp写个加密和解密的类

ASP
用Asp写个加密和解密的类

vbs(asp)的栈类

ASP
vbs(asp)的栈类

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

在ASP中使用SQL语句之3:LIKE、NOT LIKE和 BETWEEN

在ASP中使用SQL语句之3:LIKE、NOT LIKE和 BETWEEN

在ASP中使用SQL语句之2:用WHERE子句设置查询条件

在ASP中使用SQL语句之2:用WHERE子句设置查询条件
下拉加载更多内容 ↓