ファイル保護システム、方法及びプログラム
【課題】ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護システムを提供すること。
【解決手段】ファイル保護システム20は、ファイル保護装置21及びファイル復元装置22を備える。ファイル保護装置21は、ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置23に格納し、並び替えの手順を第2の記憶装置24に格納する。ファイル復元装置22は、第1の記憶装置23に格納された並び替え後のファイルと第2の記憶装置24に格納された並び替え手順とを参照し、並び替え前のファイルを復元する。
【解決手段】ファイル保護システム20は、ファイル保護装置21及びファイル復元装置22を備える。ファイル保護装置21は、ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置23に格納し、並び替えの手順を第2の記憶装置24に格納する。ファイル復元装置22は、第1の記憶装置23に格納された並び替え後のファイルと第2の記憶装置24に格納された並び替え手順とを参照し、並び替え前のファイルを復元する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はファイル保護システム、方法及びプログラムに関し、特に、データの秘匿性を考慮したしファイル保護システム、方法及びプログラムに関する。
【背景技術】
【0002】
インターネットやLANの普及に伴い、データベース等において、個人情報等の秘匿性(機密性)を要するデータ(情報)を含むファイルが大量に記録されるようになってきている。したがって、これらのファイルの運用時及び破棄時における秘匿性を保持することが課題となってきている。
【0003】
特許文献1及ぶ2において、従来のデータベース分散管理システムの一例が記載されている。このデータベース分散管理システムは、2つ以上のデータベースから構成される。データベースに記録される値を暗号化し、各データベースに分割して保存する「秘密分散法」又は「電子割符」と呼ばれる方法が採用されている。これによって、一方のデータベースの情報が漏洩したとしても、他方のデータベースで管理されている情報が漏洩しない限り、情報を完全に復号することが出来ないため、情報の秘匿性が確保される。
【0004】
また、特許文献3において、安価なPCサーバによって冗長性及びセキュリティ機能を実現するデータ保管システムが記載されている。さらに、特許文献4において、対象データから個人情報と非個人情報を分離し、再び結合することを可能にする個人情報分離装置が記載されている。
【0005】
【特許文献1】特開2007−140869号公報
【特許文献2】特開2007−122336号公報
【特許文献3】特開2006−113663号公報
【特許文献4】特開2006−189926号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
以下の分析は、本発明者によってなされたものである。上記特許文献1及び2に記載されたデータベース分散管理システムにおいては、一方のデータベース上に格納されたデータ単体で、元のデータ全体の内容を把握することができない。したがって、これらのデータベース分散管理システムにおいては、指定した範囲の値を検索する範囲指定検索、又は、指定した文字列パターンに合致する文字列を検索するパターンマッチ検索が使えなくなるという問題がある。
【0007】
また、特許文献3のデータ保管システムにおいては、ファイルを構成するデータは一定長に分割されて複数のサーバに保管されるため、単一のデータを検索する都度、複数のサーバにアクセスする必要が生じる。したがって、データベースの特定の列(属性)に含まれるデータのみを検索するような場合であっても、複数のサーバへのアクセスが必要となり、検索効率が低くなるという問題がある。
【0008】
さらに、特許文献4に記載された個人情報分離装置においては、個人情報データを格納したディスクのデータが保護されておらず、秘匿性が確保されないという問題がある。なぜなら、個人情報データを格納したディスクにおいて、カラム(属性)間の関連が保持されたままとなっているからである。
【0009】
そこで、ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護システム、方法及びプログラムを提供することが課題となる。また、データベースの特定の列(属性)に含まれるデータを検索する場合において、検索効率の高いファイル保護システム、方法及びプログラムを提供することが課題となる。
【課題を解決するための手段】
【0010】
本発明の第1の視点に係るファイル保護装置は、
ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置に格納し、並び替えの手順を第2の記憶装置に格納するように構成されたことを特徴とする。
【0011】
第1の展開形態のファイル保護装置は、
前記データが、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順が、前記データの格納位置をレコード間で入れ替えるものであることが好ましい。
【0012】
第2の展開形態のファイル復元装置は、
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元するように構成されることが好ましい。
【0013】
第3の展開形態のファイル保護システムは、
上記ファイル保護装置と、
上記ファイル復元装置と、を備えることが好ましい。
【0014】
第4の展開形態のファイル保護システムは、
上記第1及び第2の記憶装置を備えることが好ましい。
【0015】
本発明の第2の視点に係るファイル保護方法は、
ファイルに含まれるデータの順序を並び替える工程と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する工程と、
前記並び替えの手順を第2の記憶装置に格納する工程と、を含むことを特徴とする。
【0016】
第5の展開形態のファイル保護方法は、
前記データが、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順が、前記データの格納位置をレコード間で入れ替えるものであることが好ましい。
【0017】
第6の展開形態のファイル保護方法は、
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する工程を含むことが好ましい。
【0018】
本発明の第3の視点に係るファイル保護プログラムは、
ファイルに含まれるデータの順序を並び替える処理と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する処理と、
前記並び替えの手順を第2の記憶装置に格納する処理と、をコンピュータに実行させることを特徴とする。
【0019】
第7の展開形態のファイル保護プログラムは、
前記データが、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順が、前記データの格納位置をレコード間で入れ替えるものであることが好ましい。
【0020】
第8の展開形態のファイル保護プログラムは、
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する処理をコンピュータに実行させることが好ましい。
【発明の効果】
【0021】
本発明によって、ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護装置、方法及びプログラムが提供される。その理由は次のとおりである。
【0022】
第1の記憶装置に格納されたファイルは、データの順序が並び替えられていることから、第2の記憶装置に格納された並び替えの手順を参照することなく、データ間の関連を把握することが困難となる。すなわち、ファイルの秘匿性が確保される。
【0023】
また、第1の記憶装置には、データの順序は並び替えられているものの、並び替え前のデータが平文のまますべて格納されている。したがって、第1の記憶装置のみを参照することで、範囲指定検索やパターンマッチ検索を行うことができる。
【0024】
さらに、本発明を関係データベースに適用した場合には、各列(属性)のデータは、レコード間で順序が入れ替わっているものの、すべて第1の記憶装置に格納されている。したがって、データベースの特定の列(属性)に含まれるデータのみを検索するような場合には、第1の記憶装置にアクセスするだけで、データを検出することができ、従来技術と比較して、検索効率を向上させることができる。
【発明を実施するための最良の形態】
【0025】
(実施形態1)
本発明の第1の実施形態に係るファイル保護システムについて、図面を参照して説明する。図1は、本発明の第1の実施形態に係るファイル保護装置の構成を示すブロック図である。ファイル保護システム20は、ファイル保護装置21、ファイル復元装置22、並びに、第1及び第2の記憶装置23、24を備える。
【0026】
ファイル保護装置21は、図1を参照すると、ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置23に格納し、並び替えの手順を第2の記憶装置24に格納する。
【0027】
ここで、複数のデータは、関係データベースのテーブルに含まれるデータであってもよい。また、上記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであってもよい。
【0028】
ファイル復元装置22は、図1を参照すると、第1の記憶装置23に格納された並び替え後のファイルと第2の記憶装置24に格納された並び替え手順とを参照し、並び替え前のファイルを復元する。
【0029】
(実施形態2)
次に、本発明の第2の実施形態について図面を参照して説明する。図2は、本発明の第2の実施形態に係るファイル保護システムの構成を示すブロック図である。図2を参照すると、ファイル保護システムは、ファイル挿入クライアント11、ファイル保護装置12、ファイル保護プログラム13、主データベース装置14、副データベース装置15、ファイル復元装置16、ファイル復元プログラム17及びファイル参照クライアント18を備える。これらの装置はそれぞれ次のように動作する。
【0030】
ファイル挿入クライアント11は、データベースに格納すべきデータを、ファイル保護装置12に出力する。ファイル保護装置12は、一例として、ファイル保護プログラム13によって制御される装置であってもよい。ファイル保護装置12は、ファイル挿入クライアント11から入力したデータを分割し、主データベース装置14と副データベース装置15に出力する。主データベース装置14と副データベース装置15は、それぞれ入力したデータを自身が格納するデータベースに記録する。
【0031】
ファイル参照クライアント18は、ファイル復元装置16に参照したいデータの検索条件を出力する。ファイル復元装置16は、一例として、ファイル復元プログラム17によって制御される装置であってもよい。ファイル復元装置16は、ファイル参照クライアント18から入力した検索条件に基づいて、主データベース装置14と副データベース装置15から該当するデータを抽出し、ファイル参照クライアント18に出力する。
【0032】
次に、フローチャート及びデータベーステーブルの例を参照して本実施の形態の全体の動作について説明する。図3又は図4は本実施形態に係るファイル保護装置12又はファイル復元装置16の動作を示すフローチャートである。図5〜10は、本実施形態におけるデータベーステーブルの例を示す図である。
【0033】
ファイル保護装置12は、あらかじめ主データベース装置14において一定量の空レコードを持つテーブルを作成し、副データベース装置15において主データベース装置14と同じカラム要素を持つテーブルを生成しておくものとする。このときのデータベーステーブルの一例を図5に示す。
【0034】
次に、ファイル保護装置12によるファイル挿入時の動作を、図3のフローチャートを参照して説明する。ファイル保護装置12は、ファイル挿入クライアント11から1レコード(行)分のファイルを入力する(ステップS21)。ファイル保護装置12は、主データベース装置14のテーブルに対して、カラム(列)を保持しつつ、各属性値を異なるレコード位置に挿入する(ステップS22)。このとき、挿入先のレコード位置は、空いているレコードの中からランダムに選択してもよい。次に、ステップS22において、各属性値を挿入した各レコード番号を副データベース装置15のテーブルに記録する(ステップS23)。
【0035】
以上のファイル挿入動作によって記録されたデータの状態を図6に示す。上記のステップS21〜S23までの動作を繰り返すことによって、複数のレコードを順次挿入することができる。図10のファイル91は、複数のレコードからなるファイルの例を示す。ここで各レコードの値は、主データベース装置14と副データベース装置15とに格納されたときの対応関係が分かるように、上のレコードから太実線、破線、二重線、細実線によって区別できるようにしている。
【0036】
図6は最初のレコードをデータベースに挿入した際のデータベーステーブルの状態を示す。同様に、図7は2行目のレコードを挿入した際のデータベーステーブルの状態、図8は3行目のレコードを挿入した際のデータベーステーブルの状態、図9は4行目のレコードを挿入した際のデータベーステーブルの状態を示す。
【0037】
以上の動作において、主データベース装置14のテーブルの値に対して暗号化等の処理は施されていない。したがって、主データベース装置14に格納された個々のデータは認識可能である。しかしながら、データ相互の関連は副データベース装置15のテーブルを参照することなく認識することは不可能である。したがって、主データベース装置14のテーブル上の情報の秘匿性が確保される。
【0038】
次に、ファイル参照時における、ファイル復元装置16の動作を説明する。ファイル参照クライアント18からファイル復元装置16に検索条件を指定しないファイル参照リクエストが入力された場合には、ファイル復元装置16は、次のように振舞うことが好ましい。すなわち、ファイル復元装置16は、副データベース装置15のテーブルに格納された、主データベース装置14上のテーブルの値の対応関係の情報に基づいて、主データベース装置14のテーブルの値を組み合わせることによって元のデータの形に戻し(復元し)、ファイル参照クライアント18に返却する。
【0039】
次に、ファイル参照クライアント18からファイル保護装置16に検索条件が指定されたファイル参照リクエストが入力された時の動作を、図4のフローチャートを参照して説明する。ファイル復元装置16は、主データベース装置14のテーブルの検索条件において指定されたカラムごとに、検索条件に適合(マッチ)する、主データベース装置14のレコード番号の組を抽出する(ステップS31)。次に、ファイル復元装置16は、副データベース装置15のテーブルにおいて、実レコードを単位として検索し、検索条件において指定された各カラムにおいて、上記の主データベース装置14におけるレコード番号の組と一致する、実レコードを抽出する(ステップS32)。さらに、ファイル復元装置16は、抽出された実レコードの情報と、主データベース装置14のテーブルの値と、を組み合わせてレコードを復元する(ステップS33)。ファイル復元装置16は、復元したレコードを、ファイル参照クライアント18に送信する(ステップS34)。
【0040】
図9のデータベーステーブルに対して、以上の操作を適用した場合について説明する。検索条件は、「生年月日」が「1980/01/01」以降、かつ、「年収」が「5、000、000」以上とする。主データベース装置14のデータベース81において、「生年月日」カラムにおいて検索条件に該当するレコード番号は{A、C}となる。一方、「年収」カラムにおいて検索条件に該当するレコード番号は{A、B、E}となる(ステップS31)。副データベース装置15のテーブル82を参照すると、実レコード3のみが主データベース装置14における検索結果と対応する(ステップS32)。このとき、ファイル復元装置16は、副データベース装置82における実レコード3の情報に基づいて、主データベース装置14のテーブル81の情報を抽出し、検索結果としてのデータを生成する(ステップS33)。ファイル復元装置16は、結果をファイル参照クライアント18に送信する(ステップS34)。
【0041】
ここで、副データベース装置15のテーブルのレコードを1つ削除すると、主データベース装置14のテーブル上の情報で元データの形に戻せなくなるレコードが1つ発生する。例えば、図9において副データベース装置15のテーブル82の実レコード「1」を削除した場合には、主データベース装置14のテーブルにおいて実レコード「1」の値の関連が不明となり、参照できなくなる。この性質を利用すると、副データベース15の情報を削除するだけで主データベース装置14のテーブルの情報を無効化することができる。
【0042】
(実施形態3)
次に、本発明の第3の実施形態について図面を参照して説明する。
図11を参照すると、本実施形態は、主データベース装置において複数のテーブルを用意する構成である。図11においては、データは属性ごとに個別のテーブル101〜103に格納されている。このように、主データベース装置14におけるテーブルを分割した場合であっても、上記の実施形態2と同様に、ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護システムを実現することができる。
【0043】
(実施形態4)
次に、本発明の第4の実施形態について説明する。図12を参照すると、本実施形態のファイル保護システムは、n個のファイル挿入クライアント111−1〜111−nと、n個のファイル保護装置112−1〜112−nと、n個の主データベース装置114−1〜114−nと、n個のファイル復元装置116−1〜116−nと、n個のファイル参照クライアント118−1〜118−nと、副データベース装置115と、を備える。
【0044】
本実施形態においては、複数のファイル保護装置112−1〜112−nと複数のファイル復元装置116−1〜116−nとによって、一つの副データベース装置115を共有する構成である。第3の発明の効果として、副データベース装置115を共有することによって、その数を抑えることができる点が挙げられる。
【0045】
(実施形態5)
次に、本発明の第5の実施形態について説明する。図13を参照すると、本実施形態のファイル保護システムは、n個のファイル挿入クライアント121−1〜121−nと、ファイル保護装置122と、n個の主データベース装置124−1〜124−nと、ファイル復元装置126と、ファイル参照クライアント128−1〜128−nと、副データベース装置125とを備える。本実施形態のファイル保護システムは、複数の主データベース装置124−1〜124−nによって、ファイル保護装置122、ファイル復元装置126及び副データベース装置125を共有する構成を採用している。本実施形態の効果として、ファイル保護装置122、ファイル復元装置126、副データベース装置125の数を抑えることができる点が挙げられる。
【実施例】
【0046】
次に、本発明の実施例に係るファイル保護システムについて、具体的なデータを参照しつつ説明する。図14に掲げた主データベース装置14のテーブル131においては、単一のデータによって個人を特定しうる名前や番地等の情報は暗号化されている。本実施例においては、データベース上の個々のデータが単体で認識することが可能な状態で情報が秘匿化される。しかしながら、実際問題として、データベースにおいては、図14に示す例のように単一のデータによって個人が特定されてしまうような情報も含まれうる。かかる場合には、本実施例のように、暗号化の手法と本発明の手法とを組み合わせることによってデータベースの検索性と秘匿性とを両立させることもできる。氏名や住所の詳細(番地等)に関する情報は、範囲検索やパターンマッチ検索の対象とされることは稀であるため、仮に暗号化したとしても、データベースの検索性が大きく損なわれることはない。
【0047】
また、あらかじめ主データベース装置14のテーブルに用意しておいた空レコードを使い切った場合には、空レコードを追加することになる。このとき、情報の秘匿性をさらに高めるために、新たな空レコードと既存のレコードとの間で、順序をランダムに変更してもよい。なお、レコード間への新しいレコードの挿入が容易なリンクリスト型実装のデータベースにおいては、かかる処理は不要となる。以上の記載は実施例に基づいて行ったが、本発明は、上記実施例に限定されるものではない。
【産業上の利用可能性】
【0048】
本発明は、情報の秘匿性と検索性とを両立させる必要があるデータベースシステムに適用することができる。
【図面の簡単な説明】
【0049】
【図1】本発明の第1の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図2】本発明の第2の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図3】本発明の第2の実施形態に係るファイル保護装置の動作を示すフローチャートである。
【図4】本発明の第2の実施形態に係るファイル復元装置の動作を示すフローチャートである。
【図5】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図6】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図7】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図8】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図9】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図10】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図11】本発明の第3の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図12】本発明の第4の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図13】本発明の第5の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図14】本発明の実施例におけるデータを示す図である。
【符号の説明】
【0050】
11、111−1〜111−n、121−1〜121−n ファイル挿入クライアント
12、21、112−1〜112−n、122 ファイル保護装置
13 ファイル保護プログラム
14、114−1〜114−n、124−1〜124−n 主データベース装置
15、115、125 副データベース装置
16、22、116−1〜116−n、126 ファイル復元装置
17 ファイル復元プログラム
18、118−1〜118−n、128−1〜128−n ファイル参照クライアント
20 ファイル保護システム
23、24 記憶装置
41、51、61、71、81、101〜103、131 主データベース装置のテーブル例
42、52、62、72、82 副データベース装置のテーブル例
91 ファイル
【技術分野】
【0001】
本発明はファイル保護システム、方法及びプログラムに関し、特に、データの秘匿性を考慮したしファイル保護システム、方法及びプログラムに関する。
【背景技術】
【0002】
インターネットやLANの普及に伴い、データベース等において、個人情報等の秘匿性(機密性)を要するデータ(情報)を含むファイルが大量に記録されるようになってきている。したがって、これらのファイルの運用時及び破棄時における秘匿性を保持することが課題となってきている。
【0003】
特許文献1及ぶ2において、従来のデータベース分散管理システムの一例が記載されている。このデータベース分散管理システムは、2つ以上のデータベースから構成される。データベースに記録される値を暗号化し、各データベースに分割して保存する「秘密分散法」又は「電子割符」と呼ばれる方法が採用されている。これによって、一方のデータベースの情報が漏洩したとしても、他方のデータベースで管理されている情報が漏洩しない限り、情報を完全に復号することが出来ないため、情報の秘匿性が確保される。
【0004】
また、特許文献3において、安価なPCサーバによって冗長性及びセキュリティ機能を実現するデータ保管システムが記載されている。さらに、特許文献4において、対象データから個人情報と非個人情報を分離し、再び結合することを可能にする個人情報分離装置が記載されている。
【0005】
【特許文献1】特開2007−140869号公報
【特許文献2】特開2007−122336号公報
【特許文献3】特開2006−113663号公報
【特許文献4】特開2006−189926号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
以下の分析は、本発明者によってなされたものである。上記特許文献1及び2に記載されたデータベース分散管理システムにおいては、一方のデータベース上に格納されたデータ単体で、元のデータ全体の内容を把握することができない。したがって、これらのデータベース分散管理システムにおいては、指定した範囲の値を検索する範囲指定検索、又は、指定した文字列パターンに合致する文字列を検索するパターンマッチ検索が使えなくなるという問題がある。
【0007】
また、特許文献3のデータ保管システムにおいては、ファイルを構成するデータは一定長に分割されて複数のサーバに保管されるため、単一のデータを検索する都度、複数のサーバにアクセスする必要が生じる。したがって、データベースの特定の列(属性)に含まれるデータのみを検索するような場合であっても、複数のサーバへのアクセスが必要となり、検索効率が低くなるという問題がある。
【0008】
さらに、特許文献4に記載された個人情報分離装置においては、個人情報データを格納したディスクのデータが保護されておらず、秘匿性が確保されないという問題がある。なぜなら、個人情報データを格納したディスクにおいて、カラム(属性)間の関連が保持されたままとなっているからである。
【0009】
そこで、ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護システム、方法及びプログラムを提供することが課題となる。また、データベースの特定の列(属性)に含まれるデータを検索する場合において、検索効率の高いファイル保護システム、方法及びプログラムを提供することが課題となる。
【課題を解決するための手段】
【0010】
本発明の第1の視点に係るファイル保護装置は、
ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置に格納し、並び替えの手順を第2の記憶装置に格納するように構成されたことを特徴とする。
【0011】
第1の展開形態のファイル保護装置は、
前記データが、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順が、前記データの格納位置をレコード間で入れ替えるものであることが好ましい。
【0012】
第2の展開形態のファイル復元装置は、
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元するように構成されることが好ましい。
【0013】
第3の展開形態のファイル保護システムは、
上記ファイル保護装置と、
上記ファイル復元装置と、を備えることが好ましい。
【0014】
第4の展開形態のファイル保護システムは、
上記第1及び第2の記憶装置を備えることが好ましい。
【0015】
本発明の第2の視点に係るファイル保護方法は、
ファイルに含まれるデータの順序を並び替える工程と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する工程と、
前記並び替えの手順を第2の記憶装置に格納する工程と、を含むことを特徴とする。
【0016】
第5の展開形態のファイル保護方法は、
前記データが、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順が、前記データの格納位置をレコード間で入れ替えるものであることが好ましい。
【0017】
第6の展開形態のファイル保護方法は、
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する工程を含むことが好ましい。
【0018】
本発明の第3の視点に係るファイル保護プログラムは、
ファイルに含まれるデータの順序を並び替える処理と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する処理と、
前記並び替えの手順を第2の記憶装置に格納する処理と、をコンピュータに実行させることを特徴とする。
【0019】
第7の展開形態のファイル保護プログラムは、
前記データが、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順が、前記データの格納位置をレコード間で入れ替えるものであることが好ましい。
【0020】
第8の展開形態のファイル保護プログラムは、
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する処理をコンピュータに実行させることが好ましい。
【発明の効果】
【0021】
本発明によって、ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護装置、方法及びプログラムが提供される。その理由は次のとおりである。
【0022】
第1の記憶装置に格納されたファイルは、データの順序が並び替えられていることから、第2の記憶装置に格納された並び替えの手順を参照することなく、データ間の関連を把握することが困難となる。すなわち、ファイルの秘匿性が確保される。
【0023】
また、第1の記憶装置には、データの順序は並び替えられているものの、並び替え前のデータが平文のまますべて格納されている。したがって、第1の記憶装置のみを参照することで、範囲指定検索やパターンマッチ検索を行うことができる。
【0024】
さらに、本発明を関係データベースに適用した場合には、各列(属性)のデータは、レコード間で順序が入れ替わっているものの、すべて第1の記憶装置に格納されている。したがって、データベースの特定の列(属性)に含まれるデータのみを検索するような場合には、第1の記憶装置にアクセスするだけで、データを検出することができ、従来技術と比較して、検索効率を向上させることができる。
【発明を実施するための最良の形態】
【0025】
(実施形態1)
本発明の第1の実施形態に係るファイル保護システムについて、図面を参照して説明する。図1は、本発明の第1の実施形態に係るファイル保護装置の構成を示すブロック図である。ファイル保護システム20は、ファイル保護装置21、ファイル復元装置22、並びに、第1及び第2の記憶装置23、24を備える。
【0026】
ファイル保護装置21は、図1を参照すると、ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置23に格納し、並び替えの手順を第2の記憶装置24に格納する。
【0027】
ここで、複数のデータは、関係データベースのテーブルに含まれるデータであってもよい。また、上記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであってもよい。
【0028】
ファイル復元装置22は、図1を参照すると、第1の記憶装置23に格納された並び替え後のファイルと第2の記憶装置24に格納された並び替え手順とを参照し、並び替え前のファイルを復元する。
【0029】
(実施形態2)
次に、本発明の第2の実施形態について図面を参照して説明する。図2は、本発明の第2の実施形態に係るファイル保護システムの構成を示すブロック図である。図2を参照すると、ファイル保護システムは、ファイル挿入クライアント11、ファイル保護装置12、ファイル保護プログラム13、主データベース装置14、副データベース装置15、ファイル復元装置16、ファイル復元プログラム17及びファイル参照クライアント18を備える。これらの装置はそれぞれ次のように動作する。
【0030】
ファイル挿入クライアント11は、データベースに格納すべきデータを、ファイル保護装置12に出力する。ファイル保護装置12は、一例として、ファイル保護プログラム13によって制御される装置であってもよい。ファイル保護装置12は、ファイル挿入クライアント11から入力したデータを分割し、主データベース装置14と副データベース装置15に出力する。主データベース装置14と副データベース装置15は、それぞれ入力したデータを自身が格納するデータベースに記録する。
【0031】
ファイル参照クライアント18は、ファイル復元装置16に参照したいデータの検索条件を出力する。ファイル復元装置16は、一例として、ファイル復元プログラム17によって制御される装置であってもよい。ファイル復元装置16は、ファイル参照クライアント18から入力した検索条件に基づいて、主データベース装置14と副データベース装置15から該当するデータを抽出し、ファイル参照クライアント18に出力する。
【0032】
次に、フローチャート及びデータベーステーブルの例を参照して本実施の形態の全体の動作について説明する。図3又は図4は本実施形態に係るファイル保護装置12又はファイル復元装置16の動作を示すフローチャートである。図5〜10は、本実施形態におけるデータベーステーブルの例を示す図である。
【0033】
ファイル保護装置12は、あらかじめ主データベース装置14において一定量の空レコードを持つテーブルを作成し、副データベース装置15において主データベース装置14と同じカラム要素を持つテーブルを生成しておくものとする。このときのデータベーステーブルの一例を図5に示す。
【0034】
次に、ファイル保護装置12によるファイル挿入時の動作を、図3のフローチャートを参照して説明する。ファイル保護装置12は、ファイル挿入クライアント11から1レコード(行)分のファイルを入力する(ステップS21)。ファイル保護装置12は、主データベース装置14のテーブルに対して、カラム(列)を保持しつつ、各属性値を異なるレコード位置に挿入する(ステップS22)。このとき、挿入先のレコード位置は、空いているレコードの中からランダムに選択してもよい。次に、ステップS22において、各属性値を挿入した各レコード番号を副データベース装置15のテーブルに記録する(ステップS23)。
【0035】
以上のファイル挿入動作によって記録されたデータの状態を図6に示す。上記のステップS21〜S23までの動作を繰り返すことによって、複数のレコードを順次挿入することができる。図10のファイル91は、複数のレコードからなるファイルの例を示す。ここで各レコードの値は、主データベース装置14と副データベース装置15とに格納されたときの対応関係が分かるように、上のレコードから太実線、破線、二重線、細実線によって区別できるようにしている。
【0036】
図6は最初のレコードをデータベースに挿入した際のデータベーステーブルの状態を示す。同様に、図7は2行目のレコードを挿入した際のデータベーステーブルの状態、図8は3行目のレコードを挿入した際のデータベーステーブルの状態、図9は4行目のレコードを挿入した際のデータベーステーブルの状態を示す。
【0037】
以上の動作において、主データベース装置14のテーブルの値に対して暗号化等の処理は施されていない。したがって、主データベース装置14に格納された個々のデータは認識可能である。しかしながら、データ相互の関連は副データベース装置15のテーブルを参照することなく認識することは不可能である。したがって、主データベース装置14のテーブル上の情報の秘匿性が確保される。
【0038】
次に、ファイル参照時における、ファイル復元装置16の動作を説明する。ファイル参照クライアント18からファイル復元装置16に検索条件を指定しないファイル参照リクエストが入力された場合には、ファイル復元装置16は、次のように振舞うことが好ましい。すなわち、ファイル復元装置16は、副データベース装置15のテーブルに格納された、主データベース装置14上のテーブルの値の対応関係の情報に基づいて、主データベース装置14のテーブルの値を組み合わせることによって元のデータの形に戻し(復元し)、ファイル参照クライアント18に返却する。
【0039】
次に、ファイル参照クライアント18からファイル保護装置16に検索条件が指定されたファイル参照リクエストが入力された時の動作を、図4のフローチャートを参照して説明する。ファイル復元装置16は、主データベース装置14のテーブルの検索条件において指定されたカラムごとに、検索条件に適合(マッチ)する、主データベース装置14のレコード番号の組を抽出する(ステップS31)。次に、ファイル復元装置16は、副データベース装置15のテーブルにおいて、実レコードを単位として検索し、検索条件において指定された各カラムにおいて、上記の主データベース装置14におけるレコード番号の組と一致する、実レコードを抽出する(ステップS32)。さらに、ファイル復元装置16は、抽出された実レコードの情報と、主データベース装置14のテーブルの値と、を組み合わせてレコードを復元する(ステップS33)。ファイル復元装置16は、復元したレコードを、ファイル参照クライアント18に送信する(ステップS34)。
【0040】
図9のデータベーステーブルに対して、以上の操作を適用した場合について説明する。検索条件は、「生年月日」が「1980/01/01」以降、かつ、「年収」が「5、000、000」以上とする。主データベース装置14のデータベース81において、「生年月日」カラムにおいて検索条件に該当するレコード番号は{A、C}となる。一方、「年収」カラムにおいて検索条件に該当するレコード番号は{A、B、E}となる(ステップS31)。副データベース装置15のテーブル82を参照すると、実レコード3のみが主データベース装置14における検索結果と対応する(ステップS32)。このとき、ファイル復元装置16は、副データベース装置82における実レコード3の情報に基づいて、主データベース装置14のテーブル81の情報を抽出し、検索結果としてのデータを生成する(ステップS33)。ファイル復元装置16は、結果をファイル参照クライアント18に送信する(ステップS34)。
【0041】
ここで、副データベース装置15のテーブルのレコードを1つ削除すると、主データベース装置14のテーブル上の情報で元データの形に戻せなくなるレコードが1つ発生する。例えば、図9において副データベース装置15のテーブル82の実レコード「1」を削除した場合には、主データベース装置14のテーブルにおいて実レコード「1」の値の関連が不明となり、参照できなくなる。この性質を利用すると、副データベース15の情報を削除するだけで主データベース装置14のテーブルの情報を無効化することができる。
【0042】
(実施形態3)
次に、本発明の第3の実施形態について図面を参照して説明する。
図11を参照すると、本実施形態は、主データベース装置において複数のテーブルを用意する構成である。図11においては、データは属性ごとに個別のテーブル101〜103に格納されている。このように、主データベース装置14におけるテーブルを分割した場合であっても、上記の実施形態2と同様に、ファイルの秘匿性を保持しつつ、ファイルに含まれるデータの検索を容易に行うことのできる、ファイル保護システムを実現することができる。
【0043】
(実施形態4)
次に、本発明の第4の実施形態について説明する。図12を参照すると、本実施形態のファイル保護システムは、n個のファイル挿入クライアント111−1〜111−nと、n個のファイル保護装置112−1〜112−nと、n個の主データベース装置114−1〜114−nと、n個のファイル復元装置116−1〜116−nと、n個のファイル参照クライアント118−1〜118−nと、副データベース装置115と、を備える。
【0044】
本実施形態においては、複数のファイル保護装置112−1〜112−nと複数のファイル復元装置116−1〜116−nとによって、一つの副データベース装置115を共有する構成である。第3の発明の効果として、副データベース装置115を共有することによって、その数を抑えることができる点が挙げられる。
【0045】
(実施形態5)
次に、本発明の第5の実施形態について説明する。図13を参照すると、本実施形態のファイル保護システムは、n個のファイル挿入クライアント121−1〜121−nと、ファイル保護装置122と、n個の主データベース装置124−1〜124−nと、ファイル復元装置126と、ファイル参照クライアント128−1〜128−nと、副データベース装置125とを備える。本実施形態のファイル保護システムは、複数の主データベース装置124−1〜124−nによって、ファイル保護装置122、ファイル復元装置126及び副データベース装置125を共有する構成を採用している。本実施形態の効果として、ファイル保護装置122、ファイル復元装置126、副データベース装置125の数を抑えることができる点が挙げられる。
【実施例】
【0046】
次に、本発明の実施例に係るファイル保護システムについて、具体的なデータを参照しつつ説明する。図14に掲げた主データベース装置14のテーブル131においては、単一のデータによって個人を特定しうる名前や番地等の情報は暗号化されている。本実施例においては、データベース上の個々のデータが単体で認識することが可能な状態で情報が秘匿化される。しかしながら、実際問題として、データベースにおいては、図14に示す例のように単一のデータによって個人が特定されてしまうような情報も含まれうる。かかる場合には、本実施例のように、暗号化の手法と本発明の手法とを組み合わせることによってデータベースの検索性と秘匿性とを両立させることもできる。氏名や住所の詳細(番地等)に関する情報は、範囲検索やパターンマッチ検索の対象とされることは稀であるため、仮に暗号化したとしても、データベースの検索性が大きく損なわれることはない。
【0047】
また、あらかじめ主データベース装置14のテーブルに用意しておいた空レコードを使い切った場合には、空レコードを追加することになる。このとき、情報の秘匿性をさらに高めるために、新たな空レコードと既存のレコードとの間で、順序をランダムに変更してもよい。なお、レコード間への新しいレコードの挿入が容易なリンクリスト型実装のデータベースにおいては、かかる処理は不要となる。以上の記載は実施例に基づいて行ったが、本発明は、上記実施例に限定されるものではない。
【産業上の利用可能性】
【0048】
本発明は、情報の秘匿性と検索性とを両立させる必要があるデータベースシステムに適用することができる。
【図面の簡単な説明】
【0049】
【図1】本発明の第1の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図2】本発明の第2の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図3】本発明の第2の実施形態に係るファイル保護装置の動作を示すフローチャートである。
【図4】本発明の第2の実施形態に係るファイル復元装置の動作を示すフローチャートである。
【図5】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図6】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図7】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図8】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図9】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図10】本発明の第2の実施形態におけるデータベーステーブルの例を示す図である。
【図11】本発明の第3の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図12】本発明の第4の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図13】本発明の第5の実施形態に係るファイル保護システムの構成を示すブロック図である。
【図14】本発明の実施例におけるデータを示す図である。
【符号の説明】
【0050】
11、111−1〜111−n、121−1〜121−n ファイル挿入クライアント
12、21、112−1〜112−n、122 ファイル保護装置
13 ファイル保護プログラム
14、114−1〜114−n、124−1〜124−n 主データベース装置
15、115、125 副データベース装置
16、22、116−1〜116−n、126 ファイル復元装置
17 ファイル復元プログラム
18、118−1〜118−n、128−1〜128−n ファイル参照クライアント
20 ファイル保護システム
23、24 記憶装置
41、51、61、71、81、101〜103、131 主データベース装置のテーブル例
42、52、62、72、82 副データベース装置のテーブル例
91 ファイル
【特許請求の範囲】
【請求項1】
ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置に格納し、並び替えの手順を第2の記憶装置に格納するように構成されたことを特徴とするファイル保護装置。
【請求項2】
前記データは、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであることを特徴とする、請求項1に記載のファイル保護装置。
【請求項3】
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元するように構成されたことを特徴とするファイル復元装置。
【請求項4】
請求項1又は2に記載のファイル保護装置と、
請求項3に記載のファイル復元装置と、を備えることを特徴とするファイル保護システム。
【請求項5】
前記第1及び第2の記憶装置を備えることを特徴とする、請求項4に記載のファイル保護システム。
【請求項6】
ファイルに含まれるデータの順序を並び替える工程と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する工程と、
前記並び替えの手順を第2の記憶装置に格納する工程と、を含むことを特徴とするファイル保護方法。
【請求項7】
前記データは、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであることを特徴とする、請求項6に記載のファイル保護方法。
【請求項8】
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する工程を含むことを特徴とする、請求項6又は7に記載のファイル保護方法。
【請求項9】
ファイルに含まれるデータの順序を並び替える処理と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する処理と、
前記並び替えの手順を第2の記憶装置に格納する処理と、をコンピュータに実行させることを特徴とするファイル保護プログラム。
【請求項10】
前記データは、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであることを特徴とする、請求項9に記載のファイル保護プログラム。
【請求項11】
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する処理をコンピュータに実行させることを特徴とする、請求項9又は10に記載のファイル保護プログラム。
【請求項1】
ファイルに含まれるデータの順序を並び替えるとともに、並び替え後のファイルを平文のまま第1の記憶装置に格納し、並び替えの手順を第2の記憶装置に格納するように構成されたことを特徴とするファイル保護装置。
【請求項2】
前記データは、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであることを特徴とする、請求項1に記載のファイル保護装置。
【請求項3】
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元するように構成されたことを特徴とするファイル復元装置。
【請求項4】
請求項1又は2に記載のファイル保護装置と、
請求項3に記載のファイル復元装置と、を備えることを特徴とするファイル保護システム。
【請求項5】
前記第1及び第2の記憶装置を備えることを特徴とする、請求項4に記載のファイル保護システム。
【請求項6】
ファイルに含まれるデータの順序を並び替える工程と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する工程と、
前記並び替えの手順を第2の記憶装置に格納する工程と、を含むことを特徴とするファイル保護方法。
【請求項7】
前記データは、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであることを特徴とする、請求項6に記載のファイル保護方法。
【請求項8】
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する工程を含むことを特徴とする、請求項6又は7に記載のファイル保護方法。
【請求項9】
ファイルに含まれるデータの順序を並び替える処理と、
前記並び替え後のファイルを平文のまま第1の記憶装置に格納する処理と、
前記並び替えの手順を第2の記憶装置に格納する処理と、をコンピュータに実行させることを特徴とするファイル保護プログラム。
【請求項10】
前記データは、関係データベースのテーブルに含まれるデータであって、
前記並び替え手順は、前記データの格納位置をレコード間で入れ替えるものであることを特徴とする、請求項9に記載のファイル保護プログラム。
【請求項11】
前記第1の記憶装置に格納された前記並び替え後のファイルと前記第2の記憶装置に格納された前記並び替え手順とを参照し、前記並び替え前のファイルを復元する処理をコンピュータに実行させることを特徴とする、請求項9又は10に記載のファイル保護プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2009−251748(P2009−251748A)
【公開日】平成21年10月29日(2009.10.29)
【国際特許分類】
【出願番号】特願2008−96371(P2008−96371)
【出願日】平成20年4月2日(2008.4.2)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
【公開日】平成21年10月29日(2009.10.29)
【国際特許分類】
【出願日】平成20年4月2日(2008.4.2)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
[ Back to top ]