如何获取用于以编程方式验证客户端证书的CA证书

时间:2019-10-23 21:24:06

标签: c++ openssl

在服务器应用程序中,建立连接后,我可以从拥有的SSL *中获取客户端证书。有没有办法找出我用来验证该证书的CA?

2 个答案:

答案 0 :(得分:1)

这篇文章似乎很重要: Find client certificate information from server in OpenSSL

由于SSL_get_peer_certificate返回了X509证书,所以我希望包含证书链(我想如果没有它,您将无法正确处理CRL)?

答案 1 :(得分:1)

您可以为此使用def clean(name): name = name.split('(')[0] if ' (' in name else name name = '_'.join(name.split()) return name df.columns = [clean(col) for col in df.columns] 函数。请参阅此处的文档:

https://www.openssl.org/docs/man1.1.1/man3/SSL_get0_verified_chain.html

请注意,此功能最初是在OpenSSL 1.1.0中引入的,因此在OpenSSL 1.0.2中将不起作用。