Python编程实现DES算法加密与解密
时间: 2024-09-18 18:10:22 浏览: 7
在Python中,你可以使用`pycryptodome`库来实现Data Encryption Standard (DES)算法的加密和解密。首先,你需要安装这个库(如果还没有的话):
```bash
pip install pycryptodome
```
下面是一个简单的例子展示了如何使用DES进行加密和解密:
```python
from Crypto.Cipher import DES
from Crypto.Util.Padding import pad, unpad
# 设置DES密钥
key = b'Sixteen byte key' # 密钥应该是8位的倍数,这里填充到16字节
# 创建DES实例
cipher = DES.new(key)
# 加密函数
def encrypt(data):
encrypted_data = cipher.encrypt(pad(data.encode(), DES.block_size))
return encrypted_data.hex() # 返回十六进制表示的加密数据
# 解密函数
def decrypt(hex_data):
encrypted_data = bytes.fromhex(hex_data)
decrypted_data = unpad(cipher.decrypt(encrypted_data), DES.block_size).decode()
return decrypted_data
# 示例
plaintext = 'Hello, DES!'
ciphertext = encrypt(plaintext)
print(f"Ciphertext: {ciphertext}")
decrypted_text = decrypt(ciphertext)
print(f"Decrypted Text: {decrypted_text}")