要實現一個Python文件加密的功能,可以考慮以下步驟:
選擇一種加密算法,如AES、DES等。這些算法在Python中可以通過使用cryptography
庫來實現。
定義一個函數來讀取要加密的文件,將文件內容讀取到一個變量中。
使用選擇的加密算法對文件內容進行加密。可以使用cryptography
庫中相應的函數來進行加密操作。
將加密后的內容寫入到一個新的文件中。
下面是一個簡單的示例代碼,使用AES算法對文件進行加密:
from cryptography.fernet import Fernet
def encrypt_file(file_path, key):
# 讀取文件內容
with open(file_path, 'rb') as file:
file_content = file.read()
# 創建加密器
cipher = Fernet(key)
# 加密文件內容
encrypted_content = cipher.encrypt(file_content)
# 將加密后的內容寫入新文件
encrypted_file_path = file_path + '.enc'
with open(encrypted_file_path, 'wb') as encrypted_file:
encrypted_file.write(encrypted_content)
# 示例用法
file_path = 'path/to/file.txt'
key = Fernet.generate_key()
encrypt_file(file_path, key)
在上面的示例中,首先通過Fernet.generate_key()
函數生成一個加密密鑰。然后,使用encrypt_file()
函數對指定的文件進行加密,并將加密后的內容寫入新文件(加密后的文件名為原文件名加上“.enc”后綴)。