python 查看ssl版本
时间: 2023-09-01 18:13:37 浏览: 899
要查看Python中使用的SSL版本,可以使用以下代码:
```python
import ssl
print(ssl.OPENSSL_VERSION)
```
这将打印出Python中使用的SSL库的版本。如果你想检查是否启用了TLS 1.2,可以使用以下代码:
```python
import ssl
print(ssl.PROTOCOL_TLSv1_2)
```
如果输出为“TLSv1.2”,则表示已启用TLS 1.2。如果输出为“AttributeError: module 'ssl' has no attribute 'PROTOCOL_TLSv1_2'”,则表示Python版本太老,不支持TLS 1.2。
相关问题
python import ssl指定版本
在Python中,可以使用`ssl.PROTOCOL_TLSv1_2`来指定使用TLS 1.2版本的SSL协议。以下是一个使用`urllib.request`模块和TLS 1.2版本的SSL协议发送HTTPS请求的示例代码:
```python
import urllib.request
import ssl
# 创建TLS 1.2版本的SSL上下文
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1_2)
# 发送HTTPS请求
response = urllib.request.urlopen("https://www.example.com", context=context)
# 读取响应内容
content = response.read()
# 输出响应内容
print(content)
```
在这个示例中,我们首先创建了一个TLS 1.2版本的SSL上下文,然后使用`urllib.request`模块发送HTTPS请求,并指定了SSL上下文。最后,我们读取响应内容,并将其输出到控制台。
python mysql 通讯加密_Python通过SSL加密连接MySQL,python,ssl,mysql
可以使用Python的ssl模块来实现通过SSL加密连接MySQL。具体步骤如下:
1.导入ssl模块和MySQLdb模块:
```python
import ssl
import MySQLdb
```
2.创建SSL上下文:
```python
ssl_ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
ssl_ctx.load_cert_chain(certfile="client-cert.pem", keyfile="client-key.pem", password="password")
```
其中,client-cert.pem和client-key.pem是客户端证书和私钥文件的路径,password是私钥文件的密码。如果没有密码,可以省略这个参数。
3.使用MySQLdb模块连接MySQL:
```python
conn = MySQLdb.connect(host='localhost', user='root', passwd='password', db='test', ssl=ssl_ctx)
```
其中,ssl参数传入SSL上下文对象ssl_ctx即可实现SSL加密连接。
完整代码如下:
```python
import ssl
import MySQLdb
ssl_ctx = ssl.create_default_context(ssl.Purpose.SERVER_AUTH)
ssl_ctx.load_cert_chain(certfile="client-cert.pem", keyfile="client-key.pem", password="password")
conn = MySQLdb.connect(host='localhost', user='root', passwd='password', db='test', ssl=ssl_ctx)
cursor = conn.cursor()
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
for row in rows:
print(row)
conn.close()
```
注意,MySQL服务器需要配置SSL证书,具体方法可以参考MySQL官方文档。
阅读全文