阅读量:3
Python文件加密和解密可以通过使用加密算法和相应的密钥来实现。以下是一个简单的示例:
加密文件:
from cryptography.fernet import Fernet def encrypt_file(file_path, key): with open(file_path, 'rb') as file: data = file.read() fernet = Fernet(key) encrypted_data = fernet.encrypt(data) with open(file_path, 'wb') as file: file.write(encrypted_data) # 使用一个随机生成的密钥 key = Fernet.generate_key() # 加密文件 encrypt_file('plain.txt', key)
解密文件:
from cryptography.fernet import Fernet def decrypt_file(file_path, key): with open(file_path, 'rb') as file: encrypted_data = file.read() fernet = Fernet(key) decrypted_data = fernet.decrypt(encrypted_data) with open(file_path, 'wb') as file: file.write(decrypted_data) # 使用之前生成的密钥 key = b'your_generated_key' # 解密文件 decrypt_file('encrypted.txt', key)
上述示例使用了cryptography
库中的Fernet
算法来进行文件加密和解密。在加密时,读取文件内容并使用密钥对其进行加密,然后将加密后的数据写回到文件中。在解密时,读取加密后的文件内容并使用密钥对其进行解密,然后将解密后的数据写回到文件中。请注意,密钥需要在加密和解密时保持一致。
需要注意的是,文件加密和解密是一种基本的保护文件内容的方法,但它并不能防止其他类型的攻击或者保护文件的完整性。在使用文件加密和解密时,确保密钥的安全性非常重要。