gpt4 book ai didi

c - 如何获取链中的下一个证书

转载 作者:行者123 更新时间:2023-11-30 15:12:28 25 4
gpt4 key购买 nike

我想从 Windows 证书存储区获取父证书(或链中的所有证书)(假设我知道最终证书的位置)。我需要获取每一个才能构建我自己的自定义 X509_STORE(使用 OpenSSL)。

我认为正确的做法是:

  1. 使用CertFindCertificateInStore获取第一个证书(完成)
  2. 使用CertGetCertificateChain获取证书链(完成)
  3. 从链中提取证书(?)
  4. 对于链中的每个证书,使用 d2i_X509 进行转换(完成)

  1. 使用CertFindCertificateInStore获取第一个证书(完成)
  2. 获取父证书(如果存在)(?)
  3. 使用d2i_X509进行转换,转到2。(完成)

然后创建商店。

接下来要回答的问题是 - 如何使用 Windows 证书存储获取父证书或链中的所有证书?我可能在这里或多或少缺少一些神秘的功能。

最佳答案

由于 CertFindCertificateInStore 输出链上下文,因此可以使用漂亮的结构访问其成员:

chainContext->rgpChain[0]->rgpElement[iCertIndex]->pCertContext->pbCertEncoded

其中 iCertIndex 位于 0(最终证书)和 chainSize -1(自签名根证书)之间。

关于c - 如何获取链中的下一个证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35057272/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com