JP2014206967A - 記憶装置 - Google Patents

記憶装置 Download PDF

Info

Publication number
JP2014206967A
JP2014206967A JP2013256859A JP2013256859A JP2014206967A JP 2014206967 A JP2014206967 A JP 2014206967A JP 2013256859 A JP2013256859 A JP 2013256859A JP 2013256859 A JP2013256859 A JP 2013256859A JP 2014206967 A JP2014206967 A JP 2014206967A
Authority
JP
Japan
Prior art keywords
file
area
storage device
file system
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013256859A
Other languages
English (en)
Inventor
靖 笠
Sei Ryu
靖 笠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Genusion Inc
Original Assignee
Genusion Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Genusion Inc filed Critical Genusion Inc
Priority to JP2013256859A priority Critical patent/JP2014206967A/ja
Priority to US14/215,806 priority patent/US20140281581A1/en
Publication of JP2014206967A publication Critical patent/JP2014206967A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2143Clearing memory, e.g. to prevent the data from being stolen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】本来はファイルシステムの構造を知ることができない記憶装置において、ファイル単位で確実にデータを消去することのできる記憶装置を提供する。
【解決手段】
複数のファイルの内容を記憶するデータ領域と複数のファイルを管理する管理領域とを記憶装置の記憶領域中に確保するファイルシステムを動作させるコンピュータと接続された記憶装置において、記憶装置は、記憶領域と、ファイルシステムがファイルを消去する動作を行ったことを検出するファイルシステムモニタ手段と、ファイルシステムモニタ手段がファイルを消去する動作を検出した場合に、記憶領域中の消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行う制御手段とを有する。
【選択図】図1

Description

本発明は、記憶装置に関する。特に、複数のファイルの内容を記憶するデータ領域と前記複数のファイルを管理する管理領域とを記憶装置の記憶領域中に確保するファイルシステムを動作させるコンピュータと接続された記憶装置に関する。
ファイルシステムは、ファイルというサイズが可変なデータ(情報)の固まりを、ディスク装置(補助記憶装置)等の記憶装置に記憶させ、読み出すことができるように管理・制御を司るソフトウェアである。多くの場合、ファイルシステムはオペレーティングシステムの構成要素とされている。
ファイルシステムは、記憶装置の記憶領域に、ファイル名、サイズ、日付等の属性情報、ディスク上のどの領域に何を保存するかの割当情報、データ本体を記憶する領域をそれぞれ定義し確保する。そして、ファイルシステムは、これらの属性情報、割当情報及びデータ本体を取り扱うが、ディスク装置に対しては、固定データ長のデータの授受というかたちに分解して命令を与えている。
本明細書を通じて、ファイルシステム及びこれを利用するアプリケーションからみた記憶装置の挙動をLv1(レベル1)と呼ぶ。
記憶装置側では、データの内容や意味付けには関知しない。ファイルシステムからは、デバイスドライバという制御ソフトウェアを介して、上記固定データ長のデータの授受命令を受け、それを実行する。つまり、単純に、指定アドレス領域のデータの書き込み/読み出しを行うだけである。記憶装置側においては、ファイルを削除しているというファイルシステム上の動作を検知することはなかった。
本明細書を通じて、記憶装置内部での動作をLv2(レベル2)と呼ぶ。
記憶装置がフラッシュメモリ等の不揮発性半導体記憶装置で構成される場合、記憶装置内部では、ファイルシステムから提供されるところの命令をインターフェース装置が受領し、このなかに含まれる論理アドレスを物理アドレスに変換し、物理アドレスによって指定されたデータ領域にデータが書き込まれる。データが読み出される場合も同様である。つまり、LV1においては論理アドレスによって書き込み/読み出しがなされるが、LV2において、これが物理アドレスに変換され、変換後の物理アドレスによって指定される領域(ブロック)に対して書き込みがなされ、読み出しがなされる。
従来より、主としてNAND型フラッシュメモリを用いたUSBメモリ等に、パーソナルコンピュータ等で生成したファイルを保存することがなされてきた。しかしながら、USBメモリ等は紛失のおそれがあり、保存ファイルが個人情報等のセンシティブな内容であったり、厳格な秘密管理が必要な営業秘密を含む内容の場合には、莫大な事業損失が発生するおそれがある。そこで、一定の基準で手作業でファイルを消去したり、一定のタイミングでファイルを消去するアルゴリズムをパーソナルコンピュータ上にソフトウェアによって実装することが行われていた。
しかしながら、NAND型フラッシュメモリを用いたUSBメモリ等にファイルを記録する際には、記憶領域をデータ領域とファイル管理領域に分けられるところ、NAND型フラッシュメモリを用いたUSBメモリ等のファイルの削除は、ファイル管理領域のデータを書き換えることよって対応するファイルが「削除」されたことにするだけである。USBメモリ等の媒体をフォーマットしても、管理領域が消去されてデータ領域におけるファイルの開始アドレスが特定できなくなるのでファイルの読み出しが困難になるというだけである。したがって、ファイルを復元不能に消去するには、FFや00といった固定データを全データ領域に書き込む必要がある。そして、そのようなソフトウェアも知られている。
従来は、不揮発性半導体記憶装置のデバイスドライバによって秘密情報が記憶されたデータを無効化してセキュリティ向上をはかることが提案されていた(下記特許文献1)。しかし、本来はファイルシステムの構造を知ることが出来ない記憶装置において、セキュリティの向上をはかることは困難であった。
特開2010−108315号公報
本発明は、本来はファイルシステムの構造を知ることができない記憶装置において、ファイル単位で確実にデータを消去することのできる記憶装置を提供することを課題とする。
上記課題を解決するため、本発明の一実施形態においては、複数のファイルの内容を記憶するデータ領域と複数のファイルを管理する管理領域とを記憶装置の記憶領域中に確保するファイルシステムを動作させるコンピュータと接続された記憶装置において、この記憶装置は、記憶領域と、ファイルシステムがファイルを消去する動作を行ったことを検出するファイルシステムモニタ手段と、ファイルシステムモニタ手段がファイルを消去する動作を検出した場合に、記憶領域中の消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行う制御手段とを有することを特徴とする。
さらに、記憶領域はブート領域を含み、ファイルシステムモニタ手段はブート領域より管理領域が確保される領域のアドレスを取得し、管理領域のデータの変更を検出することによってファイルシステムがファイルを消去する動作を行ったことを検出するようにしてもよい。
ファイルシステムモニタ手段は、管理領域のバックアップを作成し、管理領域のデータが変更されたかどうかをバックアップと比較することによって検出し、この検出がなされた管理領域のデータの変更がファイルの消去に相当するかどうかを判断するようにしてもよい。
さらに、電池及びタイマを有し、制御手段は、タイマが所定時間の経過を検出した場合にファイルに対応する領域を復元不能な状態に消去し又は書き込みを行うようにしてもよい。
さらに、暗号化/復号化装置を有し、制御手段は、ファイルシステムから供給されたファイルの内容を暗号化/復号化装置によって暗号化したデータをファイルに対応する領域に書き込み、ファイルに対応する領域から読み出したデータを暗号化/復号化装置によって復号してファイルシステムに供給してもよい。
上記課題を解決するため、本発明の一実施形態においては、複数のファイルの内容を記憶するデータ領域と複数のファイルを管理する管理領域とを記憶装置の記憶領域中に確保するファイルシステムを動作させるコンピュータと接続された記憶装置において、記憶装置は、記憶領域と、ファイルシステムがファイルを指定する論理アドレスと記憶領域中の領域を指定する物理アドレスとの変換情報を記憶する論理物理アドレス変換テーブルと、ファイルシステムがファイルを消去する動作を行ったことを検出するファイルシステムモニタ手段と、ファイルシステムモニタ手段がファイルを消去する動作を検出した場合に、論理物理アドレス変換テーブルにおけるファイルのデータの論理アドレスと記憶領域中の消去されたファイルに対応する領域の物理アドレスとの対応関係を解消する制御手段とを有することを特徴とする。
さらに、制御手段は、対応関係が解消された直後に記憶領域中の消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行ってもよい。
さらに、制御手段は、対応関係の解消の後に、ファイルを消去する動作とは独立の時点に、記憶領域中の消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行ってもよい。
本発明によれば、ファイル単位で確実にデータを消去し、ファイルの漏出事故を可及的に防止した記憶装置を提供することを課題とする。本発明のその他の効果は以下の関連箇所で言及する。
本発明の実施例1にかかるファイルシステム及び記憶装置の構成を示したブロック図である。 本発明の実施例2にかかるファイルシステム及び記憶装置の構成を示したブロック図である。 コントローラ/ファイルシステム部の構成図である。 コマンドに対する各種の処理を示した図である。 記憶領域を論理アドレスによってマッピングしたメモリマッピングである。 MPUで実行されるプログラムの構成である。 FAT領域のモニタ方法を示すフローチャートである。 実施例3にかかる記憶装置の構成を示したブロック図である。 実施例4にかかる記憶装置の構成を示したブロック図である。 論理物理アドレス変換テーブルの例である。 実施例5にかかるFAT領域のモニタ方法を示すフローチャートである。 実施例6にかかるFAT領域のモニタ方法を示すフローチャートである。
以下、本発明を実施するための形態を実施形態として説明する。なお、本発明は、以下に説明する実施形態に何ら限定されることはない。以下に説明する実施形態を種々に変形して本発明を実施することが可能である。
図1は、本発明の第1の実施形態にかかるファイルシステム11及び記憶装置13(ホストとなるシステムに対して、外部ディスク、補助記憶装置、データ記憶メモリなどと言われることがある。)の構成を示したブロック図である。
図示しないコンピュータは、CPU、主記憶、ディスプレイ及びディスプレイインターフェース、キーボード及びキーボードインターフェース等から構成される。主記憶上にはオペレーティングシステム(OS)とアプリケーションソフトウェア(AS)がロードされる。OSはASの実行を管理し、ディスプレイインターフェースやキーボードインターフェースを制御するカーネル部分と、ユーザインターフェース部分とから構成される。OSやASは、記憶装置13の記憶領域15に格納され、起動時に主記憶にロードされる。このような構成のコンピュータをホストと呼ぶ。
OSはその一部としてファイルシステムを含む。前述したとおり、ファイルシステムは、ファイルというサイズが可変なデータ(情報)の固まりを、ディスク装置(補助記憶装置)等の記憶装置に記憶させ、読み出すことができるように管理・制御を司るソフトウェアである。
ファイルシステムは、記憶装置の記憶領域に、ファイル名、サイズ、日付等の属性情報、ディスク上のどの領域に何を保存するかの割当情報、データ本体を記憶する領域をそれぞれ定義し確保する。そして、ファイルシステムは、これらの属性情報、割当情報及びデータ本体を取り扱うが、ディスク装置に対しては、固定データ長のデータの授受というかたちに分解して命令を与えている。ファイルシステムの例として、FAT、ext4などがある。
ファイルシステム及びこれを利用するASからみた記憶装置の挙動をLv1(レベル1)と呼ぶ。
記憶装置13では、データの内容や意味付けには関知しない。ファイルシステムからは、デバイスドライバ12という制御ソフトウェアを介して、上記固定データ長のデータの授受命令を受け、それを実行する。
記憶装置13はインターフェース14、記憶領域15、ディスクコントローラ17及び、本発明にて追加されたファイルシステムモニタ/完全消去制御部16を有する。本明細書を通じて、記憶装置13での動作をLv2(レベル2)と呼ぶ。記憶装置13の形状は、既存のディスク装置がとりうるものはいずれでもよく、既存のディスク装置とは異なった形状であってもよい。
記憶領域15は、ハードディスク、RAM、相変化メモリ、CD−R、CD−RW、DVD−RAM等で構成することも可能であるが、本発明においては、フラッシュメモリ等の不揮発性半導体記憶装置で構成することが望ましい。
インターフェース14は、USBメモリで利用されるUSBインターフェース、SDカードで用いられるSD/MMCインターフェース、各種ディスクドライブに用いられるATAやSCSIを用いることができる。
ディスクコントローラ17は、主として、論理アドレスと物理アドレスの変換を行う。記憶領域15がハードディスクの場合には、論理アドレスを取得すると、これをヘッド位置、シリンダアドレス、セクタアドレスといった各種物理アドレスに変換してデータの読み出し及び書き込みを行う。記憶領域15が不揮発性半導体記憶装置の場合は、論理アドレスを取得すると、これをフラッシュメモリの物理アドレスに変換する。不揮発性半導体記憶装置においては、書き込み回数が大きくないという制限があるため、特定の論理アドレスに対応するページデータの変更(更新)は、別の物理アドレスに対応するページへの新たな書き込みというかたちで行う。そして、複数の物理アドレスに対応する各ページへの書き込み回数を平準化するような処理を行う。これをウェアレベリングという。さらに、ページデータの変更(更新)に伴い使用されなくなった物理アドレスに対応するページのデータを次に使用可能な状態にする。これをガベージコレクションという。
ファイルシステムモニタ/完全消去制御部16は記憶装置13のなかに存在し、LV2に属するものでありながら、LV1に属するファイルシステムの挙動を解析し解釈して、ファイルの削除を検出する。すなわち、記憶領域15を読み取り、これを解釈することによってファイルシステムがどのように構成されているか、特に、複数のファイルを管理する管理領域が記憶領域15のどの領域に存在するかを検出する。そして、その管理領域をモニタすることによって、対象ファイルが削除されたことを判定する。対象ファイルが削除されたことを判定すると、実データが記憶されているデータ領域を記憶領域15内で特定し、その特定された領域に対して復元不能な状態となるように消去し又は書き込みを行う。
ディスクコントローラ17及びファイルシステムモニタ/完全消去制御部16は同じ半導体チップにて構成され、同一のCPUで動作する制御プログラムとして実装されてもよい。
記憶領域15がフラッシュメモリで構成されている場合には、消去はブロック単位で、書き込みはブロックよりも小さいページ単位で行われる。ファイルの実データが記憶されているブロックを消去すれば、それのみでファイルは復元不能な状態となる。書き込みの場合はファイルの実データが記憶されているページに同一データやランダムデータを書き込むことによって復元不能な状態となる。記憶領域15がハードディスクで構成されている場合には、ファイルに対応する実データが記憶されているセクタを上書きをすることによって復元不能な状態となる。
以上のように構成すると、記憶装置13において、ファイルシステムが搭載されたかのように振る舞うことが可能であり、ファイルデータ位置を特定することが可能になる。そして、適切なタイミングでファイルのデータに対応する領域を復元不能な状態へ消去又は書き込み(完全消去)することによって、ファイルを完全に削除することが可能となり、ファイルの漏洩が不可能となる。
ファイルの完全削除のタイミングは、ホスト側から明示的に「完全削除コマンド」を供給することによって行っても良いが、本発明のように、記憶装置13でファイル属性情報とファイル割当表の情報をモニタして変化を検出し、そのタイミングで完全消去をすることが可能となる。
続いて、本発明の実施例2を図2〜7において示す。実施例1と同一の構成要素については同一の参照符号を付して説明を省略する。この実施例2では、ファイルシステム11はFATであり、記憶領域15は不揮発性半導体記憶装置で構成されている。コントローラ/ファイルシステム部18には、論理アドレスと物理アドレスの変換、ウェアレベリング、ガベージコレクション、ファイルシステムのモニタ、完全消去等の機能が実装されている。
記憶領域15は複数のフラッシュメモリチップ19から構成される。フラッシュメモリは、一括消去単位である複数のブロックから構成され、各消去ブロックは同時書き込み単位である複数のページから構成される。1つのフラッシュメモリチップ19は、例えば、4つのバンクを有し、1つのバンクは16のブロックを有し、1つのブロックは4096ページを有し、それぞれのページは2kビット、すなわち128ワードから構成される。
コントローラ/ファイルシステム部18には、前述したとおり、論理アドレスと物理アドレスの変換、ウェアレベリング、ガベージコレクション、ファイルシステムのモニタ、完全消去等の機能が実装されている。コントローラ/ファイルシステム部18は、マイクロコントローラと外付けメモリ、FPGA又はカスタムロジック等で実現される。
図3にコントローラ/ファイルシステム部18のブロック図を示す。コントローラ/ファイルシステム部18は、インターフェース14と接続される入出力ラッチ21、記憶領域15と接続される入出力ラッチ22、内部バス26、MPU23、MPU23で実行されるコードを格納するプログラムメモリ24及び処理中のデータを一時的に格納するデータメモリ25から構成される。データメモリ25には論理アドレス・物理アドレス変換テーブルが展開される。
図4に、インターフェース14経由で受けとったコマンドに対する各種の処理を図示する。読み出しコマンド(read)を受け取ると、コントローラ/ファイルシステム部18はこのコマンドを解釈し、論理アドレスと物理アドレスの変換処理(A1)を行う。そして、入出力ラッチ22を介して、フラッシュメモリ19に変換された物理アドレスの領域にread動作を行うよう指示する。書き込みコマンド(write)を受け取ると、コントローラ/ファイルシステム部18はこのコマンドを解釈し、論理アドレスと物理アドレスの変換処理を行う。もし対象物理アドレスが使用中の場合には未使用領域に割り当て直しを行い、論理アドレス・物理アドレステーブルを更新し、対象物理アドレスが使用中でなければそのままこれを用いる(A2)。そして、入出力ラッチ22を介して、フラッシュメモリ15に変換された物理アドレスの領域にprogram動作を行うよう指示する。削除コマンド(delete)を受け取ると、コントローラ/ファイルシステム部18はこのコマンドを解釈し、未使用領域の割り当て直しは行わず、従前のデータ領域に対して処理を行うことによって、前データを復元できなくする。そして、論理アドレスに対応する物理アドレスの領域にerase動作又はprogram動作を行うよう指示する。ここでprogram動作は全ビットが同一データ又はランダムデータとなるようにして、復元が不可能になるようにする。
図5は、記憶領域15を論理アドレスによってマッピングしたメモリマッピング30である。実施例2においてはファイルシステム11としてFATを用いる。FATにおいては、管理領域31が定義され、これが記憶領域15のいずれかに記憶されている。そして、管理領域31には、ファイル名、サイズ、日付等の属性情報、ファイルの割当情報(論理アドレス)が記憶される。図5に示す例は、file1とfile2のデータが、それぞれデータ領域32、33に記憶される。そして、管理領域31には、データ領域32、33の先頭アドレス(ファイルポインタ)が記憶される。FATファイルシステムにおいてはブート領域が予め定義されており、そのブート領域にFAT領域がどの領域であるかが定義されている。具体的には、先頭アドレスとFAT領域のサイズが記憶されている。
図6は、MPU23で実行されるプログラム40の構成であり、プログラムメモリ24に格納されている。プログラム40は、コマンド処理部41、論理アドレス・物理アドレス変換部42、read処理部43、program処理部44、erase処理部45、ファイルシステムモニタ部46等から構成される。
コマンド処理部41は、インターフェース14及び入出力ラッチ21を介して供給される読み出し、書き込み及び削除コマンドを解釈するプログラム群である。
論理アドレス・物理アドレス変換部42は、データメモリ25に展開された論理アドレス・物理アドレス変換テーブルを利用して、アドレス変換を行うプログラム群である。ウェアレベリング及びガベージコレクションもこの機能を利用する。
read処理部43、program処理部44及びerase処理部45は、それぞれ、フラッシュメモリに対して、変換された物理アドレスに対応する領域についてread、program及びerase命令を発行し、フラッシュメモリから読み出されたデータをデータメモリ25に格納する処理を行う。
ファイルシステムモニタ部46は、FAT領域検出部47、FATモニタ部48及び無効化処理部49から構成される。FAT領域検出部47は起動時又はバックグラウンドで動作するプログラムであって、ブート領域に記録されたデータを読み出すことによってFAT領域を特定する。FATモニタ部48は、特定されたFAT領域へのアクセスを常にモニタしており、FAT領域に変化があり、かつ、ファイルシステムにおいてファイルが削除される場合に行われる処理の有無を検出する。無効化処理部49は、FATモニタ部48によってファイル削除が検出された場合に、そのファイルの実体データが格納されていたページに対して無効化処理を行う。無効化処理とは、具体的には、ファイルの実データが記憶されているブロックを消去してファイルを復元不能な状態とするか、ファイルの実データが記憶されているページに同一データやランダムデータを書き込むことによって復元不能な状態とする処理である。
図7はFAT領域のモニタ方法を示すフローチャートである。予め、FAT領域検出部47によって、FAT領域を特定し、その領域のバックアップ51を作成する。このバックアップは記憶領域15に展開しても良いが、データメモリ25に展開するのが望ましい。コマンド処理部41がコマンドを解釈して、FAT領域内へのアクセスを検出した場合には、FATモニタ部48が、そのアクセスの対象データとバックアップ51の対応部分とを比較する(ステップ52)。FAT領域の値が非ゼロからゼロに変更になった場合(FAT16ファイルシステムの場合は2バイト分のゼロ並びが生じた場合、FAT32の場合は4バイト分のゼロ並びが生じた場合)は、ファイルの削除があったものと解釈する(ステップ53)。そして、ファイルの削除があったものと解釈されたら、無効化処理部49がファイルの実体領域に対して無効化処理を行う(ステップ54)。続いて、バックアップ51を変更された内容へ更新する(ステップ55)。以上の、ステップ52〜55を繰り返す。
実施例2においてはファイルシステムにとしてFATを用いたが、NTFSやext4等のファイルシステムにおいても同様の管理領域が存在するため、これらを用いてもよい。また、ISO9660などで規定された書き込み手順に準拠することも可能である。
本発明の実施例3にかかる記憶装置のブロック図を図8に示す。実施例1乃至2と同一の構成要素については同一の参照符号を付して説明を省略する。本発明の実施例3にかかる記憶装置は、実施例2の記憶装置に、電池61及びタイマ62を付加したものである。そして、タイマが所定時間の経過を検出した場合には、コントローラがファイルに対応する領域を復元不能な状態に消去し又は書き込みを行う。
このような構成によって、効果的に消し忘れを防止することができ、機密ファイルの漏洩を一段と高いレベルで防止することができる。
本発明の実施例4にかかる記憶装置を図9に示す。実施例1乃至2と同一の構成要素については同一の参照符号を付して説明を省略する。本発明の実施例4にかかる記憶装置は、実施例2の記憶装置に、暗号化/復号化装置63を付加したものである。そして、ファイルシステムから供給されたファイルの内容を暗号化/復号化装置63によって暗号化したデータをファイルに対応する領域に書き込み、ファイルに対応する領域から読み出したデータを暗号化/復号化装置63によって復号してファイルシステムに供給する。
このような構成によって、フラッシュメモリのリバースエンジニアリングを利用したファイルの復元に対して、ファイル漏洩を一段と高いレベルで防止することができる。
なお、実施例3の構成と実施例4の構成を組み合わせてもよい。
前述したとおり、ディスクコントローラ17は、論理アドレスと物理アドレスの変換を行う。さらに、ウェアレベリングやガベージコレクションを行うことがある。また、コントローラ/ファイルシステム部18には、前述したとおり、論理アドレスと物理アドレスの変換、ウェアレベリング、ガベージコレクション、ファイルシステムのモニタ、完全消去等の機能が実装されている。
図10は実施例1のディスクコントローラ17や実施例2等のコントローラ/ファイルシステム部18に存在する論理物理アドレス変換テーブル70の例である。
この論理物理アドレス変換テーブル70はファイルシステムの論理アドレスLAと物理アドレスPAとの対応関係を示している。すなわち、論理アドレスLA0〜nは、それぞれ、物理アドレスPA0〜nに対応付けられている。例えば、論理アドレスLA0は当初物理アドレスPA0に対応付けられているところ、論理アドレスLA0のデータが新しいデータへと書き換えられる(消去され書き込まれる)場合には、新しいデータが物理アドレスPA1の領域に書き込まれるとともに、論理アドレスLA0に対応する物理アドレスがPA0からPA1へと変更される。
実施例5の記憶装置の構成は、実施例2の説明及び図2〜6で示したものと同様である。実施例5のコントローラ/ファイルシステム部18に存在する論理物理アドレス変換テーブル70は図10に示したものである。ここで、論理物理アドレス変換テーブル70は、論理アドレスLA及び物理アドレスPAの各領域だけでなく、その論理アドレスが物理アドレスとの対応が解消済みであるかどうかを示すフラグ領域が存在する。そして、その論理アドレスが解消済みである場合には、フラグが立てられる。
図11は、実施例5にかかるFAT領域のモニタ方法を示すフローチャートである。予め、FAT領域検出部47によって、FAT領域を特定し、その領域のバックアップ51を作成する。コマンド処理部41がコマンドを解釈して、FAT領域内へのアクセスを検出した場合には、FATモニタ部48が、そのアクセスの対象データとバックアップ51の対応部分とを比較する(ステップ52)。FAT領域の値が非ゼロからゼロに変更になった場合(FAT16ファイルシステムの場合は2バイト分のゼロ並びが生じた場合、FAT32の場合は4バイト分のゼロ並びが生じた場合)は、ファイルの削除があったものと解釈する(ステップ53)。そして、ファイルの削除があったものと解釈されたら、論理物理アドレス変換テーブル修正部71が論理物理アドレス変換の解消を行う。ここで、論理物理アドレス変換の解消とは、論理アドレスと物理アドレスとの対応関係をなくすことをいい、図10においてフラグ領域Fにフラグを立てることによって行う。物理アドレス領域の物理アドレスを無効な物理アドレス(物理アドレスとしては存在しない値)に置き換えても良い。続いて、直ちに、ファイルの実体領域に対して無効化処理を行う(ステップ54)。続いて、バックアップ51を変更された内容へ更新する(ステップ55)。以上の、ステップ52〜55を繰り返す。
以上のように構成すると、以下のような効果が得られる。
論理アドレスと物理アドレスとの対応関係が解消されると、その記憶領域を論理アドレスを指定して読みだすことは不可能になるので、通常の動作においては、消去されたものと等価となる。もちろん、フラッシュメモリ自体を取り出してアクセスすれば、旧データを読み取ることは出来るので完全な消去とまではいえないが、一般的な使用範囲、すなわち分解調査まではされないということを前提にすれば、これで十分である。
さらに、アドレス変換の解消の直後に、実施例2で述べた無効化処理を行っている(ステップ54)。したがって、ファイル単位で確実にデータを消去することのできるという、実施例1〜4と同様の効果が得られる。
実施例6は実施例5の変形例である。実施例5においては、アドレス変換の解消の直後に無効化処理を行ったが、実施例6では、アドレス変換の解消のタイミングとは別に、バックグラウンドで無効化処理を行っている。
図12は、実施例6にかかるFAT領域のモニタ方法を示すフローチャートである。予め、FAT領域検出部47によって、FAT領域を特定し、その領域のバックアップ51を作成する。コマンド処理部41がコマンドを解釈して、FAT領域内へのアクセスを検出した場合には、FATモニタ部48が、そのアクセスの対象データとバックアップ51の対応部分とを比較する(ステップ52)。FAT領域の値が非ゼロからゼロに変更になった場合(FAT16ファイルシステムの場合は2バイト分のゼロ並びが生じた場合、FAT32の場合は4バイト分のゼロ並びが生じた場合)は、ファイルの削除があったものと解釈する(ステップ53)。そして、ファイルの削除があったものと解釈されたら、論理物理アドレス変換テーブル修正部71が論理物理アドレス変換の解消を行う。続いて、バックアップ51を変更された内容へ更新する(ステップ55)。以上の、ステップ52〜55を繰り返す。
さらに、上記繰り返しとは別に、消去済みの物理アドレスについて、バックグラウンドで、実施例2で述べた無効化処理を行う。
以上のように構成すると、ファイル単位で確実にデータを消去することのできるという効果の他に、以下のような効果が得られる。
従来のファイルシステムにおいては、ファイル削除をするときは、ファイル管理情報のみを変更する。したがって、ユーザからみた反応は高速であり、ユーザはこの高速な反応に慣れている。実施例6においては、論理物理アドレス変換の解消をすることによって特定のブロックを消去されたものとして扱うので、ユーザからみた反応は高速である。つまり、実施例6においては、ファイル削除の応答スピードが向上するとともに、バックグラウンド処理も高速化される(無効化された領域は、データ移し替えをする必要が無いため、そのデータ移動時間を省略できる。)。
11…ファイルシステム、12…デバイスドライバ、13…記憶装置、14…インターフェース、15…記憶領域、16…ファイルシステムモニタ、17…コントローラ

Claims (8)

  1. 複数のファイルの内容を記憶するデータ領域と前記複数のファイルを管理する管理領域とを記憶装置の記憶領域中に確保するファイルシステムを動作させるコンピュータと接続された記憶装置において、前記記憶装置は、
    記憶領域と、
    前記ファイルシステムがファイルを消去する動作を行ったことを検出するファイルシステムモニタ手段と、
    前記ファイルシステムモニタ手段がファイルを消去する動作を検出した場合に、前記記憶領域中の前記消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行う制御手段とを有することを特徴とする記憶装置。
  2. 前記記憶領域はブート領域を含み、
    前記ファイルシステムモニタ手段はブート領域より前記管理領域が確保される領域のアドレスを取得し、前記管理領域のデータの変更を検出することによって前記ファイルシステムがファイルを消去する動作を行ったことを検出することを特徴とする請求項1記載の記憶装置。
  3. 前記ファイルシステムモニタ手段は、前記管理領域のバックアップを作成し、前記管理領域のデータが変更されたかどうかを前記バックアップと比較することによって検出し、この検出がなされた管理領域のデータの変更がファイルの消去に相当するかどうかを判断することを特徴とする請求項1記載の記憶装置。
  4. 請求項1ないし3いずれか記載の記憶装置において、さらに、電池及びタイマを有し、前記制御手段は、前記タイマが所定時間の経過を検出した場合に前記ファイルに対応する領域を復元不能な状態に消去し又は書き込みを行うことを特徴とする記録媒体。
  5. 請求項1ないし4いずれか記載の記憶装置において、さらに、暗号化/復号化装置を有し、前記制御手段は、ファイルシステムから供給されたファイルの内容を前記暗号化/復号化装置によって暗号化したデータをファイルに対応する領域に書き込み、ファイルに対応する領域から読み出したデータを前記暗号化/復号化装置によって復号してファイルシステムに供給することを特徴とする記録媒体。
  6. 複数のファイルの内容を記憶するデータ領域と前記複数のファイルを管理する管理領域とを記憶装置の記憶領域中に確保するファイルシステムを動作させるコンピュータと接続された記憶装置において、前記記憶装置は、
    記憶領域と、
    前記ファイルシステムがファイルを指定する論理アドレスと前記記憶領域中の領域を指定する物理アドレスとの変換情報を記憶する論理物理アドレス変換テーブルと、
    前記ファイルシステムがファイルを消去する動作を行ったことを検出するファイルシステムモニタ手段と、
    前記ファイルシステムモニタ手段がファイルを消去する動作を検出した場合に、前記論理物理アドレス変換テーブルにおける前記ファイルのデータの論理アドレスと前記記憶領域中の前記消去されたファイルに対応する領域の物理アドレスとの対応関係を解消する制御手段とを有することを特徴とする記憶装置。
  7. 請求項6記載の記憶装置において、前記制御手段は、前記対応関係が解消された直後に前記記憶領域中の前記消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行うことを特徴とする記憶装置。
  8. 請求項6記載の記憶装置において、前記制御手段は、前記対応関係の解消の後に、ファイルを消去する動作とは独立の時点に、前記記憶領域中の前記消去されたファイルに対応する領域を復元不能な状態に消去し又は書き込みを行うことを特徴とする記憶装置。
JP2013256859A 2013-03-18 2013-12-12 記憶装置 Pending JP2014206967A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013256859A JP2014206967A (ja) 2013-03-18 2013-12-12 記憶装置
US14/215,806 US20140281581A1 (en) 2013-03-18 2014-03-17 Storage Device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013055655 2013-03-18
JP2013055655 2013-03-18
JP2013256859A JP2014206967A (ja) 2013-03-18 2013-12-12 記憶装置

Publications (1)

Publication Number Publication Date
JP2014206967A true JP2014206967A (ja) 2014-10-30

Family

ID=51534096

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013256859A Pending JP2014206967A (ja) 2013-03-18 2013-12-12 記憶装置

Country Status (2)

Country Link
US (1) US20140281581A1 (ja)
JP (1) JP2014206967A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10338817B2 (en) * 2014-12-30 2019-07-02 Sandisk Technologies Llc Systems and methods for storage recovery
US10157012B2 (en) * 2015-09-29 2018-12-18 Sandisk Technologies Llc Zero read on trimmed blocks in a non-volatile memory system
CN106650432B (zh) * 2016-09-30 2020-11-10 北京奇虎科技有限公司 涉密信息的分析方法及装置
JP2022147909A (ja) 2021-03-24 2022-10-06 キオクシア株式会社 メモリシステム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001147853A (ja) * 1999-11-19 2001-05-29 Seiko Epson Corp コンピューターシステム
JP2007265492A (ja) * 2006-03-28 2007-10-11 Fujitsu Ltd データ消去機能付きディスク装置
US20080195799A1 (en) * 2007-02-13 2008-08-14 Samsung Electronics Co., Ltd. Systems, methods and computer program products for operating a data processing system in which a file delete command is sent to an external storage device for invalidating data thereon
JP2009290331A (ja) * 2008-05-27 2009-12-10 Toshiba Corp データ保護システム、データ保護方法、及びメモリカード
JP2012208798A (ja) * 2011-03-30 2012-10-25 Sony Corp 記憶メディア装置および記録装置

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256642B1 (en) * 1992-01-29 2001-07-03 Microsoft Corporation Method and system for file system management using a flash-erasable, programmable, read-only memory
JP3440991B2 (ja) * 1999-03-05 2003-08-25 日本電気株式会社 ファイルリビジョン管理システム
JP3389186B2 (ja) * 1999-04-27 2003-03-24 松下電器産業株式会社 半導体メモリカード及び読み出し装置
US20050240761A1 (en) * 2003-07-31 2005-10-27 Kiyoto Yui Write control method and computer system
US7627726B2 (en) * 2004-06-30 2009-12-01 Emc Corporation Systems and methods for managing content having a retention period on a content addressable storage system
KR20090121631A (ko) * 2008-05-22 2009-11-26 삼성전자주식회사 반도체 메모리 장치, 메모리 시스템 및 그것의 데이터 복구방법
US7685360B1 (en) * 2005-05-05 2010-03-23 Seagate Technology Llc Methods and structure for dynamic appended metadata in a dynamically mapped mass storage device
JP2007011522A (ja) * 2005-06-29 2007-01-18 Hitachi Ltd データの消去方法、ストレージ・デバイス及び計算機システム
US7702821B2 (en) * 2005-09-15 2010-04-20 Eye-Fi, Inc. Content-aware digital media storage device and methods of using the same
CN101331467A (zh) * 2005-10-20 2008-12-24 恩斯康斯数据处理技术公司 硬盘驱动器擦除器
JP2007336197A (ja) * 2006-06-14 2007-12-27 Toshiba Corp 情報アクセス管理方法および装置
US20080016132A1 (en) * 2006-07-14 2008-01-17 Sun Microsystems, Inc. Improved data deletion
JP4302150B2 (ja) * 2007-03-23 2009-07-22 株式会社東芝 データ処理装置及びプログラム
US8001340B2 (en) * 2007-04-19 2011-08-16 International Business Machines Corporation Method for determining allocation of tape drive resources for a secure data erase process
US9384777B2 (en) * 2007-08-17 2016-07-05 International Business Machines Corporation Efficient elimination of access to data on a writable storage media
US8301912B2 (en) * 2007-12-31 2012-10-30 Sandisk Technologies Inc. System, method and memory device providing data scrambling compatible with on-chip copy operation
US8412905B2 (en) * 2009-01-01 2013-04-02 Sandisk Il Ltd. Storage system having secondary data store to mirror data
WO2011007599A1 (ja) * 2009-07-17 2011-01-20 株式会社 東芝 メモリ管理装置
US20120070002A1 (en) * 2009-07-19 2012-03-22 Angel Secure Networks, Inc. Protecting information in an untethered asset
JPWO2011104825A1 (ja) * 2010-02-23 2013-06-17 富士通株式会社 更新方法、更新装置、および更新プログラム
US8281236B2 (en) * 2010-09-08 2012-10-02 Microsoft Corporation Removing style corruption from extensible markup language documents
US8401995B2 (en) * 2010-09-10 2013-03-19 International Business Machines Corporation File removal with no available disk blocks in redirect-on-write file systems
US8730790B2 (en) * 2010-11-19 2014-05-20 Alcatel Lucent Method and system for cell recovery in telecommunication networks
WO2012149728A1 (zh) * 2011-09-06 2012-11-08 华为技术有限公司 一种数据删除方法及装置
US8611208B2 (en) * 2011-12-19 2013-12-17 International Business Machines Corporation Autonomic error recovery for a data breakout appliance at the edge of a mobile data network
KR20130078973A (ko) * 2012-01-02 2013-07-10 삼성전자주식회사 메모리 장치의 불량 저장 영역 관리 방법 및 이를 이용한 저장 장치
US9251086B2 (en) * 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US8918651B2 (en) * 2012-05-14 2014-12-23 International Business Machines Corporation Cryptographic erasure of selected encrypted data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001147853A (ja) * 1999-11-19 2001-05-29 Seiko Epson Corp コンピューターシステム
JP2007265492A (ja) * 2006-03-28 2007-10-11 Fujitsu Ltd データ消去機能付きディスク装置
US20080195799A1 (en) * 2007-02-13 2008-08-14 Samsung Electronics Co., Ltd. Systems, methods and computer program products for operating a data processing system in which a file delete command is sent to an external storage device for invalidating data thereon
JP2008198208A (ja) * 2007-02-13 2008-08-28 Samsung Electronics Co Ltd ホストデータ処理装置の動作方法、ホストデータ処理装置並びにデータ格納装置
JP2009290331A (ja) * 2008-05-27 2009-12-10 Toshiba Corp データ保護システム、データ保護方法、及びメモリカード
JP2012208798A (ja) * 2011-03-30 2012-10-25 Sony Corp 記憶メディア装置および記録装置

Also Published As

Publication number Publication date
US20140281581A1 (en) 2014-09-18

Similar Documents

Publication Publication Date Title
US9489258B2 (en) Green NAND SSD application and driver
KR100876084B1 (ko) 플래시 저장 장치로 삭제 정보를 전달할 수 있는 컴퓨팅시스템
US10007468B2 (en) Method and apparatus for erasing data in data section in flash memory
US20190102262A1 (en) Automated continuous checkpointing
US9053007B2 (en) Memory system, controller, and method for controlling memory system
US11657022B2 (en) Host and storage system for securely deleting files and operating method of the host
US8762431B2 (en) System and method for secure erase in copy-on-write file systems
US20160259583A1 (en) Storage device, storage device system and information terminal
KR20120084906A (ko) 비휘발성 메모리 시스템 및 그 관리 방법
JP2015172959A (ja) フラッシュメモリのアクセス方法
JP2014206967A (ja) 記憶装置
CN116225334A (zh) 一种冷热数据存储方法、装置以及介质
CN105404468B (zh) 绿能与非固态硬盘应用及其驱动器
JP5996129B2 (ja) 不揮発性半導体マスメモリを安全に消去するための方法、コンピュータシステム、及びコンピュータプログラム
Singh et al. Secure file deletion for solid state drives
US11314453B2 (en) Memory system managing map data based on risk of malware—infection of host, and operating method thereof
US10846019B2 (en) Semiconductor device
US20240086336A1 (en) Storage device deleting encryption key, method of operating the same, and method of operating electronic device including the same
EP4339790A1 (en) Storage device deleting encryption key, method of operating the same, and method of operating electronic device including the same
TWI751928B (zh) 用於偵測儲存裝置中的惡意活動之模組和方法
KR102597220B1 (ko) 데이터 완전삭제 방법 및 시스템
Diesburg Ghosts of deletions past: new secure deletion challenges and solutions
CN103839015A (zh) 存储装置
Hsieh et al. PRESS: Persistence Relaxation for Efficient and Secure Data Sanitization on Zoned Namespace Storage
KR20240037139A (ko) 암호화 키를 삭제하는 스토리지 장치, 이의 동작하는 방법, 및 이를 포함하는 전자 장치의 동작하는 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161104

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20170823

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171010

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180410