aes python ecb
时间: 2024-12-12 21:15:48 浏览: 6
AES(Advanced Encryption Standard)是一种对称加密算法,广泛应用于数据加密和安全通信。ECB(Electronic Codebook)模式是AES加密的一种工作模式之一。
在Python中,可以使用`pycryptodome`库来实现AES的ECB模式加密和解密。以下是一个简单的示例:
```python
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad, unpad
from Crypto.Random import get_random_bytes
# 密钥长度必须是16、24或32字节
key = b'This is a key123'
# 要加密的数据
data = b'Confidential Data'
# 初始化AES加密器,使用ECB模式
cipher = AES.new(key, AES.MODE_ECB)
# 填充数据,使其长度为块大小的倍数
padded_data = pad(data, AES.block_size)
# 加密数据
encrypted_data = cipher.encrypt(padded_data)
print(f'Encrypted data: {encrypted_data}')
# 解密数据
decrypted_padded_data = cipher.decrypt(encrypted_data)
# 去除填充
decrypted_data = unpad(decrypted_padded_data, AES.block_size)
print(f'Decrypted data: {decrypted_data}')
```
在这个示例中,我们首先导入了必要的库,然后定义了密钥和要加密的数据。接着,我们初始化了AES加密器,并使用ECB模式进行加密和解密。注意,ECB模式虽然简单,但并不推荐在实际应用中使用,因为它不够安全,容易受到攻击。
阅读全文