首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >C# RSA 加密,解密

C# RSA 加密,解密

作者头像
jgrass
发布2024-12-25 16:45:22
发布2024-12-25 16:45:22
35900
代码可运行
举报
文章被收录于专栏:蔻丁杂记蔻丁杂记
运行总次数:0
代码可运行

对这篇的一点补充

C# RSA 加密,解密与签名,验证签名

上文提到的加解密代码,需要使用到 BouncyCastle 库,如何不使用这个库处理 Rsa 的加解密?

代码见: RSA 加密解密

但是有一点点问题,.net 原生库要求使用 xml 的密钥表示,需要将 base64 的表示转换为 xml 的表示。

可以使用 .net core 版本的 RSACryptoServiceProvider 类来实现。

私钥转 xml 形式 string

RSA.ImportPkcs8PrivateKey(ReadOnlySpan, Int32) 方法 (System.Security.Cryptography) | Microsoft Docs

代码语言:javascript
代码运行次数:0
运行
复制
// 私钥转 xml 形式 stringvar provider = new RSACryptoServiceProvider();provider.ImportPkcs8PrivateKey(Convert.FromBase64String(RsaEncryptConstant.PrivateKey), out _);var xmlString = provider.ToXmlString(true);

公钥转 xml 形式 string

RSA.ImportSubjectPublicKeyInfo(ReadOnlySpan, Int32) 方法 (System.Security.Cryptography) | Microsoft Docs

代码语言:javascript
代码运行次数:0
运行
复制
// 公钥转 xml 形式 stringvar provider = new RSACryptoServiceProvider();provider.ImportSubjectPublicKeyInfo(Convert.FromBase64String(RsaEncryptConstant.PublicKey), out _);var xmlString = provider.ToXmlString(false);

其它

在 .net45 上要如何处理?

可以预先处理好(如果预先就知道密钥),

要编码处理…… 没有研究,应该有对应的方法。

找到欢迎留言。

原文链接: https://cloud.tencent.com/developer/article/2481514

本作品采用 「署名 4.0 国际」 许可协议进行许可,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年7月22日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 私钥转 xml 形式 string
  • 公钥转 xml 形式 string
  • 其它
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档