2017-06-19 19 views
0

クライアントとサーバーソケットの間にssl接続を作成しようとしています。 これは私のコードです: クライアント:sslクライアントサーバーとPython

temp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
    client = ssl.wrap_socket(temp_socket,ssl_version=ssl.PROTOCOL_TLSv1_2, c 
    =ciphers="AES256-GCM-SHA384") 
    #print client.ciphers 
    client.connect((server_address, int(port))) 

サーバー:

temp_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
server_socket = ssl.wrap_socket(temp_socket, ssl_version=ssl.PROTOCOL_TLSv1, 
ciphers="ADH-AES256-SHA256") 
server_socket.bind(("0.0.0.0", port)) 
server_socket.listen(1) 
(client_socket, client_address) = server_socket.accept() 

と私はエラーを取得: [SSL:SSLV3_ALERT_HANDSHAKE_FAILURE]のSSLv3警告ハンドシェイクに失敗(_ssl.c:661)クライアント上 と[SSL:NO_SHARED_CIPHER]共有暗号がない(_ssl.c:590) 問題は私がソケットにキーファイルを与えていないが、RSAキーが存在しないことがわかりました。 エラーの原因は何ですか?

答えて

0

サーバーに証明書と一致するキーファイルはありませんが、選択した暗号はRSA認証を使用するため、証明書とキーが必要です。引数certfilekeyfilethe documentationで参照してください。

関連する問題