RSA非对称加密代码
2013-02-28 15:07
375 查看
1. 创建一个CspParameters类的新实例,并传递您要呼叫的密钥容器名称到CspParameters.KeyContainerName域。
2. 创建一个新的RSACryptoServiceProvider实例,并传递CsParameter到它的构造器.
3. 创建字节数组来保存原始,加密和解密数据.
4. 通过字节数组的数据加密方法和加密字节数组得到的结果.
5. 这个字节数组数据转换为其等效的字符串,通过使用Convert.ToBase64String显示在多行文本框中.
加密算法:
/// <summary> /// 解密文本 /// </summary> /// <param name="plaintext"></param> public static string RSAEncryption(string strKeyContainerName, string plaintext) { CspParameters param = new CspParameters(); param.KeyContainerName = strKeyContainerName; using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(param)) { byte[] plaindata = System.Text.Encoding.Default.GetBytes(plaintext); byte[] encryptdata = rsa.Encrypt(plaindata, false); string encryptstring = Convert.ToBase64String(encryptdata); return encryptstring; } return string.Empty; }
解密算法:
/// <summary> /// 解密文本 /// </summary> /// <param name="strKeyContainerName"></param> /// <param name="encryptData"></param> public static string RSADecryption(string strKeyContainerName,string encryptData) { CspParameters param = new CspParameters(); param.KeyContainerName = strKeyContainerName; using (RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(param)) { byte[] encryptdata = Convert.FromBase64String(encryptData); byte[] decryptdata = rsa.Decrypt(encryptdata, false); string plaindata = System.Text.Encoding.Default.GetString(decryptdata); return plaindata; } return string.Empty; }
请到我的文件中下载程序全部代码。
相关文章推荐
- java实现RSA非对称加密算法 对数据进行加密【附代码】
- 非对称密钥体制&RSA加密原理
- c#与JavaScript实现对用户名、密码进行RSA非对称加密
- PHP RSA密文过长加密解密 越过1024的解决代码
- 非对称加密RSA原理个人学习总结
- Rsa加密的Java测试代码
- 加密算法(对称加密)AES、DES (非对称加密)RSA、DSA
- 非对称加密RSA
- php RSA加密传输代码示例(轉)
- 数据传输加密非对称加密算法以及对称算法-RSA+AES
- RSA加密、解密、签名(非对称加密)
- java 非对称加密rsa的工具类及其源代码
- 非对称加密过程详解(基于RSA非对称加密算法实现)
- RSA非对称加密
- php使用openssl来实现RSA(非对称加密)
- android代码16进制公钥进行RSA加密
- 对称 非对称加密 RSA MD5 概念
- 漫谈iOS RSA非对称加密与解密