python rsa加密解密
时间: 2023-07-04 22:16:47 浏览: 142
好的,我可以帮你解答关于 Python 中 RSA 加密和解密的问题。
首先,需要安装 PyCryptodome 库来实现 RSA 加密和解密功能。可以通过以下命令安装:
```python
pip install pycryptodome
```
接下来,我们来看一下 RSA 加密和解密的代码实现。
RSA 加密:
```python
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
# 生成公私钥对
key = RSA.generate(2048)
private_key = key.export_key()
public_key = key.publickey().export_key()
# 加载公钥
recipient_key = RSA.import_key(public_key)
# 加密数据
cipher_rsa = PKCS1_OAEP.new(recipient_key)
ciphertext = cipher_rsa.encrypt(b'Hello World')
print(ciphertext)
```
RSA 解密:
```python
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
# 加载私钥
private_key = RSA.import_key(private_key)
# 解密数据
cipher_rsa = PKCS1_OAEP.new(private_key)
plaintext = cipher_rsa.decrypt(ciphertext)
print(plaintext)
```
以上就是 RSA 加密和解密的 Python 代码实现。需要注意的是,RSA 加密算法对数据的长度有限制,一般不能超过密钥长度减去一定的值。如果需要加密的数据过长,可以考虑使用对称加密算法。
阅读全文