des对文本文件加解密
时间: 2023-10-03 22:05:48 浏览: 138
DES(Data Encryption Standard)是一种对称加密算法,可以用来对文本文件进行加密和解密。
下面是利用Python实现的DES加解密示例代码:
```python
from Crypto.Cipher import DES
# 加密函数
def encrypt(key, plaintext):
des = DES.new(key, DES.MODE_ECB)
padded_plaintext = plaintext + ((8 - len(plaintext) % 8) * chr(8 - len(plaintext) % 8)).encode()
encrypted_text = des.encrypt(padded_plaintext)
return encrypted_text
# 解密函数
def decrypt(key, ciphertext):
des = DES.new(key, DES.MODE_ECB)
decrypted_text = des.decrypt(ciphertext)
unpadded_plaintext = decrypted_text[:-decrypted_text[-1]]
return unpadded_plaintext
# 测试
key = b'01234567'
plaintext = b'This is a secret message.'
ciphertext = encrypt(key, plaintext)
decrypted_text = decrypt(key, ciphertext)
print('Plaintext:', plaintext)
print('Ciphertext:', ciphertext)
print('Decrypted text:', decrypted_text)
```
在这个示例中,我们使用了PyCryptodome库中的DES模块来实现加解密功能。加密函数接受一个密钥和一个明文字符串作为输入,返回加密后的密文。解密函数接受同样的密钥和密文作为输入,返回解密后的明文。
在测试中,我们使用了一个长度为8字节的密钥和一个明文字符串来演示加解密过程。输出结果中,可以看到明文、密文和解密后的明文都打印出来了。
需要注意的是,DES算法已经被认为是不安全的,因此不建议在实际应用中使用。如果需要更强的加密算法,可以考虑使用AES等其它算法。
阅读全文