web-dev-qa-db-ja.com

SSDに保存されているファイルを安全に削除する方法は?

(非常に長いですが、間違いなく読む価値があります) SSDに関する記事

OSでファイルを削除しても、ハードドライブやSSDからの反応はありません。実際にデータを失うのは、セクター(ハードドライブ上)またはページ(SSD上)を上書きするまでではありません。ファイル回復プログラムはこのプロパティを利用して、削除されたファイルを回復するのに役立ちます。

ただし、HDDとSSDの主な違いは、ファイルを上書きするとどうなるかです。 HDDは新しいデータを同じセクターに簡単に書き込むことができますが、SSDは上書きされたデータに新しい(または以前に使用された)ページを割り当てます。無効になったデータを含むページは、無効とマークされ、ある時点で消去されます。

では、SSDに保存されているファイルを安全に消去するための最良の方法は何でしょうか?ハードディスクから慣れているランダムデータでの上書き(「shred」ユーティリティの使用など)は、WHOLEドライブを上書きしない限り機能しません...

28
c089

@teabotが述べたように、フルディスク暗号化ソフトウェアを使用すると、安全な削除の問題を回避できます。ただし、 関連する質問 で述べたように、これは圧縮やTRIMなどのコントローラーの機能の多くを妨げ、パフォーマンスが通常のレベルまで低下すると報告されているため、パフォーマンスに大きな影響を与えますハードディスクは高価なSSDよりも高速です。 SandForceベースのデバイスには、より良い解決策があります。これらのデバイスはデフォルトでAES暗号化を実行し、ATAセキュア削除機能を使用するとキーが消去され、攻撃者がAES(現在の128ビット、256ビット)を破壊できない限り、すべてのデータにアクセスできなくなります。 2011年3月にリリースされた新しいドライブ用)。

6
c089

ボリューム自体を暗号化するのはどうですか?削除されたデータはそのまま残りますが、適切なキーがないと誰もアクセスできなくなります。

22
teabot

SSDドライブがATAセキュリティモード機能セットをサポートしている場合は、セキュア消去機能が組み込まれています。セキュア消去のようなものを使用してアクセスできます ここ および ここ

13
bk1e

NANDフラッシュメモリの性質上、SSDはデータを直接上書きできません。ファイルを削除する前に繰り返し上書きすると、SSD上のファイルは安全に消去されません。データはNANDの他の場所に書き込まれるだけです。

これが事実である理由を理解するには、SSDが内部でどのように機能するかを説明する必要があります。

  • NANDフラッシュはブロックに分割され、各ブロックはページのセットで構成されます。通常、サイズは4 KB(およびエラー修正コード)です。 。最近のSSDのほとんどは、ブロックサイズが512 KBの128ページのブロックを持つNANDを使用していますが、一部のドライブ、特に古いドライブでは、256 KB以下のブロックを使用する場合があります。次の図は256 KBのブロックを想定していますが、概念はブロックサイズに関係なく同じです。

Diagram of pages in a NAND block
ソース –礼儀ミュージックソーターウィキペディア、CC BY-SA 3.0

  • 各ページは個別に書き込むことができますが、消去するまでページを再書き込みすることはできません。消去はブロック全体でのみ実行できます。これは、データが書き換えられるたびに、SSDが影響を受けるページのデータを無効としてマークし、別のブロックの別の場所に書き直す必要があることを意味します。より適切なタイミングで、理想的にはドライブがアイドル状態でブロック内のすべてのページが無効とマークされている場合、SSDは使用されなくなったブロックを消去できます。このクリーンアッププロセスはガベージコレクションと呼ばれます。

  • SSDが消去できるブロックを認識するために、オペレーティングシステムは、どのブロックに有効なデータが含まれていないかをSSDに通知する必要があります。これは ATA[〜#〜] trim [〜#〜]コマンド を使用して行われます。 SSDは、それらの未使用のブロックをガベージコレクションするために自由になります。

SSDは書き込みをNANDに均等に分散させて、ドライブが利用できる空き領域に依存するプロセスである早期の障害を回避します。

  • 各NANDブロックは、有限数の書き込み/消去サイクルしか維持できません。今日のコンシューマーグレードのSSDの多くは19〜21 nmのNANDを使用しており、各ブロックは約3,000サイクルで使用できなくなりますが、エンタープライズSSDや、より耐久性の高いタイプのNANDを使用するいくつかのハイエンドコンシューマーSSDが市販されています。

  • ただし、すべてのケースで、SSDはドライブ全体に書き込みを分散させて、と呼ばれるプロセスを通じてドライブの早期故障を回避するために、単一のブロックに過度の摩耗を与えないようにする必要があります 摩耗レベリング。効率的なウェアレベリングは、ドライブがほぼいっぱいになった場合でも、必要に応じて効率的なガベージコレクションを可能にするために予約されている一定の容量(over-provisioning)がある場合にのみ達成できます。 。

  • SSDが古いブロックを消去するよりも速くデータを書き込むように求められている極端な状況下では(書き込みが多いデータセンターのワークロードでは一般的です)、あるブロックのデータを別のブロックに再書き込みし、古いブロックをすぐに消去することが強制される場合がありますガベージコレクションを実行する前に、新しいデータのための方法を作るため。

  • ブロックの強制的な再書き込みは、パフォーマンスを低下させ、書き込み増幅に寄与するため、理想的ではありません。ドライブが書き込むように指示された量。追加されたオーバープロビジョニングにより、データを再書き込みして古いブロックを消去するためのより多くのスペアスペースが提供され、書き込みの増幅を軽減できます。このため、Samsung SSD 845DC PROなどのハイエンドエンタープライズSSDのサイズは、ドライブ内にそれぞれ256 GBまたは512 GB近いNANDが搭載されていますが、200 GBや400 GBです。 次も参照してください: SSDのサイズがおかしいのはなぜですか?

  • SamsungのSSDホワイトペーパーシリーズは、SSDの内部動作の完全な説明を提供します。 NANDページとブロックの書き込みと消去、およびガベージコレクションについては、ホワイトペーパー04で説明しています。

SSD上のデータを完全に消去する唯一の方法は、ATAセキュア消去コマンドを使用することです。

  • Secure Eraseは、過剰にプロビジョニングされたNAND領域に残っている可能性のあるデータを含む、保存されているすべてのデータを消去するようにドライブに指示します。これが行われると、すべてのブロックが消去され、元のドライブになります。

  • 自己暗号化機能を備えたドライブでは、暗号化キーをワイプするだけでSecure Eraseを実装できます。暗号化されたドライブのNAND上のデータはキーがないと読み取ることができないため、暗号化されていないドライブで必要なすべてのブロックを消去する必要はありません。

11
bwDraco

ドライブ全体を上書きしても、HDとSSDの両方に 障害発生時に代替 、またはSSDの場合に役立つスペアセクターが含まれているため、確実に特定することはできません ウェアレベリング

データが完全に失われたことを確実にしたい場合は、回復を超えてドライブを物理的に破壊する必要があります。上書きすると、HDで妥当な確実性が得られます-SSDでは、それを実現する方法は実際にはありません。ドライブ全体をいっぱいにした場合でも、データが含まれていたブロックがウェアレベリング用のスペアブロックに切り替えられ、後で再び表示される可能性があります。

10

ご想像のとおり、データを格納するために使用されていたすべてのブロックが確実にワイプされるように、すべての空き領域をワイプすることが確実な方法です。まあ、軌道からサイトを削除する以外に...

これは非常に時間がかかり、マルチパスシュレッドを使用すると、フラッシュチップの寿命が短くなります。

削除されたデータを保護するもう1つの方法は、truecryptなどの暗号化されたファイルシステムを使用して、最初に暗号化されたデータを保存することです。

3
David Spillett