我有一个 PEM 格式的 OpenSSL 生成的 X.509 证书及其关联的密钥文件。连接到原型服务器时需要此证书进行身份验证。这在 Linux 上运行良好。我一直在使用 Microsoft SChannel API 在 Windows 平台上驱动 SSL/TLS 连接,但我想使用相同的测试证书。我可以右键单击证书文件并将其导入到我的证书存储中,但我相信私钥不会随它一起导入(即使我已将它们连接到同一个文件中)。
当我运行 SChannel 代码时,我在初始化安全上下文(通过 InitializeSecurityContext)时收到“SEC_E_NO_CREDENTIALS”错误。我怀疑这意味着私钥丢失。
有谁知道如何测试位于个人(或“我的”)证书存储中的证书中是否存在私钥,通过“certmgr.msc”访问?是否可以为商店中的证书导入新的密钥文件?
任何见解或建议将不胜感激。