ここでは、iOSデバイスでのファイル削除に関する興味深い議論があります。問題は、NSFileManagerを使用してファイルを削除した場合、内部で何が起きているのかということでした。
私の理解では、削除はファイルシステムテーブルから対応するファイルエントリを削除することで実行されます。
カウンター引数は、ファイルハンドルが何らかの方法で残り、ファイルを削除済みとしてマークするフラグのみが設定されることです。ユーザーがiOSデバイスへのルートアクセス権を持っていた場合、そのフラグをリセットしてファイルコンテンツを回復できる可能性があります。
どちらの場合でも、ブロックが別のファイルで占有されるまで、実際のファイルの内容は上書きされず、プレーンバイトがフラッシュメモリ/ディスクに存在することに同意します。
現在のアイデアは次のとおりです。2番目のバージョンがtrueであれば、削除する前に1バイトのコンテンツでファイルを上書きできます(そのバイトが実際に古いコンテンツを上書きせずにフラッシュドライブの新しい場所に書き込まれた場合でも)。その後、ファイルが復元されると、上書きされた1バイトのコンテンツのみが使用可能になります。
元のファイルの内容を回復できる可能性があるフラッシュドライブのフォレンジック分析については説明していません。
要約すると:
- iOSでのファイルの削除は内部的にどのように機能しますか?
- 上書きアプローチは削除を防ぎますか?