给出一个Python中实现DES加密算法的完整代码
时间: 2025-01-01 20:39:05 浏览: 15
在Python中,我们可以使用`pycryptodome`库来实现DES(Data Encryption Standard)加密算法。以下是使用这个库创建一个基本的DES加解密示例:
```python
from Crypto.Cipher import DES
from Crypto.Util.Padding import pad, unpad
# 加密函数
def encrypt DES(text, key):
cipher = DES.new(key.encode('utf-8'), DES.MODE_ECB)
encrypted_text = cipher.encrypt(pad(text.encode('utf-8'), DES.block_size))
return encrypted_text.hex()
# 解密函数
def decrypt DES(encrypted_text, key):
cipher = DES.new(key.encode('utf-8'), DES.MODE_ECB)
decrypted_text = unpad(cipher.decrypt(bytes.fromhex(encrypted_text)), DES.block_size).decode()
return decrypted_text
# 示例
key = b'sixteen_byte_key' # DES需要一个16字节的密钥
plaintext = 'Hello, DES!'
ciphertext = encrypt(plaintext, key)
decryptedtext = decrypt(ciphertext, key)
print("Original text:", plaintext)
print("Encrypted text:", ciphertext)
print("Decrypted text:", decryptedtext)
```
注意:DESEDE(Triple DES)通常用于现代加密,因为DES的安全性相对较低。如果你需要更高级别的安全性,可以考虑使用AES。
阅读全文