4

有没有办法使用 C# 代码将 X509Certificate 的 ASN.1 编码私钥转换为 Base64 格式?

4

2 回答 2

2

再想一想 - 可能我在第一个答案时没有理解你的问题。如果您想将关键数据转换为类似于 .pem 文件的格式,您需要执行与本文有关生成 .pem 文件的类似操作

于 2011-10-26T14:10:22.817 回答
2

您应该尝试将 X509Certificate2.PrivateKey PropertyRSA.FromXmlString Method结合在一起。

我认为您可以使用 RSA.FromXmlString 从 ASN.1 加载数据,然后将 X509Certificate2.PrivateKey 属性设置为生成的 RSA 对象。之后,您可以使用 X509Certificate2 Export() 方法之一来导出您的密钥。

如果您只需要将 ASN.1 DER 编码的密钥转换为 Base64 (.pem) 格式,您只需将二进制字节数组编码为 Base64(使用 System.Convert.ToBase64String())并为结果添加页眉/页脚:

-----开始 RSA 私钥-----
编码的密钥数据放在这里
-----结束 RSA 私钥-----
于 2011-10-26T12:27:58.363 回答