0

コールバックを使用して結果データを提供するライブラリがあります。次に、最初に CipherOutputStream を使用して AES 暗号化を行い、ファイルにデータを書き込みます。残念ながら、このライブラリは、既に提供された (および書き込まれた) データを変更するためにシークする必要があるようです。暗号化されたファイルでどうにかしてこれを行うことはできますか?

これは、Android でサポートされている AES ECB などの一部のアルゴリズムで可能になる可能性があることを理解しています。これは正しいですか、それとも間違っていますか?

ライブラリが 40 バイトのオフセットをシークし、いくつかのバイトを書き込むように要求したとします。可能であれば、どうすればこれを行うことができますか?

4

1 に答える 1

-1

ファイルが変更されるたびに、新しい初期化ベクトルを使用してファイル全体を再暗号化する必要があります。他のアプローチは安全ではありません。

ECB モードは再暗号化なしのランダム アクセスをサポートしますが、ECB は「安全な」要件自体を満たしません。CBC モードはランダム アクセスをサポートしていません。CTR モードはランダム アクセスをサポートしますが、この方法では決して使用しないでください。ナンスの再利用としてカウントされ、平文の復元が行われるためです。

于 2013-07-30T17:37:48.747 に答える