要使用Python將文本文件加密后輸出,可以使用密碼學中的一些算法來對文件進行加密。下面是一個使用AES算法將文本文件加密的示例:
from Crypto.Cipher import AES
def encrypt_file(input_file, output_file, key):
# 使用AES算法創建加密對象
cipher = AES.new(key, AES.MODE_ECB)
chunk_size = 16 * 1024 # 每次讀取16KB
with open(input_file, 'rb') as file_in:
with open(output_file, 'wb') as file_out:
while True:
chunk = file_in.read(chunk_size)
if len(chunk) == 0:
break
# 加密數據
encrypted_chunk = cipher.encrypt(chunk)
file_out.write(encrypted_chunk)
# 設置輸入文件、輸出文件和密鑰
input_file = 'input.txt'
output_file = 'encrypted_output.txt'
key = b'Sixteen byte key'
# 調用加密函數
encrypt_file(input_file, output_file, key)
在上面的代碼中,我們使用了Crypto
庫中的AES
模塊來實現AES加密。首先,我們創建了一個加密對象cipher
,使用給定的密鑰和加密模式(這里使用了ECB模式)。然后,我們按指定的塊大小(這里是16KB)讀取輸入文件,并將每個塊加密后寫入輸出文件。
請注意,這只是一個簡單的示例,實際使用中還需要考慮更多因素,如文件較大時的分塊加密、密鑰的安全性等。