ある種のTransport Layer Securityを使用できます。これは、任意のネットワーク ソケットの単純な TLS/SSL ラッピングです。
すべてのドキュメントはこちら.
ここに示されている単純なクライアント側の SSL 暗号化:
import socket, ssl, pprint
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# require a certificate from the server
ssl_sock = ssl.wrap_socket(s,
ca_certs="/etc/ca_certs_file",
cert_reqs=ssl.CERT_REQUIRED)
ssl_sock.connect(('www.verisign.com', 443))
print repr(ssl_sock.getpeername())
print ssl_sock.cipher()
print pprint.pformat(ssl_sock.getpeercert())
# Set a simple HTTP request -- use httplib in actual code.
ssl_sock.write("""GET / HTTP/1.0\r
Host: www.verisign.com\r\n\r\n""")
# Read a chunk of data. Will not necessarily
# read all the data returned by the server.
data = ssl_sock.read()
# note that closing the SSLSocket will also close the underlying socket
ssl_sock.close()
その他の例はこちら。
また、暗号化の安全性を回避するために、最新バージョンのアルゴリズムを使用してください。
次の質問を確認してください。