在python中,默认情况下,如何确定SSL包或请求使用哪种SSL或TLS协议。
如TLSv1 vs SSLv3。
答案 0 :(得分:0)
Python文档的SSL socket creation部分包含有关SSL包的信息:
参数
ssl_version
指定SSL的版本 要使用的协议。通常,服务器选择特定协议 版本,客户端必须适应服务器的选择。大部分的 版本不能与其他版本互操作。如果不 指定,默认为 PROTOCOL_SSLv23 它提供与其他版本最兼容。这是一个表格,显示客户端(侧面)的哪些版本可以 连接到服务器中的哪些版本(在顶部):
| client / server | SSLv2 | SSLv3 | SSLv23 | TLSv1 | TLSv1.1 | TLSv1.2 | |-----------------|-------|-------|--------|-------|---------|---------| | SSLv2 | yes | no | yes | no | no | no | | SSLv3 | no | yes | yes | no | no | no | | SSLv23 | no | yes | yes | yes | yes | yes | | TLSv1 | no | no | yes | yes | no | no | | TLSv1.1 | no | no | yes | no | yes | no | | TLSv1.2 | no | no | yes | no | no | yes |
注意:强>
哪些连接成功取决于版本 OpenSSL的。例如,在OpenSSL 1.0.0之前,SSLv23客户端会 总是尝试SSLv2连接。