(57)【要約】不揮発性記録媒体からデータを消去する方法及びシステムが、不揮発性記録媒体コントローラ、不揮発性記録媒体、及びＣＰＵを含む。消去コマンド内に用いるデータパターンを不揮発性記録媒体に単一回送信する。その結果、不揮発性記録媒体コントローラに転送されるデータの量が最小限まで低減される。消去コマンドを受信した後に、不揮発性記録媒体コントローラは消去領域にこのデータパターンを上書きする。
2008523468.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性記録媒体からデータを安全に消去する方法において、
コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに消去領域識別子を送信するステップであって、前記消去領域識別子は、前記不揮発性記録媒体内の消去領域内の複数の記憶域に対応し、前記不揮発性記録媒体コントローラが前記不揮発性記録媒体に動作的に接続されているステップと；
前記コンピュータ装置内の前記プロセッサから前記不揮発性記録媒体コントローラに、データパターンを単一回の転送で送信するステップと；
前記コンピュータ装置内の前記プロセッサから前記不揮発性記録媒体コントローラに消去コマンドを送信するステップであって、前記不揮発性記録媒体コントローラが、前記消去領域識別子によって識別される前記消去領域内の複数の記憶域に上書きする複数の命令を構成し、前記命令の各々が、前記消去領域識別子によって識別される前記消去領域内にある前記複数の記憶域の少なくとも１つに書き込む命令であるステップと
を具えていることを特徴とする不揮発性記録媒体のデータ消去方法。
【請求項２】
前記消去領域識別子をランダムに生成することを特徴とする請求項１に記載の方法。
【請求項３】
前記消去領域識別子をユーザが入力することを特徴とする請求項１に記載の方法。
【請求項４】
前記消去領域識別子が、前記消去領域における開始記憶域及び記憶域のカウント数を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記消去領域識別子が、シリンダ−ヘッド−セクタ・アドレス指定方式により前記消去領域を規定することを特徴とする請求項１に記載の方法。
【請求項６】
前記消去領域識別子が、論理ブロック・アドレス指定方式により前記消去領域を規定することを特徴とする請求項１に記載の方法。
【請求項７】
前記消去領域識別子が、前記コンピュータ装置内の前記プロセッサに結合された記憶装置内に事前に記憶されていることを特徴とする請求項１に記載の方法。
【請求項８】
前記データパターンをランダムに生成することを特徴とする請求項１に記載の方法。
【請求項９】
前記データパターンをユーザが入力することを特徴とする請求項１に記載の方法。
【請求項１０】
前記データパターンが、前記コンピュータ装置内の前記プロセッサに結合された記憶装置内に事前に記憶されていることを特徴とする請求項１に記載の方法。
【請求項１１】
前記不揮発性記録媒体がハードディスクであることを特徴とする請求項１に記載の方法。
【請求項１２】
前記不揮発性記録媒体が半導体ＰＲＯＭメモリであることを特徴とする請求項１に記載の方法。
【請求項１３】
前記不揮発性記録媒体が半導体フラッシュメモリであることを特徴とする請求項１に記載の方法。
【請求項１４】
前記不揮発性記録媒体が磁気テープであることを特徴とする請求項１に記載の方法。
【請求項１５】
前記不揮発性記録媒体及び前記不揮発性記録媒体コントローラが筐体によって包囲されていることを特徴とする請求項１に記載の方法。
【請求項１６】
さらに、前記不揮発性記録媒体内の前記消去領域内のデータの状態を示す信号を、前記コンピュータ装置内の前記プロセッサに送信するステップを具えていることを特徴とする請求項１に記載の方法。
【請求項１７】
不揮発性記録媒体からデータを安全に消去する方法において、
コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラにコマンドを送信するステップであって、前記不揮発性記録媒体コントローラは前記不揮発性記録媒体に動作的に接続されているステップと；
事前に記憶している消去領域識別子によって識別される消去領域に対応する複数の記憶域に上書きする複数の命令を構成するステップであって、前記命令の各々が、前記事前に記憶している消去領域識別子によって識別される前記消去領域内の前記複数の記憶域の少なくとも１つに、事前に記憶しているデータパターンを書き込む命令であるステップと
を具えていることを特徴とする不揮発性記録媒体の消去方法。
【請求項１８】
前記消去領域が、前記不揮発性記録媒体内に事前に記憶されていることを特徴とする請求項１７に記載の方法。
【請求項１９】
前記データパターンが、前記不揮発性記録媒体内に事前に記憶されていることを特徴とする請求項１７に記載の方法。
【請求項２０】
不揮発性記録媒体からデータを安全に消去する方法において、
コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに消去領域識別子を送信するステップであって、前記消去領域識別子は、前記不揮発性記録媒体内の消去領域内の複数の記憶域に対応し、前記不揮発性記録媒体コントローラが前記不揮発性記録媒体に動作的に接続されているステップと；
前記コンピュータ装置内の前記プロセッサから前記不揮発性記録媒体コントローラに、データパターンを送信するステップであって、前記データパターンを、前記消去領域内の前記複数の記憶域における記憶域の数より少ない回数だけ送信するステップと；
前記コンピュータ装置内の前記プロセッサから前記不揮発性記録媒体コントローラに消去コマンドを送信するステップであって、前記不揮発性記録媒体コントローラが、前記消去領域識別子によって識別される前記消去領域内の前記複数の記憶域に上書きする複数の命令を構成し、前記命令の各々が、前記消去領域識別子によって識別される前記消去領域内にある前記複数の記憶域の少なくとも１つに書き込む命令であるステップと
を具えていることを特徴とする不揮発性記録媒体の消去方法。
【請求項２１】
コンピュータ装置内のプロセッサと；
不揮発性記録媒体コントローラとを具えた不揮発性記録媒体消去システムであって、
前記コンピュータ装置内の前記プロセッサは、消去領域識別子、データパターン、及び消去コマンドを送信し、前記消去領域識別子は、不揮発性記録媒体内の消去領域内の複数の記憶域に対応し、
前記不揮発性記録媒体コントローラは、前記コンピュータ装置内の前記プロセッサからの送信を受信し、前記不揮発性記録媒体コントローラは前記不揮発性記録媒体に動作的に接続され、前記不揮発性記録媒体コントローラは、前記消去領域識別子によって識別される前記消去領域内の前記複数の記憶域に上書きする複数の命令を構成し、前記命令の各々が、前記消去領域識別子によって識別される前記消去領域内の前記複数の記憶域の少なくとも１つに前記データパターンを書き込む命令である
ことを特徴とする不揮発性記録媒体消去システム。
【請求項２２】
前記データパターンを単一回送信することを特徴とする請求項２１に記載のシステム。
【請求項２３】
前記データパターンを、前記消去領域内の前記複数の記憶域における記憶域の数より少ない回数だけ送信することを特徴とする請求項２１に記載のシステム。
【請求項２４】
前記消去領域識別子が０である場合に、前記不揮発性記録媒体内のすべての記憶域に前記データパターンを書き込むことを特徴とする請求項２１に記載のシステム。
【請求項２５】
不揮発性記録媒体からデータを安全に消去する方法において、
データパターン及び消去領域識別子を、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに単一回の転送で送信するステップであって、前記消去領域識別子は、前記不揮発性記録媒体内の消去領域内の複数の記憶域に対応し、前記不揮発性記録媒体コントローラが前記不揮発性記録媒体に動作的に接続されているステップと；
前記コンピュータ装置内の前記プロセッサから前記不揮発性記録媒体コントローラに消去コマンドを送信するステップであって、前記不揮発性記録媒体コントローラは、前記消去領域識別子によって識別される前記消去領域内の前記複数の記憶域に上書きする命令を構成し、前記命令の各々が、前記消去領域識別子によって識別される前記消去領域内の前記複数の記憶域の少なくとも１つに前記データパターンを書き込む命令であるステップと
を具えていることを特徴とする不揮発性記録媒体の消去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（発明の背景）
１．発明の分野
本発明は、安全かつ効率的なデータの諸虚に関するものである。本発明は特に、記録媒体上に記憶されたデータの消去に関するものである。
【０００２】
２．一般的背景
多くの電子システムは、データを記憶するための不揮発性記録媒体に頼る。この不揮発性記録媒体は、ハードディスクドライブ、半導体フラッシュドライブ、ＰＣＭＣＩＡカード、ＰＣカード、磁気テープ、あるいは光記録媒体とすることができる。他の種類の光記録媒体を用いることもできる。軍事用のような高度なセキュリティシステムでは、完全かつ安全な消去方法を利用して、一旦、不揮発性記録媒体に記憶したデータを決して復元することができないことを保証している。さらに、より低レベルのセキュリティシステムは完全な消去を利用して個人データまたは機密データを保護している。
【０００３】
データを消去するための現行方法の１つは、消去すべきターゲット（目標）データを指示するポインタを削除することである。データは、削除したポインタを介してはアクセス不能であるが、データはメモリに記録されたまま残っており、他の手段によって潜在的にアクセス可能である。従って、単にポインタを消去することは、不揮発性記録媒体からデータを安全に消去しない。
【０００４】
消去領域全体にわたっての上書きは、完全な消去を提供するのに役立つ。消去領域全体に上書きするために、消去領域内の記憶域に所定データパターンを記録する。こうして、消去領域内に元に記録されたデータが上書きされる。データパターンは、種々のディジット（数字）及び／または英数字を含むことができる。例えば、このデータパターンは１の連続、０の連続、あるいは１と０のランダムな組合せを含むことができる。
【０００５】
一般に、消去手順が１つのデータパターンしか使用しない場合には、この消去手順は、特定記憶域に前に記憶した値の痕跡を残し得る。これらの痕跡は容易には読み取られないが、特別な方策を用いることによって読み取ることができる。
【０００６】
（発明の概要）
本発明の１つの態様では、不揮発性記録媒体からデータを安全に消去する方法が提供される。消去領域識別子を、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信する。この消去領域識別子は、不揮発性記録媒体内の消去領域内の複数の記憶域に対応する。不揮発性記録媒体コントローラは、不揮発性記録媒体に動作的に接続されている。データパターンも、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信される。このデータパターンは単一回の転送で送信される。最後に、消去コマンドがコンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信される。不揮発性記録媒体コントローラは、上記消去領域識別子によって識別される消去領域内の複数の記憶域に上書きする命令を構成する。各命令は、上記消去領域識別子によって識別される消去領域内にある記憶域に上記データパターンを上書きする。
【０００７】
本発明の他の態様では、上記消去領域識別子をランダムに発生する。他の態様では、上記消去領域識別子をユーザが入力する。他の態様では、上記消去領域識別子が、消去領域内の開始記憶域及び記憶域のカウント数を含む。他の態様では、上記消去領域識別子が、シリンダ−ヘッド−セクタ・アドレス方式により消去領域を規定する。さらに他の態様では、上記消去領域識別子が、論理ブロック・アドレス指定方式により消去領域を規定する。
【０００８】
１つの態様では、上記消去領域識別子または上記データパターンを、コンピュータ装置内のプロセッサに結合された記憶装置に事前に記憶する。他の態様では、上記データパターンをランダムに発生するか、あるいはユーザが入力する。他の態様では、コンピュータ装置内のプロセッサが、不揮発性記録媒体の消去領域内のデータの状態を示す信号を発生する。
【０００９】
他の態様では、上記不揮発性記録媒体がハードディスクである。他の態様では、上記不揮発性記録媒体が半導体ＰＲＯＭメモリである。他の態様では、上記不揮発性記録媒体が半導体フラッシュメモリである。他の態様では、上記不揮発性記録媒体が磁気テープである。
【００１０】
他の態様では、不揮発性記録媒体からデータを安全に消去する方法が提供される。消去コマンドが、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信される。不揮発性記録媒体コントローラは不揮発性記録媒体に動作的に接続されている。事前に記憶した消去領域識別子によって識別される消去領域に対応する複数の記憶域に上書きする複数の命令を構成する。各命令は、事前に記憶した消去領域識別子によって識別される消去領域内にある記憶域の少なくとも１つに、事前に記憶したデータパターンを書き込む。これらの消去領域またはデータパターンは不揮発性記録媒体に事前に記憶されている。
【００１１】
１つの態様では、不揮発性記録媒体からデータを安全に消去する方法が提供される。消去領域識別子が、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信され、この消去領域識別子は、不揮発性記録媒体内の消去領域内の複数の記憶域に対応し、不揮発性記録媒体コントローラは不揮発性記録媒体に動作的に接続されている。データパターンが、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信され、このデータパターンは、上記消去領域内の複数の記憶域における記憶域の数より少ない回数だけ送信される。また、消去コマンドがコンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信され、この不揮発性記録媒体コントローラは、上記消去領域識別子によって識別される消去領域内にある複数の記憶域に上記データパターンを上書きする複数の命令を構成し、これらの命令の各々は、上記消去領域識別子によって識別される消去領域内にある記憶域の少なくとも１つに書き込む命令である。
【００１２】
１つの態様では、不揮発性記録媒体消去システムが提供される。コンピュータ装置内のプロセッサが、消去領域識別子、データパターン、及び消去コマンドを送信する。消去領域識別子は、不揮発性記録媒体内の消去領域内の複数の記憶域に対応する。不揮発性記録媒体コントローラが、コンピュータ装置内のプロセッサからの送信を受信する。不揮発性記録媒体コントローラは不揮発性記録媒体に動作的に接続され、上記消去領域識別子によって識別される消去領域内の複数の記憶域に上書きする複数の命令を構成する。各命令は、上記消去領域識別子によって識別される消去領域内にある記憶域の少なくとも１つに上記データパターンを書き込む命令である。
【００１３】
他の態様では、上記データパターンを単一回、あるいは消去領域内の複数の記憶域における記憶域の数より少ない複数回送信することができる。他の態様では、上記消去領域識別子が０である場合に、不揮発性記録媒体内のすべての記憶域に上記データパターンを書き込む。
【００１４】
１つの態様では、不揮発性記録媒体からデータを安全に消去する方法が提供される。データパターン及び消去領域識別子が、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに単一回の転送で送信される。この消去領域識別子は、不揮発性記録媒体内の消去領域内の複数の記憶域に対応する。不揮発性記録媒体コントローラは不揮発性記録媒体に動作的に接続されている。消去コマンドが、コンピュータ装置内のプロセッサから不揮発性記録媒体コントローラに送信される。不揮発性記録媒体コントローラは、上記消去領域識別子によって識別される消去領域内の複数の記憶域に上書きする複数の命令を構成する。各命令は、上記消去領域識別子によって識別される消去領域内にある記憶域の少なくとも１つに上記データパターンを書き込む命令である。
【００１５】
以下、本発明の実施例を図面を参照しながら説明する。
【００１６】
以下で説明する方法及びシステムは、不揮発性記録媒体上に記憶されたデータの、以前に見られた消去より高速の消去を提供する。通常は、不揮発性記録媒体上のデータの消去はデータパターンの使用を含む。このデータパターンは通常、記憶域に書き込む毎に不揮発性記録媒体に送られる。その結果、非常に多数回のデータパターンの転送が要求される、というのは、安全な消去は一般に、何百万回ではないにしても何千回もの、不揮発性記録媒体上の記憶域の上書きを含むからである。各データパターンの不揮発性記録媒体への転送は多大な時間を必要とする。以下で説明する方法及びシステムは、データパターンの不揮発性記録媒体への転送の回数を低減することによって、安全な消去を実行するために必要な時間を低減する。
【００１７】
この消去方法は、光学的、磁気的、及び半導体記録媒体を含む多くの種類の不揮発性記録媒体に適用することができることは、当業者にとって明らかである。これら及び他の特徴を以下に説明する。
【００１８】
図１Ａに、不揮発性記録媒体１３０に記憶されたデータを安全に消去するためのコンピュータシステム１００を示す。一実施例では、不揮発性記録媒体１３０がコントローラ１２０及び記憶モジュール１２５を含む。コントローラ１２０は、記憶モジュール１２５上のデータの読出し及び書込みを指示することによって記憶モジュール１２５内にデータを記憶するコンピュータのプロセッサとすることができる。コントローラ１２０は、コンピュータ装置１４０のような外部装置と通信する。コンピュータ装置１４０はコントローラ１２０と通信して、記憶モジュール１２５に書き込まれるデータ及び記憶モジュール１２５から消去されるデータを管理する。コンピュータ装置１４０は、ＣＰＵ１１０及びランダムアクセスメモリ（ＲＡＭ）１８０を含む。ＣＰＵ１１０はＲＡＭメモリ１８０を管理する。コンピュータ装置１４０は、入力／出力装置１５０を通してユーザ入力を受信することができる。入力／出力装置１５０は、キーボード、マウス、タッチパッド、ジョイスティック、タッチスクリーン、音声認識システム、等とすることができる。コンピュータシステム１４０は、パーソナルコンピュータ、ラップトップコンピュータ、セルラ電話機、パーソナル・データ・アシスタント（ＰＤＡ）、メディアプレーヤ、サーバー、ディジタル・ビデオレコーダ、メディアレコーダ内の埋込み制御システム、ディジタル・ビデオレコーダ内の埋込み制御システム、他の電子装置内の埋込み制御システム、等とすることができる。
【００１９】
一実施例では、ユーザが消去コマンドを入力して、記憶モジュール１２５から特定データを消去する。コンピュータシステム１４０は、ユーザが入力した消去コマンドを、入力／出力装置１５０を通して受信する。従って入力／出力装置１５０は、ユーザが入力したコマンドをＣＰＵ１１０に供給する。他の実施例では、ＣＰＵ１１０が消去コマンドをトリガまたは生成する。
【００２０】
ＣＰＵ１１０は、記憶モジュール１２５に記憶するデータに関する種々のコマンドを送信及び受信することによってコントローラ１２０と通信する。ＣＰＵ１１０からコントローラ１２０に送信されるこうしたメッセージの１つが消去メッセージである。
【００２１】
消去メッセージは、消去コマンド、データパターン、及び消去領域識別子を含むことができる。一実施例では、ＣＰＵ１１０がデータパターンを生成する。他の実施例では、データパターンは乱数発生器からランダムに生成される。一実施例では、ＣＰＵ１１０が乱数発生器を有する。さらに他の実施例では、ユーザがデータパターンを入力する。
【００２２】
消去領域識別子は、記憶モジュール１２５内の消去すべきデータが存在する記憶域の集合を指定する。消去データ識別子は、ユーザが入力することも、ＣＰＵ１１０によって生成することもできる。一実施例では、ユーザが、消去すべきファイルの名前を入力することができる。ユーザによって入力された名前に基づいて、ＣＰＵ１１０は、不揮発性記録媒体内のこのファイルに対応するアドレスを検索する。そしてＣＰＵ１１０は、このファイルのサイズ、及び不揮発性記録媒体内の開始アドレスに基づいて消去領域識別子を生成することができる。
【００２３】
さらに他の実施例では、コンピュータ装置１４０上で実行中のアプリケーションがファイルの消去を要求することがあり、ＣＰＵ１１０は、不揮発性記録媒体内の当該ファイルのアドレスに基づいて消去領域識別子を生成する。さらに他の実施例では、ユーザが入力／出力装置１５０を通して消去領域識別子を指定する。
【００２４】
消去領域識別子は種々の方法で消去領域を規定することができる。一実施例では、消去領域識別子は記憶域のリストとすることができる。他の実施例では、消去領域識別子は、開始記憶域及び終了記憶域とすることができる。他の実施例では、消去領域識別子は、開始記憶域及び記憶域のカウント数とすることができる。他の実施例では、消去領域識別子は、記憶モジュール１２５上のすべての書込み可能な記憶域にデータパターンが書き込まれるべきことを示すフラグとすることができる。
【００２５】
一実施例では、消去メッセージを単一回、ＣＰＵ１１０からコントローラ１２０に送信する。コントローラ１２０はこのメッセージを受信した後に、記憶モジュール１２５内の消去領域識別子に対応する記憶域にデータパターンを書き込む。
【００２６】
例えば、安全な消去が不揮発性記録媒体の６０ギガバイトの消去を必要とする状況では、上記データパターンを通常、不揮発性記録媒体に６００億回転送しなければならない。データパターンを１回しか転送しないならば、転送時間は無視できるものとなる。従って合計消去時間は、不揮発性記録媒体にデータを書き込むのに要する時間まで低減される。この特別な例では、合計消去時間は１５分も低減される。さらに、この例では、追加的に使用するデータパターン毎に１５分が節減される。従って、安全な消去が３つのデータパターン0x55, 0xAA, 0xFFをそれぞれ消去の一部として使用する必要がある場合には、合計時間は４５分間節減される。
【００２７】
さらに他の実施例では、ＣＰＵ１１０は複数の消去メッセージをコントローラ１２０に送信する。一実施例では、すべての消去メッセージが、同じデータパターン及び異なる消去領域識別子を含む。従って、消去メッセージの数は上書きすべき記憶域の総数未満である。例えば、コントローラ１２０は、第１消去領域識別子及び第１データパターンを有する第１消去メッセージを受信する。コントローラ１２０は、第１消去領域識別子によって指定される記憶モジュール１２５の記憶域上へのこのデータパターンの書込みを開始する。これに続いて、コントローラ１２０は、第２消去領域識別子及び第１データパターンを有する第２メッセージを受信する。コントローラに送信されるメッセージの数は、消去領域識別子によって指定される記憶モジュール１２５の消去領域内の記憶域の総数未満である。従って、すべての記憶域が転送を必要とするわけではないので、合計転送時間は低減される。
【００２８】
代案の実施例では、複数の消去メッセージが、同じ消去領域識別子及び異なるデータパターンを含むことができる。例えば、第１消去メッセージはある範囲の記憶域に第１データパターンを上書きし、第２消去メッセージは記憶域の同じ集合を第２データパターンで消去して、複数のデータパターンでの安全な消去を保証することができる。他の実施例では、第１消去メッセージは第１範囲の記憶域に第１データパターンを上書きし、第２消去メッセージは第２範囲の記憶域に第２データパターンを上書きすることができる。
【００２９】
複数の消去メッセージをコントローラ１２０に送信すると、コントローラ１２０は複数の記憶域に同時に書き込むことができる。他の実施例では、コントローラ１２０は、第１消去コマンドを完了する前に第２消去領域への書込みを開始する。コントローラ１２０が記憶モジュール１２５の複数の記憶域に同時に書き込むことの結果として、これらの記憶域に記憶されたデータを上書きするのに必要な時間がさらに低減される。
【００３０】
一実施例では、消去メッセージがデータパターンを含まない。データパターンは記憶モジュール１２５内に事前に記憶することができる。従って、消去メッセージを受信した後に、コントローラ１２０は、記憶モジュール１２５からデータパターンを検索することによってデータパターンを取得する。他の実施例では、記憶モジュールが、コントローラ１２０によって検索されるデータパターンの集合を記憶する。他の実施例では、データパターンはコントローラ１２０上のハードワイヤ（ハードウェア配線）である。
【００３１】
一実施例では、消去メッセージが消去領域識別子を含まない、というのは、消去領域識別子は記憶モジュール１２５内に事前に記憶されているからである。コントローラ１２０は、記憶モジュール１２５から消去領域を検索することによって消去領域識別子を取得する。他の実施例では、消去領域識別子はコントローラ１２０上のハードワイヤである。
【００３２】
図１Ｂに、不揮発性記録媒体がハードディスクドライブ１３０であるコンピュータシステム１０１を示す。コンピュータシステム１０１は演算装置１１０を含み、演算装置１１０はデータ記憶に関するコマンドを送信及び受信することによってハードディスクドライブ１３０と通信する。ハードディスクドライブ（駆動装置）１３０は、ハードディスク１７０に対して書込み及び読出しコマンドを作用させるハードディスクコントローラ１２０を含む。
【００３３】
一実施例では、消去メッセージをＣＰＵ１１０内で構成した後に、この消去メッセージをハードディスクドライブ１３０内のハードディスクコントローラ１２０に送信する。ハードディスクコントローラ１２０はこの消去メッセージを解析して、消去コマンド、データパターン、及び消去領域識別子のような、消去メッセージ中に含まれるパラメータを識別する。
【００３４】
図２Ａに、シリンダ−ヘッド−セクタ（ＣＨＳ：Cylinder-Head-Sector）アドレス指定方式の不揮発性記録媒体に送信される消去メッセージの内容の管状図２００を示す。一実施例では、管状図２００に示す消去メッセージを用いて、ハードディスク１７０の消去領域にデータを書き込む。他の実施例では、消去メッセージ２００を用いて、ハードディスク１７０の論理記憶構造と同様の論理記憶構造を有する不揮発性記録媒体の消去領域にデータを書き込む。
【００３５】
この消去メッセージは、消去コマンド、消去領域識別子、及びデータパターンを含む。一実施例では、消去メッセージが７個のレジスタを利用する。他の実施例では、コマンドレジスタ２０７が”Fill（フィル、充填）”コマンドを含む。”Fill”コマンドの名前は、消去領域が、特徴レジスタ２０１に含まれるデータパターンで満たされることを示唆する。このコマンドの名前は、”Erase（消去）”、”SecureErase（安全消去）”、”Delete（削除）”、”SecureDelete（安全削除）”のような他の変形を有することができることは当業者にとって明らかである。
【００３６】
図２Ａに示すように、消去領域識別子はレジスタ２０２〜２０６に記憶することができる。一実施例では、レジスタ２０２〜２０６が開始アドレス及びセクタのカウント数を含む。開始アドレスは、シリンダ番号、ヘッド番号、及びセクタ番号によって規定することができる。ヘッド番号はレジスタ２０６に記憶され、レジスタ２０６はドライブ（駆動装置）番号をビット１−４に含み、そしてヘッド情報をビット０に含む。シリンダ情報は、シリンダ・ハイ・パラメータ用のシリンダ・ハイ・レジスタ２０５、及びシリンダ・ロー・パラメータ用のシリンダ・ロー・レジスタ２０４に含まれる。シリンダ番号は、シリンダの長さ次第で、これらのレジスタの一方または両方を用いる。セクタ番号レジスタ２０３は書込み用の第１セクタを示す。一実施例では、セクタカウント・レジスタ２０２が、同じデータパターンを書き込むべきセクタの数を示す。他の実施例では、セクタのカウント数が０である場合に、不揮発性記録媒体全体に上記データパターンを書き込む。他の実施例では、セクタのカウント数が不揮発性記録媒体内のセクタの総数である場合に、不揮発性記録媒体全体に上記データパターンを書き込む。このデータパターンは特徴レジスタ２０１に含まれる。
【００３７】
図２Ｂに、論理ブロック・アドレス指定（ＬＢＡ：Logical Block Addressing）方式の不揮発性記録媒体に送信される消去メッセージの内容の管状図２０１を示す。一実施例では、管状図２００に示す消去メッセージを用いて、ハードディスク１７０（図１Ｂ）の消去領域にデータを書き込む。他の実施例では、消去メッセージ２０１を用いて、ハードディスク１７０（図１Ｂ）の論理記憶構造と同様の論理記憶構造を有する不揮発性記録媒体の消去領域にデータを書き込む。
【００３８】
消去領域識別子はレジスタ２０２〜２０６内に記憶することができる。一実施例では、開始アドレスを、消去メッセージ用のレジスタの１つに記憶されたセクタ番号によって規定する。他の実施例では、開始アドレスを消去メッセージ用の複数のレジスタ内に記憶する。特に、ドライブ／ヘッド・レジスタ２０６、シリンダ・ハイ・レジスタ２０５、シリンダ・ロー・レジスタ２０４、及びセクタ番号レジスタ２０３は、消去領域が始まるＬＢＡアドレスを記憶するために使用するレジスタである。ＬＢＡアドレスはこれらのレジスタの一部または全部を使用する程度に十分大きくすることができる
【００３９】
図３に、不揮発性記録媒体からデータを消去する処理３００を示す。処理ブロック３０５では、データパターンを設定する。このデータパターンは、ユーザ入力、コンピュータの乱数発生、コンピュータ計算、等によって設定することができる。さらに、処理ブロック３１０では、消去領域識別子を設定する。次に、処理ブロック３１５では、設定された消去領域識別子、設定されたデータパターン、及び消去コマンドを不揮発性記録媒体に送信する。一実施例では、データパターン、消去コマンド、及び消去領域識別子をハードディスクドライブ・コントローラに送信する。他の実施例では、データパターン、消去コマンド、及び消去領域識別子をフラッシュメモリ・コントローラに送信する。他の実施例では、これら３つの構成要素のすべてを単一の消去メッセージ中にまとめて送信することができる。さらに他の実施例では、これら３つの構成要素の一部の組合せを単一の消去メッセージ中で送信することができる。
【００４０】
処理ブロック３１８では、データパターン、消去コマンド、及び消去領域識別子を受信した後に、構成命令を実行する。構成命令は、上書きすべき記憶域のアドレス、使用するデータパターン、及び書込みコマンドを含む書込み命令を作成する。これに続いて、処理ブロック３２０では、書込み命令を解釈し、書込み命令が指示する記憶域に上記データパターンを書き込む。
【００４１】
１回目の書込み後に、判定ブロック３２５では、論理を利用して書込みを継続すべきか否かを判定する。このことを達成するために、消去領域識別子を検査して、データパターンを書き込むべき記憶域が消去領域内に残っているか否かを判定する。こうした記憶域が消去領域内に残っている場合には、他の書込み命令を処理ブロック３１８によって構成し、そして処理ブロック３２０によって実行する。処理ブロック３２０において書込み命令を実行した後に、判定ブロック３２５において消去領域識別子を再び検査して、データパターンを書き込むべき記憶域がそれ以上存在するか否かを判定する。存在する場合には、次の記憶域に対して他の書込み命令を構成して実行する、等を行う。
【００４２】
消去領域内のすべての記憶域を（書き込み）尽くしたことを判定することは、異なる方法で達成することができる。一実施例ではカウンタを使用し、このカウンタを、記憶域のカウント値に等しい値に初期化する。そしてこのカウンタを、上記データパターンを記憶域に書き込む毎に減少させることができる。カウンタの値が０になれば、上書きすべき記憶域はそれ以上存在しない。他の実施例では、カウンタを０の値に初期化し、そして上記データパターンを記憶域に書き込む毎に１の値だけ増加させることができる。カウンタの値が消去領域内の記憶域の数に等しくなれば、上書きすべき記憶域はそれ以上存在しない。
【００４３】
一旦、すべての記憶域に上書きすると、処理ブロック３３０では、安全な消去に成功したことを示す状態信号を不揮発性記録媒体から送信することができる。
【００４４】
他の消去を望む場合には、方法３００を最初からやり直す。処理ブロック３０５においてデータパターンを設定し、処理ブロック３１０において消去領域識別子を設定し、そして処理ブロック３１５では、データパターン、消去領域識別子、及び消去コマンドを不揮発性記録媒体に送信する。これに続いて、処理ブロック３１８においてすべての書込み命令を構成し、処理ブロック３２０において消去領域内の記憶域に上書きする。３回目の消去を望む場合には、方法３００を最初からやり直す、等を行う。
【００４５】
一実施例では、ユーザが不揮発性記録媒体上の他の消去を完了させるか否かを決定することができる。ユーザは消去メッセージの数及びシーケンスを選定することができる。例えばユーザは、４つの連続する消去メッセージを、それぞれ安全な消去手順の一部として選定して、ハードディスクコントローラ１２０に送信することができる。ハードディスクまたは他の不揮発性記録媒体に連続的に書き込まれる一般的なデータパターンは、１６進値0x55, 0xAA, 0xFF, 及び0x00である。異なるバイナリ（２進）データパターンを同じ記憶域に連続して書き込むことによって、元のファイルデータ値のあらゆる痕跡が消し去られる。他の実施例では、他の消去が必要であることをコンピュータ装置が論理的に計算して方法３００を再び開始することができる。コンピュータ装置は、メモリに記憶された１６進値を有し、そして不揮発性記録媒体における新たな消去を行う際に、これらの値をランダムに使用することができる。
【００４６】
以上の説明は特定のものを多く含むが、これらは本発明を限定するものではなく、その好適な実施例の例示として考えるべきものである。本発明は、本明細書に開示する異なる種類及び／または実施例からの要素のあらゆる組合せまたはサブコンビネーション（副次的組合せ）を含む。これらの特徴、従って本発明の範囲は請求項に照らし合わせて解釈すべきものであることは、当業者にとって明らかである。
【図面の簡単な説明】
【００４７】
【図１Ａ】不揮発性記録媒体に記憶されたデータを安全に消去するためのコンピュータシステムを示す図である。
【図１Ｂ】不揮発性記録媒体がハードディスクドライブであるコンピュータシステムを示す図である
【図２Ａ】シリンダ−ヘッド−セクタ・アドレス指定方式のハードディスクドライブに送られる消去メッセージの内容の管状図である。
【図２Ｂ】論理ブロック・アドレス指定方式のハードディスクドライブに送られる消去メッセージの内容の管状図である。
【図３】不揮発性記録媒体消去の流れ図である。
【図１Ａ】
2008523468.tif 000003
【図１Ｂ】
2008523468.tif 000004
【図２Ａ】
2008523468.tif 000005
【図２Ｂ】
2008523468.tif 000006
【図３】
2008523468.tif 000007
【国際調査報告】
2008523468.tif 000008
2008523468.tif 000009
2008523468.tif 000010