Openssl:从证书链中提取根证书?

我正在用openssl s_client -showcerts -connect host.whatever:443 </dev/null获取证书链。

除此之外,我想以编程的格式-----BEGIN CERTIFICATE-----.....-----END CERTIFICATE-----

有没有人知道一个function是可以做到的,而且已经在OpenSSL中出货了?

openssl s_client只显示客户端发送的证书链。 这个链通常不包括根证书本身。 相反,根证书只包含在本地信任存储中,不会被服务器发送。 据我所知,没有内置的方式来获得使用openssl命令行连接的根证书。

Web服务器发送根证书是没有意义的,如果浏览器发送(它必须在本地存储),浏览器应该忽略它。 如果它是一个中级的CA证书,那么你会以你已经使用的方式来检索它。