【问题标题】:How can I load a .pem certificate in c# from file?如何从文件中加载 c# 中的 .pem 证书?
【发布时间】:2016-06-07 18:33:42
【问题描述】:

上下文

我有一个 pfx 证书文件。我可以使用以下代码将其成功加载到X509Certificate2 类:

var path = "mycert.pfx"
var password = "mypassword";
var certificate = new X509Certificate2(path, password);

出于某些原因,我想使用 .pem 格式而不是二进制格式。因此,我使用以下 OpenSSL 命令将“mycert.pfx”转换为“mycert.pem”:

pkcs12 -in mycert.pfx -out mycert.pem -nodes

问题

如何以与成功加载 mycert.pfx 类似的方式加载转换后的 mycert.pem?下面的代码给了我一个 CryptographicException 说“找不到请求的对象”。 (注意:这不是关于找不到文件的io异常)

var path = "mycert.pem"
var password = "mypassword";
var certificate = new X509Certificate2(path, password);

【问题讨论】:

    标签: c# openssl x509certificate pem pfx


    【解决方案1】:

    Windows 不支持 PEM (Base64) 格式的 PKCS#12。您必须仅使用二进制编码的 PKCS#12 文件。

    【讨论】:

      猜你喜欢
      • 2020-09-30
      • 1970-01-01
      • 1970-01-01
      • 2014-07-27
      • 1970-01-01
      • 1970-01-01
      • 2012-04-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多