如何使用mbedTLS库或openssl检查证书是CA证书还是用户证书

4

我从客户那里收到了一个证书。在我的服务器应用程序中,我需要检查接收到的证书是CA还是用户证书。我目前正在使用mbedTLS库来实现安全。已经有一个Java示例用于检查此情况。同样,我想知道如何使用mbedTLS库或OpenSSL命令进行检查。

1个回答

1

1
字段 ca_istrue 用于检查证书是否属于 CA。我的要求是检查证书是用户证书还是用于签署证书的 CA 证书。 - jayx
1
在我的证书中,读取keyUsage时返回的值为:CA - 0xE6 User Certificate 0xF4,这意味着在这两种情况下都设置了MBEDTLS_X509_KU_KEY_CERT_SIGN。我对此部分进行了一些研究。只有CA证书才设置CRL签名位MBEDTLS_X509_KU_CRL_SIGN。我们是否应该使用此位来验证它是CA证书? - jayx
1
除了我之前提到的示例外,我要补充一点:在我的证书中,基本限制路径长度设置为“NONE”,这是使用JAVA API进行测试的。 - jayx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接