用C#实现RSA加密的一个小例子
系统
2825 0
整个算法的流程是:
接收方先同时生成公钥和私钥, 再把公钥传递给发送方, 发送方收到公钥后, 用此公钥将自己的明文加密, 然后将加密后的密文传递给接收方, 接收方用自己的私钥解密得到明文. 以下是演示这个过程的示例代码:
没有永恒的事
一切都在不断重复
我热爱这个世界
但绝不骄纵了它
//
待加密的明文
string
originText
=
"
Hello
"
;
//
公钥
string
publicKey;
System.Security.Cryptography.RSACryptoServiceProviderrsaReceive
=
new
System.Security.Cryptography.RSACryptoServiceProvider();
System.Security.Cryptography.RSACryptoServiceProviderrsaSend
=
new
System.Security.Cryptography.RSACryptoServiceProvider();
//
接收方先生成公钥,并将此公钥公开
//
参数false表示只生成公钥,如果为true,则同时生成公钥和私钥.
publicKey
=
rsaReceive.ToXmlString(
false
);
//
发送方接收公钥,并用此公钥加密数据
rsaSend.FromXmlString(publicKey);
//
发送方执行加密.
//
第二个参数指示是否使用OAEP,如果使用,则程序必须运行在WindowsXP及以上版本的
//
系统中.无论true或false,解密时必须跟加密时的选择相同.
byte
[]cryp
=
rsaSend.Encrypt(System.Text.Encoding.UTF8.GetBytes(originText),
false
);
//
接收方用自己的私钥解密
byte
[]b_OriginText
=
rsaReceive.Decrypt(cryp,
false
);
用C#实现RSA加密的一个小例子
更多文章、技术交流、商务合作、联系博主
微信扫码或搜索:z360901061
微信扫一扫加我为好友
QQ号联系: 360901061
您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。
【本文对您有帮助就好】元