在 x509 库中,有一个名为CheckSignature. 我对传递什么有点迷茫signed。它应该是什么?功能是func (c *Certificate) CheckSignature(algo SignatureAlgorithm, signed, signature []byte) (err error)https://golang.org/src/crypto/x509/x509.go?s=21660:21759#L623我想加倍注意的另一件事是,如果我使用与证书关联的私钥对某些内容进行签名,该签名会通过此CheckSignature功能吗?
2 回答
侃侃无极
TA贡献2051条经验 获得超10个赞
您需要使用父证书来检查颁发的证书上的签名。例如:
// parent is the parent x509.Certificate
// cert is the certificate signed by the parent
// alg is the algorithm used to sign, eg x509.PureEd25519
alg := cert.SignatureAlgorithm
err := parent.CheckSignature(alg, cert.RawTBSCertificate, cert.Signature)
if err != nil {
return errors.New("Signature invalid")
}
- 2 回答
- 0 关注
- 238 浏览
添加回答
举报
0/150
提交
取消