1

我需要使用 OpenSSL(通过 libcurl)从我的客户端应用程序(C++)进行双向 SSL 身份验证。我正在通过 MS Crypto API (CAPI) 和 ActivClient 驱动程序从智能卡读取证书,并使用 CAPI 进行证书链验证(这似乎更容易使用 OpenSSL 验证证书链,因为证书链在 MS 证书存储中) . 我可以将客户端证书从 CAPI 转换为 OpenSSL,但我遇到了私钥问题。

看来,为了让服务器验证我的客户端证书,我需要将客户端证书私钥公开给 OpenSSL。目前还不清楚我应该如何做到这一点,或者即使我能做到这一点(这可能取决于密钥是否在证书中标记为“可导出”)。我可以尝试按照Converting private key in windows store to PEM (for OpenSSL) 中的建议,并希望密钥是可导出的,但我想知道我是否走的是正确的道路。

我在这个主题上搜索了很多,但没有找到任何确凿的信息。

任何意见和/或建议表示赞赏!

4

0 回答 0