如何使用openssl获取整个证书链的公钥?

问题描述 投票:0回答:2

我尝试了以下命令来获取证书并将其保存为文本文件:

openssl s_client -connect www.domain.com:443 -showcerts > file.txt

然后我使用以下方法获取公钥:

openssl x509 -noout -modulus -in file.txt

我得到的公钥是与1号证书关联的公钥。我该怎么做才能获得全链公钥?是否有更好的方法可以用来改进我正在做的事情(即:是否有一种方法可以一步获得整个证书链的公钥,而不是我正在做的两个步骤)。

openssl certificate ssl-certificate
2个回答
1
投票

来自

openssl s_client -connect www.domain.com:443 -showcerts > file.txt

您将获得您所描述的证书列表。如果将这些证书复制到名为 cert1.pemcert2.pem 等的文件中,其中每个证书如下所示:

-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----

然后您可以像这样打印链中每个证书的公钥:

openssl x509 -in cert1.pem -noout -pubkey
openssl x509 -in cert2.pem -noout -pubkey
...

-1
投票

“无法理解 SSL 证书链验证”问题涉及获取证书链的想法。也许值得一看。

不过,我自己还没有解决此类问题。 :)

© www.soinside.com 2019 - 2024. All rights reserved.