(57)【要約】【課題】データを複数のデータ格納サーバに分散させて格納するデータ格納制御装置において、データの復元のために用いられるメタ情報を安全に保管する。【解決手段】データ格納制御装置において、分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバに分散させて格納するとともに、複数の分割データから元のデータを復元するために使用されるメタ情報をメタ情報格納部に格納するデータ分散格納処理手段と、前記メタ情報を分割して複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバに分散させて格納するメタ情報分散格納処理手段と、前記複数のデータ格納サーバから複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報を前記メタ情報格納部に格納するメタ情報復元処理手段とを備える。【選択図】図３
2016115036.tif 000002
【特許請求の範囲】
【請求項１】
データを複数のデータ格納サーバに分散させて格納するデータ格納制御装置であって、
分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバに分散させて格納するとともに、複数の分割データから元のデータを復元するために使用されるメタ情報をメタ情報格納部に格納するデータ分散格納処理手段と、
前記メタ情報を分割して複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバに分散させて格納するメタ情報分散格納処理手段と、
前記複数のデータ格納サーバから複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報を前記メタ情報格納部に格納するメタ情報復元処理手段と
を備えることを特徴とするデータ格納制御装置。
【請求項２】
各分割メタ情報は、データ格納サーバにおける予め定められた格納位置に格納され、前記メタ情報復元処理手段は、各データ格納サーバにおける予め定められた格納位置から分割メタ情報を取得する
ことを特徴とする請求項１に記載のデータ格納制御装置。
【請求項３】
データを複数のデータ格納サーバに分散させて格納するデータ格納制御装置が実行するデータ格納制御方法であって、
分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバに分散させて格納するとともに、複数の分割データから元のデータを復元するために使用されるメタ情報をメタ情報格納部に格納するデータ分散格納処理ステップと、
前記メタ情報を分割して複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバに分散させて格納するメタ情報分散格納処理ステップと、
前記複数のデータ格納サーバから複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報を前記メタ情報格納部に格納するメタ情報復元処理ステップと
を備えることを特徴とするデータ格納制御方法。
【請求項４】
コンピュータを、請求項１又は２に記載のデータ格納制御装置における各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを分散させて複数のストレージに格納する技術に関連するものである。
【背景技術】
【０００２】
重要なデータを安全に保管する技術として秘密分散技術がある。例えば、しきい値秘密分散法（非特許文献１参照）では、元データをｎ個の分割データ（断片データと呼んでもよい）に分割し、そのうちｋ（ｋ＜ｎ）個の分割データを集めれば元データが復元できるが、ｋ−１個の分割データでは元データを復元できない。従って、ｋ−１個まで分割データが盗まれても元データが漏れず、また、ｎ−ｋ個まで分割データを紛失したり破壊されたりしても、元データを復元できる。
【０００３】
上記のような秘密分散技術を利用して複数のストレージ（データ格納サーバ）に分散してデータを保存するサービスが提供されている。なお、しきい値秘密分散法は秘密分散技術の例であり、他の秘密分散技術を使用してもよい。
【０００４】
上記のようにデータを分割して分割データを複数のデータ格納サーバに保存する場合に、分割データから元のデータを復元するためには、各分割データの格納場所（格納したサーバのアドレス、サーバ内のディレクトリ等）、データ分割時に使用した秘密分散アルゴリズム等のメタ情報が必要になる。
【０００５】
上記メタ情報は、データの分散格納処理を行う際に生成されるものであり、例えばデータの分散格納処理を行うシステムにおけるデータベースに保存される。メタ情報はデータ復元に必要な重要な情報であるため、当該データベースに障害が生じてメタ情報が消失した場合に備えて、メタ情報のバックアップデータを保管することが行われる。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】山本博資：「（ｋ，Ｌ，ｎ）しきい値秘密分散システム」電子通信学会論文誌、ｖｏｌ．１６８−Ａ，  ｎｏ．９，  ｐｐ．９４５−９５２（Ｓｅｐ．１９８５）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したメタ情報はデータ復元のために必要な重要な情報であるとともに、メタ情報を知ることができれば元のデータを復元することが可能であるため、メタ情報は機密性の非常に高い情報である。しかし、上記従来技術のように、メタ情報を一箇所に保存し、バックアップを持つ保管方法では、メタ情報の保管方法として安全性が十分とはいえない。
【０００８】
本発明は上記の点に鑑みてなされたものであり、複数のデータ格納サーバにデータを分散させて格納するデータ格納システムにおいて、データの復元のために用いられるメタ情報を安全に保管することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の実施の形態により、データを複数のデータ格納サーバに分散させて格納するデータ格納制御装置であって、
分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバに分散させて格納するとともに、複数の分割データから元のデータを復元するために使用されるメタ情報をメタ情報格納部に格納するデータ分散格納処理手段と、
前記メタ情報を分割して複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバに分散させて格納するメタ情報分散格納処理手段と、
前記複数のデータ格納サーバから複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報を前記メタ情報格納部に格納するメタ情報復元処理手段とを備えることを特徴とするデータ格納制御装置が提供される。
【発明の効果】
【００１０】
本発明の実施の形態によれば、複数のデータ格納サーバにデータを分散させて格納するデータ格納システムにおいて、データの復元のために用いられるメタ情報を安全に保管することを可能とする技術が提供される。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施の形態に係るシステムの構成図である。
【図２】本発明の実施の形態に係るデータ格納制御装置１００の構成図である。
【図３】データ分散格納処理を説明するためのフローチャートである。
【図４】メタ情報復元処理を説明するためのフローチャートである。
【図５】メタ情報復元処理の他の例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施の形態を説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。例えば、以下で説明する実施の形態では、秘密分散法を用いてデータを複数のデータ格納サーバに分散させて格納するシステムを例として説明しているが、本発明は、秘密分散法以外の方法でデータを分割して複数のデータ格納サーバに分散させて格納する技術にも適用可能である。
【００１３】
（システム全体構成）
図１に、本発明の実施の形態におけるシステムの全体構成を示す。図１に示すように、本システムは、データ格納制御装置１００と、複数のデータ格納サーバ２０とが通信ネットワーク３０（例：インターネット）を介して接続される構成を有している。また、データ格納制御装置１００にはユーザ端末１０が接続されている。
【００１４】
データ格納制御装置１００は、ユーザ端末１０から受信する分散格納対象のデータを、秘密分散法を用いて複数のデータ格納サーバ２０に分散させて格納する機能、及び分散させて格納した複数の分割データから元のデータを復元し、復元したデータをユーザ端末１０に提供する機能に加えて、メタ情報を秘密分散法を用いて複数のデータ格納サーバ２０に分散させて格納する機能、及び分散させて格納した複数の分割メタ情報から元のメタ情報を復元する機能を含む。データ格納制御装置１００の詳細については後述する。
【００１５】
データ格納制御装置１００とユーザ端末１０との間は例えばＬＡＮで接続されていてもよいし、インターネットを介して接続されていてもよい。各データ格納サーバ２０は、物理的な個別のサーバであってもよいし、クラウド上の仮想サーバであってもよい。
【００１６】
（データ格納制御装置１００の構成）
図２に、本発明の実施の形態におけるデータ格納制御装置１００の機能構成を示す。図２に示すように、データ格納制御装置１００は、データ分散格納処理部１０１、データ復元処理部１０２、メタ情報分散格納処理部１０３、メタ情報復元処理部１０４、及びメタ情報格納部１０５を含む。
【００１７】
データ分散格納処理部１０１は、ユーザ端末１０から受信した分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバ２０に分散させて格納する。なお、本実施の形態において、１つの分割データは、１つのデータ格納サーバ２０に格納され、各分割データは異なるデータ格納サーバ２０に格納される。ただし、このような格納形態は一例である。
【００１８】
各分割データをどのデータ格納サーバ２０のどこに格納するかについては、予め定めておいてもよいし、所定のルール（例：ランダムに）で決定してもよい。分割データを格納する「データ格納サーバ２０及び当該サーバ内の格納位置」を分割データ格納場所と呼ぶことにする。
【００１９】
データ分散格納処理部１０１は、データの分散格納処理を行う際に、各分割データについての分割データ格納場所を含むメタ情報を生成し、当該メタ情報をメタ情報格納部１０５に格納する機能も有する。
【００２０】
データ復元処理部１０２は、メタ情報格納部１０５に格納されているメタ情報を利用して、複数のデータ格納サーバ２０から複数の分割データを取得し、当該複数の分割データから元のデータを復元する。
【００２１】
メタ情報分散格納処理部１０３は、例えばデータ分散格納処理部１０１によりデータの分散格納処理がなされた直後に、分散格納処理により生成され、メタ情報格納部１０５に格納されているメタ情報を読み出して、当該メタ情報を秘密分散法により分割し、複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバ２０に分散させて格納する。なお、本実施の形態において、１つの分割メタ情報は、１つのデータ格納サーバ２０に格納され、各分割メタ情報は異なるデータ格納サーバ２０に格納される。ただし、このような格納形態は一例である。
【００２２】
各分割メタ情報をどのデータ格納サーバ２０のどこに格納するかについては、予め定められている。分割メタ情報を格納する「データ格納サーバ２０及び当該サーバ内の格納位置」を分割メタ情報格納場所と呼ぶことにする。本実施の形態では、分割メタ情報格納場所は予め定められているため、複数の分割メタ情報から元のメタ情報を復元するためのメタ情報をデータベース等に保存しておく必要はない。
【００２３】
なお、秘密分散アルゴリズムや秘密分散処理に使用したパラメータ等、格納場所以外のメタ情報を分割メタ情報にヘッダとして付加し、ヘッダが付加された分割メタ情報を各データ格納サーバ２０に格納することとしてもよい。この方式では、ヘッダを参照することで秘密分散アルゴリズムやパラメータ等のメタ情報を取得できる。ただし、このようなヘッダを付加することは必須ではない。つまり、秘密分散アルゴリズムやパラメータ等のメタ情報についても予め定めたもののみを使用することで、ヘッダを不要とすることができる。
【００２４】
メタ情報復元処理部１０４は、予め定められた分割メタ情報の格納場所に基づいて、複数のデータ格納サーバ２０から複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報をメタ情報格納部１０５に格納する。
【００２５】
本実施の形態に係るデータ格納制御装置１００は、例えば、１つ又は複数のコンピュータ（サーバ）に、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、データ格納制御装置１００が有する機能は、当該コンピュータに内蔵されるＣＰＵやメモリなどのハードウェア資源を用いて、データ格納制御装置１００で実施される処理に対応するプログラムを実行することによって実現することが可能である。また、上記プログラムは、コンピュータが読み取り可能な記録媒体（可搬メモリ等）に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。
【００２６】
また、より具体的な例として、データ分散格納処理部１０１、データ復元処理部１０２、メタ情報分散格納処理部１０３、及びメタ情報復元処理部１０４を１つ又は複数のコンピュータで構成し、上記プログラムを実行させ、メタ情報格納部１０５を、別のコンピュータ（データベースサーバ等）で構成することとしてもよい。
【００２７】
（データ格納制御装置１００の動作例）
次に、図３〜図５のフローチャートを参照して、図２に示したように構成されたデータ格納制御装置１００の動作例を説明する。
【００２８】
＜データ分散格納処理＞
まず、図３を参照してデータ分散格納処理におけるデータ格納制御装置１００の動作例を説明する。
【００２９】
データ分散格納処理部１０１は、ユーザ端末１０から分散格納対象のデータを受信する（ステップ１０１）と、秘密分散法により当該データを分割して複数の分割データを生成し（ステップ１０２）、当該複数の分割データを複数のデータ格納サーバ２０に分散して格納する（ステップ１０３）。また、データ分散格納処理部１０１は、分割データ格納場所等のメタ情報をメタ情報格納部１０５に保存する（ステップ１０４）。
【００３０】
データ分散格納処理部１０１は、データの分散格納処理が終了したことをメタ情報分散格納処理部１０３に通知する。もしくは、メタ情報分散格納処理部１０３がプログラムモジュール等により構成される場合において、データ分散格納処理部１０１は、データの分散格納処理が終了した時点で、メタ情報分散格納処理部１０３を呼び出すこととしてもよい。
【００３１】
データの分散格納処理が終了したことを通知されたメタ情報分散格納処理部１０３は、メタ情報格納部１０５からメタ情報を取得し、秘密分散法により当該メタ情報を分割して複数の分割メタ情報を生成し（ステップ１０５）、当該複数の分割メタ情報を予め定めた分割メタ情報格納場所に格納する（ステップ１０６）。
【００３２】
上記のステップ１０５、１０６において分散格納する対象とするメタ情報は、全てのメタ情報（メタ情報のデータベース全体）であってもよいし、今回のデータに関するメタ情報のみであってもよいし、今回のデータのユーザのメタ情報全体であってもよいし、その他の単位でもよい。なお、個々のデータ／ユーザに関するメタ情報を対象とする場合、どのデータ／ユーザのメタ情報（分割メタ情報）かについては、例えばファイル名等で識別可能である。
【００３３】
また、図３の例では、データを分散格納することをトリガとしてメタ情報の分散格納処理を行うこととしているが、明示的な指示によってメタ情報の分散格納処理を行うこととしてもよいし、定期的にメタ情報の分散格納処理を行うこととしてもよい。
【００３４】
上記のようにメタ情報を秘密分散法を使用して複数のデータ格納サーバ２０に分散させて格納することにより、仮に障害等によりメタ情報格納部１０５におけるメタ情報が消失し、更に、複数のデータ格納サーバのうちの一部のサーバに障害があったとしても、分割メタ情報の格納に関して同じ設定である複数のデータ格納サーバ２０が用意されている状態であれば分割メタ情報から元のメタ情報を取得できる。
【００３５】
＜メタ情報復元処理＞
次に、図４を参照してメタ情報復元処理におけるデータ格納制御装置１００の動作例を説明する。
【００３６】
メタ情報復元処理部１０４は、例えばユーザ端末１０からメタ情報の復元指示を受信する（ステップ２０１）と、予め定められた分割メタ情報格納場所から複数のメタ情報を取得する（ステップ２０２）。そして、メタ情報復元処理部１０４は、複数の分割メタ情報から元のメタ情報を復元し（ステップ２０３）、当該メタ情報をメタ情報格納部１０５に格納する（ステップ２０４）。
【００３７】
なお、上記のように、明示的な復元指示によってメタ情報を復元してもよいし、下記のように、データの復元時に、メタ情報の消失等により、メタ情報を利用できないことを検知したことをトリガとして自動的にメタ情報の復元を行うこととしてもよい。この場合の動作例を図５を参照して説明する。
【００３８】
データ復元処理部１０２が、例えばユーザ端末１０からデータの復元指示を受信する（ステップ３０１）と、メタ情報格納部１０５を参照することにより、当該データに対応するメタ情報を検索する（ステップ３０２）。メタ情報がある場合（ステップ３０２のＹｅｓ）にはステップ３０６に進む。また、メタ情報のデータベースが消失した等により、メタ情報がない場合（ステップ３０２のＮｏ）には、ステップ３０３に進む。
【００３９】
ステップ３０３において、データ復元処理部１０２からメタ情報復元処理部１０４に対してメタ情報復元指示がなされ、メタ情報復元処理部１０４は、予め定められた分割メタ情報格納場所から複数のメタ情報を取得する。そして、メタ情報復元処理部１０４は、複数の分割メタ情報から元のメタ情報を復元し（ステップ３０４）、当該メタ情報をメタ情報格納部１０５に格納し、メタ情報を格納したことをデータ復元処理部１０２に通知する（ステップ３０５）。
【００４０】
データ復元処理部１０２は、メタ情報を用いて、複数の分割データを取得し、元のデータを復元する（ステップ３０６）。
【００４１】
なお、ステップ３０２でＮｏの場合に、データ復元処理部１０２が管理者端末等の端末にエラーを表示して、当該端末からデータ復元処理部１０２に対してコマンド等による指示を送信し、当該指示に従ってメタ情報を復元することとしてもよい。
【００４２】
（実施の形態のまとめ）
以上、説明したように、本実施の形態においては、データを複数のデータ格納サーバに分散させて格納するデータ格納制御装置であって、分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバに分散させて格納するとともに、複数の分割データから元のデータを復元するために使用されるメタ情報をメタ情報格納部に格納するデータ分散格納処理手段と、前記メタ情報を分割して複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバに分散させて格納するメタ情報分散格納処理手段と、前記複数のデータ格納サーバから複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報を前記メタ情報格納部に格納するメタ情報復元処理手段とを備えるデータ格納制御装置が提供される。
【００４３】
各分割メタ情報は、データ格納サーバにおける予め定められた格納位置に格納され、前記メタ情報復元処理手段は、各データ格納サーバにおける予め定められた格納位置から分割メタ情報を取得することとしてもよい。
【００４４】
また、本実施の形態により、データを複数のデータ格納サーバに分散させて格納するデータ格納制御装置が実行するデータ格納制御方法であって、分散格納対象のデータを分割して複数の分割データを生成し、当該複数の分割データを複数のデータ格納サーバに分散させて格納するとともに、複数の分割データから元のデータを復元するために使用されるメタ情報をメタ情報格納部に格納するデータ分散格納処理ステップと、前記メタ情報を分割して複数の分割メタ情報を生成し、当該複数の分割メタ情報を複数のデータ格納サーバに分散させて格納するメタ情報分散格納処理ステップと、前記複数のデータ格納サーバから複数の分割メタ情報を取得し、当該複数の分割メタ情報から元のメタ情報を復元し、当該メタ情報を前記メタ情報格納部に格納するメタ情報復元処理ステップとを備えるデータ格納制御方法が提供される。
【００４５】
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【００４６】
１０  ユーザ端末
２０  データ格納サーバ
３０  通信ネットワーク
１００  データ格納制御装置
１０１  データ分散格納処理部
１０２  データ復元処理部
１０３  メタ情報分散格納処理部
１０４  メタ情報復元処理部
１０５  メタ情報格納部
【図１】
2016115036.tif 000003
【図２】
2016115036.tif 000004
【図３】
2016115036.tif 000005
【図４】
2016115036.tif 000006
【図５】
2016115036.tif 000007