最近では SSD(Solid State Drive)内蔵のパソコンが主流となっています。同時に情報漏えい対策の観点からSSDデータ消去のニーズが高まっています。
SSDはハードディスクと異なる仕組みで構成されており、確実にSSD内部のデータを消去するには専門の知識と「対応するソフトウェア」が必要です。ハードディスク同様、SSDはディスク フォーマットだけ実施し、廃棄処分やリース会社へ返却すると情報漏えいの原因になります。
本ページではSSDの仕組みを、HDDと比較しながら解説します。
HDDの場合、データが保存されている領域に対して「0」や「乱数」を上書きすることでデータ消去します。一方 SSDの場合、保存されているデータ領域へ上書き「できない」という特徴があります。
左図をHDDのデータ領域とします。(色がついているマスがデータの存在する場所)
HDDのデータを消去する場合、各マスに「0」や「乱数」を上書きします。
全てのマスに上書きが完了すると、上図の様に全データ領域にデータが「存在しない状態」となり、データ消去が完了します。
一方 SSDの場合、ブロック単位でしかデータ消去ができないという特性があります。
左図は、4マスを1ブロックと想定したイメージ図です。(色がついているマスがデータの存在する場所)
例えば「赤色」の箇所を消去する場合、ブロック単位でしかデータ消去ができません。同一ブロック内にある「水色」「青色」のデータはブロックコピーと呼ばれる処理が行われ、自動的に他のブロックへデータがコピーされます。
これで「赤色」マスのブロックを消去できる状態になります。
しかし 消去対象のブロックに存在したデータは、既に他ブロックへコピーされている為、データは残存します。
単純にブロック単位で消去すれば良いのでは?と思われるでしょう。SSDでは「ウェアレベリング」という自動制御技術が導入されており、ブロックコピーを抑止できません。
ウェアレベリングの解説前に、SSDハードウェア構造について解説します。
上図はSSD(Intel製 SSD 330 Series 120GB)のケースを外し、基板を撮影しました。
SSDは大きく3パーツに分けられます。
1. コントローラー 2. キャッシュメモリ※ 3. フラッシュメモリ
※本SSDは旧モデルの為、キャッシュメモリ非搭載
SSDはNAND型フラッシュメモリを利用しています。フラッシュメモリは記憶素子データの書き込み回数に上限(寿命)があります。その為、同一ブロックに書き込みが集中すれば早く上限(寿命)に達します。可能な限り、平均的にブロックを利用するようデータ保存先を自動分散させる仕組みを導入しています。
この制御方法がウェアレベリング(摩耗平滑化)と呼ばれ、上記1. コントローラーで制御されます。この制御方法によりSSDの寿命が格段に向上しました。また コントローラーは保存先を制御するだけではなく、どのブロックにどのようなデータが保存されているか?を記録する「マッピングテーブル」も内蔵しています。
ウェアレベリングはSSDの耐用年数 / 寿命を向上させる重要な技術です。一方 SSDのデータを消去する場合、通常の方法では完全にデータが消去できない要因となりました。では、どのようにしてウェアレベリングを回避(無効化)し、SSDのデータを消去できるのでしょうか?
HDDの場合、データが保存されている領域に対して「0」や「乱数」を上書きすることでデータ消去します。一方 SSDの場合、保存されているデータ領域へ上書き「できない」という特徴があります。
SSDの初期化:
コントローラーが記録している「マッピングテーブル」や「メモリセル」を消去し、フラッシュメモリに保存されたデータを読み出せない状態にする
→ SSDの初期化を行った場合、フラッシュメモリ上にデータは残存しているが、マッピングテーブルが消失している為、フラッシュメモリ内の情報だけではデータ復元は不可能になる
ウェアレベリングを無効化し、全ブロック消去:
フラッシュメモリ上に残存しているデータを全ブロック消去
上記1.と2.は、Secure Erase / 拡張Secure Erase と呼ばれています。この機能はSSD内部に格納されています。
しかし、SSD内部に格納されているSecure Erase / 拡張Secure Eraseを容易に実行できません。容易に実行できた場合「悪意を持つ他者がデータを消去できる」「知識が無いユーザが誤ってデータを消去する」など不都合が生じる可能性があります。
よって、パソコンサイドでSecure Erase / 拡張Secure Eraseを容易に実行させないよう「セキュリティー・フリーズ・ロック(Security Freeze Lock)」または「セキュアー・フリーズ・ロック(Secure Freeze Lock)」と呼ばれるセーフティロックを付加しています。「セキュリティー・フリーズ・ロック(Security Freeze Lock)」を解除し、初めてSecure Erase / 拡張Secure Eraseを実行できます。しかし、多くのパソコンでは「セキュリティー・フリーズ・ロック(Security Freeze Lock)」が解除不可能な仕様に設定されています。
「セキュリティー・フリーズ・ロック(Security Freeze Lock)」が解除できたとしても障害はあります。Windows 8 以降、シリアルATA接続のSSDに対し、Secure Eraseが実行出来ない仕様になりました。
前述の通り、内蔵SSDに対しSecure Erase/拡張Secure Eraseの実行は困難です。しかし USB変換ケーブルを利用し、外付けSSDとして認識させ「外部から」Secure Erase/拡張Secure Eraseを実行させられます。
SSDやHDDにあるファイルをゴミ箱に捨てたり、フォーマットしただけではデータが消えたように見えても実際には残っています。
悪意のある第三者によってデータを復元され情報漏洩に繋がる可能性が非常に高くとても危険です。
そのため、実際のデータを消去する専用のデータ消去ソフトが必要です。
上記では、Secure Eraseを実行する方法を解説しました。最近ではSSDが大容量化し、データ消去にかかる時間が伸長しています。
データ消去の現場で推奨する最適なデータ消去方式については「推奨するデータ消去方式」をご覧ください。