gpt4 book ai didi

python - SSL.SSLError : [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed Python

转载 作者:太空宇宙 更新时间:2023-11-03 14:04:43 25 4
gpt4 key购买 nike

我想使用 SSL 连接到 IRC。我用 Python 2.7 编写。然而,对于下面的代码:

HOST = 'chat.freenode.net'
PORT = 7000
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
code = sock.connect_ex((HOST, PORT))
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
context.verify_mode = ssl.CERT_REQUIRED
context.load_verify_locations('COMODOECCCertificationAuthority.crt')
secure_sock = context.wrap_socket(sock)

PyCharm 在行 secure_sock = context.wrap_socket(sock) 中显示错误 出了什么问题?

最佳答案

context.load_verify_locations('COMODOECCCertificationAuthority.crt')

我不知道文件 COMODOECCCertificationAuthority.crt 中的内容,但看起来您需要一个由 Comodo 签名的证书。但是,chat.freenode.net 证书的颁发者是 Let's Encrypt 而不是 Comodo。例如,您可以使用

获取链
$ openssl s_client -connect chat.freenode.net:7000
...
Certificate chain
0 s:/CN=cherryh.freenode.net
i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
1 s:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
i:/O=Digital Signature Trust Co./CN=DST Root CA X3

这意味着您需要信任的根 CA 是“DST Root CA X3”。您可以下载此 CA 的证书 here .如果您在 load_verify_locations 中将其添加为受信任的,它就可以工作。

关于python - SSL.SSLError : [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44356604/

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