(57)【要約】【課題】  秘匿情報の機密保護性を高めることができるデータアクセス装置を得ることを目的とする。【解決手段】  秘匿情報を読み込む際に必要な秘匿情報の属性情報を未使用領域検出部１２により検出されたクラスタの未使用領域に格納し、その秘匿情報を空きクラスタ検出部１３により検出された空きクラスタに格納する。これにより、従来のデータアクセス装置では検出することができない領域に秘匿情報の属性情報を格納することができるようになり、その結果、秘匿情報の機密保護性を高めることができる。【選択図】        図１
2006164059.tif 000002
【特許請求の範囲】
【請求項１】
秘匿情報ではない一般情報が格納されているクラスタの未使用領域を検出する未使用領域検出手段と、情報が格納されていない空きクラスタを検出する空きクラスタ検出手段と、秘匿情報を読み込む際に必要な秘匿情報の属性情報を上記未使用領域検出手段により検出されたクラスタの未使用領域に格納し、その秘匿情報を上記空きクラスタ検出手段により検出された空きクラスタに格納する秘匿情報書込手段とを備えたデータアクセス装置。
【請求項２】
一般情報が格納されているクラスタを検出するクラスタ検出手段と、上記クラスタ検出手段により検出されたクラスタから一般情報を読み込む一般情報読込手段と、上記クラスタ検出手段により検出されたクラスタの格納内容を解析して、そのクラスタに格納されている秘匿情報の属性情報を取得する属性情報取得手段と、上記属性情報取得手段により取得された属性情報を参照して秘匿情報が格納されているクラスタを検出し、そのクラスタから秘匿情報を読み込む秘匿情報読込手段とを設けたことを特徴とする請求項１記載のデータアクセス装置。
【請求項３】
秘匿情報ではない一般情報が格納されているクラスタを検出するクラスタ検出手段と、上記クラスタ検出手段により検出されたクラスタから一般情報を読み込む一般情報読込手段と、上記クラスタ検出手段により検出されたクラスタの格納内容を解析して、そのクラスタに格納されている秘匿情報の属性情報を取得する属性情報取得手段と、上記属性情報取得手段により取得された属性情報を参照して秘匿情報が格納されているクラスタを検出し、そのクラスタから秘匿情報を読み込む秘匿情報読込手段とを備えたデータアクセス装置。
【請求項４】
秘匿情報書込手段は、未使用領域検出手段により検出されたクラスタの未使用領域に格納する秘匿情報の属性情報として、空きクラスタ検出手段により検出された空きクラスタのクラスタ番号と、その秘匿情報のデータサイズとを格納することを特徴とする請求項１または請求項２記載のデータアクセス装置。
【請求項５】
秘匿情報のデータサイズがクラスタサイズより大きい場合、空きクラスタ検出手段が複数の空きクラスタを検出し、秘匿情報書込手段が秘匿情報を分割して複数の空きクラスタに格納することを特徴とする請求項１または請求項２記載のデータアクセス装置。
【請求項６】
秘匿情報書込手段は、秘匿情報の属性情報を未使用領域検出手段により検出されたクラスタの未使用領域に格納する際、その秘匿情報の属性情報が当該クラスタに格納されていることを示す情報をディレクトリエントリに設定することを特徴とする請求項１または請求項２記載のデータアクセス装置。
【請求項７】
属性情報取得手段は、ディレクトリエントリの設定内容を参照して、クラスタ検出手段により検出されたクラスタの未使用領域に秘匿情報の属性情報が格納されているか否かを判定することを特徴とする請求項６記載のデータアクセス装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、秘匿情報の書き込みや読み込みを実施することが可能なデータアクセス装置に関するものである。
【背景技術】
【０００２】
従来のデータアクセス装置は、ＭＳ−ＤＯＳ（登録商標）上で動作するファイル内のデータを特定の有資格者以外に秘密にする場合、ファイルの属性情報を保持するディレクトリエントリ内の先頭クラスタ番号を一定の規則にしがって書き換える処理を実施する。
そして、書き換え前の正しい先頭クラスタ番号を有資格者のみに伝えるようにしている（例えば、特許文献１参照）。
これにより、ファイル内のデータの秘匿化が図られるが、特定の有資格者以外の者であっても、ファイルの存在の有無及びファイル内のデータの連続性を管理するＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）と、ファイルサイズとから、ファイルの開始クラスタ番号を類推することが可能である。
【０００３】
【特許文献１】特開平７−１３８７２号公報（段落［０００７］から［０００９］、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のデータアクセス装置は以上のように構成されているので、特定の有資格者以外の者であっても、ＦＡＴとファイルサイズからファイルの開始クラスタ番号を類推することが可能である。このため、ファイル名とデータの対応関係については必ずしも特定することができないが、ファイル単位でデータを取得することができるため、データの機密保護性が低いなどの課題があった。
【０００５】
この発明は上記のような課題を解決するためになされたもので、秘匿情報の機密保護性を高めることができるデータアクセス装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係るデータアクセス装置は、秘匿情報を読み込む際に必要な秘匿情報の属性情報を未使用領域検出手段により検出されたクラスタの未使用領域に格納し、その秘匿情報を空きクラスタ検出手段により検出された空きクラスタに格納するようにしたものである。
【発明の効果】
【０００７】
この発明によれば、秘匿情報を読み込む際に必要な秘匿情報の属性情報を未使用領域検出手段により検出されたクラスタの未使用領域に格納し、その秘匿情報を空きクラスタ検出手段により検出された空きクラスタに格納するように構成したので、秘匿情報の機密保護性を高めることができる効果がある。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１はこの発明の実施の形態１によるデータアクセス装置を示す構成図である。
図において、データアクセス装置は例えば携帯情報端末や携帯電話などに搭載され、データアクセス装置には挿抜可能なメモリカード１が挿入される。データアクセス装置に対して挿抜自在であれば、メモリカード１である必要はなく、例えば、フロッピー（登録商標）ディスクなどのデータ記録媒体であってもよい。
データ読込部２はデータ管理部４の指示の下、メモリカード１のクラスタからファイルのデータの読込処理を実施する。
データ書込部３はデータ管理部４の指示の下、メモリカード１のクラスタに対するデータの書込処理を実施する。
データ管理部４はデータ読込部２及びデータ書込部３に対する制御を実施する。
【０００９】
図２はこの発明の実施の形態１によるデータアクセス装置のデータ管理部４を示す構成図であり、図において、情報入力部１１はメモリカード１に格納する一般情報や秘匿情報などを入力する。ここで、一般情報は秘匿する必要がない情報であることを意味する。
未使用領域検出部１２は情報入力部１１から秘匿情報が入力された場合、一般情報が格納されているクラスタの未使用領域を検出する未使用領域検出手段を構成している。
空きクラスタ検出部１３は一般情報又は秘匿情報をメモリカード１に格納する際、情報が格納されていない空きクラスタを検出する空きクラスタ検出手段を構成している。
秘匿情報書込部１４は秘匿情報を読み込む際に必要な秘匿情報の属性情報を未使用領域検出部１２により検出されたクラスタの未使用領域に格納し、その秘匿情報を空きクラスタ検出部１３により検出された空きクラスタに格納する処理を実施する秘匿情報書込手段を構成している。
一般情報書込部１５は一般情報を空きクラスタ検出部１３により検出された空きクラスタに格納する処理を実施する。
【００１０】
クラスタ検出部１６は一般情報が格納されているクラスタを検出するクラスタ検出手段を構成している。
一般情報読込部１７はクラスタ検出部１６により検出されたクラスタから一般情報を読み込む一般情報読込手段を構成している。
属性情報取得部１８はクラスタ検出部１６により検出されたクラスタの格納内容を解析して、そのクラスタに格納されている秘匿情報の属性情報を取得する属性情報取得手段を構成している。
秘匿情報読込部１９は属性情報取得部１８により取得された属性情報を参照して秘匿情報が格納されているクラスタを検出し、そのクラスタから秘匿情報を読み込む秘匿情報読込手段を構成している。
【００１１】
図３はＭＳ−ＤＯＳによるＦＡＴ型のファイルシステムにおいて、ファイルの属性情報を管理するディレクトリエントリを示す説明図である。
図３のディレクトリエントリは３２バイトで構成され、メモリカード１に格納されるディレクトリやファイルの情報を格納するものである。
具体的には、ディレクトリ内で一意に特定されるファイル名１０１と、ファイルの種別を示す拡張子１０２と、ファイルの性質を示す属性１０３と、ファイルが格納される領域を示す予約領域１０４と、ファイルの作成された日時や更新された日時を示す更新日時１０５と、ファイルの格納先を示すクラスタ番号１０６と、ファイルのサイズを示すファイルサイズ１０７とから構成されている。
なお、ディレクトリエントリはファイルの属性情報の他に、ディレクトリ情報も同様に管理している。
【００１２】
図４は一般情報や秘匿状態が格納されているクラスタを示す説明図である。
図４のクラスタは、ＦＡＴ型のファイルシステムにおいて、メモリカード１に対して読み込みや書き込みを行う際に操作する単位であり、１つのクラスタ内には、第１データと第２データが格納される。
第１データは秘匿する必要がない一般情報であり、従来のデータアクセス装置でも、読み込むことが可能なデータ領域に格納される。
第２データは秘匿情報の属性情報であり、従来のデータアクセス装置が読み込むことが不可能な領域に格納される。
第３データは秘匿情報であり、秘匿情報の属性情報を参照しなければ読み込むことが不可能な領域に格納される。
【００１３】
次に動作について説明する。
最初に、データアクセス装置がメモリカード１から既に格納されている一般情報を読み込む際の動作を説明する。
例えば、ユーザが一般情報に関するパス付のファイル名を指定すると、データ管理部４の情報入力部１１がパス付のファイル名を入力する。
ここでは、説明の便宜上、パス付のファイル名として、下記の文字列が入力されたものとする。
／ＡＡＡ／ＢＢＢ／ＣＣＣ．ｄｏｃ
なお、“ＡＡＡ”は、ルートディレクトリにぶら下がっているディレクトリであり、“ＢＢＢ”はディレクトリＡＡＡにぶら下がっているディレクトリである。
また、“ＣＣＣ．ｄｏｃ”は、一般情報が格納されているファイルの名称である。
【００１４】
データ管理部４のクラスタ検出部１６は、情報入力部１１がパス付のファイル名を入力すると、一般情報が格納されているファイルが属するディレクトリのディレクトリエントリを探索するため、ルートディレクトリの読込要求をデータ読込部２に出力する。
データ読込部２は、クラスタ検出部１６からルートディレクトリの読込要求を受けると、メモリカード１からルートディレクトリを読み込み、そのルートディレクトリの内容をクラスタ検出部１６に出力する。
ルートディレクトリの内容には、そのルートディレクトリにぶら下がっているディレクトリのディレクトリエントリが含まれている。ルートディレクトリにぶら下がっているディレクトリが複数あれば、複数のディレクトリエントリが含まれている。
データ管理部４のクラスタ検出部１６は、データ読込部２からルートディレクトリの内容を受けると、パス付きファイル名を解析して、そのルートディレクトリと、一般情報が格納されているファイルが属するディレクトリとの中間に位置するディレクトリを探索する。
【００１５】
即ち、ルートディレクトリから探索するディレクトの名称（ディレクトリ名）は、パス付のファイル名で指定された文字列のうち、“／”により区分けされている先頭の文字列が相当するので、先頭の文字列（ディレクトリ名：“ＡＡＡ”）と、ディレクトリエントリ内のファイル名１０１を比較する。ルートディレクトリにぶら下がっているディレクトリが複数あれば、複数のディレクトリエントリ内のファイル名１０１と比較する。
クラスタ検出部１６は、あるディレクトリエントリ内に、文字列（ディレクトリ名：“ＡＡＡ”）と一致するファイル名１０１が存在する場合、そのディレクトリエントリからクラスタ番号１０６を取得する。
【００１６】
次に、クラスタ検出部１６は、そのディレクトリエントリから取得したクラスタ番号１０６をデータ読込部２に出力して、そのクラスタ番号１０６に存在するディレクトリＡＡＡの読込要求をデータ読込部２に出力する。
データ読込部２は、クラスタ検出部１６からディレクトリＡＡＡの読込要求を受けると、メモリカード１のクラスタ番号１０６からディレクトリＡＡＡを読み込み、そのディレクトリＡＡＡの内容をクラスタ検出部１６に出力する。
ディレクトリＡＡＡの内容には、そのディレクトリＡＡＡにぶら下がっているディレクトリのディレクトリエントリが含まれている。ディレクトリＡＡＡにぶら下がっているディレクトリが複数あれば、複数のディレクトリエントリが含まれている。
データ管理部４のクラスタ検出部１６は、データ読込部２からディレクトリＡＡＡの内容を受けると、パス付きファイル名を解析して、一般情報が格納されているファイルが属するディレクトリを探索する。
【００１７】
即ち、ディレクトリＡＡＡから探索するディレクトの名称（ディレクトリ名）は、パス付のファイル名で指定された文字列のうち、“／”により区分けされている文字列が相当するので、“／”により区分けされている文字列（ディレクトリ名：“ＢＢＢ”）と、ディレクトリエントリ内のファイル名１０１を比較する。ディレクトリＡＡＡにぶら下がっているディレクトリが複数あれば、複数のディレクトリエントリ内のファイル名１０１と比較する。
クラスタ検出部１６は、あるディレクトリエントリ内に、文字列（ディレクトリ名：“ＢＢＢ”）と一致するファイル名１０１が存在する場合、そのディレクトリエントリからクラスタ番号１０６を取得する。
【００１８】
次に、クラスタ検出部１６は、そのディレクトリエントリから取得したクラスタ番号１０６をデータ読込部２に出力して、そのクラスタ番号１０６に存在するディレクトリＢＢＢの読込要求をデータ読込部２に出力する。
データ読込部２は、クラスタ検出部１６からディレクトリＢＢＢの読込要求を受けると、メモリカード１のクラスタ番号１０６からディレクトリＢＢＢを読み込み、そのディレクトリＢＢＢの内容をクラスタ検出部１６に出力する。
ディレクトリＢＢＢの内容には、そのディレクトリＢＢＢにぶら下がっているファイルのディレクトリエントリが含まれている。ディレクトリＢＢＢにぶら下がっているファイルが複数あれば、複数のディレクトリエントリが含まれている。
データ管理部４のクラスタ検出部１６は、データ読込部２からディレクトリＢＢＢの内容を受けると、パス付きファイル名を解析して、一般情報が格納されているファイルを探索する。
【００１９】
即ち、ディレクトリＢＢＢから探索するファイルの名称（ファイル名）は、パス付のファイル名で指定された文字列のうち、“／”により区分けされている最後尾の文字列が相当するので、“／”により区分けされている最後尾の文字列（ファイル名：“ＣＣＣ．ｄｏｃ”）と、ディレクトリエントリ内のファイル名１０１を比較する。ディレクトリＢＢＢにぶら下がっているファイルが複数あれば、複数のディレクトリエントリ内のファイル名１０１と比較する。
クラスタ検出部１６は、あるディレクトリエントリ内に、文字列（ファイル名：“ＣＣＣ．ｄｏｃ”）と一致するファイル名１０１が存在する場合、そのディレクトリエントリからクラスタ番号１０６を取得する。
【００２０】
次に、クラスタ検出部１６は、そのディレクトリエントリから取得したクラスタ番号１０６をデータ読込部２に出力して、そのクラスタ番号１０６が示すクラスタの格納内容の読込要求をデータ読込部２に出力する。
データ読込部２は、クラスタ検出部１６からクラスタの格納内容の読込要求を受けると、メモリカード１のクラスタ番号１０６からクラスタの格納内容の読み込みを実施する。
クラスタ検出部１６は、データ読込部２により読み込まれたクラスタの格納内容を一般情報読込部１７に出力するとともに、そのディレクトリエントリを一般情報読込部１７に出力する。
【００２１】
一般情報読込部１７は、クラスタ検出部１６からディレクトリエントリを受けると、そのディレクトリエントリからクラスタ番号１０６とファイルサイズ１０７を取得する。
そして、一般情報読込部１７は、そのクラスタ番号１０６が示すクラスタの先頭から、そのファイルサイズ１０７が示すデータサイズ分のデータ、即ち、一般情報を取得する。
【００２２】
これにより、一般情報が格納されているファイルの読み込みが完了する。
ここでは、パス付きのファイル名の区切りを“／”で指定するものについて示しているが、これに限るものではなく、例えば、パス付きのファイル名の区切りを“￥”で指定するようにしてもよい。
また、ここでは、パス付きのファイル名を絶対パスによって指定するものについて示しているが、パス付きのファイル名を相対パスによって指定するようにしてもよい。
【００２３】
次に、データアクセス装置が新規の一般情報をメモリカード１に書き込む際の動作を説明する。
ここでは、説明の便宜上、ディレクトリＢＢＢの中に、新規の一般情報が格納されているファイルを書き込む例を説明する。
クラスタ検出部１６は、ファイル“ＣＣＣ．ｄｏｃ”の読み込みを実施する場合と同様にして、データ読込部２からディレクトリＢＢＢの内容を取得する。
【００２４】
クラスタ検出部１６は、データ読込部２からディレクトリＢＢＢの内容を取得すると、そのディレクトリＢＢＢの内容に含まれている１以上のディレクトリエントリ内のファイル名１０１と、情報入力部１１から入力された新規の一般情報のファイル名（ファイル名：“ＤＤＤ．ｄｏｃ”）を比較して、新規の一般情報のファイル名と一致するファイル名が既に存在しているか否かを確認する。
クラスタ検出部１６は、一致するファイル名が存在する場合、ファイルを新規に作成することが不可能である旨を提示するが（例えば、作成不可能であることを示すメッセージを図示せぬディスプレイに表示する）、一致するファイル名が存在しない場合、ファイルを新規に作成することが可能である旨を提示する（例えば、作成可能であることを示すメッセージを図示せぬディスプレイに表示する）。
【００２５】
一般情報書込部１５は、クラスタ検出部１６が新規の一般情報のファイル名と一致するファイル名が存在していないことを確認すると、空きクラスタの検索要求を空きクラスタ検出部１３に出力する。
空きクラスタ検出部１３は、情報入力部１１から一般情報を受け、一般情報書込部１５から空きクラスタの検索要求を受けると、メモリカード１内のクラスタの使用状況を管理するＦＡＴを参照して、空きクラスタのクラスタ番号を取得し、そのクラスタ番号を一般情報書込部１５に出力する。
また、空きクラスタ検出部１３は、そのクラスタ番号のクラスタが使用中であることを示す情報をＦＡＴに記載する。
【００２６】
一般情報書込部１５は、空きクラスタ検出部１３から空きクラスタのクラスタ番号を受けると、そのクラスタ番号と新規の一般情報をデータ書込部３に出力して、その一般情報の書込要求をデータ書込部３に出力する。
データ書込部３は、一般情報書込部１５から一般情報の書込要求を受けると、そのクラスタ番号が示すメモリカード１のクラスタに一般情報の書き込みを行う。
【００２７】
また、一般情報書込部１５は、空きクラスタ検出部１３から空きクラスタのクラスタ番号を受けると、ファイル“ＤＤＤ．ｄｏｃ”のディレクトリエントリをディレクトリＢＢＢの中に設定する。
即ち、ファイル“ＤＤＤ．ｄｏｃ”のディレクトリエントリをディレクトリＢＢＢの中に新設し、ファイル名１０１として“ＤＤＤ”、拡張子１０２として“ｄｏｃ”、更新日時１０５として現在の日時（一般情報の書込日時）、クラスタ番号１０６として空きクラスタ検出部１３により検出された空きクラスタ番号、ファイルサイズ１０７として新規の一般情報のデータサイズを、ファイル“ＤＤＤ．ｄｏｃ”のディレクトリエントリに格納する。
【００２８】
次に、従来のデータアクセス装置ではアクセスすることが不可能な秘匿情報をメモリカード１に書き込む際の動作を説明する。
ここでは、説明の便宜上、データアクセス装置が一般情報をメモリカード１に書き込む際に、秘匿情報をメモリカード１に書き込む例を説明する。
【００２９】
未使用領域検出部１２は、上記のようにして、データ書込部３が一般情報を空きクラスタに格納すると、一般情報書込部１５から当該クラスタのクラスタ番号を取得するとともに、その一般情報に係るディレクトリエントリを取得する。
ただし、一般情報と別個に秘匿情報をメモリカード１に書き込む場合は、メモリカード１内のクラスタの使用状況を管理するＦＡＴを参照して、一般情報が格納されているクラスタを検出し、そのクラスタのクラスタ番号を取得する。
【００３０】
未使用領域検出部１２は、その一般情報に係るディレクトリエントリを取得すると、そのディレクトリエントリからファイルサイズ１０７を取得し、そのファイルサイズ１０７とクラスタサイズを比較する。
そのファイルサイズ１０７がクラスタサイズより小さい場合、そのクラスタには情報が格納されていない未使用領域が存在し、その未使用領域が例えば３２バイト以上の領域であれば、秘匿情報の属性情報を未使用領域に格納することが可能であるものと判断する。
【００３１】
未使用領域検出部１２は、秘匿情報の属性情報を格納することが可能な未使用領域が存在しない場合、例えば、ＦＡＴを参照して、一般情報が格納されている他のクラスタを検出するが、秘匿情報の属性情報を格納することが可能な未使用領域が存在する場合、一般情報書込部１５から取得したクラスタのクラスタ番号を秘匿情報書込部１４に出力する。
なお、一般情報が例えば複数のクラスタを跨いで格納されているような場合、最初のクラスタには未使用領域が存在しないが、その一般情報のデータサイズがクラスタサイズの整数倍でなければ、２番目以降のクラスタには未使用領域が存在する。ただし、その未使用領域が３２バイト以上の領域であるとは限らない。
【００３２】
空きクラスタ検出部１３は、情報入力部１１から秘匿情報を受けると、メモリカード１内のクラスタの使用状況を管理するＦＡＴを参照して、空きクラスタのクラスタ番号を取得し、そのクラスタ番号を秘匿情報書込部１４に出力する。
秘匿情報書込部１４は、未使用領域検出部１２から未使用領域が存在するクラスタのクラスタ番号を受け、空きクラスタ検出部１３から空きクラスタのクラスタ番号を受けると、情報入力部１１から入力された秘匿情報の属性情報（秘匿情報を読み込む際に必要な属性情報）を第２データとして、その未使用領域の最後尾３２バイトに格納する。
即ち、秘匿情報書込部１４は、未使用領域が存在するクラスタのクラスタ番号と秘匿情報の属性情報をデータ書込部３に出力して、その属性情報の書込要求をデータ書込部３に出力する。
データ書込部３は、秘匿情報書込部１４から属性情報の書込要求を受けると、そのクラスタ番号が示すクラスタの未使用領域の最後尾３２バイトに秘匿情報の属性情報の書き込みを行う。
【００３３】
秘匿情報の属性情報は、秘匿情報に係るディレクトリエントリの記載内容であり、図３のディレクトリエントリに記載されている情報と基本的に同じであるが、そのディレクトリエントリのクラスタ番号１０６は、空きクラスタ検出部１３により検出された空きクラスタのクラスタ番号（第３データである秘匿情報を格納するクラスタのクラスタ番号）である。
ディレクトリエントリのファイル名１０１は秘匿情報のファイル名（ファイル名：“ＥＥＥ．ｄｏｃ”）であり、ファイルサイズ１０７は秘匿情報のデータサイズである。
ただし、秘匿情報のファイル名（ファイル名：“ＥＥＥ．ｄｏｃ”）については、必ずしもディレクトリエントリに記載する必要はなく、記載は任意でよい。
【００３４】
また、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号が示すクラスタに秘匿情報を格納する。
即ち、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号と秘匿情報をデータ書込部３に出力して、その秘匿情報の書込要求をデータ書込部３に出力する。
データ書込部３は、秘匿情報書込部１４から秘匿情報の書込要求を受けると、そのクラスタ番号が示すメモリカード１のクラスタに秘匿情報の書き込みを行う。
【００３５】
次に、データアクセス装置がメモリカード１から既に格納されている秘匿情報を読み込む際の動作を説明する。
例えば、ユーザが一般情報に関するパス付のファイル名を指定すると、データ管理部４の情報入力部１１がパス付のファイル名を入力する。
／ＡＡＡ／ＢＢＢ／ＣＣＣ．ｄｏｃ
ここでは、説明の便宜上、パス付のファイル名として、下記の文字列が入力されたものとする。ただし、秘匿情報の属性情報が、一般情報（ファイル名：“ＣＣＣ．ｄｏｃ”）を格納しているクラスタの最後尾に格納されているものとする。
【００３６】
データ管理部４のクラスタ検出部１６は、メモリカード１から一般情報を読み込む場合と同様に、パス付きファイル名を解析して、一般情報が格納されているファイル“ＣＣＣ．ｄｏｃ”を探索すると、そのファイルのディレクトリエントリからクラスタ番号１０６を取得し、そのクラスタ番号１０６をデータ読込部２に出力して、そのクラスタ番号１０６が示すクラスタの格納内容の読込要求をデータ読込部２に出力する。
データ読込部２は、クラスタ検出部１６からクラスタの格納内容の読込要求を受けると、メモリカード１のクラスタ番号１０６からクラスタの格納内容の読み込みを実施する。
クラスタ検出部１６は、データ読込部２により読み込まれたクラスタの格納内容を属性情報取得部１８に出力する。
【００３７】
属性情報取得部１８は、クラスタ検出部１６からクラスタの格納内容を受けると、そのクラスタの最後尾３２バイトを解析して、秘匿情報の属性情報であるディレクトリエントリを取得して、そのディレクトリエントリを秘匿情報読込部１９に出力する。
秘匿情報読込部１９は、属性情報取得部１８から秘匿情報の属性情報であるディレクトリエントリを受けると、そのディレクトリエントリからファイル名１０１、クラスタ番号１０６、ファイルサイズ１０７等を取得する。
そして、秘匿情報読込部１９は、そのクラスタ番号１０６が示すクラスタの先頭から、そのファイルサイズ１０７が示すデータサイズ分のデータ、即ち、秘匿情報を取得する。
【００３８】
以上で明らかなように、この実施の形態１によれば、秘匿情報を読み込む際に必要な秘匿情報の属性情報を未使用領域検出部１２により検出されたクラスタの未使用領域に格納し、その秘匿情報を空きクラスタ検出部１３により検出された空きクラスタに格納するように構成したので、従来のデータアクセス装置では検出することができない領域に秘匿情報の属性情報を格納することができるようになり、その結果、秘匿情報の機密保護性を高めることができる効果を奏する。
なお、従来のデータアクセス装置では、上述したように、ディレクトリエントリを参照しても、公開されている一般情報の閲覧のみ可能であり、秘匿情報を閲覧することができないが、第１データ（一般情報）より拡張された第２データ（秘匿情報の属性情報）を備えたことで、見かけ上は、１つのファイルで公開する内容と秘匿する内容を区分して構成することができる。
【００３９】
また、この実施の形態１によれば、クラスタ検出部１６により検出されたクラスタの格納内容を解析して、そのクラスタに格納されている秘匿情報の属性情報を取得する属性情報取得部１８を設け、その属性情報取得部１８により取得された属性情報を参照して秘匿情報が格納されているクラスタを検出し、そのクラスタから秘匿情報を読み込むように構成したので、従来のデータアクセス装置では検出することができない秘匿情報を読み込むことができる効果を奏する。
【００４０】
なお、この実施の形態１のデータアクセス装置により秘匿情報が書き込まれたメモリカード１が従来のデータアクセス装置に挿入され、従来のデータアクセス装置によって秘匿情報付きのファイルが削除された場合、ファイルのディレクトリエントリと第１データ（一般情報）が削除される。
この場合、第３データ（秘匿情報）は情報としてメモリカード１内に残るが、第３データ（秘匿情報）にアクセスする際に必要な第２データ（秘匿情報）の属性情報も削除されているため、第３データ（秘匿情報）は、依然として、従来のデータアクセス装置では読み込むことができず、データの秘匿性はそのまま確保される。
【００４１】
実施の形態２．
上記実施の形態１では、未使用領域検出部１２により検出されたクラスタの未使用領域に格納する秘匿情報の属性情報として、空きクラスタ検出部１３により検出された空きクラスタのクラスタ番号１０６、秘匿情報のファイル名１０１やファイルサイズ１０７などを格納するものについて示したが、最低限、空きクラスタ検出部１３により検出された空きクラスタのクラスタ番号１０６と秘匿情報のファイルサイズ１０７が格納されていれば、秘匿情報の読込処理を実施することができる。
したがって、秘匿情報の属性情報として、空きクラスタ検出部１３により検出された空きクラスタのクラスタ番号１０６と、秘匿情報のファイルサイズ１０７だけをクラスタの未使用領域に格納するようにしてもよい。
この場合、クラスタの未使用領域は、６バイト以上の領域があれば、秘匿情報の属性情報を格納することが可能になり、秘匿情報の属性情報を格納することが可能な領域が増加する。
【００４２】
実施の形態３．
上記実施の形態１では、第３データである秘匿情報については、バイナリファイルやテキストファイルを想定しているが、暗号化されている情報であってもよく、暗号化されている情報であれば、更に、秘匿性を高めることができる効果を奏する。
【００４３】
実施の形態４．
上記実施の形態１では、秘匿情報のデータサイズがクラスタサイズより大きい場合、その秘匿情報を複数のクラスタに跨って格納するものについて示したが（図５の例では、秘匿情報を２つのクラスタに跨って格納している）、この場合でも、秘匿情報のデータ内容の連続性については、ＦＡＴのチェーン情報により保証されている。
しかし、この場合、ＦＡＴのチェーン情報を参照して、連続性を利用したデータの取得が可能であるため、秘匿情報のデータサイズがクラスタサイズより大きくなると、秘匿情報の機密保護性が低下する。
【００４４】
そこで、この実施の形態４では、秘匿情報のデータサイズがクラスタサイズより大きい場合でも、秘匿情報の機密保護性の低下を防止するため、秘匿情報のデータサイズがクラスタサイズより大きい場合、空きクラスタ検出部１３が複数の空きクラスタを検出し、秘匿情報書込部１４が秘匿情報を分割して複数の空きクラスタに格納するようにしている。
具体的には、下記の通りである。
【００４５】
空きクラスタ検出部１３は、情報入力部１１から秘匿情報を受けると、その秘匿情報のデータサイズとクラスタサイズを比較し、その秘匿情報のデータサイズがクラスタサイズより大きい場合、メモリカード１内のクラスタの使用状況を管理するＦＡＴを参照して、複数の空きクラスタのクラスタ番号を取得し、複数のクラスタ番号を秘匿情報書込部１４に出力する。
図５の例では、クラスタサイズ  ＜  秘匿情報のデータサイズ  ＜  ２×クラスタサイズであるため、２つの空きクラスタのクラスタ番号（１）（２）を取得し、２つのクラスタ番号（１）（２）を秘匿情報書込部１４に出力する。
【００４６】
秘匿情報書込部１４も、情報入力部１１から秘匿情報を受けると、その秘匿情報のデータサイズとクラスタサイズを比較し、その秘匿情報のデータサイズがクラスタサイズより大きい場合、その秘匿情報を分割する。
図５の例では、クラスタサイズ  ＜  秘匿情報のデータサイズ  ＜  ２×クラスタサイズであるため、その秘匿情報を２つに分割する。以後、分割後の秘匿情報を秘匿情報（１）と秘匿情報（２）として説明する。
【００４７】
秘匿情報書込部１４は、上記実施の形態１と同様にして、未使用領域検出部１２から未使用領域が存在するクラスタのクラスタ番号を受け、空きクラスタ検出部１３から空きクラスタのクラスタ番号（１）（２）を受けると、分割後の秘匿情報（１）の属性情報（秘匿情報（１）を読み込む際に必要な属性情報）を第２データとして、その未使用領域の最後尾３２バイトに格納する。
即ち、秘匿情報書込部１４は、未使用領域が存在するクラスタのクラスタ番号と秘匿情報（１）の属性情報をデータ書込部３に出力して、その属性情報の書込要求をデータ書込部３に出力する。
データ書込部３は、秘匿情報書込部１４から秘匿情報（１）の属性情報の書込要求を受けると、そのクラスタ番号が示すクラスタの未使用領域の最後尾３２バイトに秘匿情報（１）の属性情報の書き込みを行う。
【００４８】
また、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号（１）が示すクラスタに秘匿情報（１）を格納する。
即ち、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号（１）と秘匿情報（１）をデータ書込部３に出力して、その秘匿情報（１）の書込要求をデータ書込部３に出力する。
データ書込部３は、秘匿情報書込部１４から秘匿情報（１）の書込要求を受けると、そのクラスタ番号（１）が示すメモリカード１のクラスタに秘匿情報（１）の書き込みを行う。
【００４９】
次に、秘匿情報書込部１４は、分割後の秘匿情報（２）の属性情報（秘匿情報（２）を読み込む際に必要な属性情報）を第２データとして、クラスタ番号（１）が示すクラスタ（１）の未使用領域の最後尾３２バイトに格納する。
即ち、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号（１）と秘匿情報（２）の属性情報をデータ書込部３に出力して、その属性情報の書込要求をデータ書込部３に出力する。
データ書込部３は、秘匿情報書込部１４から秘匿情報（２）の属性情報の書込要求を受けると、そのクラスタ番号（１）が示すクラスタの未使用領域の最後尾３２バイトに秘匿情報（２）の属性情報の書き込みを行う。
【００５０】
また、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号（２）が示すクラスタに秘匿情報（２）を格納する。
即ち、秘匿情報書込部１４は、空きクラスタ検出部１３から出力されたクラスタ番号（２）と秘匿情報（２）をデータ書込部３に出力して、その秘匿情報（２）の書込要求をデータ書込部３に出力する。
データ書込部３は、秘匿情報書込部１４から秘匿情報（２）の書込要求を受けると、そのクラスタ番号（２）が示すメモリカード１のクラスタに秘匿情報（２）の書き込みを行う。
【００５１】
以上で明らかなように、この実施の形態４によれば、秘匿情報のデータサイズがクラスタサイズより大きい場合、空きクラスタ検出部１３が複数の空きクラスタを検出し、秘匿情報書込部１４が秘匿情報を分割して複数の空きクラスタに格納するように構成したので、ＦＡＴの管理上では、メモリカード１内のクラスタの使用可否状態のみを保持することになり、そのため、ＦＡＴのチェーン情報から連続性を利用したデータの取得が不可能になる。その結果、更に、秘匿情報の機密保護性を高めることができる効果を奏する。
【００５２】
実施の形態５．
上記実施の形態１〜４では、メモリカード１に秘匿情報が格納されているか否かを判断する必要がある場合、データ読込部２が通常の一般情報が格納されているクラスタの格納内容を解析して、そのクラスタの最後尾に秘密情報の属性情報が格納されているか否かを判断する。
しかし、この場合、クラスタの格納内容の解析にある程度の時間を要するので、この実施の形態５では、次のようにして、メモリカード１に秘匿情報が格納されているか否かを迅速に判断できるようにしている。
【００５３】
即ち、秘匿情報書込部１４は、秘匿情報の属性情報を未使用領域検出部１２により検出されたクラスタの未使用領域に格納する際、その秘匿情報の属性情報が当該クラスタに格納されていることを示す情報をディレクトリエントリに設定する。
つまり、当該クラスタのディレクトリエントリの属性１０３は、通常、１バイトのデータであるので、その１バイトのデータの最上位ビットを、秘匿情報の有無を示すフラグとして使用し、秘匿情報の属性情報をクラスタの未使用領域に格納する場合には、秘匿情報の有無を示すフラグを“０”から“１”に変更するようにする。
そして、メモリカード１に秘匿情報が格納されているか否かを判断する必要がある場合、各ディレクトリエントリの属性１０３を参照し、属性１０３における最上位ビットが“１”であれば、当該クラスタには秘匿情報の属性情報が格納されていると判断し、属性１０３における最上位ビットが“０”であれば、当該クラスタには秘匿情報の属性情報が格納されていないと判断する。
【００５４】
この実施の形態５によれば、ディレクトリエントリの属性１０３を参照するだけで、メモリカード１に秘匿情報が格納されているか否かを判断することができるため、その判断を迅速に終了することができる効果を奏する。
【図面の簡単な説明】
【００５５】
【図１】この発明の実施の形態１によるデータアクセス装置を示す構成図である。
【図２】この発明の実施の形態１によるデータアクセス装置のデータ管理部を示す構成図である。
【図３】ＭＳ−ＤＯＳによるＦＡＴ型のファイルシステムにおいて、ファイルの属性情報を管理するディレクトリエントリを示す説明図である。
【図４】一般情報や秘匿状態が格納されているクラスタを示す説明図である。
【図５】一般情報や秘匿状態が格納されているクラスタを示す説明図である。
【符号の説明】
【００５６】
１  メモリカード、２  データ読込部、３  データ書込部、４  データ管理部、１１  情報入力部、１２  未使用領域検出部（未使用領域検出手段）、１３  空きクラスタ検出部（空きクラスタ検出手段）、１４  秘匿情報書込部（秘匿情報書込手段）、１５  一般情報書込部、１６  クラスタ検出部（クラスタ検出手段）、１７  一般情報読込部（一般情報読込手段）、１８  属性情報取得部（属性情報取得手段）、１９  秘匿情報読込部（秘匿情報読込手段）、１０１  ファイル名、１０２  拡張子、１０３  属性、１０４  予約領域、１０５  更新日時、１０６  クラスタ番号、１０７  ファイルサイズ。
【図１】
2006164059.tif 000003
【図２】
2006164059.tif 000004
【図３】
2006164059.tif 000005
【図４】
2006164059.tif 000006
【図５】
2006164059.tif 000007