gpt4 book ai didi

windows - SignedXml.CheckSignature 如何验证证书

转载 作者:太空宇宙 更新时间:2023-11-03 13:26:01 36 4
gpt4 key购买 nike

这里想请教一下SignedXml.CheckSignature的原理

我们知道,如果我们调用 verifySignatureOnly = false 的函数,它可以验证证书。

[ComVisibleAttribute(false)]
public bool CheckSignature(
X509Certificate2 certificate,
bool verifySignatureOnly
)

但它如何验证呢?根据我的理解,证书应该是由CA私钥加密的公钥。那么 CheckSignature 可以获得 CA 公钥,然后解密证书?我想知道它是如何工作的。希望有人能提供帮助。

最佳答案

它使用 Windows 证书库来构建一个证书链,直到受信任的根权限。在构建链时,该方法还会验证证书的吊销状态(通常来自链中所有机构的 CRL),以检查链中的任何证书是否仍然有效。

如果证书中有指向 OCSP 的链接,那么该方法可能更愿意检查这些证书的 OCSP 状态,但这取决于您使用的操作系统(我认为 Win Xp 没有使用 OCSP 但 Win 7+ 默认情况下使用).

如果该方法执行的任何检查失败,即 CRL 不可用或无法将链构建到受信任的根机构或证书被吊销,则该方法返回 false。

关于windows - SignedXml.CheckSignature 如何验证证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30610252/

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