写个python3对称加密的代码,加密函数和解密函数,不要用Crypto这个库
时间: 2023-04-06 08:00:51 浏览: 115
Python3加密解密库Crypto的RSA加解密和签名/验签实现方法实例
我可以回答这个问题。以下是一个简单的对称加密代码,使用的是AES算法:
```python
import hashlib
from Crypto.Cipher import AES
def pad(s):
return s + b"\0" * (AES.block_size - len(s) % AES.block_size)
def encrypt(message, key):
message = pad(message)
iv = hashlib.md5(key.encode()).digest()
cipher = AES.new(key.encode(), AES.MODE_CBC, iv)
return cipher.encrypt(message)
def decrypt(ciphertext, key):
iv = hashlib.md5(key.encode()).digest()
cipher = AES.new(key.encode(), AES.MODE_CBC, iv)
message = cipher.decrypt(ciphertext)
return message.rstrip(b"\0")
```
其中,`encrypt`函数接受两个参数:明文消息和密钥,返回加密后的密文。`decrypt`函数接受两个参数:密文和密钥,返回解密后的明文消息。
注意:这只是一个简单的实现,不一定是最安全的加密方式。在实际应用中,应该使用更加安全的加密算法和密钥管理方式。
阅读全文