如何阅读X509 V3证书的关键词?

时间:2012-04-03 10:09:07

标签: openssl x509 digital-certificate

我想阅读证书中的密钥用法字段。在openssl中是否有API?

4 个答案:

答案 0 :(得分:10)

您可以尝试在openssl中使用以下命令。

openssl x509 -in <certificate to check> -purpose -noout -text

这将打印出证书目的列表和证书本身。

答案 1 :(得分:0)

您需要在结果文件中找到以前的解决方案/输出字符串“Key Usage”。 我得到了以下解决方案,它将密钥用法X509证书中的String完全带来。

openssl s_client -showcerts -connect SERVER_HERE:443 </dev/null 2>/dev/null|openssl x509 -text |grep v "$(grep -E -A1 "Key Usage")"

上面的命令获取证书,解析为文本并找到字符串“Key Usage”并在结果上显示下一行,表示X509上此特定字段的值。

//干杯

答案 2 :(得分:0)

这是使用pyOpenssl检索python中SSL证书密钥用法的方法

Get key Usage using pyOpenssl

答案 3 :(得分:0)

7年后...

较新版本的openssl使您可以使用-ext标志查询证书扩展名。

打印密钥用法

$> openssl x509 -noout -ext keyUsage < test.crt
X509v3 Key Usage: critical
    Digital Signature, Key Encipherment

打印扩展密钥用法

$> openssl x509 -noout -ext extendedKeyUsage < test.crt
X509v3 Extended Key Usage: 
    TLS Web Server Authentication, TLS Web Client Authentication

请注意,如果您想一次打印多个扩展名,则需要用逗号分隔而不是多次使用-ext标志:

$> openssl x509 -noout \
   -ext keyUsage,extendedKeyUsage < test.crt