(57)【要約】ボリュームの改ざんを確実に検出することができるファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供する。  ＨＤＤ１３０は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データ１５２を記憶し、著作権データ作成部２０５は、ファイルの書き込み時に、ボリューム管理データ１５２の改ざんを検出するためのボリューム著作権データ１３４を作成し、ＨＤＤ１３０とは物理的に異なる位置に配置されたフラッシュＲＡＭ１３２は、ボリューム著作権データ１３４を記憶し、著作権データ比較部２０６は、ボリュームのマウント時に、ボリューム管理データ１５２とボリューム著作権データ１３４とを比較し、改ざんがないと判断された場合、制御部２０２はボリュームをマウントする。【特許請求の範囲】
【請求項１】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備えることを特徴とするファイル管理装置。
【請求項２】
前記第１の記憶手段は、前記ファイルを管理するためのファイル管理データをさらに記憶し、
前記データ作成手段は、ファイルの書き込み時に、前記ファイル管理データの改ざんを検出するためのファイル改ざん検出データをさらに作成し、
前記第２の記憶手段は、前記データ作成手段によって作成されたファイル改ざん検出データをさらに記憶し、
前記データ比較手段は、前記ファイルのオープン時に、前記ファイル管理データを前記第１の記憶手段から読み出すと共に、前記ファイル改ざん検出データを前記第２の記憶手段から読み出し、読み出したファイル管理データとファイル改ざん検出データとをさらに比較し、
前記ファイルデータ比較手段によって改ざんがないと判断された場合、前記ファイルをオープンするオープン手段とをさらに備えることを特徴とする請求項１記載のファイル管理装置。
【請求項３】
前記第１の記憶手段は、前記ファイル管理データを前記ファイル改ざん検出データに関連付けて記憶することを特徴とする請求項２記載のファイル管理装置。
【請求項４】
前記第１の記憶手段は、前記ファイル改ざん検出データを特定可能なデータを含む前記ファイル管理データを記憶することを特徴とする請求項３に記載のファイル管理システム。
【請求項５】
前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更することを特徴とする請求項４記載のファイル管理装置。
【請求項６】
前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、第１の記憶手段は、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとを記憶し、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更し、前記第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータを削除することを特徴とする請求項５記載のファイル管理装置。
【請求項７】
前記データ作成手段は、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含む前記ボリューム改ざん検出データを作成することを特徴とする請求項１〜６のいずれかに記載のファイル管理装置。
【請求項８】
前記データ作成手段は、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データを作成することを特徴とする請求項２〜７のいずれかに記載のファイル管理装置。
【請求項９】
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成ステップと、
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを第１の記憶手段に記憶する第１の記憶ステップと、
前記データ作成ステップにおいて作成されたボリューム改ざん検出データを、前記第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶する第２の記憶ステップと、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較ステップと、
前記データ比較ステップにおいて改ざんがないと判断された場合、前記ボリュームをマウントするマウントステップとを含むことを特徴とするファイル管理方法。
【請求項１０】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させることを特徴とするファイル管理プログラム。
【請求項１１】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させることを特徴とするファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、磁気的或いは光学的或いは電気的或いはその他物理的手段又は化学的手段や、これらの組み合わせによって情報を記憶する情報記憶装置等において、ファイル単位の情報の記憶をより効率的且つ安全に行うためのファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。【０００２】  更に、これらの情報が不正に改ざんされたことを検出することのできるファイル管理システム等に関するものであり、この不正に改ざんされたことを検出することのできる情報には、例えばコピーを管理するための著作権情報等も含まれている。【０００３】  更に、これらの情報の管理や不正に改ざんされたことをより確実に行うため、ファイル情報の更新中等に例えば電源がオフとなったような場合でも、安全に情報の管理や改ざんの検出を行うことができるファイル管理システム等に関するものである。
【背景技術】
【０００４】  従来の、ファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体の例としては、例えば下記特許文献１に記載された記録・再生装置があった。【０００５】  図１０は、従来の記録・再生装置の一例であるミュージックサーバ９００の概略構成を示すブロック図である。【０００６】  このミュージックサーバ９００において、音楽データは、ＨＤＤ９１０、ＣＤ−ＲＯＭドライブ９０９又は音楽データ用ＤＲＡＭ９１１に記録される。ＨＤＤ９１０は読み書き可能であり、ＣＤ−ＲＯＭドライブ９０９は読み出し専用であり、音楽データ用ＤＲＡＭ９１１は読み書き可能であるが、通常一時的な記録に使用される。【０００７】  ミュージックサーバ９００の操作はユーザがキーボード９０２を使って行い、その操作情報は入力制御部９０１からバス９４０を経由してＣＰＵ９０８へ送られる。ＣＰＵ９０８は、この操作情報やその他の情報に基づいて、ミュージックサーバ９００全体の制御を行う。ＣＰＵ９０８はこの制御を行うためにＲＯＭ９０６とＲＡＭ９０５とフラッシュＲＡＭ９０７とその他図示しない幾つかの要素とを使用する。【０００８】  ＣＰＵ９０８とＲＯＭ９０６とＲＡＭ９０５とフラッシュＲＡＭ９０７とは、バス９４１で接続されている。ＲＯＭ９０６は、ＣＰＵ９０８を制御するためのプログラムや、その他の変更されることがないデータを記憶する。ＲＡＭ９０５は、一時的なデータを記憶する。フラッシュＲＡＭ９０７は、変更されることもあるが、電源がオフされても記憶を継続しなければならないデータ例えば後述するパラメータ等のデータを記憶する。操作情報や、ＣＰＵ９０８によって制御されるミュージックサーバ９００の状態は、ＬＣＤドライバ９２５を経由してＬＣＤ９２６に表示される。【０００９】  ミュージックサーバ９００は、モデム９２０と公衆電話回線端子９１９とを経由して、或いは１３９４ドライバ９２９と１３９４−Ｉ／Ｆ９２８と１３９４端子９３１とを経由して、それぞれ仕様が定められたインターフェースで外部の機器やネットワークと接続されている。このように接続することにより、ミュージックサーバ９００は、外部の機器やネットワークから音楽データやそれに関連するデータを始めとして各種の情報を入手したり、逆に各種の情報を送り出したりすることができる。【００１０】  ミュージックサーバ９００は、音楽データを入出力するための専用インターフェースとして、光デジタル入力端子９１７、マイク端子９１３、ライン入力端子９１５及びスピーカ端子９２４を備えている。【００１１】  光デジタル入力端子９１７から入力された音楽データは、圧縮エンコーダ９１２を経て音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録される。ライン入力端子９１５から入力された音楽データは、Ａ／Ｄ変換器９１８によってアナログデータからデジタルデータに変換され、圧縮エンコーダ９１２を経て音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録される。マイク端子９１３から入力された音楽データは、ＡＭＰ（アンプ）９１４によって増幅され、Ａ／Ｄ変換器９１８によってアナログデータからデジタルデータに変換され、圧縮エ��コーダ９１２を経て音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録される。【００１２】  また、音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録されている音楽データは、圧縮デコーダ９２１によってデコードされ、Ｄ／Ａ変換器９２２によってデジタルデータからアナログデータに変換され、ＡＭＰ９２３によって増幅されてスピーカ端子９２４から出力される。【００１３】  但し、このようなミュージックサーバ９００の構成はあくまでも１つの例であって、必ずしもこのような構成だけに限るものではないが、その他の構成については省略する。【００１４】  このミュージックサーバ９００においては、例えばマイク端子９１３等の外部から入力された音楽データをＨＤＤ９１０に転送する時、記録されるデータは一旦ＤＲＡＭ９１１に格納される。そして一定単位（ブロック）毎にＤＲＡＭ９１１から読み出され、このブロック単位のデータがＨＤＤ９１０に記録される。また、ＨＤＤ９１０からデータを再生する時は、ＨＤＤ９１０から再生されたデータは一旦ＤＲＡＭ９１１に格納される。そして一定単位（ブロック）毎にＤＲＡＭ９１１から読み出され、このデータが例えばスピーカ端子９２４に出力される。データの転送は、ＤＭＡコントローラ９３７により、ＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）制御で行われる。【００１５】  ＤＲＡＭ９１１は、図１１に示すように複数のバンク、例えばＢＮＫ０、ＢＮＫ１、ＢＮＫ２‥・に分割されている。各バンクＢＮＫ０、ＢＮＫ１、ＢＮＫ２‥・は、図１１に示すように複数のブロック、例えばＢＬＫ０、ＢＬＫ１、ＢＬＫ２‥・に分割されている。各ブロックＢＬＫ０、ＢＬＫ１、ＢＬＫ２‥・のサイズは、クラスタのサイズに対応している。【００１６】  このように、外部からの音楽データをＨＤＤ９１０に一定単位毎に転送する時に、データの転送順序を変えたり、オフセットを変えたりして並べ替えることによって、スクランブルをかけることができる。【００１７】  例えば、ブロック毎の並べ替えのパラメータをａ３とし、このパラメータａ３を機器毎に固有の写像ｆ３で変換してｂ３とし、この変換されたパラメータｂ３をフラッシュＲＡＭ９０７に格納しておく。このようにすると、ＨＤＤ９１０中のディクスに記録されるデータのブロックは、パラメータａ３に応じて並べ替えられることになる。従って、記録時の機器と同じ機器でなければ、正しくデータを転送することができない。【００１８】  しかしながら、このような従来のファイル管理システム及びファイル管理方法等では、著作権管理等のコピー管理を行うために、管理対象のファイルとは別に、改ざん検出のためのデータを含むファイルを別途作成し、アプリケーションがこれらのデータの整合性を管理しながら動作していた。【００１９】  そのために、アプリケーションの処理シーケンスが複雑になり、アプリケーションの開発工数が大きくなると共に、それぞれのアプリケーション毎に、著作権管理のための処理シーケンスを用意しなければならなかった。【００２０】  また、管理対象のファイルとこのファイルに対応する改ざん検出用データファイルが、ファイルシステム上で別ファイルとして管理されているため、ファイルアクセス中に電源���オフされたような異常動作発生時に、管理対象のファイルとこのファイルに対応する改ざん検出用データファイルとの整合性が崩れてしまい、正常なデータを改ざんされていると判断したり、改ざんされているデータを正常なデータと判断したりしてしまうことがあった。【００２１】  さらにまた、上記の例のような従来のファイル管理システム及びファイル管理方法等では、ファイル内のデータを保護するため、データ配置順序の並べ替えを行っているので、個々のブロック内ではデータの内容がそのまま保持され、ディスクヘッドのシークが増えて記録装置のアクセス速度が低下するという欠点が存在した。
【特許文献１】特開２００１−１１８３２８号公報
【発明の開示】
【００２２】  本発明は、上記の問題を解決するためになされたもので、ボリュームの改ざんを確実に検出することができるファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とするものである。
【００２３】  本発明に係るファイル管理装置は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備える。
【００２４】  この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。
【００２５】  したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【００２６】  本発明の目的、特徴及び利点は、以下の詳細な説明と添付図面とによって、より明白となる。
【図面の簡単な説明】
【００２７】［図１］本発明の一実施の形態であるファイル管理システムのハードウエアとソフトウエアとの概略構成を示す図である。
［図２］本発明に係るファイル管理システムの構成の一例を示す機能ブロック図である。
［図３］本発明の一実施の形態であるファイル管理システムにおけるファイル構成の一例を示す図である。
［図４］ファイルを作成する際に行われるファイル作成処理について説明するためのフローチャートである。
［図５］本発明の一実施の形態であるファイル管理システムにおけるファイル管理データの一例を示す図である。
［図６］ボリュームをマウントする際に行われる改ざん検出処理について説明するためのフローチャートである。
［図７］ファイルをオープンする際に行われる改ざん検出処理について説明するためのフローチャートである。
［図８］本発明の一実施の形態であるファイル管理システムにおけるファイル管理データの更新を説明するための図である。
［図９］ファイルを更新する際のファイル更新処理について説明するためのフローチャートである。
［図１０］従来の記録・再生装置の例であるミュージックサーバの概略ブロック構成を示す図である。
［図１１］従来の記録・再生装置の例であるミュージックサーバにおける記憶領域の構成を示す図である。
【発明を実施するための最良の形態】
【００２８】  以下、本発明の一実施の形態によるファイル管理装置ついて図面を参照しながら説明する。【００２９】  図１は、本発明の一実施の形態であるファイル管理システム１００のハードウエア１７３とソフトウエア１７１との概略構成を示す図である。なお、図１では、ハードウエアとソフトウエアとを説明の便宜上、分けて記載しているが、図１に示すソフトウエア１７１は、ハードウエア１７３のＲＯＭ１９４に記憶されており、ＣＰＵ１９１がこれらのソフトウエア１７１を実行する。【００３０】  ハードウエア１７３は、入出力部１９２とＣＰＵ（中央演算処理装置）１９１とＲＡＭ（ランダムアクセスメモリ）１９３とＲＯＭ（リードオンリメモリ）１９４とＨＤＤ（ハードディスクドライブ）１３０とフラッシュＲＡＭ１３２とその他図示しない幾つかの要素とから構成されている。なお、このハードウエア１７３は一般的に使用されているパーソナルコンピュータ（ＰＣ）と同様であるから、これ以上の詳細な説明は省略する。また、本発明は、パーソナルコンピュータだけでなく、ＣＤやＤＶＤ等の光ディスクに情報を記録及び／又は再生する情報記録再生装置（いわゆる、ＤＶＤレコーダー）や、携帯電話機などにも適用可能である。【００３１】  ソフトウエア１７１は、ハードウエア１７３の各種構成要素を制御したりデータの入出力を行うための各種ドライバ１８３と、オペレーティングシステム（ＯＳ）１８１と、ファイルシステム１２０と、アプリケーション１２２と、その他図示しない幾つかのソフトウエア要素とから構成されている。【００３２】  本実施の形態のファイル管理システム１００において特徴的であるのは、ファイルシステム１２０であって、各種ドライバ１８３とＯＳ１８１とアプリケーション１２２とは、一般的に使われているものと変わらないので、以後はファイルシステム１２０を中心に詳細な説明を行い、それ以外については最低必要限の説明に留める。また、アプリケーション１２２が一般的に使われているものと変わらないということは本発明の１つの特徴でもあるが、これについては別途説明する。【００３３】  図２は、本発明に係るファイル管理システムの構成の一例を示す機能ブロック図である。図２に示すファイル管理システム１００は、ファイルシステム１２０、アプリケーション１２２、ＨＤＤ１３０及びフラッシュＲＡＭ１３２を備えて構成される。【００３４】  ファイルシステム１２０は、図１に示すＣＰＵ１９１がファイルシステム１２０を実行することにより、入出力部２０１、制御部２０２、ボリューム管理部２０３、ファイルデータ入出力部２０４、著作権データ作成部２０５、著作権データ比較部２０６及び著作権データ入出力部２０７として機能する。【００３５】  ＨＤＤ１３０は、ボリューム管理データ１５２、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイルデータ部１８０及びファイル著作権データテーブル１７０を記憶する。フラッシュＲＡＭ１３２は、ボリューム著作権データ１３４を記憶する。なお、ボリューム管理データ１５２、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイルデータ部１８０、ファイル著作権データテーブル１７０及びボリューム��作権データ１３４については後述する。【００３６】  なお、本実施の形態におけるボリュームとは、ＨＤＤ１３０の記憶領域を表す論理ボリュームであるが、本発明は特にこれに限定されない。ボリュームは、ＨＤＤ１３０自体を表す物理ボリュームであってもよい。また、ＨＤＤ１３０は、ＨＤＤ１３０が複数のボリュームで構成される場合、各ボリューム毎のボリューム管理データを記憶してもよい。【００３７】  入出力部２０１は、アプリケーション１２２から入力される種々の要求を制御部２０２へ出力し、制御部２０２から入力される応答をアプリケーション１２２へ出力する。制御部２０２は、ボリューム管理部２０３、著作権データ作成部２０５及び著作権データ比較部２０６に指示を出し、ファイルシステム全体を制御する。【００３８】  ボリューム管理部２０３は、ファイルシステムに関連し、ＨＤＤ１３０に記憶されるボリューム管理データ１５２、ファイル配置データ１５４、ファイル属性データテーブル１６０及びファイルデータ部１８０を管理する。ファイルデータ入出力部２０４は、ボリューム管理部２０３からの指示により、ＨＤＤ１３０に対して各種データの読み書きを行う。【００３９】  著作権データ作成部２０５は、制御部２０２からの指示と、ボリューム管理部２０３から受け取ったファイルのデータに基づいて、ボリューム著作権データ１３４及びファイル著作権データテーブル１７０を作成する。【００４０】  著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたボリューム著作権データ１３４をフラッシュＲＡＭ１３２に書き込み、フラッシュＲＡＭ１３２に記憶されているボリューム著作権データ１３４を読み出す。また、著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたファイル著作権データテーブル１７０をＨＤＤ１３０に書き込み、ＨＤＤ１３０に記憶されているファイル著作権データテーブル１７０を読み出す。【００４１】  著作権データ比較部２０６は、ボリューム管理部２０３から受け取ったボリューム管理データ１５２と、著作権データ入出力部２０７から受け取ったボリューム著作権データ１３４とを比較し、改ざんされていないかを検査する。また、著作権データ比較部２０６は、ボリューム管理部２０３から受け取ったファイルデータと、著作権データ入出力部２０７から受け取ったファイル著作権データとを比較し、改ざんされていないかを検査する。【００４２】  なお、本実施の形態において、ファイル管理システム１００がファイル管理装置の一例に相当し、ＨＤＤ１３０が第１の記憶手段の一例に相当し、著作権データ作成部２０５がデータ作成手段の一例に相当し、フラッシュＲＡＭ１３２が第２の記憶手段の一例に相当し、著作権データ比較部２０６がデータ比較手段の一例に相当し、制御部２０２がマウント手段及びオープン手段の一例に相当し、ボリューム著作権データ１３４がボリューム改ざん検出データの一例に相当し、ファイル著作権データがファイル改ざん検出データの一例に相当する。【００４３】  次に、ファイル管理システム１００におけるファイル構成について説明する。図３は、本発明の一実施の形態であるファイル管理システム１００におけるファイル���成の一例を示す図である。このファイル構成は、ファイルシステム１２０によって作成・管理・制御・更新・削除されるファイル構成でもある。【００４４】  ファイルシステム１２０は、アプリケーション１２２から呼び出されることによって起動され、その処理を開始する。例えば、アプリケーション１２２が、ＨＤＤ１３０内に１つの新しいファイルＡを作成するために、ファイルシステム１２０を呼び出して起動したケースを例として取り上げ、ファイル管理システム１００とファイルシステム１２０とについて説明する。【００４５】  １つの新しいファイルＡをＨＤＤ１３０内に作成するためにファイルシステム１２０が起動されると、ファイルシステム１２０はまず、ＨＤＤ１３０内のボリューム管理データ１５２を参照することによって、このＨＤＤ１３０全体のファイルシステムの状態を取得する。【００４６】  特に、その時必要となるのは、ＨＤＤ１３０全体のファイルシステムのファイル配置状態を示すファイル配置データ１５４と、ＨＤＤ１３０全体のファイルの著作権情報を管理しているボリューム著作権データ１３４とである。ボリューム著作権データ１３４は、ＨＤＤ１３０以外の記録メディアである例えばフラッシュＲＡＭ１３２に記憶されている。【００４７】  フラッシュＲＡＭ１３２を使用するのは、電源がオフになっても記憶内容を保持することが可能な不揮発性メモリだからである。また、ＨＤＤ１３０以外の記録メディアを使用するのは、ＨＤＤ１３０が改ざんされたり、何等かの損傷や故障等が生じても、管理状態を維持するためである。【００４８】  なお、ボリューム著作権データ１３４を記憶する記録媒体としてＨＤＤ１３０以外のフラッシュＲＡＭ１３２を使用するのはあくまでも一例であって、他の半導体メモリや磁気メモリや光学的なメモリやこれらの組み合わせによって情報を記憶するものであっても構わない。【００４９】  ボリューム著作権データ１３４は、ＨＤＤ１３０のボリューム全体に記憶されている全データの著作権管理情報であって、例えばＨＤＤ１３０のボリューム全体に記憶されている各ファイルの中の最も厳しい著作権情報を代表として使用して著作権管理を行ってもよい。また、例えばＨＤＤ１３０のボリューム全体に記憶されている各ファイルの中の最も緩い著作権情報を代表として使用して著作権管理を行ってもよい。さらに、このように１つの著作権情報を代表として使用して著作権管理を行うのではなく、ファイル群を何等かの方法でグループ分けしてグループ単位で著作権管理を行っても構わない。さらにまた、個々のファイル単位で著作権管理を行っても構わないし、これらの著作権管理方法を組み合わせてＨＤＤ１３０のボリューム全体の著作権管理を行っても構わない。【００５０】  著作権管理モジュール１２４は、このようなボリューム著作権データ１３４の管理を行う。しかしながらこれもあくまでも一例であって、必ずしも著作権管理モジュール１２４が行うことは必須の条件ではなく、ファイルシステム１２０自身や、ファイルシステム１２０の一部や、ファイルシステム１２０以外の何等かのソフトウエアが行っても構わない。或いは又、他の実施の形態では、必ずしもこのようなボリューム著作権データ１３４��存在しないようなファイル管理システム１００であっても構わない。【００５１】  本実施の形態では、あくまで１つの例として、著作権管理モジュール１２４がフラッシュＲＡＭ１３２に記憶されたボリューム著作権データ１３４を使って、ＨＤＤ１３０全体の著作権管理を行うと仮定して説明する。【００５２】  ここで、ファイルを作成する際のファイル作成処理について説明する。図４は、ファイルを作成する際に行われるファイル作成処理について説明するためのフローチャートである。なお、図４に示すファイル作成処理は、図２に示すファイル管理システム１００によって実行される処理である。また、図５は、ファイル管理データの構成の一例を示す図である。【００５３】  まず、アプリケーション１２２から新たなファイルを作成する要求があると、ステップＳ１０１において、ファイルデータ入出力部２０４は、ファイル配置データ１５４を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル配置データ１５４を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、新規作成するファイルのファイル番号を決定する。【００５４】  ファイル配置データ１５４は、このＨＤＤ１３０ボリューム全体に記憶されている各ファイルの配置データを記憶管理するもので、その一例を例えば図５に示す。図５に示す例では、ファイル配置データ１５４にはファイル番号「３」とファイル番号「５」とファイル番号「１９」との３つのファイルが登録されており、この３つのファイルがＨＤＤ１３０のボリューム全体に記憶されていることを示している。勿論これはあくまでも一例であって、より多くのファイルが記憶されていても構わない。【００５５】  各ファイル番号は各ファイルを識別し、特定するためのＩＤに相当する。各ファイルを識別し、特定するためのＩＤも、必ずしもこのようなファイル番号である必要はなく、例えばファイルが存在するディレクトリのフルパスとファイル名であったり、その略号や略称を使ったり、その一部だけを使ったり、これらを組み合わせて使うことも可能である。しかしながら本実施の形態では説明の便宜のため、１つの例として、各ファイル番号を各ファイルを識別し、特定するためのＩＤに相当するものと仮定して説明する。【００５６】  ファイル番号「３」とファイル番号「５」とファイル番号「１９」との３つのファイルには、それぞれ管理データ番号が対応付けて記憶されている。図５に示す例では、ファイル番号「３」に対応付けられているファイルの管理データ番号は「１０」であり、ファイル番号「５」に対応付けられているファイルの管理データ番号は「２０」であり、ファイル番号「１９」に対応付けられているファイルの管理データ番号は「２３」である。【００５７】  例えば、ファイル番号「３」とファイル番号「５」とで特定されるファイルが既に存在していたところに、新しくファイルＡを作成するためにファイルシステム１２０が起動されたと仮定する。このようにしてファイルシステム１２０が起動されると、ファイルシステム１２０は、ファイルＡを新しく作成するためにファイル番号「１９」を作成し、ファイル配置データ１５４に登録する。図５はその時のファイル配置データ１５４を示すものである。【００５８】  ファイルシステム１２０は、ファイル配置データ１５４に、新しく作成するファイルＡのためのファイル番号「１９」を登録すると、次にこのファイル番号「１９」に対応する管理データ番号「２３」を割り当て、ファイル属性データＡ（１６２）をファイル属性データテーブル１６０に作成する。【００５９】  図４に戻って、ステップＳ１０２において、ファイルデータ入出力部２０４は、ファイル属性データテーブル１６０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル属性データテーブル１６０を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、ファイル属性データテーブル１６０に新たな管理データ番号を割り当て、新規作成するファイルのファイル属性データを書き込む位置を決定する。【００６０】  このファイル属性データＡ（１６２）は、新しく作成するファイルＡに関する各種属性データを含むデータである。図５に示す例では、例えばファイル属性データＡ（１６２）は、管理データ番号「２３」と、著作権データ番号「３０１」と、ファイルデータ番号「７０９１」と、管理用データ「ＹＸＯＬ‥」とを含んでいる。勿論これも、あくまでも一例であって、より多くの情報が含まれていても構わないし、一部の情報を含んでいなくても構わない。また、このような情報の内容もあくまでも仮の一例である。【００６１】  著作権データ番号「３０１」は、この新しく作成するファイルＡのためのファイル著作権データＡ（１６４）を、ファイル著作権データテーブル１７０で記憶管理するための管理番号である。【００６２】  図４に戻って、ステップＳ１０３において、ファイルデータ入出力部２０４は、ファイルデータ部１８０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイルデータ部１８０を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、ファイルデータ部１８０に新規にファイルデータ番号を割り当て、新規作成するファイルデータを書き込む位置を決定する。なお、書き込むファイルデータが存在する場合は、ここで書き込んでもよい。【００６３】  ファイルデータ番号「７０９１」は、この新しく作成するファイルＡのための実際のファイルデータＡ（１６３）を、ファイルデータ部１８０で記憶管理するための管理番号である。図５に示すように、この新しく作成するファイルＡのためのファイルデータ番号は、ファイル属性データテーブル１６０の、管理データ番号「２３」の所に記憶・管理されている「７０９１」であり、この新しく作成するファイルＡのための実際のファイルデータＡ（１６３）は、ファイルデータ部１８０の、ファイルデータ番号「７０９１」の所に記憶・管理されている。【００６４】  図５に示す例では、この新しく作成するファイルＡのための実際のファイルデータＡ（１６３）の内容は特に何等かに特定せず、単に「‥‥‥‥‥‥」で示している。この実際のファイルデータＡ（１６３）が、アプリケーション１２２によって、実際に読み書きされるデータである。【００６５】  図４に戻って、ステップＳ１０４において、著作権データ入出力部２０７��、ファイル著作権データテーブル１７０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル著作権データテーブル１７０を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、新規作成するファイルの著作権データを書き込むため、ファイル著作権データテーブル１７０に著作権データ番号を割り当てる。そして、著作権データ作成部２０５は、ファイル著作権データを作成し、作成したファイル著作権データを著作権データ番号に対応付けてファイル著作権データテーブル１７０に記憶する。著作権データ作成部２０５は、作成したファイル著作権データテーブル１７０を著作権データ入出力部２０７へ出力する。このとき、著作権データ作成部２０５は、ファイルデータに基づいたチェックデータを作成し、作成したチェックデータを含むファイル著作権データを作成する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたファイル著作権データテーブル１７０をＨＤＤ１３０に書き込む。【００６６】  図５に示すように、この新しく作成するファイルＡのための著作権データ番号は、ファイル属性データテーブル１６０の、管理データ番号「２３」の所に記憶・管理されている「３０１」であり、この新しく作成するファイルＡのためのファイル著作権データＡ（１６４）は、ファイル著作権データテーブル１７０の、著作権データ番号「３０１」の所に記憶・管理されている「ＹＴ９ＫＬＺ‥」である。【００６７】  このファイル著作権データＡ（１６４）は、上記ボリューム著作権データ１３４がＨＤＤ１３０のボリューム全体の著作権を管理するための情報であったのに対して、各ファイル単位で著作権を管理するための情報である。【００６８】  このファイル著作権データＡ（１６４）は、通常改ざんされることを防止するため、暗号化されていたり、電子署名が行われていたり、電子透かしが付加されていたり、その他の各種処理が行われていることがあるが、必ずしもこのような処理に限るものではなく、他の各種処理が行われていても構わないし、何等特別な処理が行われていなくても構わない。【００６９】  また、このファイル著作権データＡ（１６４）が表す著作権管理の内容は、例えば、ファイルＡに対するコピー制御情報である、コピーワンス（１回だけコピー可能）、コピーネバー（コピー一切不可）、コピーフリー（自由にコピー可能）、その他である。【００７０】  あるいはまた、他の例では、このファイル著作権データＡ（１６４）が表す著作権管理の内容は、ファイルＡ全体の改ざんを禁止し検出するためのチェックデータであったり、暗号化や電子透かしのための鍵である。【００７１】  このような情報をファイル著作権データＡ（１６４）として記憶することによって、ファイルＡのデータの一部でも改ざんが行われることを阻止すると共に、仮に改ざんが行われた時にもそれを検出することが可能である。しかしながらこれもあくまでも一例であって、他の種々の著作権管理の内容を表していても構わない。【００７２】  このように、本発明ではデータの内容を暗号化し、その暗号鍵をファイル内で管理しているため、ファイルシステムの一部に対する不正なアクセスをも有効に防止することができ、ファイル管理システムがＤＶＤレコーダーに適用される場合、ディスクヘッドのシークが増えてアクセス速度が低下することもない。【００７３】  図４に戻って、ステップＳ１０５において、著作権データ作成部２０５は、ステップＳ１０２で決定されたファイル属性データテーブル１６０の書き込み位置に、ステップＳ１０３で割り当てられたファイルデータ番号、ステップＳ１０４で割り当てられた著作権データ番号、及び管理用データを書き込む。【００７４】  ファイル属性データテーブル１６０の管理用データは、例えばその新しく作成するファイルＡの作成者、管理者、所有者、作成年月日、作成時刻、容量、保存期限、チェックデータ、暗号化に関する各種情報、その他各種管理のための情報を含んでいる。【００７５】  上記の実施の形態の一例ではファイル著作権データＡ（１６４）に、コピー制御のための各種情報や、改ざん検出のための情報を記憶するように説明したが、他の実施の形態ではこのファイル属性データテーブル１６０の管理用データに、これらコピー制御のための各種情報や、改ざん検出のための情報を記憶しても構わない。【００７６】  この実施の形態の例では、このファイル属性データテーブル１６０の管理用データに、例えばファイルＡに対するコピー制御情報である、コピーワンス（１回だけコピー可能）、コピーネバー（コピー一切不可）、コピーフリー（自由にコピー可能）、その他や、或いは又、他の例では、ファイルＡ全体の改ざんを禁止し検出するためのチェックデータであったり、暗号化や電子透かしのための鍵や、これらの両方が記憶されることもある。【００７７】  このような情報をファイル属性データテーブル１６０の管理用データとして記憶することによって、ファイルＡのデータの一部でも改ざんが行われることを阻止すると共に、仮に改ざんが行われた時にもそれを検出することが可能である。しかしながらこれもあくまでも一例であって、これらの情報と共に、或いはこれらの情報とは別に、他の種々の情報を記憶していても構わない。【００７８】  次に、ステップＳ１０６において、著作権データ作成部２０５は、ステップＳ１０１で決定されたファイル配置データ１５４のファイル番号に、ステップＳ１０２で割り当てられた管理データ番号を対応付ける。【００７９】  図５に示すように、ファイルシステム１２０は、ファイル番号「１９」に管理データ番号「２３」を対応付けてファイル配置データ１５４に登録する。このファイル番号「１９」と管理データ番号「２３」とは勿論あくまでも１つの仮想的な例であるが、通常は、それまでに使われていなかった、いわゆる空き番号が割り当てられて使用される。【００８０】  図４に戻って、ステップＳ１０７において、ファイルデータ入出力部２０４は、ボリューム管理データ１５２を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたボリューム管理データ１５２を更新し、ファイルデータ入出力部２０４及び著作権データ作成部２０５へ出力する。ファイルデータ入出力部２０４は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２をＨＤＤ１３０に書き込む。【００８１】  次に、ステップＳ１０８において、著作権データ作成部２０５は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２に基づいてボリューム著作権データ１３４を作成し、著作権データ入出力部２０７へ出力する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたボリューム著作権データ１３４をフラッシュＲＡＭ１３２に書き込み、処理を終了する。【００８２】  以上の説明では、新しく作成するファイルＡについて説明したが、このファイルＡが一旦作成された後参照され、更新される時には、以上の説明と同様に、アプリケーション１２２から呼び出されることによってファイルシステム１２０が起動され、参照や更新の処理を開始する。【００８３】  この処理の最初では、ファイルシステム１２０はボリューム管理データ１５２を参照して、ボリューム著作権データ１３４とファイル配置データ１５４とを取り出す。著作権管理モジュール１２４は、例えばボリューム著作権データ１３４を参照することによってボリューム全体の著作権管理を行う。これについては既に上記した通りであるから、詳細な説明は省略する。【００８４】  一方、ファイルシステム１２０はファイル配置データ１５４、ファイル属性データテーブル１６０、ファイル著作権データテーブル１７０を参照することによって、ファイルＡの管理を行い、ファイルＡの参照や更新を許可或いは禁止する。同時に必要に応じてファイルシステム１２０は、ファイル配置データ１５４、ファイル属性データテーブル１６０及びファイル著作権データテーブル１７０の更新を実行する。【００８５】  また、ファイルシステム１２０は、ファイル配置データ１５４、ファイル属性データテーブル１６０及びファイルデータ部１８０を参照或いは更新することによって、アプリケーション１２２から要求されたファイルＡの参照や更新を実行する。【００８６】  同時に、必要に応じてファイルシステム１２０はファイル配置データ１５４、ファイル属性データテーブル１６０及びファイル著作権データテーブル１７０の更新を行うこともある。例えば、ファイル著作権データＡ（１６４）が、コピーワンス等のコピー制御情報を記憶している時には、ファイルシステム１２０はこのファイル著作権データＡ（１６４）の内容を参照することによって、コピー制御を実行する。【００８７】  あるいは、ファイル著作権データＡ（１６４）が、ファイルデータＡ（１６３）のチェックデータや暗号鍵や電子透かしに関する情報等を記憶している時には、ファイルシステム１２０はこのファイル著作権データＡ（１６４）の内容を参照することによって、ファイルデータＡ（１６３）に対して、その一部についても改ざんが行われていないか確認検証を行うことができる。【００８８】  これらは例えば、ファイル属性データテーブル１６０の管理用データに、コピーワンス等のコピー制御情報を記憶している時には、ファイルシステム１２０はこのファイル属性データテーブル１６０の管理用データの内容を参照することによって、コピー制御を実行することができる。あるいは、ファイル属性データテーブル１６０の管理用データが、ファイルデータＡ（１６３）のチェックデータや暗号鍵や電子透かしに関する情報等を記憶して���る時には、ファイルシステム１２０はこのファイル属性データテーブル１６０の管理用データの内容を参照することによって、ファイルデータＡ（１６３）に対して、その一部についても改ざんが行われていないか確認検証を行うことができる。【００８９】  上記のように、ファイルシステム１２０が、ボリューム著作権データ１３４による著作権管理と、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイル著作権データテーブル１７０及びファイルデータ部１８０に記憶されているファイル番号、管理データ番号、著作権データ番号、ファイルデータ番号、管理用データファイル著作権データ及びファイルデータとを全て確認してその整合性を検証した後に、ＨＤＤ１３０のボリュームをマウントしたり、ファイルデータをオープンする等の処理を行う実施の形態も可能である。【００９０】  次に、ボリュームをマウントする際の改ざん検出処理について説明する。図６は、ボリュームをマウントする際に行われる改ざん検出処理について説明するためのフローチャートである。なお、図６に示すボリュームの改ざん検出処理は、図２に示すファイル管理システム１００によって実行される処理である。【００９１】  まず、アプリケーション１２２からＨＤＤ１３０へのアクセス要求があると、ステップＳ２０１において、著作権データ比較部２０６は、ボリューム管理データ１５２を取得する。すなわち、制御部２０２は、入出力部２０１を介してアプリケーション１２２からマウント要求が入力されると、ボリューム管理部２０３にボリューム管理データ１５２を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ボリューム管理データ１５２を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からボリューム管理データ１５２を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたボリューム管理データ１５２を著作権データ比較部２０６へ出力する。【００９２】  次に、ステップＳ２０２において、著作権データ比較部２０６は、ボリューム著作権データ１３４を取得する。すなわち、制御部２０２は、入出力部２０１を介してアプリケーション１２２からマウント要求が入力されると、ボリューム管理部２０３にボリューム管理データ１５２を取得するよう指示すると同時に、著作権データ比較部２０６にボリューム著作権データ１３４を取得するよう指示する。著作権データ比較部２０６は、著作権データ入出力部２０７に対し、ボリューム著作権データ１３４を読み出すよう指示する。著作権データ入出力部２０７は、フラッシュＲＡＭ１３２に記憶されているボリューム著作権データ１３４を読み出し、著作権データ比較部２０６へ出力する。【００９３】  次に、ステップＳ２０３において、著作権データ比較部２０６は、ボリューム管理部２０３から入力されたボリューム管理データ１５２と、著作権データ入出力部２０７から入力されたボリューム著作権データ１３４とを比較し、ボリュームの改ざんの有無を判断する。【００９４】  改ざんされていないと判断された場合（ステップＳ２０３でＮＯ）、ステップＳ２０４において、著作権データ比較部２０６は、ボリュー���が改ざんされていないことを制御部２０２へ伝え、制御部２０２は、マウント処理が正常に行われたとしてボリュームの改ざん検出処理を終了する。【００９５】  一方、改ざんされていると判断された場合（ステップＳ２０３でＹＥＳ）、ステップＳ２０５において、著作権データ比較部２０６は、ボリュームが改ざんされていることを制御部２０２へ伝え、制御部２０２は、マウント処理が正常に行われず、失敗したとしてボリュームの改ざん検出処理を終了する。この場合、制御部２０２は、アプリケーション１２２へマウント処理が失敗したことを通知する。【００９６】  次に、ファイルをオープンする際の改ざん検出処理について説明する。図７は、ファイルをオープンする際に行われる改ざん検出処理について説明するためのフローチャートである。なお、図７に示すファイルの改ざん検出処理は、図２に示すファイル管理システム１００によって実行される処理である。【００９７】  まず、アプリケーション１２２からファイルをオープンする要求があると、ステップＳ３０１において、著作権データ比較部２０６は、ファイル配置データ１５４を取得する。すなわち、制御部２０２は、入出力部２０１を介してアプリケーション１２２からファイルオープン要求が入力されると、ボリューム管理部２０３にファイル配置データ１５４を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ファイル配置データ１５４を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からファイル配置データ１５４を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル配置データ１５４を著作権データ比較部２０６へ出力する。なお、アプリケーション１２２は、オープンするファイルのファイル番号を指定する。著作権データ比較部２０６は、ボリューム管理部２０３から入力されたファイル配置データ１５４の中からファイル番号に対応する管理データ番号を取得する。【００９８】  次に、ステップＳ３０２において、著作権データ比較部２０６は、ファイル属性データテーブル１６０を取得する。すなわち、制御部２０２は、ボリューム管理部２０３にファイル属性データテーブル１６０を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ファイル属性データテーブル１６０を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からファイル属性データテーブル１６０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル属性データテーブル１６０を著作権データ比較部２０６へ出力する。著作権データ比較部２０６は、ボリューム管理部２０３から入力されたファイル属性データテーブル１６０の中から、ステップＳ３０１で取得した管理データ番号に対応する著作権データ番号、ファイルデータ番号及び管理用データを取得する。【００９９】  次に、ステップＳ３０３において、著作権データ比較部２０６は、ファイルデータ部１８０を取得する。すなわち、制御部２０２は、ボリューム管理部２０３にファイルデータ部１８０を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ファイルデータ部１８０を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からファイルデータ部１８０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイルデータ部１８０を著作権データ比較部２０６へ出力する。著作権データ比較部２０６は、ボリューム管理部２０３から入力されたファイルデータ部１８０の中から、ステップＳ３０２で取得したファイルデータ番号に対応するファイルデータを取得する。【０１００】  次に、ステップＳ３０４において、著作権データ比較部２０６は、ファイル著作権データテーブル１７０を取得する。すなわち、制御部２０２は、著作権データ比較部２０６にファイル著作権データテーブル１７０を取得するよう指示する。著作権データ比較部２０６は、著作権データ入出力部２０７に対し、ファイル著作権データテーブル１７０を読み出すよう指示する。著作権データ入出力部２０７は、ＨＤＤ１３０からファイル著作権データテーブル１７０を読み出し、著作権データ比較部２０６へ出力する。【０１０１】  次に、ステップＳ３０５において、著作権データ比較部２０６は、ステップＳ３０３で取得したファイルデータと、ステップＳ３０４で取得したファイル著作権データテーブル１７０のファイル著作権データに含まれるチェックデータとを比較し、ファイルの改ざんの有無を判断する。【０１０２】  改ざんされていないと判断された場合（ステップＳ３０５でＮＯ）、ステップＳ３０６において、著作権データ比較部２０６は、ファイルが改ざんされていないことを制御部２０２へ伝え、制御部２０２は、ファイルオープン処理が正常に行われたとしてファイルの改ざん検出処理を終了する。【０１０３】  一方、改ざんされていると判断された場合（ステップＳ３０５でＹＥＳ）、ステップＳ３０７において、著作権データ比較部２０６は、ファイルが改ざんされていることを制御部２０２へ伝え、制御部２０２は、ファイルオープン処理が正常に行われず、失敗したとしてファイルの改ざん検出処理を終了する。この場合、制御部２０２は、アプリケーション１２２へファイルオープン処理が失敗したことを通知する。【０１０４】  次に、このファイルシステム１２０が、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイル著作権データテーブル１７０、ファイルデータ部１８０の更新を行う時の処理を、図８及び図９を使って詳細に説明する。図８は、本発明の一実施の形態であるファイル管理システム１００におけるファイルの更新を説明するための図である。【０１０５】  図８に示す例では、ファイルＡのファイル著作権データＡは、「ＹＴ９ＫＬＺ‥」から「６ＴＢ８９Ｆ‥」に変更され、これに伴って著作権データ番号は「３０１」から「１２４」に変更され、ファイルデータ番号は「７０９１」から「２５６０」に変更される。【０１０６】  実際のファイルデータＡは、単に「‥‥‥‥‥‥・」で示しているため、具体的な内容は解らないが、アプリケーション１２２の要求に応じて、アプリケーション１２２が必要とする何等かの変更が行われている。管理用データも「ＹＸＯＬ‥」から「７ＧＳ５‥」に変更され、以上の変���に伴って管理データ番号は「２３」から「３４」に変更されている。【０１０７】  このような変更は種々の原因の発生によって行われる。例えば、管理用データ「ＹＸＯＬ‥」が何等かの原因、例えば保存期限が変更されたことや、暗号化に関する各種情報、例えばセキュリティ向上のために一定期間が経過すると暗号鍵や復号鍵や電子透かしの情報を変更するケース等で行われることがある。【０１０８】  あるいは、ファイルデータＡ自身の内容が、アプリケーション１２２からの要求によって変更されることによって、チェックデータが変わったことに起因しても発生することがある。【０１０９】  また、ファイル著作権データＡが何等かの原因、例えば以前はコピーワンス（１回だけコピー可）であったが、１回コピーが行われたためにコピーネバー（コピー一切不可）になったようなケースでも変更が発生することがある。しかしながらこれもあくまでも一例であって、他の種々の原因でもこれらの変更は発生することがあるし、実施の形態によっては発生しないこともある。【０１１０】  また、図８に示す例では、ファイルデータ番号、ファイル著作権データＡ（１６４）、著作権データ番号、管理データ番号の全てが変更されたと仮定しているが、これもあくまでも一例であって、必ずしもこの例のようにこれら全てが変更されることは必須ではなく、この一部だけが変更される実施の形態もある。【０１１１】  それぞれの説明については本質的には何等変わらないので、図８の例のようにファイルデータ番号、ファイル著作権データＡ（１６４）、著作権データ番号、管理データ番号の全てが変更されたと仮定して説明する。【０１１２】  図９は、ファイルを更新する際のファイル更新処理について説明するためのフローチャートである。なお、図９に示すファイル更新処理は、図２に示すファイル管理システム１００によって実行される処理である。【０１１３】  まず、入出力部２０１は、アプリケーション１２２からのファイルデータの更新要求を制御部２０２へ出力する。制御部２０２は、ボリューム管理部２０３に対してファイルデータの更新を指示し、更新すべきファイルデータをボリューム管理部２０３及び著作権データ作成部２０５へ出力する。ステップＳ４０１において、ボリューム管理部２０３は、ファイルデータ入出力部２０４を介してファイルデータ部１８０を読み出し、現在記憶されているファイルデータ番号とは異なるファイルデータ番号を割り当て、ファイルデータを書き込む位置を決定する。このとき、ファイルデータが書き込まれる位置は、更新前のファイルデータとは異なる位置である。ボリューム管理部２０３は、決定したファイルデータ番号に対応する位置にファイルデータを書き込む。【０１１４】  図８に示すように、ファイルデータＡ（１６３）の全部或いは一部が新しいファイルデータＡ（説明の便宜のため同じ記号で示す）に変更されたと仮定すると、新しいファイルデータＡは、ファイルデータ部１８０の例えば従来空き領域であった箇所に記録され、そのファイルデータ番号は例えば「２５６０」のように設定される。【０１１５】  あるいは、例えばファイルデータ番号「２５６０」の領域が空き領域であったため、その空き領域を検出して新しい���ァイルデータＡを記録する実施の形態であっても構わない。実質的には何等変わらない。【０１１６】  図９に戻って、ステップＳ４０２において、ボリューム管理部２０３は、著作権データ入出力部２０７を介してファイル著作権データテーブル１７０を読み出し、現在記憶されている著作権データ番号とは異なる著作権データ番号を割り当て、ファイル著作権データを書き込む位置を決定する。このとき、ファイル著作権データが書き込まれる位置は、更新前のファイル著作権データとは異なる位置である。そして、著作権データ作成部２０５は、ファイルデータに基づいたチェックデータを作成し、作成したチェックデータを含むファイル著作権データを作成する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたファイル著作権データテーブル１７０をＨＤＤ１３０に書き込む。【０１１７】  図８に示すように、ファイル著作権データＡ（１６４）が、「ＹＴ９ＫＬＺ‥」から「６ＴＢ８９Ｆ‥」に変更されたと仮定する。このような変更が発生する原因と、その意味する内容については既に上記の通りである。【０１１８】  この時には、ファイル著作権データテーブル１７０の空き領域を検出し、その領域のファイル著作権データとして「６ＴＢ８９Ｆ‥」が記録され、その領域の著作権データ番号として例えば「１２４」が設定される。【０１１９】  あるいは、ファイル著作権データテーブル１７０の著作権データ番号が「１２４」の領域が空き領域であることを検出し、その領域のファイル著作権データとして「６ＴＢ８９Ｆ‥」が記録される実施の形態であっても構わない。【０１２０】  図９に戻って、ステップＳ４０３において、ボリューム管理部２０３は、ファイルデータ入出力部２０４を介してファイル属性データテーブル１６０を読み出し、現在記憶されている管理データ番号とは異なる管理データ番号を割り当て、ファイル属性データを書き込む位置を決定する。そして、ボリューム管理部２０３は、ステップＳ４０１で決定したファイルデータ番号と、ステップＳ４０２で決定した著作権データ番号と、管理用データとをファイル属性データテーブル１６０に書き込む。【０１２１】  図８に示すように、このファイルデータ番号「２５６０」は、ファイル属性データテーブル１６０の空き領域のファイルデータ番号の欄に記録され、その管理データ番号が例えば「３４」のように設定される。【０１２２】  あるいは、ファイル属性データテーブル１６０の管理データ番号が「３４」の領域が空き領域であることを検出し、その領域のファイルデータ番号に上記「２５６０」を記録する実施の形態であっても構わない。【０１２３】  そしてこの著作権データ番号「１２４」が、上記ファイル属性データテーブル１６０の、新しいファイルデータＡのために設定された管理データ番号「３４」の著作権データ番号の欄に記録される。【０１２４】  また、管理用データも「ＹＸＯＬ‥」から「７ＧＳ５‥」に変更され、ファイル属性データテーブル１６０の新しいファイルデータＡのための領域である管理データ番号「３４」の管理データの欄に記録される。このような変更が発生する原因と、その意味する内容についても既に上記の通りである。【０１２５】  こ��ようにして、新しいファイルデータＡのための新しいファイルデータＡ（１６３）自身と、新しいファイルデータ番号「２５６０」と、ファイル著作権データＡ「６ＴＢ８９Ｆ‥」（１６４）と、著作権データ番号「１２４」と、管理用データ「７ＧＳ５‥」と、管理データ番号「３４」との全てが、ファイルデータ部１８０とファイル著作権データテーブル１７０とファイル属性データテーブル１６０とに作成される。【０１２６】  しかしながら、この段階では元のファイルデータＡのための、管理データ番号「２３」と、ファイルデータ番号「７０９１」と、著作権データ番号「３０１」と、ファイル著作権データＡ「ＹＴ９ＫＬＺ‥」（１６４）と、ファイルデータＡ（１６３）自身と、管理用データ「ＹＸＯＬ‥」とは、全て全く変更されることなく、そのまま保持されている。【０１２７】  従って、この段階までのファイルデータＡの更新過程の途中で、仮に電源がオフされたり、その他各種の異常状態が発生したとしても、元のファイルデータＡのためのファイルシステム構成がそのまま維持され、何等ファイルシステムに不整合が発生することはない。【０１２８】  図９に戻って、ステップＳ４０４において、ボリューム管理部２０３は、ファイルデータ入出力部２０４を介してファイル配置データ１５４を読み出し、更新するファイルデータのファイル番号に対応する管理データ番号を、ステップＳ４０３で決定した管理データ番号に書き換える。【０１２９】  図８に示すように、新しいファイルデータＡのための新しいファイルデータＡ（１６３）自身、新しいファイルデータ番号「２５６０」、ファイル著作権データＡ「６ＴＢ８９Ｆ‥」（１６４）、著作権データ番号「１２４」、管理用データ「７ＧＳ５‥」、及び管理データ番号「３４」の全てが、ファイルデータ部１８０とファイル著作権データテーブル１７０とファイル属性データテーブル１６０とに作成された後に、新しいファイルデータＡのためのファイル配置データ１５４内のファイル番号「１９」に対応する管理データ番号が「２３」から「３４」に変更され、ファイルデータＡの内容が従来のものから新しいものに変更される。【０１３０】  なお、本実施の形態では、ＨＤＤ１３０は、ファイル配置データ１５４を１つだけ記憶しているが、本発明は特にこれに限定されず、ＨＤＤ１３０は、ファイル配置データ１５４を２つ記憶してもよい。【０１３１】  すなわち、ファイルデータを更新する場合、ボリューム管理部２０３は、２つのファイル配置データのうちの一方のファイル配置データに記憶されている更新前の管理データ番号を削除する。そして、ボリューム管理部２０３は、一方のファイル配置データに記憶されている管理データ番号を更新後の新たな管理データ番号に書き換える。次に、ボリューム管理部２０３は、他方のファイル配置データに記憶されている更新前の管理データ番号を削除する。そして、ボリューム管理部２０３は、他方のファイル配置データに記憶されている管理データ番号を更新後の新たな管理データ番号に書き換える。【０１３２】  このように、ＨＤＤ１３０は、２つのファイル配置データを記憶し、ボリューム管理部２０３は、一方のファイル配置データの管理データ番号を書き換えた後、他方のファイル配置データの管理データ番号を書き換える。したがって、ファイル配置データの管理データ番号を書き換えている途中で、電源がオフされたとしても、２つのファイル配置データのうちのどちらか一方にはファイル番号に対応する管理データ番号が必ず記憶されており、ファイル番号に対応する管理データ番号が無くなるという不具合を解消することができる。【０１３３】  図９に戻って、ステップＳ４０５において、ボリューム管理部２０３は、ファイルデータに記憶されている更新前のファイルデータ番号に対応するファイルデータを削除する。次に、ステップＳ４０６において、ボリューム管理部２０３は、ファイル著作権データテーブル１７０に記憶されている更新前の著作権データ番号に対応するファイル著作権データを削除する。次に、ステップＳ４０７において、ボリューム管理部２０３は、ファイル属性データテーブル１６０に記憶されている更新前の管理データ番号に対応するファイル属性データ（著作権データ番号、ファイルデータ番号及び管理用データ）を削除する。【０１３４】  次に、ステップＳ４０８において、ファイルデータ入出力部２０４は、ボリューム管理データ１５２を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたボリューム管理データ１５２を更新し、ファイルデータ入出力部２０４へ出力する。ファイルデータ入出力部２０４は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２をＨＤＤ１３０に書き込む。【０１３５】  次に、ステップＳ４０９において、ボリューム管理部２０３は、更新したボリューム管理データ１５２を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２に基づいてボリューム著作権データ１３４を作成し、著作権データ入出力部２０７へ出力する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたボリューム著作権データ１３４をフラッシュＲＡＭ１３２に書き込み、処理を終了する。【０１３６】  以上説明したように、このようなファイルシステム１２０が実行するファイルデータＡの更新処理によって、ファイルデータＡの更新処理過程の途中段階で、仮に電源がオフされたり、その他各種の異常状態が発生したとしても、元のファイルデータＡのためのファイルシステム構成がそのまま維持され、何等ファイルシステムに不整合が発生することはないことが示される。【０１３７】  また、これらの処理は全てファイルシステム１２０が行うため、アプリケーション１２２は何等関与する必要がないことも示される。更に、ファイル著作権データＡ（１６４）或いはファイル属性データテーブル１６０の管理用データのどちらか一方或いは両方に改ざん検出のためのチェックデータや暗号鍵や電子透かしに関する情報が保持されている実施の形態では、ファイルデータＡ（１６３）の一部にでも不正な改ざんが行われたならばそれを検出することが可能であることも示される。【０１３８】  これによって、アプリケーションの処理負荷が軽減されると共に、アプリケーション開発の工程も大きく短縮化されると同時に、ファイルシステムがファイルの更新処理を実行中に電源オフ等の異常事態が発生したケースでもファイルシステムの整合性を維持確保することが可能である。【０１３９】  さらにまた、アプリケーションに依存しない、統一的な著作権管理やファイルの一部又は全部に対する改ざん管理を行うことも可能になる。【０１４０】  なお、上述した具体的実施形態には以下の構成を有する発明が主に含まれている。【０１４１】  本発明に係るファイル管理装置は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備える。【０１４２】  この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。【０１４３】  したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。【０１４４】  また、上記のファイル管理装置において、前記第１の記憶手段は、前記ファイルを管理するためのファイル管理データをさらに記憶し、前記データ作成手段は、ファイルの書き込み時に、前記ファイル管理データの改ざんを検出するためのファイル改ざん検出データをさらに作成し、前記第２の記憶手段は、前記データ作成手段によって作成されたファイル改ざん検出データをさらに記憶し、前記データ比較手段は、前記ファイルのオープン時に、前記ファイル管理データを前記第１の記憶手段から読み出すと共に、前記ファイル改ざん検出データを前記第２の記憶手段から読み出し、読み出したファイル管理データとファイル改ざん検出データとをさらに比較し、前記ファイルデータ比較手段によって改ざんがないと判断された場合、前記ファイルをオープンするオープン手段とをさらに備えることが好ましい。【０１４５】  この構成によれば、第１の記憶手段には、ファイルを管理するためのファイル管理データがさらに記憶されている。そして、データ作成手段によって、ファイルの書き込み時に、ファイル管理データの改ざんを検出するためのファイル改ざん検出データがさらに作成される。第２の記憶手段には、データ作成手段により作成されたファイル改ざん検出データがさらに記憶される。そして、データ比較手段によって、ファイルのオープン時に、ファイル管理データが第１の記憶手段から読み出されると共に、ファイル改ざん検出データが第２の記憶手段から読み出され、読み出されたファイル管理データとファイル改ざん検出データとがさらに比較される。ファイルデータ比較手段により改ざんがないと判断された場合、オープン手段によって、ファイルがオープンされる。【０１４６】  したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているファイル改ざん検出データを用いてファイルが改ざんされたか否かの判断が行われるので、ボリューム内の個々のファイルに対する改ざんを確実に検出することができ、不正なファイルの改ざんを防止することができる。【０１４７】  また、上記のファイル管理装置において、前記第１の記憶手段は、前記ファイル管理データを前記ファイル改ざん検出データに関連付けて記憶することが好ましい。【０１４８】  この構成によれば、ファイル管理データがファイル改ざん検出データに関連付けて記憶されるので、ファイル管理データとファイル改ざん検出データとの比較を確実に行うことができる。【０１４９】  また、上記のファイル管理装置において、前記第１の記憶手段は、前記ファイル改ざん検出データを特定可能なデータを含む前記ファイル管理データを記憶することが好ましい。【０１５０】  この構成によれば、ファイル改ざん検出データを特定可能なデータを含むファイル管理データが記憶されているので、ファイル改ざん検出データを特定可能なデータを参照してファイル管理データに関連付けられているファイル改ざん検出データを特定することができる。【０１５１】  また、上記のファイル管理装置において、前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更することが好ましい。【０１５２】  この構成によれば、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される場合、データ作成手段によって、新しいファイル改ざん検出データが作成された後に、新しいファイル改ざん検出データが特定されるようにファイル改ざん検出データを特定可能なデータが変更される。【０１５３】  したがって、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される間に、電源オフ等の異常動作が発生したとしても、新しいファイル改ざん検出データが作成された後に、ファイル改ざん検出データを特定可能なデータが変更されるので、更新前のファイル改ざん検出データと、更新前のファイル改ざん検出データを特定可能なデータとが残り、データの整合性を維持することができ、ファイルの改ざんの検出を正常に行うことができる。【０１５４】  また、上記のファイル管理装置において、前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、第１の記憶手段は、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとを記憶し、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更し、前記第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータを削除することが好ましい。【０１５５】  この構成によれば、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される場合、第１の記憶手段には、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとが記憶される。そして、データ作成手段によって、新しいファイル改ざん検出データが作成された後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータが変更され、第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータが削除される。【０１５６】  したがって、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される場合、ファイル改ざん検出データを特定可能なデータが変更されるまで、更新前のファイル改ざん検出データを特定可能なデータが記憶されているので、更新中に電源オフ等の異常動作が発生したとしても、データの整合性を維持することができ、ファイルの改ざんの検出を正常に行うことができる。【０１５７】  また、上記のファイル管理装置において、前記データ作成手段は、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含む前記ボリューム改ざん検出データを作成することが好ましい。【０１５８】  この構成によれば、データ作成手段によって、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含むボリューム改ざん検出データが作成される。したがって、このような情報を含むボリューム改ざん検出データとボリューム管理データとが比較されるので、ボリュームの改ざんを確実に検出することがで��る。【０１５９】  また、上記のファイル管理装置において、前記データ作成手段は、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データを作成することが好ましい。【０１６０】  この構成によれば、データ作成手段によって、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データが作成される。したがって、このような情報を含むファイル改ざん検出データとファイル管理データとが比較されるので、ファイルの改ざんを確実に検出することができる。【０１６１】  本発明に係るファイル管理方法は、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成ステップと、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを第１の記憶手段に記憶する第１の記憶ステップと、前記データ作成ステップにおいて作成されたボリューム改ざん検出データを、前記第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶する第２の記憶ステップと、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較ステップと、前記データ比較ステップにおいて改ざんがないと判断された場合、前記ボリュームをマウントするマウントステップとを含む。【０１６２】  この構成によれば、データ作成ステップにおいて、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。そして、第１の記憶ステップにおいて、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが第１の記憶手段に記憶される。また、第２の記憶ステップにおいて、データ作成ステップで作成されたボリューム改ざん検出データが、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶される。データ比較ステップにおいて、ボリュームのマウント時に、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較ステップで改ざんがないと判断された場合、マウントステップにおいて、ボリュームがマウントされる。【０１６３】  したがって、第１の記憶手段とは物理的に異なる位置に配置された第���の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。【０１６４】  本発明に係るファイル管理プログラムは、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させる。【０１６５】  この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。【０１６６】  したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。【０１６７】  本発明に係るファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読��出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させる。【０１６８】  この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。【０１６９】  したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【産業上の利用可能性】
【０１７０】  本発明は、アプリケーションから独立したファイルシステムが、ファイルの管理と更新を行うことによって、アプリケーションの処理負荷が軽減されると共に、アプリケーション開発の工程も大きく短縮化されると同時に、ファイルシステムがファイルの更新処理を実行中に電源オフ等の異常事態が発生したケースでもファイルシステムの整合性を維持確保することが可能である。【０１７１】  更に又、アプリケーションに依存しない、統一的な著作権管理やファイルの一部又は全部に対する改ざん管理を行うことも可能になるという絶大な効果を有し、その産業上の利用可能性は極めて大である。
【図１】
2005111809.tif 000002
【図２】
2005111809.tif 000003
【図３】
2005111809.tif 000004
【図４】
2005111809.tif 000005
【図５】
2005111809.tif 000006
【図６】
2005111809.tif 000007
【図７】
2005111809.tif 000008
【図８】
2005111809.tif 000009
【図９】
2005111809.tif 000010
【図１０】
2005111809.tif 000011
【図１１】
2005111809.tif 000012
【手続補正書】
【提出日】平成17年9月1日(2005.9.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備えることを特徴とするファイル管理装置。
【請求項２】
前記第１の記憶手段は、前記ファイルを管理するためのファイル管理データをさらに記憶し、
前記データ作成手段は、ファイルの書き込み時に、前記ファイル管理データの改ざんを検出するためのファイル改ざん検出データをさらに作成し、
前記第２の記憶手段は、前記データ作成手段によって作成されたファイル改ざん検出データをさらに記憶し、
前記データ比較手段は、前記ファイルのオープン時に、前記ファイル管理データを前記第１の記憶手段から読み出すと共に、前記ファイル改ざん検出データを前記第２の記憶手段から読み出し、読み出したファイル管理データとファイル改ざん検出データとをさらに比較し、
前記ファイルデータ比較手段によって改ざんがないと判断された場合、前記ファイルをオープンするオープン手段とをさらに備えることを特徴とする請求項１記載のファイル管理装置。
【請求項３】
前記第１の記憶手段は、前記ファイル管理データを前記ファイル改ざん検出データに関連付けて記憶することを特徴とする請求項２記載のファイル管理装置。
【請求項４】
前記第１の記憶手段は、前記ファイル改ざん検出データを特定可能なデータを含む前記ファイル管理データを記憶することを特徴とする請求項３に記載のファイル管理システム。
【請求項５】
前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更することを特徴とする請求項４記載のファイル管理装置。
【請求項６】
前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、第１の記憶手段は、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとを記憶し、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更し、前記第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータを削除することを特徴とする請求項５記載のファイル管理装置。
【請求項７】
前記データ作成手段は、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含む前記ボリューム改ざん検出データを作成することを特徴とする請求項１〜６のいずれかに記載のファイル管理装置。
【請求項８】
前記データ作成手段は、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データを作成することを特徴とする請求項２〜７のいずれかに記載のファイル管理装置。
【請求項９】
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成ステップと、
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを第１の記憶手段に記憶する第１の記憶ステップと、
前記データ作成ステップにおいて作成されたボリューム改ざん検出データを、前記第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶する第２の記憶ステップと、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較ステップと、
前記データ比較ステップにおいて改ざんがないと判断された場合、前記ボリュームをマウントするマウントステップとを含むことを特徴とするファイル管理方法。
【請求項１０】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させることを特徴とするファイル管理プログラム。
【請求項１１】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させることを特徴とするファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、磁気的或いは光学的或いは電気的或いはその他物理的手段又は化学的手段や、これらの組み合わせによって情報を記憶する情報記憶装置等において、ファイル単位の情報の記憶をより効率的且つ安全に行うためのファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体に関するものである。
【０００２】
更に、これらの情報が不正に改ざんされたことを検出することのできるファイル管理システム等に関するものであり、この不正に改ざんされたことを検出することのできる情報には、例えばコピーを管理するための著作権情報等も含まれている。
【０００３】
更に、これらの情報の管理や不正に改ざんされたことをより確実に行うため、ファイル情報の更新中等に例えば電源がオフとなったような場合でも、安全に情報の管理や改ざんの検出を行うことができるファイル管理システム等に関するものである。
【背景技術】
【０００４】
従来の、ファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体の例としては、例えば下記特許文献１に記載された記録・再生装置があった。
【０００５】
図１０は、従来の記録・再生装置の一例であるミュージックサーバ９００の概略構成を示すブロック図である。
【０００６】
このミュージックサーバ９００において、音楽データは、ＨＤＤ９１０、ＣＤ−ＲＯＭドライブ９０９又は音楽データ用ＤＲＡＭ９１１に記録される。ＨＤＤ９１０は読み書き可能であり、ＣＤ−ＲＯＭドライブ９０９は読み出し専用であり、音楽データ用ＤＲＡＭ９１１は読み書き可能であるが、通常一時的な記録に使用される。
【０００７】
ミュージックサーバ９００の操作はユーザがキーボード９０２を使って行い、その操作情報は入力制御部９０１からバス９４０を経由してＣＰＵ９０８へ送られる。ＣＰＵ９０８は、この操作情報やその他の情報に基づいて、ミュージックサーバ９００全体の制御を行う。ＣＰＵ９０８はこの制御を行うためにＲＯＭ９０６とＲＡＭ９０５とフラッシュＲＡＭ９０７とその他図示しない幾つかの要素とを使用する。
【０００８】
ＣＰＵ９０８とＲＯＭ９０６とＲＡＭ９０５とフラッシュＲＡＭ９０７とは、バス９４１で接続されている。ＲＯＭ９０６は、ＣＰＵ９０８を制御するためのプログラムや、その他の変更されることがないデータを記憶する。ＲＡＭ９０５は、一時的なデータを記憶する。フラッシュＲＡＭ９０７は、変更されることもあるが、電源がオフされても記憶を継続しなければならないデータ、例えば後述するパラメータ等のデータを記憶する。操作情報や、ＣＰＵ９０８によって制御されるミュージックサーバ９００の状態は、ＬＣＤドライバ９２５を経由してＬＣＤ９２６に表示される。
【０００９】
ミュージックサーバ９００は、モデム９２０と公衆電話回線端子９１９とを経由して、或いは１３９４ドライバ９２９と１３９４−Ｉ／Ｆ９２８と１３９４端子９３１とを経由して、それぞれ仕様が定められたインターフェースで外部の機器やネットワークと接続されている。このように接続することにより、ミュージックサーバ９００は、外部の機器やネットワークから音楽データやそれに関連するデータを始めとして各種の情報を入手したり、逆に各種の情報を送り出したりすることができる。
【００１０】
ミュージックサーバ９００は、音楽データを入出力するための専用インターフェースとして、光デジタル入力端子９１７、マイク端子９１３、ライン入力端子９１５及びスピーカ端子９２４を備えている。
【００１１】
光デジタル入力端子９１７から入力された音楽データは、圧縮エンコーダ９１２を経て音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録される。ライン入力端子９１５から入力された音楽データは、Ａ／Ｄ変換器９１８によってアナログデータからデジタルデータに変換され、圧縮エンコーダ９１２を経て音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録される。マイク端子９１３から入力された音楽データは、ＡＭＰ（アンプ）９１４によって増幅され、Ａ／Ｄ変換器９１８によってアナログデータからデジタルデータに変換され、圧縮エンコーダ９１２を経て音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録される。
【００１２】
また、音楽データ用ＤＲＡＭ９１１やＨＤＤ９１０に記録されている音楽データは、圧縮デコーダ９２１によってデコードされ、Ｄ／Ａ変換器９２２によってデジタルデータからアナログデータに変換され、ＡＭＰ９２３によって増幅されてスピーカ端子９２４から出力される。
【００１３】
但し、このようなミュージックサーバ９００の構成はあくまでも１つの例であって、必ずしもこのような構成だけに限るものではないが、その他の構成については省略する。
【００１４】
このミュージックサーバ９００においては、例えばマイク端子９１３等の外部から入力された音楽データをＨＤＤ９１０に転送する時、記録されるデータは一旦ＤＲＡＭ９１１に格納される。そして一定単位（ブロック）毎にＤＲＡＭ９１１から読み出され、このブロック単位のデータがＨＤＤ９１０に記録される。また、ＨＤＤ９１０からデータを再生する時は、ＨＤＤ９１０から再生されたデータは一旦ＤＲＡＭ９１１に格納される。そして一定単位（ブロック）毎にＤＲＡＭ９１１から読み出され、このデータが例えばスピーカ端子９２４に出力される。データの転送は、ＤＭＡコントローラ９３７により、ＤＭＡ（Direct Memory Access）制御で行われる。
【００１５】
ＤＲＡＭ９１１は、図１１に示すように複数のバンク、例えばＢＮＫ０、ＢＮＫ１、ＢＮＫ２・・・に分割されている。各バンクＢＮＫ０、ＢＮＫ１、ＢＮＫ２・・・は、図１１に示すように複数のブロック、例えばＢＬＫ０、ＢＬＫ１、ＢＬＫ２・・・に分割されている。各ブロックＢＬＫ０、ＢＬＫ１、ＢＬＫ２・・・のサイズは、クラスタのサイズに対応している。
【００１６】
このように、外部からの音楽データをＨＤＤ９１０に一定単位毎に転送する時に、データの転送順序を変えたり、オフセットを変えたりして並べ替えることによって、スクランブルをかけることができる。
【００１７】
例えば、ブロック毎の並べ替えのパラメータをａ３とし、このパラメータａ３を機器毎に固有の写像ｆ３で変換してｂ３とし、この変換されたパラメータｂ３をフラッシュＲＡＭ９０７に格納しておく。このようにすると、ＨＤＤ９１０中のディクスに記録されるデータのブロックは、パラメータａ３に応じて並べ替えられることになる。従って、記録時の機器と同じ機器でなければ、正しくデータを転送することができない。
【特許文献１】特開２００１−１１８３２８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１８】
しかしながら、このような従来のファイル管理システム及びファイル管理方法等では、著作権管理等のコピー管理を行うために、管理対象のファイルとは別に、改ざん検出のためのデータを含むファイルを別途作成し、アプリケーションがこれらのデータの整合性を管理しながら動作していた。
【００１９】
そのために、アプリケーションの処理シーケンスが複雑になり、アプリケーションの開発工数が大きくなると共に、それぞれのアプリケーション毎に、著作権管理のための処理シーケンスを用意しなければならなかった。
【００２０】
また、管理対象のファイルとこのファイルに対応する改ざん検出用データファイルが、ファイルシステム上で別ファイルとして管理されているため、ファイルアクセス中に電源がオフされたような異常動作発生時に、管理対象のファイルとこのファイルに対応する改ざん検出用データファイルとの整合性が崩れてしまい、正常なデータを改ざんされていると判断したり、改ざんされているデータを正常なデータと判断したりしてしまうことがあった。
【００２１】
さらにまた、上記の例のような従来のファイル管理システム及びファイル管理方法等では、ファイル内のデータを保護するため、データ配置順序の並べ替えを行っているので、個々のブロック内ではデータの内容がそのまま保持され、ディスクヘッドのシークが増えて記録装置のアクセス速度が低下するという欠点が存在した。
【００２２】
本発明は、上記の問題を解決するためになされたもので、ボリュームの改ざんを確実に検出することができるファイル管理装置、ファイル管理方法、ファイル管理プログラム及びファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とするものである。
【課題を解決するための手段】
【００２３】
本発明に係るファイル管理装置は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備える。
【００２４】
この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。
【発明の効果】
【００２５】
本発明によれば、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【発明を実施するための最良の形態】
【００２６】
本発明の目的、特徴及び利点は、以下の詳細な説明と添付図面とによって、より明白となる。
【００２７】
以下、本発明の一実施の形態によるファイル管理装置ついて図面を参照しながら説明する。
【００２８】
図１は、本発明の一実施の形態であるファイル管理システム１００のハードウエア１７３とソフトウエア１７１との概略構成を示す図である。なお、図１では、ハードウエアとソフトウエアとを説明の便宜上、分けて記載しているが、図１に示すソフトウエア１７１は、ハードウエア１７３のＲＯＭ１９４に記憶されており、ＣＰＵ１９１がこれらのソフトウエア１７１を実行する。
【００２９】
ハードウエア１７３は、入出力部１９２とＣＰＵ（中央演算処理装置）１９１とＲＡＭ（ランダムアクセスメモリ）１９３とＲＯＭ（リードオンリメモリ）１９４とＨＤＤ（ハードディスクドライブ）１３０とフラッシュＲＡＭ１３２とその他図示しない幾つかの要素とから構成されている。なお、このハードウエア１７３は一般的に使用されているパーソナルコンピュータ（ＰＣ）と同様であるから、これ以上の詳細な説明は省略する。また、本発明は、パーソナルコンピュータだけでなく、ＣＤやＤＶＤ等の光ディスクに情報を記録及び／又は再生する情報記録再生装置（いわゆる、ＤＶＤレコーダー）や、携帯電話機などにも適用可能である。
【００３０】
ソフトウエア１７１は、ハードウエア１７３の各種構成要素を制御したりデータの入出力を行うための各種ドライバ１８３と、オペレーティングシステム（ＯＳ）１８１と、ファイルシステム１２０と、アプリケーション１２２と、その他図示しない幾つかのソフトウエア要素とから構成されている。
【００３１】
本実施の形態のファイル管理システム１００において特徴的であるのは、ファイルシステム１２０であって、各種ドライバ１８３とＯＳ１８１とアプリケーション１２２とは、一般的に使われているものと変わらないので、以後はファイルシステム１２０を中心に詳細な説明を行い、それ以外については最低必要限の説明に留める。また、アプリケーション１２２が一般的に使われているものと変わらないということは本発明の１つの特徴でもあるが、これについては別途説明する。
【００３２】
図２は、本発明に係るファイル管理システムの構成の一例を示す機能ブロック図である。図２に示すファイル管理システム１００は、ファイルシステム１２０、アプリケーション１２２、ＨＤＤ１３０及びフラッシュＲＡＭ１３２を備えて構成される。
【００３３】
ファイルシステム１２０は、図１に示すＣＰＵ１９１がファイルシステム１２０を実行することにより、入出力部２０１、制御部２０２、ボリューム管理部２０３、ファイルデータ入出力部２０４、著作権データ作成部２０５、著作権データ比較部２０６及び著作権データ入出力部２０７として機能する。
【００３４】
ＨＤＤ１３０は、ボリューム管理データ１５２、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイルデータ部１８０及びファイル著作権データテーブル１７０を記憶する。フラッシュＲＡＭ１３２は、ボリューム著作権データ１３４を記憶する。なお、ボリューム管理データ１５２、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイルデータ部１８０、ファイル著作権データテーブル１７０及びボリューム著作権データ１３４については後述する。
【００３５】
なお、本実施の形態におけるボリュームとは、ＨＤＤ１３０の記憶領域を表す論理ボリュームであるが、本発明は特にこれに限定されない。ボリュームは、ＨＤＤ１３０自体を表す物理ボリュームであってもよい。また、ＨＤＤ１３０は、ＨＤＤ１３０が複数のボリュームで構成される場合、各ボリューム毎のボリューム管理データを記憶してもよい。
【００３６】
入出力部２０１は、アプリケーション１２２から入力される種々の要求を制御部２０２へ出力し、制御部２０２から入力される応答をアプリケーション１２２へ出力する。制御部２０２は、ボリューム管理部２０３、著作権データ作成部２０５及び著作権データ比較部２０６に指示を出し、ファイルシステム全体を制御する。
【００３７】
ボリューム管理部２０３は、ファイルシステムに関連し、ＨＤＤ１３０に記憶されるボリューム管理データ１５２、ファイル配置データ１５４、ファイル属性データテーブル１６０及びファイルデータ部１８０を管理する。ファイルデータ入出力部２０４は、ボリューム管理部２０３からの指示により、ＨＤＤ１３０に対して各種データの読み書きを行う。
【００３８】
著作権データ作成部２０５は、制御部２０２からの指示と、ボリューム管理部２０３から受け取ったファイルのデータに基づいて、ボリューム著作権データ１３４及びファイル著作権データテーブル１７０を作成する。
【００３９】
著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたボリューム著作権データ１３４をフラッシュＲＡＭ１３２に書き込み、フラッシュＲＡＭ１３２に記憶されているボリューム著作権データ１３４を読み出す。また、著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたファイル著作権データテーブル１７０をＨＤＤ１３０に書き込み、ＨＤＤ１３０に記憶されているファイル著作権データテーブル１７０を読み出す。
【００４０】
著作権データ比較部２０６は、ボリューム管理部２０３から受け取ったボリューム管理データ１５２と、著作権データ入出力部２０７から受け取ったボリューム著作権データ１３４とを比較し、改ざんされていないかを検査する。また、著作権データ比較部２０６は、ボリューム管理部２０３から受け取ったファイルデータと、著作権データ入出力部２０７から受け取ったファイル著作権データとを比較し、改ざんされていないかを検査する。
【００４１】
なお、本実施の形態において、ファイル管理システム１００がファイル管理装置の一例に相当し、ＨＤＤ１３０が第１の記憶手段の一例に相当し、著作権データ作成部２０５がデータ作成手段の一例に相当し、フラッシュＲＡＭ１３２が第２の記憶手段の一例に相当し、著作権データ比較部２０６がデータ比較手段の一例に相当し、制御部２０２がマウント手段及びオープン手段の一例に相当し、ボリューム著作権データ１３４がボリューム改ざん検出データの一例に相当し、ファイル著作権データがファイル改ざん検出データの一例に相当する。
【００４２】
次に、ファイル管理システム１００におけるファイル構成について説明する。図３は、本発明の一実施の形態であるファイル管理システム１００におけるファイル構成の一例を示す図である。このファイル構成は、ファイルシステム１２０によって作成・管理・制御・更新・削除されるファイル構成でもある。
【００４３】
ファイルシステム１２０は、アプリケーション１２２から呼び出されることによって起動され、その処理を開始する。例えば、アプリケーション１２２が、ＨＤＤ１３０内に１つの新しいファイルＡを作成するために、ファイルシステム１２０を呼び出して起動したケースを例として取り上げ、ファイル管理システム１００とファイルシステム１２０とについて説明する。
【００４４】
１つの新しいファイルＡをＨＤＤ１３０内に作成するためにファイルシステム１２０が起動されると、ファイルシステム１２０はまず、ＨＤＤ１３０内のボリューム管理データ１５２を参照することによって、このＨＤＤ１３０全体のファイルシステムの状態を取得する。
【００４５】
特に、その時必要となるのは、ＨＤＤ１３０全体のファイルシステムのファイル配置状態を示すファイル配置データ１５４と、ＨＤＤ１３０全体のファイルの著作権情報を管理しているボリューム著作権データ１３４とである。ボリューム著作権データ１３４は、ＨＤＤ１３０以外の記録メディアである例えばフラッシュＲＡＭ１３２に記憶されている。
【００４６】
フラッシュＲＡＭ１３２を使用するのは、電源がオフになっても記憶内容を保持することが可能な不揮発性メモリだからである。また、ＨＤＤ１３０以外の記録メディアを使用するのは、ＨＤＤ１３０が改ざんされたり、何等かの損傷や故障等が生じても、管理状態を維持するためである。
【００４７】
なお、ボリューム著作権データ１３４を記憶する記録媒体としてＨＤＤ１３０以外のフラッシュＲＡＭ１３２を使用するのはあくまでも一例であって、他の半導体メモリや磁気メモリや光学的なメモリやこれらの組み合わせによって情報を記憶するものであっても構わない。
【００４８】
ボリューム著作権データ１３４は、ＨＤＤ１３０のボリューム全体に記憶されている全データの著作権管理情報であって、例えばＨＤＤ１３０のボリューム全体に記憶されている各ファイルの中の最も厳しい著作権情報を代表として使用して著作権管理を行ってもよい。また、例えばＨＤＤ１３０のボリューム全体に記憶されている各ファイルの中の最も緩い著作権情報を代表として使用して著作権管理を行ってもよい。さらに、このように１つの著作権情報を代表として使用して著作権管理を行うのではなく、ファイル群を何等かの方法でグループ分けしてグループ単位で著作権管理を行っても構わない。さらにまた、個々のファイル単位で著作権管理を行っても構わないし、これらの著作権管理方法を組み合わせてＨＤＤ１３０のボリューム全体の著作権管理を行っても構わない。
【００４９】
著作権管理モジュール１２４は、このようなボリューム著作権データ１３４の管理を行う。しかしながらこれもあくまでも一例であって、必ずしも著作権管理モジュール１２４が行うことは必須の条件ではなく、ファイルシステム１２０自身や、ファイルシステム１２０の一部や、ファイルシステム１２０以外の何等かのソフトウエアが行っても構わない。或いは又、他の実施の形態では、必ずしもこのようなボリューム著作権データ１３４が存在しないようなファイル管理システム１００であっても構わない。
【００５０】
本実施の形態では、あくまで１つの例として、著作権管理モジュール１２４がフラッシュＲＡＭ１３２に記憶されたボリューム著作権データ１３４を使って、ＨＤＤ１３０全体の著作権管理を行うと仮定して説明する。
【００５１】
ここで、ファイルを作成する際のファイル作成処理について説明する。図４は、ファイルを作成する際に行われるファイル作成処理について説明するためのフローチャートである。なお、図４に示すファイル作成処理は、図２に示すファイル管理システム１００によって実行される処理である。また、図５は、ファイル管理データの構成の一例を示す図である。
【００５２】
まず、アプリケーション１２２から新たなファイルを作成する要求があると、ステップＳ１０１において、ファイルデータ入出力部２０４は、ファイル配置データ１５４を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル配置データ１５４を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、新規作成するファイルのファイル番号を決定する。
【００５３】
ファイル配置データ１５４は、このＨＤＤ１３０ボリューム全体に記憶されている各ファイルの配置データを記憶管理するもので、その一例を例えば図５に示す。図５に示す例では、ファイル配置データ１５４にはファイル番号「３」とファイル番号「５」とファイル番号「１９」との３つのファイルが登録されており、この３つのファイルがＨＤＤ１３０のボリューム全体に記憶されていることを示している。勿論これはあくまでも一例であって、より多くのファイルが記憶されていても構わない。
【００５４】
各ファイル番号は各ファイルを識別し、特定するためのＩＤに相当する。各ファイルを識別し、特定するためのＩＤも、必ずしもこのようなファイル番号である必要はなく、例えばファイルが存在するディレクトリのフルパスとファイル名であったり、その略号や略称を使ったり、その一部だけを使ったり、これらを組み合わせて使うことも可能である。しかしながら本実施の形態では説明の便宜のため、１つの例として、各ファイル番号を各ファイルを識別し、特定するためのＩＤに相当するものと仮定して説明する。
【００５５】
ファイル番号「３」とファイル番号「５」とファイル番号「１９」との３つのファイルには、それぞれ管理データ番号が対応付けて記憶されている。図５に示す例では、ファイル番号「３」に対応付けられているファイルの管理データ番号は「１０」であり、ファイル番号「５」に対応付けられているファイルの管理データ番号は「２０」であり、ファイル番号「１９」に対応付けられているファイルの管理データ番号は「２３」である。
【００５６】
例えば、ファイル番号「３」とファイル番号「５」とで特定されるファイルが既に存在していたところに、新しくファイルＡを作成するためにファイルシステム１２０が起動されたと仮定する。このようにしてファイルシステム１２０が起動されると、ファイルシステム１２０は、ファイルＡを新しく作成するためにファイル番号「１９」を作成し、ファイル配置データ１５４に登録する。図５はその時のファイル配置データ１５４を示すものである。
【００５７】
ファイルシステム１２０は、ファイル配置データ１５４に、新しく作成するファイルＡのためのファイル番号「１９」を登録すると、次にこのファイル番号「１９」に対応する管理データ番号「２３」を割り当て、ファイル属性データＡ（１６２）をファイル属性データテーブル１６０に作成する。
【００５８】
図４に戻って、ステップＳ１０２において、ファイルデータ入出力部２０４は、ファイル属性データテーブル１６０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル属性データテーブル１６０を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、ファイル属性データテーブル１６０に新たな管理データ番号を割り当て、新規作成するファイルのファイル属性データを書き込む位置を決定する。
【００５９】
このファイル属性データＡ（１６２）は、新しく作成するファイルＡに関する各種属性データを含むデータである。図５に示す例では、例えばファイル属性データＡ（１６２）は、管理データ番号「２３」と、著作権データ番号「３０１」と、ファイルデータ番号「７０９１」と、管理用データ「ＹＸＯＬ・・」とを含んでいる。勿論これも、あくまでも一例であって、より多くの情報が含まれていても構わないし、一部の情報を含んでいなくても構わない。また、このような情報の内容もあくまでも仮の一例である。
【００６０】
著作権データ番号「３０１」は、この新しく作成するファイルＡのためのファイル著作権データＡ（１６４）を、ファイル著作権データテーブル１７０で記憶管理するための管理番号である。
【００６１】
図４に戻って、ステップＳ１０３において、ファイルデータ入出力部２０４は、ファイルデータ部１８０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイルデータ部１８０を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、ファイルデータ部１８０に新規にファイルデータ番号を割り当て、新規作成するファイルデータを書き込む位置を決定する。なお、書き込むファイルデータが存在する場合は、ここで書き込んでもよい。
【００６２】
ファイルデータ番号「７０９１」は、この新しく作成するファイルＡのための実際のファイルデータＡ（１６３）を、ファイルデータ部１８０で記憶管理するための管理番号である。図５に示すように、この新しく作成するファイルＡのためのファイルデータ番号は、ファイル属性データテーブル１６０の、管理データ番号「２３」の所に記憶・管理されている「７０９１」であり、この新しく作成するファイルＡのための実際のファイルデータＡ（１６３）は、ファイルデータ部１８０の、ファイルデータ番号「７０９１」の所に記憶・管理されている。
【００６３】
図５に示す例では、この新しく作成するファイルＡのための実際のファイルデータＡ（１６３）の内容は特に何等かに特定せず、単に「・・・・・・・・・・・・・」で示している。この実際のファイルデータＡ（１６３）が、アプリケーション１２２によって、実際に読み書きされるデータである。
【００６４】
図４に戻って、ステップＳ１０４において、著作権データ入出力部２０７は、ファイル著作権データテーブル１７０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル著作権データテーブル１７０を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、新規作成するファイルの著作権データを書き込むため、ファイル著作権データテーブル１７０に著作権データ番号を割り当てる。そして、著作権データ作成部２０５は、ファイル著作権データを作成し、作成したファイル著作権データを著作権データ番号に対応付けてファイル著作権データテーブル１７０に記憶する。著作権データ作成部２０５は、作成したファイル著作権データテーブル１７０を著作権データ入出力部２０７へ出力する。このとき、著作権データ作成部２０５は、ファイルデータに基づいたチェックデータを作成し、作成したチェックデータを含むファイル著作権データを作成する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたファイル著作権データテーブル１７０をＨＤＤ１３０に書き込む。
【００６５】
図５に示すように、この新しく作成するファイルＡのための著作権データ番号は、ファイル属性データテーブル１６０の、管理データ番号「２３」の所に記憶・管理されている「３０１」であり、この新しく作成するファイルＡのためのファイル著作権データＡ（１６４）は、ファイル著作権データテーブル１７０の、著作権データ番号「３０１」の所に記憶・管理されている「ＹＴ９ＫＬＺ・・」である。
【００６６】
このファイル著作権データＡ（１６４）は、上記ボリューム著作権データ１３４がＨＤＤ１３０のボリューム全体の著作権を管理するための情報であったのに対して、各ファイル単位で著作権を管理するための情報である。
【００６７】
このファイル著作権データＡ（１６４）は、通常改ざんされることを防止するため、暗号化されていたり、電子署名が行われていたり、電子透かしが付加されていたり、その他の各種処理が行われていることがあるが、必ずしもこのような処理に限るものではなく、他の各種処理が行われていても構わないし、何等特別な処理が行われていなくても構わない。
【００６８】
また、このファイル著作権データＡ（１６４）が表す著作権管理の内容は、例えば、ファイルＡに対するコピー制御情報である、コピーワンス（１回だけコピー可能）、コピーネバー（コピー一切不可）、コピーフリー（自由にコピー可能）、その他である。
【００６９】
あるいはまた、他の例では、このファイル著作権データＡ（１６４）が表す著作権管理の内容は、ファイルＡ全体の改ざんを禁止し検出するためのチェックデータであったり、暗号化や電子透かしのための鍵である。
【００７０】
このような情報をファイル著作権データＡ（１６４）として記憶することによって、ファイルＡのデータの一部でも改ざんが行われることを阻止すると共に、仮に改ざんが行われた時にもそれを検出することが可能である。しかしながらこれもあくまでも一例であって、他の種々の著作権管理の内容を表していても構わない。
【００７１】
このように、本発明ではデータの内容を暗号化し、その暗号鍵をファイル内で管理しているため、ファイルシステムの一部に対する不正なアクセスをも有効に防止することができ、ファイル管理システムがＤＶＤレコーダーに適用される場合、ディスクヘッドのシークが増えてアクセス速度が低下することもない。
【００７２】
図４に戻って、ステップＳ１０５において、著作権データ作成部２０５は、ステップＳ１０２で決定されたファイル属性データテーブル１６０の書き込み位置に、ステップＳ１０３で割り当てられたファイルデータ番号、ステップＳ１０４で割り当てられた著作権データ番号、及び管理用データを書き込む。
【００７３】
ファイル属性データテーブル１６０の管理用データは、例えばその新しく作成するファイルＡの作成者、管理者、所有者、作成年月日、作成時刻、容量、保存期限、チェックデータ、暗号化に関する各種情報、その他各種管理のための情報を含んでいる。
【００７４】
上記の実施の形態の一例ではファイル著作権データＡ（１６４）に、コピー制御のための各種情報や、改ざん検出のための情報を記憶するように説明したが、他の実施の形態ではこのファイル属性データテーブル１６０の管理用データに、これらコピー制御のための各種情報や、改ざん検出のための情報を記憶しても構わない。
【００７５】
この実施の形態の例では、このファイル属性データテーブル１６０の管理用データに、例えばファイルＡに対するコピー制御情報である、コピーワンス（１回だけコピー可能）、コピーネバー（コピー一切不可）、コピーフリー（自由にコピー可能）、その他や、或いは又、他の例では、ファイルＡ全体の改ざんを禁止し検出するためのチェックデータであったり、暗号化や電子透かしのための鍵や、これらの両方が記憶されることもある。
【００７６】
このような情報をファイル属性データテーブル１６０の管理用データとして記憶することによって、ファイルＡのデータの一部でも改ざんが行われることを阻止すると共に、仮に改ざんが行われた時にもそれを検出することが可能である。しかしながらこれもあくまでも一例であって、これらの情報と共に、或いはこれらの情報とは別に、他の種々の情報を記憶していても構わない。
【００７７】
次に、ステップＳ１０６において、著作権データ作成部２０５は、ステップＳ１０１で決定されたファイル配置データ１５４のファイル番号に、ステップＳ１０２で割り当てられた管理データ番号を対応付ける。
【００７８】
図５に示すように、ファイルシステム１２０は、ファイル番号「１９」に管理データ番号「２３」を対応付けてファイル配置データ１５４に登録する。このファイル番号「１９」と管理データ番号「２３」とは勿論あくまでも１つの仮想的な例であるが、通常は、それまでに使われていなかった、いわゆる空き番号が割り当てられて使用される。
【００７９】
図４に戻って、ステップＳ１０７において、ファイルデータ入出力部２０４は、ボリューム管理データ１５２を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたボリューム管理データ１５２を更新し、ファイルデータ入出力部２０４及び著作権データ作成部２０５へ出力する。ファイルデータ入出力部２０４は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２をＨＤＤ１３０に書き込む。
【００８０】
次に、ステップＳ１０８において、著作権データ作成部２０５は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２に基づいてボリューム著作権データ１３４を作成し、著作権データ入出力部２０７へ出力する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたボリューム著作権データ１３４をフラッシュＲＡＭ１３２に書き込み、処理を終了する。
【００８１】
以上の説明では、新しく作成するファイルＡについて説明したが、このファイルＡが一旦作成された後参照され、更新される時には、以上の説明と同様に、アプリケーション１２２から呼び出されることによってファイルシステム１２０が起動され、参照や更新の処理を開始する。
【００８２】
この処理の最初では、ファイルシステム１２０はボリューム管理データ１５２を参照して、ボリューム著作権データ１３４とファイル配置データ１５４とを取り出す。著作権管理モジュール１２４は、例えばボリューム著作権データ１３４を参照することによってボリューム全体の著作権管理を行う。これについては既に上記した通りであるから、詳細な説明は省略する。
【００８３】
一方、ファイルシステム１２０はファイル配置データ１５４、ファイル属性データテーブル１６０、ファイル著作権データテーブル１７０を参照することによって、ファイルＡの管理を行い、ファイルＡの参照や更新を許可或いは禁止する。同時に必要に応じてファイルシステム１２０は、ファイル配置データ１５４、ファイル属性データテーブル１６０及びファイル著作権データテーブル１７０の更新を実行する。
【００８４】
また、ファイルシステム１２０は、ファイル配置データ１５４、ファイル属性データテーブル１６０及びファイルデータ部１８０を参照或いは更新することによって、アプリケーション１２２から要求されたファイルＡの参照や更新を実行する。
【００８５】
同時に、必要に応じてファイルシステム１２０はファイル配置データ１５４、ファイル属性データテーブル１６０及びファイル著作権データテーブル１７０の更新を行うこともある。例えば、ファイル著作権データＡ（１６４）が、コピーワンス等のコピー制御情報を記憶している時には、ファイルシステム１２０はこのファイル著作権データＡ（１６４）の内容を参照することによって、コピー制御を実行する。
【００８６】
あるいは、ファイル著作権データＡ（１６４）が、ファイルデータＡ（１６３）のチェックデータや暗号鍵や電子透かしに関する情報等を記憶している時には、ファイルシステム１２０はこのファイル著作権データＡ（１６４）の内容を参照することによって、ファイルデータＡ（１６３）に対して、その一部についても改ざんが行われていないか確認検証を行うことができる。
【００８７】
これらは例えば、ファイル属性データテーブル１６０の管理用データに、コピーワンス等のコピー制御情報を記憶している時には、ファイルシステム１２０はこのファイル属性データテーブル１６０の管理用データの内容を参照することによって、コピー制御を実行することができる。あるいは、ファイル属性データテーブル１６０の管理用データが、ファイルデータＡ（１６３）のチェックデータや暗号鍵や電子透かしに関する情報等を記憶している時には、ファイルシステム１２０はこのファイル属性データテーブル１６０の管理用データの内容を参照することによって、ファイルデータＡ（１６３）に対して、その一部についても改ざんが行われていないか確認検証を行うことができる。
【００８８】
上記のように、ファイルシステム１２０が、ボリューム著作権データ１３４による著作権管理と、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイル著作権データテーブル１７０及びファイルデータ部１８０に記憶されているファイル番号、管理データ番号、著作権データ番号、ファイルデータ番号、管理用データ、ファイル著作権データ及びファイルデータとを全て確認してその整合性を検証した後に、ＨＤＤ１３０のボリュームをマウントしたり、ファイルデータをオープンする等の処理を行う実施の形態も可能である。
【００８９】
次に、ボリュームをマウントする際の改ざん検出処理について説明する。図６は、ボリュームをマウントする際に行われる改ざん検出処理について説明するためのフローチャートである。なお、図６に示すボリュームの改ざん検出処理は、図２に示すファイル管理システム１００によって実行される処理である。
【００９０】
まず、アプリケーション１２２からＨＤＤ１３０へのアクセス要求があると、ステップＳ２０１において、著作権データ比較部２０６は、ボリューム管理データ１５２を取得する。すなわち、制御部２０２は、入出力部２０１を介してアプリケーション１２２からマウント要求が入力されると、ボリューム管理部２０３にボリューム管理データ１５２を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ボリューム管理データ１５２を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からボリューム管理データ１５２を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたボリューム管理データ１５２を著作権データ比較部２０６へ出力する。
【００９１】
次に、ステップＳ２０２において、著作権データ比較部２０６は、ボリューム著作権データ１３４を取得する。すなわち、制御部２０２は、入出力部２０１を介してアプリケーション１２２からマウント要求が入力されると、ボリューム管理部２０３にボリューム管理データ１５２を取得するよう指示すると同時に、著作権データ比較部２０６にボリューム著作権データ１３４を取得するよう指示する。著作権データ比較部２０６は、著作権データ入出力部２０７に対し、ボリューム著作権データ１３４を読み出すよう指示する。著作権データ入出力部２０７は、フラッシュＲＡＭ１３２に記憶されているボリューム著作権データ１３４を読み出し、著作権データ比較部２０６へ出力する。
【００９２】
次に、ステップＳ２０３において、著作権データ比較部２０６は、ボリューム管理部２０３から入力されたボリューム管理データ１５２と、著作権データ入出力部２０７から入力されたボリューム著作権データ１３４とを比較し、ボリュームの改ざんの有無を判断する。
【００９３】
改ざんされていないと判断された場合（ステップＳ２０３でＮＯ）、ステップＳ２０４において、著作権データ比較部２０６は、ボリュームが改ざんされていないことを制御部２０２へ伝え、制御部２０２は、マウント処理が正常に行われたとしてボリュームの改ざん検出処理を終了する。
【００９４】
一方、改ざんされていると判断された場合（ステップＳ２０３でＹＥＳ）、ステップＳ２０５において、著作権データ比較部２０６は、ボリュームが改ざんされていることを制御部２０２へ伝え、制御部２０２は、マウント処理が正常に行われず、失敗したとしてボリュームの改ざん検出処理を終了する。この場合、制御部２０２は、アプリケーション１２２へマウント処理が失敗したことを通知する。
【００９５】
次に、ファイルをオープンする際の改ざん検出処理について説明する。図７は、ファイルをオープンする際に行われる改ざん検出処理について説明するためのフローチャートである。なお、図７に示すファイルの改ざん検出処理は、図２に示すファイル管理システム１００によって実行される処理である。
【００９６】
まず、アプリケーション１２２からファイルをオープンする要求があると、ステップＳ３０１において、著作権データ比較部２０６は、ファイル配置データ１５４を取得する。すなわち、制御部２０２は、入出力部２０１を介してアプリケーション１２２からファイルオープン要求が入力されると、ボリューム管理部２０３にファイル配置データ１５４を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ファイル配置データ１５４を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からファイル配置データ１５４を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル配置データ１５４を著作権データ比較部２０６へ出力する。なお、アプリケーション１２２は、オープンするファイルのファイル番号を指定する。著作権データ比較部２０６は、ボリューム管理部２０３から入力されたファイル配置データ１５４の中からファイル番号に対応する管理データ番号を取得する。
【００９７】
次に、ステップＳ３０２において、著作権データ比較部２０６は、ファイル属性データテーブル１６０を取得する。すなわち、制御部２０２は、ボリューム管理部２０３にファイル属性データテーブル１６０を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ファイル属性データテーブル１６０を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からファイル属性データテーブル１６０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイル属性データテーブル１６０を著作権データ比較部２０６へ出力する。著作権データ比較部２０６は、ボリューム管理部２０３から入力されたファイル属性データテーブル１６０の中から、ステップＳ３０１で取得した管理データ番号に対応する著作権データ番号、ファイルデータ番号及び管理用データを取得する。
【００９８】
次に、ステップＳ３０３において、著作権データ比較部２０６は、ファイルデータ部１８０を取得する。すなわち、制御部２０２は、ボリューム管理部２０３にファイルデータ部１８０を取得するよう指示する。ボリューム管理部２０３は、ファイルデータ入出力部２０４に対し、ファイルデータ部１８０を読み出すよう指示する。ファイルデータ入出力部２０４は、ＨＤＤ１３０からファイルデータ部１８０を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたファイルデータ部１８０を著作権データ比較部２０６へ出力する。著作権データ比較部２０６は、ボリューム管理部２０３から入力されたファイルデータ部１８０の中から、ステップＳ３０２で取得したファイルデータ番号に対応するファイルデータを取得する。
【００９９】
次に、ステップＳ３０４において、著作権データ比較部２０６は、ファイル著作権データテーブル１７０を取得する。すなわち、制御部２０２は、著作権データ比較部２０６にファイル著作権データテーブル１７０を取得するよう指示する。著作権データ比較部２０６は、著作権データ入出力部２０７に対し、ファイル著作権データテーブル１７０を読み出すよう指示する。著作権データ入出力部２０７は、ＨＤＤ１３０からファイル著作権データテーブル１７０を読み出し、著作権データ比較部２０６へ出力する。
【０１００】
次に、ステップＳ３０５において、著作権データ比較部２０６は、ステップＳ３０３で取得したファイルデータと、ステップＳ３０４で取得したファイル著作権データテーブル１７０のファイル著作権データに含まれるチェックデータとを比較し、ファイルの改ざんの有無を判断する。
【０１０１】
改ざんされていないと判断された場合（ステップＳ３０５でＮＯ）、ステップＳ３０６において、著作権データ比較部２０６は、ファイルが改ざんされていないことを制御部２０２へ伝え、制御部２０２は、ファイルオープン処理が正常に行われたとしてファイルの改ざん検出処理を終了する。
【０１０２】
一方、改ざんされていると判断された場合（ステップＳ３０５でＹＥＳ）、ステップＳ３０７において、著作権データ比較部２０６は、ファイルが改ざんされていることを制御部２０２へ伝え、制御部２０２は、ファイルオープン処理が正常に行われず、失敗したとしてファイルの改ざん検出処理を終了する。この場合、制御部２０２は、アプリケーション１２２へファイルオープン処理が失敗したことを通知する。
【０１０３】
次に、このファイルシステム１２０が、ファイル配置データ１５４、ファイル属性データテーブル１６０、ファイル著作権データテーブル１７０、ファイルデータ部１８０の更新を行う時の処理を、図８及び図９を使って詳細に説明する。図８は、本発明の一実施の形態であるファイル管理システム１００におけるファイルの更新を説明するための図である。
【０１０４】
図８に示す例では、ファイルＡのファイル著作権データＡは、「ＹＴ９ＫＬＺ・・」から「６ＴＢ８９Ｆ・・」に変更され、これに伴って著作権データ番号は「３０１」から「１２４」に変更され、ファイルデータ番号は「７０９１」から「２５６０」に変更される。
【０１０５】
実際のファイルデータＡは、単に「・・・・・・・・・・・・・」で示しているため、具体的な内容は解らないが、アプリケーション１２２の要求に応じて、アプリケーション１２２が必要とする何等かの変更が行われている。管理用データも「ＹＸＯＬ・・」から「７ＧＳ５・・」に変更され、以上の変更に伴って管理データ番号は「２３」から「３４」に変更されている。
【０１０６】
このような変更は種々の原因の発生によって行われる。例えば、管理用データ「ＹＸＯＬ・・」が何等かの原因、例えば保存期限が変更されたことや、暗号化に関する各種情報、例えばセキュリティ向上のために一定期間が経過すると暗号鍵や復号鍵や電子透かしの情報を変更するケース等で行われることがある。
【０１０７】
あるいは、ファイルデータＡ自身の内容が、アプリケーション１２２からの要求によって変更されることによって、チェックデータが変わったことに起因しても発生することがある。
【０１０８】
また、ファイル著作権データＡが何等かの原因、例えば以前はコピーワンス（１回だけコピー可）であったが、１回コピーが行われたためにコピーネバー（コピー一切不可）になったようなケースでも変更が発生することがある。しかしながらこれもあくまでも一例であって、他の種々の原因でもこれらの変更は発生することがあるし、実施の形態によっては発生しないこともある。
【０１０９】
また、図８に示す例では、ファイルデータ番号、ファイル著作権データＡ（１６４）、著作権データ番号、管理データ番号の全てが変更されたと仮定しているが、これもあくまでも一例であって、必ずしもこの例のようにこれら全てが変更されることは必須ではなく、この一部だけが変更される実施の形態もある。
【０１１０】
それぞれの説明については本質的には何等変わらないので、図８の例のようにファイルデータ番号、ファイル著作権データＡ（１６４）、著作権データ番号、管理データ番号の全てが変更されたと仮定して説明する。
【０１１１】
図９は、ファイルを更新する際のファイル更新処理について説明するためのフローチャートである。なお、図９に示すファイル更新処理は、図２に示すファイル管理システム１００によって実行される処理である。
【０１１２】
まず、入出力部２０１は、アプリケーション１２２からのファイルデータの更新要求を制御部２０２へ出力する。制御部２０２は、ボリューム管理部２０３に対してファイルデータの更新を指示し、更新すべきファイルデータをボリューム管理部２０３及び著作権データ作成部２０５へ出力する。ステップＳ４０１において、ボリューム管理部２０３は、ファイルデータ入出力部２０４を介してファイルデータ部１８０を読み出し、現在記憶されているファイルデータ番号とは異なるファイルデータ番号を割り当て、ファイルデータを書き込む位置を決定する。このとき、ファイルデータが書き込まれる位置は、更新前のファイルデータとは異なる位置である。ボリューム管理部２０３は、決定したファイルデータ番号に対応する位置にファイルデータを書き込む。
【０１１３】
図８に示すように、ファイルデータＡ（１６３）の全部或いは一部が新しいファイルデータＡ（説明の便宜のため同じ記号で示す）に変更されたと仮定すると、新しいファイルデータＡは、ファイルデータ部１８０の例えば従来空き領域であった箇所に記録され、そのファイルデータ番号は例えば「２５６０」のように設定される。
【０１１４】
あるいは、例えばファイルデータ番号「２５６０」の領域が空き領域であったため、その空き領域を検出して新しいファイルデータＡを記録する実施の形態であっても構わない。実質的には何等変わらない。
【０１１５】
図９に戻って、ステップＳ４０２において、ボリューム管理部２０３は、著作権データ入出力部２０７を介してファイル著作権データテーブル１７０を読み出し、現在記憶されている著作権データ番号とは異なる著作権データ番号を割り当て、ファイル著作権データを書き込む位置を決定する。このとき、ファイル著作権データが書き込まれる位置は、更新前のファイル著作権データとは異なる位置である。そして、著作権データ作成部２０５は、ファイルデータに基づいたチェックデータを作成し、作成したチェックデータを含むファイル著作権データを作成する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたファイル著作権データテーブル１７０をＨＤＤ１３０に書き込む。
【０１１６】
図８に示すように、ファイル著作権データＡ（１６４）が、「ＹＴ９ＫＬＺ・・」から「６ＴＢ８９Ｆ・・」に変更されたと仮定する。このような変更が発生する原因と、その意味する内容については既に上記の通りである。
【０１１７】
この時には、ファイル著作権データテーブル１７０の空き領域を検出し、その領域のファイル著作権データとして「６ＴＢ８９Ｆ・・」が記録され、その領域の著作権データ番号として例えば「１２４」が設定される。
【０１１８】
あるいは、ファイル著作権データテーブル１７０の著作権データ番号が「１２４」の領域が空き領域であることを検出し、その領域のファイル著作権データとして「６ＴＢ８９Ｆ・・」が記録される実施の形態であっても構わない。
【０１１９】
図９に戻って、ステップＳ４０３において、ボリューム管理部２０３は、ファイルデータ入出力部２０４を介してファイル属性データテーブル１６０を読み出し、現在記憶されている管理データ番号とは異なる管理データ番号を割り当て、ファイル属性データを書き込む位置を決定する。そして、ボリューム管理部２０３は、ステップＳ４０１で決定したファイルデータ番号と、ステップＳ４０２で決定した著作権データ番号と、管理用データとをファイル属性データテーブル１６０に書き込む。
【０１２０】
図８に示すように、このファイルデータ番号「２５６０」は、ファイル属性データテーブル１６０の空き領域のファイルデータ番号の欄に記録され、その管理データ番号が例えば「３４」のように設定される。
【０１２１】
あるいは、ファイル属性データテーブル１６０の管理データ番号が「３４」の領域が空き領域であることを検出し、その領域のファイルデータ番号に上記「２５６０」を記録する実施の形態であっても構わない。
【０１２２】
そしてこの著作権データ番号「１２４」が、上記ファイル属性データテーブル１６０の、新しいファイルデータＡのために設定された管理データ番号「３４」の著作権データ番号の欄に記録される。
【０１２３】
また、管理用データも「ＹＸＯＬ・・」から「７ＧＳ５・・」に変更され、ファイル属性データテーブル１６０の新しいファイルデータＡのための領域である管理データ番号「３４」の管理データの欄に記録される。このような変更が発生する原因と、その意味する内容についても既に上記の通りである。
【０１２４】
このようにして、新しいファイルデータＡのための新しいファイルデータＡ（１６３）自身と、新しいファイルデータ番号「２５６０」と、ファイル著作権データＡ「６ＴＢ８９Ｆ・・」（１６４）と、著作権データ番号「１２４」と、管理用データ「７ＧＳ５・・」と、管理データ番号「３４」との全てが、ファイルデータ部１８０とファイル著作権データテーブル１７０とファイル属性データテーブル１６０とに作成される。
【０１２５】
しかしながら、この段階では元のファイルデータＡのための、管理データ番号「２３」と、ファイルデータ番号「７０９１」と、著作権データ番号「３０１」と、ファイル著作権データＡ「ＹＴ９ＫＬＺ・・」（１６４）と、ファイルデータＡ（１６３）自身と、管理用データ「ＹＸＯＬ・・」とは、全て全く変更されることなく、そのまま保持されている。
【０１２６】
従って、この段階までのファイルデータＡの更新過程の途中で、仮に電源がオフされたり、その他各種の異常状態が発生したとしても、元のファイルデータＡのためのファイルシステム構成がそのまま維持され、何等ファイルシステムに不整合が発生することはない。
【０１２７】
図９に戻って、ステップＳ４０４において、ボリューム管理部２０３は、ファイルデータ入出力部２０４を介してファイル配置データ１５４を読み出し、更新するファイルデータのファイル番号に対応する管理データ番号を、ステップＳ４０３で決定した管理データ番号に書き換える。
【０１２８】
図８に示すように、新しいファイルデータＡのための新しいファイルデータＡ（１６３）自身、新しいファイルデータ番号「２５６０」、ファイル著作権データＡ「６ＴＢ８９Ｆ・・」（１６４）、著作権データ番号「１２４」、管理用データ「７ＧＳ５・・」、及び管理データ番号「３４」の全てが、ファイルデータ部１８０とファイル著作権データテーブル１７０とファイル属性データテーブル１６０とに作成された後に、新しいファイルデータＡのためのファイル配置データ１５４内のファイル番号「１９」に対応する管理データ番号が「２３」から「３４」に変更され、ファイルデータＡの内容が従来のものから新しいものに変更される。
【０１２９】
なお、本実施の形態では、ＨＤＤ１３０は、ファイル配置データ１５４を１つだけ記憶しているが、本発明は特にこれに限定されず、ＨＤＤ１３０は、ファイル配置データ１５４を２つ記憶してもよい。
【０１３０】
すなわち、ファイルデータを更新する場合、ボリューム管理部２０３は、２つのファイル配置データのうちの一方のファイル配置データに記憶されている更新前の管理データ番号を削除する。そして、ボリューム管理部２０３は、一方のファイル配置データに記憶されている管理データ番号を更新後の新たな管理データ番号に書き換える。次に、ボリューム管理部２０３は、他方のファイル配置データに記憶されている更新前の管理データ番号を削除する。そして、ボリューム管理部２０３は、他方のファイル配置データに記憶されている管理データ番号を更新後の新たな管理データ番号に書き換える。
【０１３１】
このように、ＨＤＤ１３０は、２つのファイル配置データを記憶し、ボリューム管理部２０３は、一方のファイル配置データの管理データ番号を書き換えた後、他方のファイル配置データの管理データ番号を書き換える。したがって、ファイル配置データの管理データ番号を書き換えている途中で、電源がオフされたとしても、２つのファイル配置データのうちのどちらか一方にはファイル番号に対応する管理データ番号が必ず記憶されており、ファイル番号に対応する管理データ番号が無くなるという不具合を解消することができる。
【０１３２】
図９に戻って、ステップＳ４０５において、ボリューム管理部２０３は、ファイルデータに記憶されている更新前のファイルデータ番号に対応するファイルデータを削除する。次に、ステップＳ４０６において、ボリューム管理部２０３は、ファイル著作権データテーブル１７０に記憶されている更新前の著作権データ番号に対応するファイル著作権データを削除する。次に、ステップＳ４０７において、ボリューム管理部２０３は、ファイル属性データテーブル１６０に記憶されている更新前の管理データ番号に対応するファイル属性データ（著作権データ番号、ファイルデータ番号及び管理用データ）を削除する。
【０１３３】
次に、ステップＳ４０８において、ファイルデータ入出力部２０４は、ボリューム管理データ１５２を読み出し、ボリューム管理部２０３へ出力する。ボリューム管理部２０３は、入力されたボリューム管理データ１５２を更新し、ファイルデータ入出力部２０４へ出力する。ファイルデータ入出力部２０４は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２をＨＤＤ１３０に書き込む。
【０１３４】
次に、ステップＳ４０９において、ボリューム管理部２０３は、更新したボリューム管理データ１５２を著作権データ作成部２０５へ出力する。著作権データ作成部２０５は、ボリューム管理部２０３によって更新されたボリューム管理データ１５２に基づいてボリューム著作権データ１３４を作成し、著作権データ入出力部２０７へ出力する。著作権データ入出力部２０７は、著作権データ作成部２０５によって作成されたボリューム著作権データ１３４をフラッシュＲＡＭ１３２に書き込み、処理を終了する。
【０１３５】
以上説明したように、このようなファイルシステム１２０が実行するファイルデータＡの更新処理によって、ファイルデータＡの更新処理過程の途中段階で、仮に電源がオフされたり、その他各種の異常状態が発生したとしても、元のファイルデータＡのためのファイルシステム構成がそのまま維持され、何等ファイルシステムに不整合が発生することはないことが示される。
【０１３６】
また、これらの処理は全てファイルシステム１２０が行うため、アプリケーション１２２は何等関与する必要がないことも示される。更に、ファイル著作権データＡ（１６４）或いはファイル属性データテーブル１６０の管理用データのどちらか一方或いは両方に改ざん検出のためのチェックデータや暗号鍵や電子透かしに関する情報が保持されている実施の形態では、ファイルデータＡ（１６３）の一部にでも不正な改ざんが行われたならばそれを検出することが可能であることも示される。
【０１３７】
これによって、アプリケーションの処理負荷が軽減されると共に、アプリケーション開発の工程も大きく短縮化されると同時に、ファイルシステムがファイルの更新処理を実行中に電源オフ等の異常事態が発生したケースでもファイルシステムの整合性を維持確保することが可能である。
【０１３８】
さらにまた、アプリケーションに依存しない、統一的な著作権管理やファイルの一部又は全部に対する改ざん管理を行うことも可能になる。
【０１３９】
なお、上述した具体的実施形態には以下の構成を有する発明が主に含まれている。
【０１４０】
本発明に係るファイル管理装置は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備える。
【０１４１】
この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。
【０１４２】
したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【０１４３】
また、上記のファイル管理装置において、前記第１の記憶手段は、前記ファイルを管理するためのファイル管理データをさらに記憶し、前記データ作成手段は、ファイルの書き込み時に、前記ファイル管理データの改ざんを検出するためのファイル改ざん検出データをさらに作成し、前記第２の記憶手段は、前記データ作成手段によって作成されたファイル改ざん検出データをさらに記憶し、前記データ比較手段は、前記ファイルのオープン時に、前記ファイル管理データを前記第１の記憶手段から読み出すと共に、前記ファイル改ざん検出データを前記第２の記憶手段から読み出し、読み出したファイル管理データとファイル改ざん検出データとをさらに比較し、前記ファイルデータ比較手段によって改ざんがないと判断された場合、前記ファイルをオープンするオープン手段とをさらに備えることが好ましい。
【０１４４】
この構成によれば、第１の記憶手段には、ファイルを管理するためのファイル管理データがさらに記憶されている。そして、データ作成手段によって、ファイルの書き込み時に、ファイル管理データの改ざんを検出するためのファイル改ざん検出データがさらに作成される。第２の記憶手段には、データ作成手段により作成されたファイル改ざん検出データがさらに記憶される。そして、データ比較手段によって、ファイルのオープン時に、ファイル管理データが第１の記憶手段から読み出されると共に、ファイル改ざん検出データが第２の記憶手段から読み出され、読み出されたファイル管理データとファイル改ざん検出データとがさらに比較される。ファイルデータ比較手段により改ざんがないと判断された場合、オープン手段によって、ファイルがオープンされる。
【０１４５】
したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているファイル改ざん検出データを用いてファイルが改ざんされたか否かの判断が行われるので、ボリューム内の個々のファイルに対する改ざんを確実に検出することができ、不正なファイルの改ざんを防止することができる。
【０１４６】
また、上記のファイル管理装置において、前記第１の記憶手段は、前記ファイル管理データを前記ファイル改ざん検出データに関連付けて記憶することが好ましい。
【０１４７】
この構成によれば、ファイル管理データがファイル改ざん検出データに関連付けて記憶されるので、ファイル管理データとファイル改ざん検出データとの比較を確実に行うことができる。
【０１４８】
また、上記のファイル管理装置において、前記第１の記憶手段は、前記ファイル改ざん検出データを特定可能なデータを含む前記ファイル管理データを記憶することが好ましい。
【０１４９】
この構成によれば、ファイル改ざん検出データを特定可能なデータを含むファイル管理データが記憶されているので、ファイル改ざん検出データを特定可能なデータを参照してファイル管理データに関連付けられているファイル改ざん検出データを特定することができる。
【０１５０】
また、上記のファイル管理装置において、前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更することが好ましい。
【０１５１】
この構成によれば、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される場合、データ作成手段によって、新しいファイル改ざん検出データが作成された後に、新しいファイル改ざん検出データが特定されるようにファイル改ざん検出データを特定可能なデータが変更される。
【０１５２】
したがって、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される間に、電源オフ等の異常動作が発生したとしても、新しいファイル改ざん検出データが作成された後に、ファイル改ざん検出データを特定可能なデータが変更されるので、更新前のファイル改ざん検出データと、更新前のファイル改ざん検出データを特定可能なデータとが残り、データの整合性を維持することができ、ファイルの改ざんの検出を正常に行うことができる。
【０１５３】
また、上記のファイル管理装置において、前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、第１の記憶手段は、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとを記憶し、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更し、前記第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータを削除することが好ましい。
【０１５４】
この構成によれば、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される場合、第１の記憶手段には、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとが記憶される。そして、データ作成手段によって、新しいファイル改ざん検出データが作成された後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータが変更され、第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータが削除される。
【０１５５】
したがって、ファイル改ざん検出データと、ファイル改ざん検出データを特定可能なデータとが更新される場合、ファイル改ざん検出データを特定可能なデータが変更されるまで、更新前のファイル改ざん検出データを特定可能なデータが記憶されているので、更新中に電源オフ等の異常動作が発生したとしても、データの整合性を維持することができ、ファイルの改ざんの検出を正常に行うことができる。
【０１５６】
また、上記のファイル管理装置において、前記データ作成手段は、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含む前記ボリューム改ざん検出データを作成することが好ましい。
【０１５７】
この構成によれば、データ作成手段によって、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含むボリューム改ざん検出データが作成される。したがって、このような情報を含むボリューム改ざん検出データとボリューム管理データとが比較されるので、ボリュームの改ざんを確実に検出することができる。
【０１５８】
また、上記のファイル管理装置において、前記データ作成手段は、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データを作成することが好ましい。
【０１５９】
この構成によれば、データ作成手段によって、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データが作成される。したがって、このような情報を含むファイル改ざん検出データとファイル管理データとが比較されるので、ファイルの改ざんを確実に検出することができる。
【０１６０】
本発明に係るファイル管理方法は、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成ステップと、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを第１の記憶手段に記憶する第１の記憶ステップと、前記データ作成ステップにおいて作成されたボリューム改ざん検出データを、前記第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶する第２の記憶ステップと、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較ステップと、前記データ比較ステップにおいて改ざんがないと判断された場合、前記ボリュームをマウントするマウントステップとを含む。
【０１６１】
この構成によれば、データ作成ステップにおいて、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。そして、第１の記憶ステップにおいて、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが第１の記憶手段に記憶される。また、第２の記憶ステップにおいて、データ作成ステップで作成されたボリューム改ざん検出データが、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶される。データ比較ステップにおいて、ボリュームのマウント時に、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較ステップで改ざんがないと判断された場合、マウントステップにおいて、ボリュームがマウントされる。
【０１６２】
したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【０１６３】
本発明に係るファイル管理プログラムは、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させる。
【０１６４】
この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。
【０１６５】
したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【０１６６】
本発明に係るファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体は、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させる。
【０１６７】
この構成によれば、第１の記憶手段には、ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データが記憶される。そして、データ作成手段によって、ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データが作成される。第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段には、データ作成手段により作成されたボリューム改ざん検出データが記憶される。そして、ボリュームのマウント時に、データ比較手段によって、ボリューム管理データが第１の記憶手段から読み出されると共に、ボリューム改ざん検出データが第２の記憶手段から読み出され、読み出されたボリューム管理データとボリューム改ざん検出データとが比較される。データ比較手段により改ざんがないと判断された場合、マウント手段によって、ボリュームがマウントされる。
【０１６８】
したがって、第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶されているボリューム改ざん検出データを用いてボリュームが改ざんされたか否かの判断が行われるので、ボリュームの改ざんを確実に検出することができ、不正なボリュームの改ざんを防止することができる。
【産業上の利用可能性】
【０１６９】
本発明は、アプリケーションから独立したファイルシステムが、ファイルの管理と更新を行うことによって、アプリケーションの処理負荷が軽減されると共に、アプリケーション開発の工程も大きく短縮化されると同時に、ファイルシステムがファイルの更新処理を実行中に電源オフ等の異常事態が発生したケースでもファイルシステムの整合性を維持確保することが可能である。
【０１７０】
更に又、アプリケーションに依存しない、統一的な著作権管理やファイルの一部又は全部に対する改ざん管理を行うことも可能になるという絶大な効果を有し、その産業上の利用可能性は極めて大である。
【図面の簡単な説明】
【０１７１】
【図１】本発明の一実施の形態であるファイル管理システムのハードウエアとソフトウエアとの概略構成を示す図である。
【図２】本発明に係るファイル管理システムの構成の一例を示す機能ブロック図である。
【図３】本発明の一実施の形態であるファイル管理システムにおけるファイル構成の一例を示す図である。
【図４】ファイルを作成する際に行われるファイル作成処理について説明するためのフローチャートである。
【図５】本発明の一実施の形態であるファイル管理システムにおけるファイル管理データの一例を示す図である。
【図６】ボリュームをマウントする際に行われる改ざん検出処理について説明するためのフローチャートである。
【図７】ファイルをオープンする際に行われる改ざん検出処理について説明するためのフローチャートである。
【図８】本発明の一実施の形態であるファイル管理システムにおけるファイル管理データの更新を説明するための図である。
【図９】ファイルを更新する際のファイル更新処理について説明するためのフローチャートである。
【図１０】従来の記録・再生装置の例であるミュージックサーバの概略ブロック構成を示す図である。
【図１１】従来の記録・再生装置の例であるミュージックサーバにおける記憶領域の構成を示す図である。
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2005111809.tif 000013
【図２】
2005111809.tif 000014
【図３】
2005111809.tif 000015
【図４】
2005111809.tif 000016
【図５】
2005111809.tif 000017
【図６】
2005111809.tif 000018
【図７】
2005111809.tif 000019
【図８】
2005111809.tif 000020
【図９】
2005111809.tif 000021
【図１０】
2005111809.tif 000022
【図１１】
2005111809.tif 000023
【手続補正書】
【提出日】平成19年12月13日(2007.12.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段とを備えることを特徴とするファイル管理装置。
【請求項２】
前記第１の記憶手段は、前記ファイルを管理するためのファイル管理データをさらに記憶し、
前記データ作成手段は、ファイルの書き込み時に、前記ファイル管理データの改ざんを検出するためのファイル改ざん検出データをさらに作成し、
前記第２の記憶手段は、前記データ作成手段によって作成されたファイル改ざん検出データをさらに記憶し、
前記データ比較手段は、前記ファイルのオープン時に、前記ファイル管理データを前記第１の記憶手段から読み出すと共に、前記ファイル改ざん検出データを前記第２の記憶手段から読み出し、読み出したファイル管理データとファイル改ざん検出データとをさらに比較し、
前記データ比較手段によって改ざんがないと判断された場合、前記ファイルをオープンするオープン手段とをさらに備えることを特徴とする請求項１記載のファイル管理装置。
【請求項３】
前記第１の記憶手段は、前記ファイル管理データを前記ファイル改ざん検出データに関連付けて記憶することを特徴とする請求項２記載のファイル管理装置。
【請求項４】
前記第１の記憶手段は、前記ファイル改ざん検出データを特定可能なデータを含む前記ファイル管理データを記憶することを特徴とする請求項３に記載のファイル管理装置。
【請求項５】
前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更することを特徴とする請求項４記載のファイル管理装置。
【請求項６】
前記ファイル改ざん検出データと、前記ファイル改ざん検出データを特定可能なデータとを更新する場合、第１の記憶手段は、更新前のファイル改ざん検出データを特定可能なデータと、新しいファイル改ざん検出データを特定可能なデータとを記憶し、前記データ作成手段は、新しいファイル改ざん検出データを作成した後に、新しいファイル改ざん検出データを特定するようにファイル改ざん検出データを特定可能なデータを変更し、前記第１の記憶手段に記憶されている更新前のファイル改ざん検出データを特定可能なデータを削除することを特徴とする請求項５記載のファイル管理装置。
【請求項７】
前記データ作成手段は、ボリュームに含まれる全部又は一部のファイルの世代管理情報と、ボリュームに含まれる全部又は一部のファイルのエラーチェックコードと、ボリュームの残り記録容量と、ボリュームのボリューム管理データの全部又は一部と、ボリュームを記録している記録媒体に固有な情報とのうちの全部又は一部を含む前記ボリューム改ざん検出データを作成することを特徴とする請求項１〜６のいずれかに記載のファイル管理装置。
【請求項８】
前記データ作成手段は、ファイルのサイズ情報と、ファイルの記録開始時刻情報と、ファイルの記録終了時刻情報と、ファイルの暗号化鍵と、ファイルの記録されている領域のパスを示す情報と、ファイルに含まれる全部又は一部のデータのハッシュ値と、ファイルに含まれる全部又は一部のデータのエラーチェックコードとのうちの全部又は一部を含む前記ファイル改ざん検出データを作成することを特徴とする請求項２〜７のいずれかに記載のファイル管理装置。
【請求項９】
ファイルの書き込み時に、ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成ステップと、
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを第１の記憶手段に記憶する第１の記憶ステップと、
前記データ作成ステップにおいて作成されたボリューム改ざん検出データを、前記第１の記憶手段とは物理的に異なる位置に配置された第２の記憶手段に記憶する第２の記憶ステップと、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較ステップと、
前記データ比較ステップにおいて改ざんがないと判断された場合、前記ボリュームをマウントするマウントステップとを含むことを特徴とするファイル管理方法。
【請求項１０】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させることを特徴とするファイル管理プログラム。
【請求項１１】
ファイルを記憶すると共に、そのファイルを含むボリュームを管理するためのボリューム管理データを記憶する第１の記憶手段と、
ファイルの書き込み時に、前記ボリューム管理データの改ざんを検出するためのボリューム改ざん検出データを作成するデータ作成手段と、
前記第１の記憶手段とは物理的に異なる位置に配置され、前記データ作成手段によって作成されたボリューム改ざん検出データを記憶する第２の記憶手段と、
前記ボリュームのマウント時に、前記ボリューム管理データを前記第１の記憶手段から読み出すと共に、前記ボリューム改ざん検出データを前記第２の記憶手段から読み出し、読み出したボリューム管理データとボリューム改ざん検出データとを比較するデータ比較手段と、
前記データ比較手段によって改ざんがないと判断された場合、前記ボリュームをマウントするマウント手段としてコンピュータを機能させることを特徴とするファイル管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【国際調査報告】
2005111809.tif 000024
2005111809.tif 000025
2005111809.tif 000026
2005111809.tif 000027