モジュールを使用してその場でファイルを暗号化しようとしてcryptography
いるため、メモリを大量に消費する可能性のあるファイルの暗号文をバッファリングする必要はありません。その後、元のファイルを暗号化されたファイルに置き換える必要があります。したがって、私のソリューションはチャンクを暗号化しています一度に16バイトずつ暗号文に置き換えようとします(AES-CTRモード)。問題は、ループが無限ループであるようです。
- これを修正する方法。
- あなたが提案する他の方法。
- 以下のような方法を使用することの副作用は何ですか。
pointer = 0
with open(path, "r+b") as file:
print("...ENCRYPTING")
while file:
file_data = file.read(16)
pointer += 16
ciphertext = aes_enc.update(file_data)
file.seek(pointer-16)
file.write(ciphertext)
print("...Complete...")