DES加解密算法python代码
时间: 2024-04-27 21:17:25 浏览: 158
DES(Data Encryption Standard)是一种对称加密算的加密和解密。下面是一个使用Python实现DES加解密算法的示例代码:
python
from Crypto.Cipher import DES
from Crypto.Util.Padding import pad, unpad
from Crypto.Random import get_random_bytes
def encrypt(plain_text, key):
cipher = DES.new(key, DES.MODE_ECB)
padded_text = pad(plain_text.encode(), DES.block_size)
encrypted_text = cipher.encrypt(padded_text)
return encrypted_text
def decrypt(encrypted_text, key):
cipher = DES.new(key, DES.MODE_ECB)
decrypted_text = cipher.decrypt(encrypted_text)
unpadded_text = unpad(decrypted_text, DES.block_size)
return unpadded_text.decode()
# 生成随机的8字节密钥
key = get_random_bytes(8)
# 加密示例
plain_text = "Hello, World!"
encrypted_text = encrypt(plain_text, key)
print("Encrypted Text:", encrypted_text)
# 解密示例
decrypted_text = decrypt(encrypted_text, key)
print("Decrypted Text:", decrypted_text)
```
请注意,上述代码使用了`pycryptodome`库来实现DES加解密算法。你可以使用`pip install pycryptodome`命令来安装该库。
阅读全文