如何使用python中的pyopenssl模块将证书链转储到PEM文件中

问题描述

我想将完整的证书链转储到 PEM 文件中。目前我正在尝试使用 pyOpenSSL 模块,因为 ssl 模块没有提供获取证书链的方法(只有服务器证书下载可用)。

import OpenSSL

def get_cert_chain(address,port=443):
    context = Context(SSLv23_METHOD)
    client = socket()
    client.connect((address,port))
    clientSSL = Connection(context,client)
    clientSSL.set_connect_state()
    clientSSL.do_handshake()
    return clientSSL.get_peer_cert_chain()

#The below certificate_chain variable contains the stack of X509 certificates
certificate_chain = get_cert_chain('www.google.com')

目的:我想导入完整的目标 IP 链并在 .pem 文件上运行 keytool 导入以添加到 Wildfly 信任库。但是,X509 类中没有方法可以执行将链转储到 .pem 文件等类似操作。

添加了以下相同的屏幕截图 -(调试点)

debug from visual studio code debug from visual studio code

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)