4

我需要以编程方式从 MS 证书存储中提取证书及其私钥,并以某种方式将它们转换为 .PEM 格式。我不想在命令行中使用 OpenSSL,因为我想将所有内容都保存在内存中,避免使用文件。

我可以使用 PFXExportCertStoreEx() 将它们从 Windows 导出到 PFX 格式的 blob。我通过将其写入文件并使用 OpenSSL 将其转换为 .PEM 来测试它。生成的 .PEM 文件工作正常。所以剩下的问题是让它们在内存中变成 .PEM 格式。

我们集成了一个需要 .PEM 的不同 SSL 库。(这不是 OpenSSL ...)所以我想在不将 OpenSSL 源代码包含到我们的 C++ 项目中的情况下完成此操作。有任何想法吗?

4

1 回答 1

1

静态链接到 OpenSSL .lib 文件怎么样?

我已经使用 OpenSSL 调整了一些示例来执行此操作,您可以在此处找到将 pfx 转换为 pem 的 c++ 代码: https ://github.com/michaelmotes/PKCS12toPEM

此文件包含使用 OpenSSL 将 PFX 转换为 PEM 的 VB.NET 互操作代码:

https://github.com/michaelmotes/libCurlVB.NET-native/blob/master/LibCurlDecl.vb

于 2013-10-25T18:09:58.013 回答