OpenSSL从证书中打印oid



我遇到了一个问题,我正在尝试查看证书的EKU的oid。但是当运行

openssl x509 -in证书。CRT -text -noout

X509v3扩展密钥使用:
TLS Web客户端认证,Microsoft智能卡登录

不是

1.3.6.1.4.1.311.20.2.2

你知道把它打印到屏幕上的方法吗?我看过另一个帖子,但是使用代码,我想用命令行。

我已经尝试了所有-certopt这可能有用,但是我没有得到想要的结果。

离开主题一段时间后,我发现是OpenSSL用别名代替了oid

所以你只需要手动解码证书。

要做到这一点,您可以使用任何ASN.1解析器或x509解码器,我推荐CyberChefgchq.github.io/CyberChef

例如,如果我使用基本的OpenSSL工具:

X509v3 extensions:
.....
X509v3 Extended Key Usage: 
TLS Web Client Authentication, Microsoft Smartcard Login
.....

与CyberChef rfc x509解析器:

Extensions
.....
extKeyUsage :
clientAuth, 1.3.6.1.4.1.311.20.2.2
.....

,如果需要更多细节,可以使用rfc ASN.1解析器。

SEQUENCE
ObjectIdentifier extKeyUsage (2 5 29 37)
OCTETSTRING, encapsulates
SEQUENCE
ObjectIdentifier clientAuth (1 3 6 1 5 5 7 3 2)
ObjectIdentifier (1 3 6 1 4 1 311 20 2 2)

最新更新