4

我正在使用 ITextSharp 从数字签名的 pdf 文档中读取证书信息。

该类ITextSharp.Text.Pdf.PdfPKCS7公开了三个属性:

  • Certificates(作为列表)
  • SignCertificate(作为单个对象)
  • SignCertificateChain(作为列表)

如何结合这三个属性以获取有关单个证书的所有信息?

我将能够显示所有证书路径(所有嵌套证书)。

4

1 回答 1

2

Certificates不按特定顺序为您提供列表,包括未用于主签名的证书。

SignCertificate为您提供实际签名者的证书。

SignCertificateChain为您提供列表,其中第一个 Certificate 是 SignCertificate,下一个是颁发 SignCertificate 的实例的证书,下一个是颁发前一个证书的实例的证书,依此类推。这可以返回比 更少的证书Certificates,因为只会返回用于主签名的证书。

所以你不需要“组合”属性来显示证书路径,你只需要 SignCertificateChain。请注意,您的问题并不完全清楚:

'关于单个证书的所有信息'

有点矛盾

'显示所有证书路径(所有嵌套证书)'

如果要可视化生成签名证书的链,则需要查看多个证书(除非证书是自签名的,在这种情况下,链中只有一个元素)。

于 2012-09-18T14:32:11.857 回答