zoukankan
html css js c++ java
RSA的加解密过程(转自CSDN,学习用)
RSA的加解密过程
public
void
StartDemo()
{
//
RSA的加解密过程:
//
有 rsa1 和 rsa2 两个RSA对象。
//
现在要 rsa2 发送一段信息给 rsa1, 则先由 rsa1 发送“公钥”给 rsa2
//
rsa2 获取得公钥之后,用来加密要发送的数据内容。
//
rsa1 获取加密后的内容后,用自己的私钥解密,得出原始的数据内容。
RSACryptoServiceProvider rsa1
=
new
RSACryptoServiceProvider();
RSACryptoServiceProvider rsa2
=
new
RSACryptoServiceProvider();
string
publickey;
publickey
=
rsa1.ToXmlString(
false
);
//
导出 rsa1 的公钥
string
plaintext;
plaintext
=
"
你好吗?这是用于测试的字符串。
"
;
//
原始数据
Console.WriteLine(
"
原始数据是:\n{0}\n
"
,plaintext);
rsa2.FromXmlString(publickey);
//
rsa2 导入 rsa1 的公钥,用于加密信息
//
rsa2开始加密
byte
[] cipherbytes;
cipherbytes
=
rsa2.Encrypt(
Encoding.UTF8.GetBytes(plaintext),
false
);
/**/
/*
//////////////////////////////////////////////
*/
Console.WriteLine(
"
加密后的数据是:
"
);
for
(
int
i
=
0
; i
<
cipherbytes.Length; i
++
)
{
Console.Write(
"
{0:X2}
"
,cipherbytes[i]);
}
Console.WriteLine(
"
\n
"
);
/**/
/*
//////////////////////////////////////////////
*/
//
rsa1开始解密
byte
[] plaintbytes;
plaintbytes
=
rsa1.Decrypt(cipherbytes,
false
);
Console.WriteLine(
"
解密后的数据是:
"
);
Console.WriteLine(Encoding.UTF8.GetString(plaintbytes));
Console.ReadLine();
}
}
查看全文
相关阅读:
P6665 [清华集训2016] Alice 和 Bob 又在玩游戏
模板库
CSP-S2021 游记
CSP-S2021 SD迷惑行为大赏
博弈论总结
LOJ6033「雅礼集训 2017 Day2」棋盘游戏(二分图最大匹配必经点)
LOJ6065「2017 山东一轮集训 Day3」第一题
LOJ6059「2017 山东一轮集训 Day1」Sum
LOJ6102「2017 山东二轮集训 Day1」第三题
python笔记:字符编码
原文地址:https://www.cnblogs.com/hanguoji/p/581173.html
最新文章
ASP.NET Core 源码阅读笔记(5) ---Microsoft.AspNetCore.Routing路由
ASP.NET Core 源码阅读笔记(3) ---Microsoft.AspNetCore.Hosting
ASP.NET Core 源码阅读笔记(2) ---Microsoft.Extensions.DependencyInjection生命周期管理
ASP.NET Core 源码阅读笔记(1) ---Microsoft.Extensions.DependencyInjection
AQS深入理解与实战----基于JDK1.8
KebeEdge简介,优势及应用场景,特点
Winform 实现文件拖放
Xposed 插件开发入门教程(一)
一行代码开启 Winform 中的 ListView 和 DataGridView 双缓冲功能
Winform 全局异常捕获
热门文章
【数据结构&算法】08-栈概念&源码
【数据结构&算法】07-链表技巧&参考源码
【数据结构&算法】06-链表类型及LRU算法
【数据结构&算法】05-线性表之数组
【数据结构&算法】04-线性表
【数据结构&算法】03-复杂度分析之浅析最好、最坏、平均、均摊时间复杂度
【数据结构&算法】02-复杂度分析之执行效率和资源消耗
【数据结构&算法】01-数据结构学习方法
【RTOS】RTOS源码基础之队列结构体
CF1375F Integer Game
Copyright © 2011-2022 走看看