0
我想使用SSL連接到IRC。我寫在Python 2.7
。但是,下面的代碼:ssl.SSLError:[SSL:CERTIFICATE_VERIFY_FAILED]證書驗證失敗Python
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)
有什麼不好?
我打開了一個'https:// freenode.net /'頁面並使用我的瀏覽器導出了證書(最新的Firefox)。爲什麼它沒有工作呢? – yak
除了我上面的問題,當我將證書更改爲一個您發佈的鏈接,現在我有一個新的錯誤:'ssl.SSLError:[SSL:TLSV1_ALERT_PROTOCOL_VERSION] tlsv1警報協議版本(_ssl.c:1754)' – yak
@犛牛:一個網站可以爲不同的服務使用不同的證書,而freenode正在這樣做,即對https和irc使用不同的證書。至於第二個錯誤:這是一個不同的問題,因此不應該在評論中提問。請提出一個新問題,提供有關此問題的更多詳細信息,包括您使用的完整版Python(即2.7.x)和openssl('ssl.OPENSSL_VERSION')。 –