TLS バージョン 1.1 または 1.2 を使用してセキュア ソケット サーバーを作成する課題があります。私はpython 3.4を使用しています(ネイティブTLS 1.1 / 1.2をサポートする唯一のバージョンであるため)。自己署名 CA を作成し、クライアントとサーバーの両方に署名しました。コードのスニペットは次のとおりです。
私のサーバーでは:
tls_server = ssl.wrap_socket(server, ssl_version=ssl.PROTOCOL_TLSv1_2,
cert_reqs=ssl.CERT_NONE, server_side=True,
keyfile='./server.key', certfile='./server.crt',
ca_certs='./SigningCA/signing-ca.crt')
そしてクライアントで:
tls_client = ssl.wrap_socket(client, keyfile="./client.key",
certfile="./client.crt", ssl_version=ssl.PROTOCOL_TLSv1_2,
cert_reqs=ssl.CERT_REQUIRED, ca_certs='./SigningCA/signing-ca.crt')
接続は正常に機能し、リクエストとレスポンスを受け取ります。しかし、クライアントまたはサーバーの cipher() メソッドの結果を出力すると、次のようになります。
('AES256-SHA', 'TLSv1/SSLv3', 256)
これは、私がまだ TLSv1/SSLv3 を実行していることを示しているようです。誰かがこれについて何らかの洞察を持っていますか? どんな助けでも大歓迎です。