我想从 Windows 证书存储(假设我知道最终证书的位置)获取父证书(或所有证书链)。我需要获取每一个以构建我自己的自定义X509_STORE
(使用OpenSSL)。
我认为正确的做法是:
CertFindCertificateInStore
使用(完成)获得第一个证书CertGetCertificateChain
使用(完成)获取证书链- 从链中提取证书(?)
- 对于链中的每个证书,使用
d2i_X509
(done)转换它
或者
CertFindCertificateInStore
使用(完成)获得第一个证书- 获取父证书(如果存在)(?)
- 使用 转换它
d2i_X509
,转到 2。(完成)
然后创建商店。
那么要回答的问题是 - 如何使用 Windows 证书存储获取父证书或链中的所有证书?我可能在这里或多或少地遗漏了一些神秘的功能。