python3生成RSA公私钥
时间: 2023-12-03 10:51:38 浏览: 25
生成 RSA 公私钥可以使用 Python 自带的 `cryptography` 库。以下是一个生成 2048 位 RSA 公私钥的示例代码:
```python
from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import serialization, hashes
# 生成 RSA 密钥对
key = rsa.generate_private_key(public_exponent=65537, key_size=2048)
# 获取私钥的字节串形式
private_key_bytes = key.private_bytes(
encoding=serialization.Encoding.PEM,
format=serialization.PrivateFormat.PKCS8,
encryption_algorithm=serialization.NoEncryption()
)
# 获取公钥的字节串形式
public_key_bytes = key.public_key().public_bytes(
encoding=serialization.Encoding.PEM,
format=serialization.PublicFormat.SubjectPublicKeyInfo
)
# 将私钥写入文件
with open('private_key.pem', 'wb') as f:
f.write(private_key_bytes)
# 将公钥写入文件
with open('public_key.pem', 'wb') as f:
f.write(public_key_bytes)
```
执行以上代码后,会在当前目录下生成 `private_key.pem` 和 `public_key.pem` 两个文件,分别为生成的私钥和公钥。