Python SSL сокеты TypeError - PullRequest
0 голосов
/ 06 июня 2018

Я пишу простую программу эхо-сообщений на защищенном клиентском сервере ssl.Я получаю ошибку типа на стороне клиента -> требуется целое число.Ниже приведен код для клиента

 import socket
import ssl

c_con = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_ip = '*******'
server_port = 4444
print('Connecting to %s port %d' % (server_ip,server_port))
c_con.connect((server_ip,server_port))

ssl_sock = ssl.wrap_socket(c_con,ssl_version = "TLSv1")

try:
    message = raw_input('Enter your message --> ')
    print('Sending "%s"' % message)
    ssl_sock.sendall(message)

    #Echo part
    amount_received = 0
    amount_expected = len(message)

    while amount_received < amount_expected:
        data = ssl_sock.recv(1024)
        amount_received += len(data)
        print('Received "%s"' % data)

finally:
    print('Closing socket')
    ssl_sock.close()

Пожалуйста, помогите мне.Я проверил соответствующие вопросы к теме, но не смог найти свое решение.

1 Ответ

0 голосов
/ 07 июня 2018

вот проблема:

ssl_sock = ssl.wrap_socket(c_con,ssl_version = "TLSv1")

версия tls не верна, вы должны сделать так:

ssl_sock = ssl.wrap_socket(c_con,ssl_version = ssl.PROTOCOL_TLSv1)

не делайте ssl.PROTOCOL_TLSv1 str, егоalerady определен

и проверьте, может ли ваш хост поддерживать протокол TLSv1

...