SSDデータ消去の仕組みについて

最近では SSD(Solid State Drive)内蔵のPCが増加しています。同時に情報漏えい対策の観点からSSDデータ消去のニーズが高まっています。

SSDはハードディスクと異なる仕組みで構成されており、確実にSSD内部のデータを消去するには専門の知識と「対応するソフトウェア」が必要です。ハードディスク同様、SSDはディスク フォーマットだけ実施し、廃棄処分やリース会社へ返却すると情報漏えいの原因になります。

本ページではSSDの仕組みを、HDDと比較しながら解説します。

SSDとHDDデータ消去の大きな違い

HDDの場合、データが保存されている領域に対して「0」や「乱数」を上書きすることでデータ消去します。一方 SSDの場合、保存されているデータ領域へ上書き「できない」という特徴があります。

HDD データ消去を行う場合

HDDのデータ消去イメージ

上図をHDDのデータ領域とします。(色がついているマスがデータの存在する場所)
HDDのデータを消去する場合、各マスに「0」や「乱数」を上書きします。

HDDのデータ消去イメージ

全てのマスに上書きが完了すると、上図の様に全データ領域にデータが「存在しない状態」となり、データ消去が完了します。

SSD データ消去を行う場合

一方 SSDの場合、ブロック単位でしかデータ消去ができないという特性があります。

SSDのデータ消去イメージ

上図は、4マスを1ブロックと想定したイメージ図です。(色がついているマスがデータの存在する場所)

例えば「赤色」の箇所を消去する場合、ブロック単位でしかデータ消去ができません。同一ブロック内にある「水色」「青色」のデータはブロックコピーと呼ばれる処理が行われ、自動的に他のブロックへデータがコピーされます。

SSDのデータ消去イメージ

これで「赤色」マスのブロックを消去できる状態になります。

SSDのデータ消去イメージ

しかし 消去対象のブロックに存在したデータは、既に他ブロックへコピーされている為、データは残存します。

単純にブロック単位で消去すれば良いのでは?と思われるでしょう。SSDでは「ウェアレベリング」という自動制御技術が導入されており、ブロックコピーを抑止できません。

SSD ウェアレベリングとは?

ウェアレベリングの解説前に、SSDハードウェア構造について解説します。

  

上図はSSD(Intel製 SSD 330 Series 120GB)のケースを外し、基板を撮影しました。

SSDは大きく3パーツに分けられます。

    1. コントローラー
    2. キャッシュメモリ※
    3. フラッシュメモリ

※本SSDは旧モデルの為、キャッシュメモリ非搭載

SSDはNAND型フラッシュメモリを利用しています。フラッシュメモリは記憶素子データの書き込み回数に上限(寿命)があります。その為、同一ブロックに書き込みが集中すれば早く上限(寿命)に達します。可能な限り、平均的にブロックを利用するようデータ保存先を自動分散させる仕組みを導入しています。

この制御方法がウェアレベリング(摩耗平滑化)と呼ばれ、上記1. コントローラーで制御されます。この制御方法によりSSDの寿命が格段に向上しました。また コントローラーは保存先を制御するだけではなく、どのブロックにどのようなデータが保存されているか?を記録する「マッピングテーブル」も内蔵しています。

ウェアレベリングを回避すればデータ消去可能

ウェアレベリングはSSDの耐用年数 / 寿命を向上させる重要な技術です。一方 SSDのデータを消去する場合、通常の方法では完全にデータが消去できない要因となりました。では、どのようにしてウェアレベリングを回避(無効化)し、SSDのデータを消去できるのでしょうか?

SSDのデータ消去を行う方法

  1. SSDの初期化: コントローラーが記録している「マッピングテーブル」や「メモリセル」を消去し、フラッシュメモリに保存されたデータを読み出せない状態にする → SSDの初期化を行った場合、フラッシュメモリ上にデータは残存しているが、マッピングテーブルが消失している為、フラッシュメモリ内の情報だけではデータ復元は不可能になる

2. ウェアレベリングを無効化し、全ブロック消去: フラッシュメモリ上に残存しているデータを全ブロック消去

上記1.と2.は、Secure Erase / 拡張Secure Erase と呼ばれています。この機能はSSD内部に格納されています。

しかし、SSD内部に格納されているSecure Erase / 拡張Secure Eraseを容易に実行できません。容易に実行できた場合「悪意を持つ他者がデータを消去できる」「知識が無いユーザーが誤ってデータを消去する」など不都合が生じる可能性があります。

よって、PCサイドでSecure Erase / 拡張Secure Eraseを容易に実行させないよう「セキュリティー・フリーズ・ロック(Security Freeze Lock)」または「セキュアー・フリーズ・ロック(Secure Freeze Lock)」と呼ばれるセーフティロックを付加しています。「セキュリティー・フリーズ・ロック(Security Freeze Lock)」を解除し、初めてSecure Erase / 拡張Secure Eraseを実行できます。しかし、多くのPCでは「セキュリティー・フリーズ・ロック(Security Freeze Lock)」が解除不可能な仕様に設定されています。

「セキュリティー・フリーズ・ロック(Security Freeze Lock)」が解除できたとしても障害はあります。Windows 8 以降、シリアルATA接続のSSDに対し、Secure Eraseが実行出来ない仕様になりました。

外付けSSDであればSecure Erase/拡張Secure Eraseの実行が可能

前述の通り、内蔵SSDに対しSecure Erase/拡張Secure Eraseの実行は困難です。しかし USB変換ケーブルを利用し、外付けSSDとして認識させ「外部から」Secure Erase/拡張Secure Eraseを実行させられます。

Serial ATA接続からUSBへ変換するケーブルは数多く存在しています。しかし、SSD内部のコマンドを実行させる専用ケーブルは希少です。さらに 変換ケーブルを購入後、SSDのデータ消去を行えないという可能性もあります。DiskDeleter専用ケーブルであれば、SSDデータ消去が実行できる検証済みケーブルを提供しています。

上記では、Secure Eraseを実行する方法を解説しました。最近ではSSDが大容量化し、データ消去にかかる時間が伸長しています。最近では「どの消去方式を採用したら良いのか?」というお問い合わせをいただきます。

下記では、データ消去の現場で推奨する機密レベルに応じた最適なデータ消去方式を紹介いたします。

データ消去に関するベスト・プラクティス

 

購入はこちら