gpt4 book ai didi

python - 具有 SNI(服务器名称指示)的站点的 ssl.get_server_certificate

转载 作者:太空狗 更新时间:2023-10-29 22:04:38 25 4
gpt4 key购买 nike

我正在尝试获取 badssl.com 子域的服务器证书(例如 https://expired.badssl.com)。

import ssl
ssl.get_server_certificate(('expired.badssl.com', 443))

但是在检查上面生成的证书时,我看到证书有

Identity: badssl-fallback-unknown-subdomain-or-no-sni

这意味着 SNI 失败了。如何获取badssl.com不同子域的服务器证书? (我使用的是 python 2.7.12)

最佳答案

找到答案。

import ssl
hostname = "expired.badssl.com"
port = 443
conn = ssl.create_connection((hostname, port))
context = ssl.SSLContext(ssl.PROTOCOL_SSLv23)
sock = context.wrap_socket(conn, server_hostname=hostname)
certificate = ssl.DER_cert_to_PEM_cert(sock.getpeercert(True))

关于python - 具有 SNI(服务器名称指示)的站点的 ssl.get_server_certificate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49132025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com