摘要:RSA加密
01 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="RSA.aspx.cs" Inherits="RSA" ValidateRequest="false" %>
02
03 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
04 <html xmlns="http://www.w3.org/1999/xhtml">
05 <head runat="server">
06 <title></title>
07 </head>
08 <body>
09 <form id="form1" runat="server">
10 <div>
11 <table>
12 <tr>
13 <td>
14 <asp:TextBox ID="txtOriginal" runat="server"></asp:TextBox></td>
15 <td>
16 <asp:Button ID="btnEncrypt" runat="server" OnClick="btnEncrypt_Click" Text="加密" /></td>
17 <td>
18 <asp:TextBox ID="txtEncrypted" runat="server"></asp:TextBox></td>
19 <td>
20 <asp:Button ID="btnDecrypt" runat="server" OnClick="btnDecrypt_Click" Text="解密" /></td>
21 <td>
22 <asp:TextBox ID="txtDecrypted" runat="server"></asp:TextBox></td>
23 </tr>
24 <tr>
25 <td>
26 </td>
27 <td>
28 <asp:Label ID="lblPrivateKey" runat="server" Text="解密私鑰"></asp:Label></td>
29 <td>
30 <asp:TextBox ID="txtPrivateKey" runat="server"></asp:TextBox></td>
31 <td>
32 </td>
33 <td>
34 </td>
35 </tr>
36 </table>
37 </div>
38 </form>
39 </body>
40 </html>
02
03 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
04 <html xmlns="http://www.w3.org/1999/xhtml">
05 <head runat="server">
06 <title></title>
07 </head>
08 <body>
09 <form id="form1" runat="server">
10 <div>
11 <table>
12 <tr>
13 <td>
14 <asp:TextBox ID="txtOriginal" runat="server"></asp:TextBox></td>
15 <td>
16 <asp:Button ID="btnEncrypt" runat="server" OnClick="btnEncrypt_Click" Text="加密" /></td>
17 <td>
18 <asp:TextBox ID="txtEncrypted" runat="server"></asp:TextBox></td>
19 <td>
20 <asp:Button ID="btnDecrypt" runat="server" OnClick="btnDecrypt_Click" Text="解密" /></td>
21 <td>
22 <asp:TextBox ID="txtDecrypted" runat="server"></asp:TextBox></td>
23 </tr>
24 <tr>
25 <td>
26 </td>
27 <td>
28 <asp:Label ID="lblPrivateKey" runat="server" Text="解密私鑰"></asp:Label></td>
29 <td>
30 <asp:TextBox ID="txtPrivateKey" runat="server"></asp:TextBox></td>
31 <td>
32 </td>
33 <td>
34 </td>
35 </tr>
36 </table>
37 </div>
38 </form>
39 </body>
40 </html>
01
using System;
02
using System.Data;
03
using System.Configuration;
04
using System.Collections;
05
using System.Web;
06
using System.Web.Security;
07
using System.Web.UI;
08
using System.Web.UI.WebControls;
09
using System.Web.UI.WebControls.WebParts;
10
using System.Web.UI.HtmlControls;
11
using System.Security.Cryptography;
12
using System.Text;
13
14
public partial class RSA : System.Web.UI.Page
15
{
16
protected void Page_Load(object sender, EventArgs e)
17
{
18
19
}
20
21
protected void btnEncrypt_Click(object sender, EventArgs e)
22
{
23
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
24
this.txtPrivateKey.Text = rsa.ToXmlString(true);
25
byte[] rgb = Encoding.Default.GetBytes(this.txtOriginal.Text);
26
//RSA加密
27
byte[] encryptedData = rsa.Encrypt(rgb, false);
28
this.txtEncrypted.Text = Convert.ToBase64String(encryptedData);
29
}
30
31
protected void btnDecrypt_Click(object sender, EventArgs e)
32
{
33
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
34
rsa.FromXmlString(this.txtPrivateKey.Text);
35
byte[] rgb = Convert.FromBase64String(this.txtEncrypted.Text);
36
//RSA解密
37
byte[] decryptedData = rsa.Decrypt(rgb, false);
38
this.txtDecrypted.Text = Encoding.Default.GetString(decryptedData);
39
}
40
}
using System; 02
using System.Data; 03
using System.Configuration; 04
using System.Collections; 05
using System.Web; 06
using System.Web.Security; 07
using System.Web.UI; 08
using System.Web.UI.WebControls; 09
using System.Web.UI.WebControls.WebParts; 10
using System.Web.UI.HtmlControls; 11
using System.Security.Cryptography; 12
using System.Text; 13
14
public partial class RSA : System.Web.UI.Page 15
{ 16
protected void Page_Load(object sender, EventArgs e) 17
{ 18
19
} 20
21
protected void btnEncrypt_Click(object sender, EventArgs e) 22
{ 23
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); 24
this.txtPrivateKey.Text = rsa.ToXmlString(true); 25
byte[] rgb = Encoding.Default.GetBytes(this.txtOriginal.Text); 26
//RSA加密 27
byte[] encryptedData = rsa.Encrypt(rgb, false); 28
this.txtEncrypted.Text = Convert.ToBase64String(encryptedData); 29
} 30
31
protected void btnDecrypt_Click(object sender, EventArgs e) 32
{ 33
RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); 34
rsa.FromXmlString(this.txtPrivateKey.Text); 35
byte[] rgb = Convert.FromBase64String(this.txtEncrypted.Text); 36
//RSA解密 37
byte[] decryptedData = rsa.Decrypt(rgb, false); 38
this.txtDecrypted.Text = Encoding.Default.GetString(decryptedData); 39
} 40
}執行結果:
解密私鑰:
using

