rsa加密算法实现python
时间: 2023-08-30 15:12:08 浏览: 312
rsa加密算法实现
3星 · 编辑精心推荐
RSA加密算法在Python中的实现可以使用`cryptography`库。以下是一个示例代码:
```python
from cryptography.hazmat.primitives.asymmetric import rsa, padding
from cryptography.hazmat.primitives import serialization, hashes
# 生成RSA密钥对
private_key = rsa.generate_private_key(
public_exponent=65537,
key_size=2048
)
public_key = private_key.public_key()
# 加密
message = b'This is a secret message.'
ciphertext = public_key.encrypt(
message,
padding.OAEP(
mgf=padding.MGF1(algorithm=hashes.SHA256()),
algorithm=hashes.SHA256(),
label=None
)
)
# 解密
decrypted_message = private_key.decrypt(
ciphertext,
padding.OAEP(
mgf=padding.MGF1(algorithm=hashes.SHA256()),
algorithm=hashes.SHA256(),
label=None
)
)
print("Original message:", message)
print("Decrypted message:", decrypted_message)
```
这个示例代码演示了使用RSA算法加密和解密消息。首先,使用`rsa.generate_private_key()`生成一个RSA私钥。然后从私钥中提取公钥。
在加密部分,使用公钥对消息进行加密,其中`padding.OAEP`是一种填充方案,用于增加加密的安全性。
在解密部分,使用私钥对密文进行解密,同样使用`padding.OAEP`进行填充。
最后,输出原始消息和解密后的消息。
请注意,这只是一个简单的示例,实际使用时可能需要更多的错误处理和安全措施。
阅读全文