写一个des加密算法那
时间: 2023-11-10 22:03:09 浏览: 85
这里提供一个 Python 代码实现 DES 加密算法的示例,供参考:
```python
from Crypto.Cipher import DES
def des_encrypt(key, data):
"""DES 加密"""
cipher = DES.new(key, DES.MODE_ECB)
# 明文数据需要补齐 8 的倍数
data = data + (8 - (len(data) % 8)) * chr(0)
result = cipher.encrypt(data.encode())
return result.hex()
def des_decrypt(key, data):
"""DES 解密"""
cipher = DES.new(key, DES.MODE_ECB)
result = cipher.decrypt(bytes.fromhex(data)).decode()
# 去除补齐的空字符
return result.rstrip(chr(0))
if __name__ == '__main__':
key = b'abcdefgh' # 8 字节密钥
data = 'Hello, world!'
encrypted = des_encrypt(key, data)
decrypted = des_decrypt(key, encrypted)
print('明文:{}'.format(data))
print('密文:{}'.format(encrypted))
print('解密结果:{}'.format(decrypted))
```
这个示例使用了 Python 的第三方库 `pycryptodome` 提供的 DES 实现,也可以使用其他语言的库或自行编写实现。需要注意的是,DES 算法已经不安全,不建议在实际应用中使用。建议使用更安全的加密算法,如 AES 等。
阅读全文