aes简单实现 python
时间: 2024-05-05 16:14:36 浏览: 96
aes算法的实现
AES(Advanced Encryption Standard)是一种对称加密算,被广泛应用于数据加密和保护领域。在Python中,可以使用`pycryptodome`库来实现AES加密。
以下是一个简单的AES加密和解密的Python代码示例:
```python
from Crypto.Cipher import AES
from Crypto.Random import get_random_bytes
def encrypt(plain_text, key):
cipher = AES.new(key, AES.MODE_EAX)
nonce = cipher.nonce
ciphertext, tag = cipher.encrypt_and_digest(plain_text.encode())
return nonce + ciphertext + tag
def decrypt(ciphertext, key):
nonce = ciphertext[:16]
tag = ciphertext[-16:]
ciphertext = ciphertext[16:-16]
cipher = AES.new(key, AES.MODE_EAX, nonce)
decrypted_data = cipher.decrypt_and_verify(ciphertext, tag)
return decrypted_data.decode()
# 生成随机的16字节密钥
key = get_random_bytes(16)
# 待加密的明文
plain_text = "Hello, AES!"
# 加密
encrypted_data = encrypt(plain_text, key)
print("加密后的数据:", encrypted_data)
# 解密
decrypted_data = decrypt(encrypted_data, key)
print("解密后的数据:", decrypted_data)
```
请注意,这只是一个简单的示例,实际使用中需要注意密钥的安全性和数据的完整性验证。
阅读全文