我正在编写一个简单的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()
请帮帮我。我检查了与该主题相关的问题,但找不到解决方案。
发布于 2018-06-07 06:27:54
以下是问题所在:
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设置为字符串,它的警报已定义
并检查您的主机是否支持TLSv1协议
https://stackoverflow.com/questions/50715298
复制相似问题