如何验证X.509签名?

时间:2019-12-16 01:43:08

标签: x509 sign

X.509证书具有签名值。

我要使用根CA或中间CA的公钥来验证客户端证书中的签名。

我知道他们两个人的信息。但是我不知道需要什么消息。

我想问问生成签名值需要什么消息?

仅需要颁发者信息或主题名称(十六进制)?还是颁发者在生成证书时是任意的?

1 个答案:

答案 0 :(得分:0)

验证签名还不够,您需要验证证书链和所有相关的策略约束。在Windows / C中,您可以使用CertGetCertificateChain(https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-certgetcertificatechain),但是每个平台都有解决此问题的方法。它比大多数人意识到的要复杂得多(https://www.cs.utexas.edu/~shmat/shmat_ccs12.pdf),因此请坚持使用平台API进行此验证。