openssl - 什么可能导致 CMS 例程:CMS_SIGNERINFO_VERIFY_CERT:certificate verify 错误?
问题描述
我正在尝试根据其颁发者 CA 证书验证签名者证书。我正在使用以下 OpenSSL API 来验证证书。
int CMS_verify(CMS_ContentInfo *cms, STACK_OF(X509) *certs, X509_STORE *store, BIO *indata, BIO *out, unsigned int flags);
第一个参数包含 base 64 编码的消息。第二个参数是 CA 和签名者证书的堆栈,第三个参数是指向证书存储的指针,第四和第五个参数是 BIO 指针。最后一个参数设置为 0。
当我尝试根据我得到的 CA 证书验证签名者证书时
CMS routines:CMS_SIGNERINFO_VERIFY_CERT:certificate verify error
签名者证书的颁发者证书是 CA 证书,并且 CA 和签名者证书都有效。
有谁知道可能导致此验证失败的原因?以及任何绕过它的方法?
解决方案
推荐阅读
- reactjs - useState 返回空数组
- c++ - 如何正确地将颜色顶部的纹理与透明度混合?
- c - 将文件名作为参数传递给 fopen() 不起作用
- javascript - 如何动态设置图形折线图?
- docker - 弹性容器服务上的“sh: 1: ./binary: Permission denied”
- swift - 如何快速加载标签每秒?
- html - 空值正在使用 express 返回数组
- stripe-payments - Stripe Payment Link 成功链接以包含会话 ID
- php - 我无法连接 mongdb 数据库(致命错误:未捕获的 MongoDB\Driver\Exception\ConnectionTimeoutException:无法查找 SRV 记录)
- python - 模板不存在 django