CryptAcquireCertificatePrivateKey - 创建访问证书的永久密钥容器

时间:2011-04-18 17:15:34

标签: encryption cryptography cryptoapi pfx

如何使用PFX自签名证书中的cryptoAPI创建持久密钥容器?

我可以通过CryptAcquireCertificatePrivateKey调用访问PFX中的私钥,但是如何将私钥和公钥对导入密钥容器?完成导入过程后,此密钥容器应永久存在于USER密钥库中。

期待提出建议。

由于

1 个答案:

答案 0 :(得分:2)

一种方法是导入证书,以及关于PFXImportCertStore的密钥对。

另一种方式可能有助于理解。您可以在任何新密钥容器中保存关于CryptAcquireCertificatePrivateKey的密钥对。然后,您只能导入证书(没有私钥),最后您应该使用私钥设置容器作为证书的属性(CertSetCertificateContextProperty CERT_KEY_PROV_INFO_PROP_ID)。

在练习中,我总是使用PFXImportCertStore函数,但我建议您编写一个CertEnumCertificateContextProperties的测试程序,并查看将与证书存储中的证书一起保存的属性,但是证书的一部分。