Introduction |
SSDはウェアレベリングと呼ばれる技術を使用しており、特定のブロックが他のブロックよりも多く使用されるのを避けるため、データをドライブ全体に均等に分散させます。その結果、SSDからファイルが削除されても、データはすぐにドライブから削除されません。その代わり、SSDはその領域を無効としてマークし、そのブロックが再び必要になるまでデータを保持し、その時点でSSDはその上に新しいデータを書き込みます。 | ハードディスクのデータ破壊は比較的簡単で、データの上書き(完了するまでに長時間かかるかも知れませんが)でも行えますし、より万全を期すなら物理的に破壊することでも行えます。しかしながら、ソリッドステートディスク(SSD)や半導体ストレージについては、物理的な破壊が唯一の確実な方法です。 | | しかし、HDDとは異なり、SSDからのデータ復旧ははるかに困難です。SSDのウェアレベリング技術により、データは複数のブロックに分散されるため、ファイル全体を復元するのは困難だからです。 | ハードディスクと異なり、SSDは既に記録されているデータを消去することなしにデータを上書きすることができません。記録されているデータの消去は比較的時間のかかるプロセスで、かなり多くのメモリブロックに対してまとめて行うことしかできません。このような理由から、実用的な速度で動作させるために、新しいデータは何も記録されていないブロックに書き込まれた後、SSDコントローラはどこに何のデータが記録されているかという目次を更新します。古いデータは同じデータブロック内のデータ(おそらくいくつもの異なるファイルの一部)に必要とされるものが一つもないとSSDが判断するまで残り続けます。同じデータブロック内に必要とされるデータがないと判断されて初めてブロック全体が消去され、再利用できるようになります。 | | SSD上のデータを安全に消去するには、新しいデータで上書きするか、ATA Secure Eraseコマンドを実行する必要があります。ATA Secure Erase コマンドは、非表示またはアクセスできない可能性のあるデータを含め、ドライブ上のすべてのデータを消去するよう SSD に指示します。このコマンドは、データの暗号化に使用された暗号化キーもリセットし、データを復元不可能にします。 | 結果として、古いデータは、ディスク解析ツールなどを使わなければ直接読み取れない状態とはいえ、メモリセルに残り続けることが多くなります。どこかの時点でこのような古いデータは消去されてメモリセルは再利用できるようになるはずですが、繰り返し使われて信頼性が失われたデータブロックは、最終的に永遠に採用されることもなくデータ消去も行われなくなります。 | | SSD からデータを復元不可能にする唯一の確実な方法は、ドライブを物理的に破壊することです。特に、ATA Secure Erase コマンドがデバイスのファームウェアに適切に実装されていない場合は、この方法が有効です。これは、ファームウェアのバグや、ATA Secure Erase コマンドを適切に実行しないベンダー固有の実装が原因である可能性があります。 | ATA Secure Eraseコマンド(フリーウェアの[link|https://cmrr.ucsd.edu/resources/secure-erase.html|Secure Erase|new_window=true]ユーティリティなどで実行できます)を使うことでSSDのデータを確実に消去できます。このコマンドはSSDに対してドライブ上の全てのデータを消去する指示を出します。消去されるデータには、再利用されることのないブロック上のもののような、直接見えなかったり読み出すことができないものも含まれます。しかしながら、政府保安機関によれば、ATA Secure Eraseコマンドは全てのハードディスクやSSDで適切に実行されるわけではなく、また適切に実行できるかどうかを簡単に見分ける方法もありません。 | | ドライブを最初から暗号化することは、データを保護し、消去プロセスを簡素化する優れた方法です。ドライブを暗号化すると、データはディスクに書き込まれる際に自動的に暗号化され、暗号化キーはメモリに安全に保存されます。ドライブ上のデータを安全に消去するには、暗号化キーを削除または破棄するだけで、ドライブ上のデータは復元不可能になります。 | 確実にデータを破壊するためのより賢い方法は、取り扱いに注意が必要なデータを書き込む前に、暗号化を有効にしておくことです。その上で、データを破壊する際は、復号鍵を何か完全にランダムなものに変更してから、新しい復号鍵に関する情報を全て破棄してしまいましょう。そうすれば、もう誰もデータを復旧することはできません。WindowsではBitlocker、MacならFileVaultが利用できます。どちらも半導体ストレージに対しても使えますし、VeracryptならLinuxでも利用できます。半導体ストレージは紛失しやすいので、必ず暗号化しておいたほうがいいでしょう。 | | HDD上のデータを破壊したい場合は、私の関連ガイドをご覧ください[guide|140673]。 |
|