(57)【要約】【課題】管理情報の管理負担を軽減しながら管理情報により特定されるデータのセキュリティの向上を図ること。【解決手段】（１）端末Ｔ１は、対象データＤの分割数ｄをランダムに決定する。（２）端末Ｔ１は、ｄ個の分割データＤ１〜Ｄｄをそれぞれ暗号化するため、ｄ個の固有な暗号鍵ｋ１〜ｋｄをランダムに生成する。（３）端末Ｔ１は、ｄ個の分割データＤ１〜Ｄを対応する暗号鍵ｋ１〜ｋｄで暗号化する。（４）端末Ｔ１は、サーバＳ１〜Ｓｎの中から分割データＤ１〜Ｄの格納先となるサーバＳ＃をｄ台ランダムに決定する。（５）端末Ｔ１は、管理情報Ｍを生成する。（６）端末Ｔ１は、（５）で生成された管理情報Ｍを２つに分割する。（７）端末Ｔ１は、分割された第１および第２の分散管理情報Ｍ１，Ｍ２のうち、第２の分散管理情報Ｍ２を管理サーバＳＭに送信する。（８）このあと、端末Ｔ１は、第１の分散管理情報Ｍ１を端末Ｔ２に送る。【選択図】図１
2011232834.tif 000002
【特許請求の範囲】
【請求項１】
対象データを複数の分割データに分割し、各分割データに固有の識別情報を付与するデータ分割工程と、
前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成する管理情報生成工程と、
前記管理情報生成工程によって生成された管理情報を複数の分割管理情報に分割し、分割された各々に共通する共通識別情報を付与する管理情報分割工程と、
をコンピュータに実行させることを特徴とするデータ分散プログラム。
【請求項２】
サーバ群の中から前記データ分割工程によって分割された各分割データの格納先サーバをランダムに決定する決定工程と、
前記管理情報分割工程によって分割された複数の分散管理情報のうち一部の分散管理情報を特定のサーバに送信するとともに、前記各分割データを当該分割データの格納先サーバに送信する送信工程と、を前記コンピュータにさらに実行させ、
前記管理情報生成工程は、
前記サーバ群の中の特定のサーバの識別情報と前記格納先サーバの識別情報と前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成することを特徴とする請求項１に記載のデータ分散プログラム。
【請求項３】
対象データを分割した各分割データの識別情報を有する管理情報から分割された複数の分散管理情報を取得する分散管理情報取得工程と、
前記分散管理情報取得工程により取得された複数の分散管理情報から前記管理情報を復元する管理情報復元工程と、
をコンピュータに実行させることを特徴とするデータ復元プログラム。
【請求項４】
前記分散管理情報取得工程は、
対象データを分割した各分割データの識別情報を有する管理情報から分割され共通の識別情報である共通識別情報を付与された複数の分散管理情報のうち、一部の分散管理情報を取得する第１の取得工程と、
前記第１の取得工程によって取得された分散管理情報から、当該分散管理情報に付与された前記共通識別情報を取得する、共通識別情報取得工程と、
前記取得工程によって取得された共通識別情報に関連付けられている他の分散管理情報を取得する第２の取得工程と、を有することを特徴とする請求項３に記載のデータ復元プログラム。
【請求項５】
対象データを複数の分割データに分割し、各分割データに固有の識別情報を付与するデータ分割手段と、
前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成する管理情報生成手段と、
前記管理情報生成手段によって生成された管理情報を分割し、分割された各々に共通する共通識別情報を付与する管理情報分割手段と、
を備えることを特徴とするデータ分散装置。
【請求項６】
対象データを分割した各分割データの識別情報を有する管理情報から分割された複数の分散管理情報を取得する分散管理情報取得手段と、
前記分散管理情報取得手段により取得された複数の分散管理情報から前記管理情報を復元する管理情報復元手段と、
を備えることを特徴とするデータ復元装置。
【請求項７】
対象データを分割した複数の分割データに関する管理情報から分割された分散管理情報を格納する記憶媒体の製造方法であって、
対象データを複数の分割データに分割し、各分割データに固有の識別情報を付与するデータ分割工程と、
前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成する管理情報生成工程と、
前記管理情報生成工程によって生成された管理情報を複数の分散管理情報に分割し、分割された各々に共通する共通識別情報を付与する管理情報分割工程と、
前記管理情報分割工程によって分割され前記共通識別情報が付与された分散管理情報を記憶媒体に格納する格納工程と、
をコンピュータが実行する製造方法。
【請求項８】
対象データを分割した各分割データの識別情報を有する管理情報から分割された複数の分散管理情報を取得する分散管理情報取得工程と、
前記分散管理情報取得工程により取得された複数の分散管理情報から前記管理情報を復元する管理情報復元工程と、
前記復元された管理情報が有する前記識別情報に対応する分割データを取得する分割データ取得工程と、
前記分割データ取得工程により取得された複数の分割データから前記対象データを復元する対象データ復元工程と、
をコンピュータが実行することを特徴とするデータ復元方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データの分散や分散されたデータの復元をおこなうデータ分散プログラム、データ復元プログラム、データ分散装置、データ復元装置、データ分散方法、およびデータ復元方法に関する。
【背景技術】
【０００２】
従来、ネットワークを利用したデータ送信や可搬媒体を利用してのデータ搬送において、データを保護するための仕組みとして、パスワードを用いたアクセス制御やデータの内容を暗号化する技術がある。このような技術では、パスワードの秘匿性が破られた場合にはセキュリティを確保することができない。
【０００３】
たとえば、パスワードが正当な権限を有する者以外の者に流出した場合や、暗号化されたデータを解読された場合には、パスワードの秘匿性が破られることになる。そこで、保護対象とするデータを複数の部分データに分割する閾値分散法を用いた秘密分散技術が提案されている（下記特許文献１〜３を参照。）。
【０００４】
特許文献１には、保管するデータを暗号化して複数に分割して得た分割データを、複数の保管サーバに分散して保管するシステムが記載されている。特許文献１のシステムでは、保管対象のデータを復号する際に、復号に必要な分割データをどの保管サーバに保管しているのかを示すインデックス情報を参照することにより、復号に必要な分割データを収集する。
【０００５】
また、特許文献２には、保存する電子情報に対して可逆的なデータ変換を行ない、さらに可逆的なデータ分割を行って得た分割ファイルを、複数台の保存サーバにダミーデータとともに格納するシステムが記載されている。特許文献２では、電子情報を復号する際に、復号に必要な分割ファイルをどの保存サーバに格納しているのかを示す分割復元情報（特許文献１のインデックス情報に相当）を参照することにより、復号に必要な分割ファイルを収集する。
【０００６】
また、特許文献３には、特許文献２と同様に、保存する電子情報に対して可逆的なデータ変換を行ない、さらに可逆的なデータ分割を行うシステムが記載されている。特許文献３では、保存する電子情報から所定のデータ変換及びデータ分割を行なって得た分割データを、無意味なデータ列を有する分割保存ファイルの一部分として保存する。そして、電子情報を復号する際に、復号に必要な分割データが保存されている分割保存ファイル上の格納位置を示す分割復元情報（特許文献１のインデックス情報に相当）を参照することにより、復号に必要な分割データを収集する。
【０００７】
このように、特許文献１〜３は、保管する電子情報を復号する際に、インデックス情報や分割復元情報といった復号に必要な分割データの格納場所を示す管理情報を参照している。また、管理情報が漏洩すると分割データの格納先が判明して元のデータに復号されてしまうため、管理情報を、論理的および物理的に厳格なアクセス制御が行われる管理サーバにおいて管理することを要求している。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−１７１２０７号公報
【特許文献２】特開２００６−３３１４１１号公報
【特許文献３】特開２００９−４２８５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、上述した従来技術では、管理情報を管理する管理サーバにおいて、インデックス情報に対して論理的および物理的に厳格なアクセス制御を行わなければならならず、運用上の負担が生じるという問題があった。また、管理情報が管理サーバから漏洩した場合には、電子情報が不正に復号される危険性がありセキュリティ上問題があった。
【００１０】
本発明は、上述した従来技術による問題点を解消するため、管理情報の管理負担を軽減しながら管理情報により特定されるデータのセキュリティの向上を図ることができるデータ分散プログラム、データ復元プログラム、データ分散装置、データ復元装置、データ分散方法、およびデータ復元方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上述した課題を解決し、目的を達成するため、本発明にかかるデータ分散プログラム、データ分散装置、およびデータ分散方法は、対象データを複数の分割データに分割し、サーバ群の中から各分割データの格納先サーバをランダムに決定し、前記サーバ群の中の特定のサーバの識別情報と前記格納先サーバの識別情報と前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成し、生成された管理情報を分割し、分割された各々に対し固有の共通識別情報を付与することにより、第１および第２の分散管理情報を生成し、分割された第１および第２の分散管理情報のうち第２の分散管理情報を前記特定のサーバに送信するとともに、前記各分割データを当該分割データの格納先サーバに送信することを要件とする。
【００１２】
また、本発明にかかるデータ復元プログラム、データ復元装置、およびデータ復元方法は、サーバ群の中の特定のサーバの識別情報と対象データを分割した各分割データの識別情報と前記各分割データを格納した前記サーバ群内の各格納先サーバの識別情報とに基づく管理情報から分割された第１および第２の分散管理情報のうち、前記第１の分散管理情報を取得し、取得された第１の分散管理情報の中から、前記第１および第２の分散管理情報に固有な共通識別情報を抽出し、抽出された共通識別情報を前記特定のサーバに送信することにより、前記共通識別情報によって関連付けられている前記第２の分散管理情報を前記特定のサーバから取得し、前記第１の分散管理情報と取得された第２の分散管理情報とを結合することにより、前記管理情報を復元することを要件とする。
【発明の効果】
【００１３】
本発明にかかるデータ分散プログラム、データ復元プログラム、データ分散装置、データ復元装置、データ分散方法、およびデータ復元方法によれば、管理情報の管理負担を軽減しながら管理情報により特定されるデータのセキュリティの向上を図ることができるという効果を奏する。
【図面の簡単な説明】
【００１４】
【図１】実施の形態にかかるデータ分散例を示すシステム構成図である。
【図２】実施の形態にかかるデータ復元例を示すシステム構成図である。
【図３】実施の形態にかかるコンピュータのハードウェア構成例を示すブロック図である。
【図４】管理サーバのデータベースの記憶内容を示す説明図である。
【図５】サーバのデータベースの記憶内容を示す説明図である。
【図６】文字コードを示す図表である。
【図７】管理情報の分割例を示す説明図である。
【図８】データ分散装置の機能的構成例を示すブロック図である。
【図９】データ分散処理手順を示すフローチャート（その１）である。
【図１０】データ分散処理手順を示すフローチャート（その２）である。
【図１１】図１０に示した管理情報Ｍ生成・分割処理（ステップＳ９０７）の詳細な処理手順を示すフローチャートである。
【図１２】データ復元装置の機能的構成例を示すブロック図である。
【図１３】データ復元処理手順を示すフローチャート（その１）である。
【図１４】データ復元処理手順を示すフローチャート（その２）である。
【発明を実施するための形態】
【００１５】
以下に添付図面を参照して、本発明にかかるデータ分散プログラム、データ復元プログラム、データ分散装置、データ復元装置、データ分散方法、およびデータ復元方法の好適な実施の形態を詳細に説明する。
【００１６】
まず、本実施の形態にかかるデータ分散例と分散されたデータの復元例について、図１および図２を用いて説明する。
【００１７】
＜データ分散例＞
図１は、実施の形態にかかるデータ分散例を示すシステム構成図である。図１では、端末群Ｔとサーバ群Ｓとが、インターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワーク１００を介して相互に通信可能である。
【００１８】
端末群Ｔの各々は、分散対象となる対象データＤのデータ分散処理を実行したり、分散されたデータのデータ復元処理を実行する。図１では、端末Ｔ１を、データ分散処理を実行する分散元端末とし、端末Ｔ２を、データ復元処理を実行する復元元端末とする。なお、図１では、端末Ｔ１，Ｔ２を端末群Ｔの代表として図示しており、端末Ｔ１，Ｔ２以外にも、データ分散処理やデータ復元処理を実行する端末が存在するものとする。
【００１９】
端末Ｔ１は、分散対象となる対象データＤを複数（図１では３個）に分割することにより、その分割されたデータである分割データ（図１の例ではＤ１〜Ｄ３）を取得する。そして、端末Ｔ１は、分割データ（図１では、例として、分割データＤ１〜Ｄ３をそれぞれ固有の暗号鍵ｋ１〜ｋ３で暗号化した暗号化分割データＣ１〜Ｃ３）を格納先サーバに送信する。
【００２０】
また、端末Ｔ１は、暗号化分割データＣ１〜Ｃ３を分割データＤ１〜Ｄ３に復号したり、分割データＤ１〜Ｄ３を対象データＤに復元するのに必要な管理情報Ｍを生成して、第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２とに分割する。そして、第１および第２の分散管理情報Ｍ１，Ｍ２のうちいずれか一方（図１では、第２の分散管理情報Ｍ２）を管理サーバに送信する。第１および第２の分散管理情報Ｍ１，Ｍ２は、それ自体では意味のないデータである。
【００２１】
サーバ群Ｓは、管理サーバＳＭと複数（図１ではｎ個。ｎ≧２。）のサーバＳ１〜Ｓｎとを有する。管理サーバＳＭは、分散元の端末Ｔ１からの第２の分散管理情報Ｍ２を格納する。また、サーバＳ１〜Ｓｎは、分散元の端末Ｔ１からの分割データ（図１では、例として、分割データＤ１〜Ｄ３をそれぞれ固有の暗号鍵ｋ１〜ｋ３で暗号化した暗号化分割データＣ１〜Ｃ３）を格納する。
【００２２】
つぎに、データ分散処理手順について説明する。データ分散処理は、図１中、（１）〜（８）の処理順に実行される。
【００２３】
（１）まず、端末Ｔ１は、対象データＤの分割数ｄをランダムに決定する。分割数ｄは、２以上ｎ以下とする。図１では、例として分割数ｄ＝３とする。なお、１つの対象データＤの分散処理手順において、ある格納先サーバに２個以上の分割データを格納させる場合（つまり、１つの格納先サーバにつき格納する分割データ数を１個に限定しない場合）には、分割数ｄはｄ＞ｎとしてもよい。特に、サーバＳ１〜Ｓｎの台数が限られている場合に有効である。そして、端末Ｔ１は、対象データＤを分割数ｄで分割する。図１では、分割数ｄ＝３であるため、対象データＤは、分割データＤ１〜Ｄ３に分割される。
【００２４】
（２）つぎに、端末Ｔ１は、ｄ個の分割データＤ１〜Ｄｄをそれぞれ暗号化するため、ｄ個の固有な暗号鍵ｋ１〜ｋｄをランダムに生成する。この暗号鍵ｋ１〜ｋｄは共通鍵であり、端末Ｔ２で復号するときに用いられる。したがって、端末Ｔ１での暗号化アルゴリズムは、共通鍵方式の暗号化アルゴリズムを用いることとなる。
【００２５】
図１では、分割数ｄ＝３であるため、ｄ＝３個の暗号鍵ｋ１〜ｋ３を生成する。暗号鍵ｋ１〜ｋ３は異なる鍵である。なお、各々の暗号鍵ｋ１〜ｋ３は、暗号化される分割データＤ１〜Ｄ３に一対一対応する。図１では、暗号鍵ｋ１は分割データＤ１に、暗号鍵ｋ２は分割データＤ２に、暗号鍵ｋ３は分割データＤ３に対応する。
【００２６】
（３）そして、端末Ｔ１は、ｄ個の分割データＤ１〜Ｄｄを対応する暗号鍵ｋ１〜ｋｄで暗号化する。図１では、端末Ｔ１は、暗号鍵ｋ１で分割データＤ１を暗号化して暗号化データＣ１を生成する。また、端末Ｔ１は、暗号鍵ｋ２で分割データＤ２を暗号化して暗号化データＣ２を生成する。さらに、端末Ｔ１は、暗号鍵ｋ３で分割データＤ３を暗号化して暗号化データＣ３を生成する。
【００２７】
生成された暗号化データＣ１には、分割データＤ１の識別情報ｎＤ１が付与され、生成された暗号化データＣ２には、分割データＤ２の識別情報ｎＤ２が付与され、生成された暗号化データＣ３には、分割データＤ３の識別情報ｎＤ３が付与される。なお、分割データＤ１〜Ｄ３を暗号化しない場合は、（２）および（３）の処理は不要である。
【００２８】
（４）端末Ｔ１は、サーバＳ１〜Ｓｎの中から分割データＤ１〜Ｄｄの格納先となるサーバＳ＃（以下、「格納先サーバＳ＃」）をｄ台ランダムに決定する。サーバ群Ｓ１〜Ｓｎには、識別番号１〜ｎが割り当てられているため、＃＝１〜ｎの中でランダムにｄ個選択する。図１の例では、サーバＳ１〜Ｓ３が格納先サーバに決定されている。そして、端末Ｔ１は、格納先サーバＳ１に暗号化分割データＤ１を、格納先サーバＳ２に暗号化分割データＤ２を、格納先サーバＳ３に暗号化分割データＤ３を送信する。
【００２９】
（５）また、端末Ｔ１は、管理情報Ｍを生成する。管理情報Ｍとは、分割データＤ１〜Ｄｄの識別情報ｎＤ１〜ｎＤｄ（たとえば、データ名）や分割データＤ１〜Ｄの格納先サーバＳ＃の識別情報ｎＳ＃（たとえば、サーバ名）、分割データＤ１〜Ｄｄの暗号鍵ｋ１〜ｋｄ（暗号化した場合）を含む情報である。管理情報Ｍがあれば、どの分割データがどのサーバに格納されているか、どの分割データどうしが結合可能かがわかる重要な情報である。また、管理情報Ｍには、対象データＤの識別情報ｎＤも含まれている。
【００３０】
図１では、分割数ｄ＝３であるため、管理情報Ｍには、対象データＤの識別情報ｎＤ、分割データＤ１の識別情報ｎＤ１、格納先サーバＳ１の識別情報ｎＳ１、暗号鍵ｋ１、分割データＤ２の識別情報ｎＤ２、格納先サーバＳ２の識別情報ｎＳ２、暗号鍵ｋ２、分割データＤ３の識別情報ｎＤ３、格納先サーバＳ３の識別情報ｎＳ３、暗号鍵ｋ３が含まれる。
【００３１】
（６）端末Ｔ１は、（５）で生成された管理情報Ｍを２つに分割する。そして、分割された各々に共通ＩＤを付与することで、第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２が生成される。管理情報Ｍの分割については後述する。
【００３２】
（７）そして、端末Ｔ１は、分割された第１および第２の分散管理情報Ｍ１，Ｍ２のうち、いずれか一方（図１では、第２の分散管理情報Ｍ２）を管理サーバＳＭに送信する。
【００３３】
（８）このあと、端末Ｔ１は、他方の分散管理情報Ｍ（図１では、第１の分散管理情報Ｍ１）を端末Ｔ２に送る。具体的には、たとえば、端末Ｔ１から端末Ｔ２に第１の分散管理情報Ｍ１をネットワーク１００経由で送る。この場合、電子メールに第１の分散管理情報Ｍ１を添付して送信してもよく、また、端末Ｔ２内の共有フォルダにデータ移動させてもよい。
【００３４】
さらに、可搬型記録媒体（たとえば、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリやＳＤカード）を端末Ｔ１に接続して、可搬型記録媒体に第１の分散管理情報Ｍ１をデータ移動させる。そして、その後、可搬型記録媒体を端末Ｔ２に接続して、端末Ｔ２内にデータ移動させることとしてもよい。
【００３５】
このようなデータ分散処理では、管理情報Ｍがなければ、分割数ｄや暗号化分割データＣ１〜Ｃ３（分割データＤ１〜Ｄ３でもよい）の格納先サーバＳ１〜Ｓ３は、ランダムに決定されるため、どのサーバにあるどの分割データをいくつ組み合わせれば元のデータに復元できるかがわからない。
【００３６】
第２の分散管理情報Ｍ２は管理サーバＳＭに格納されているが、第２の分散管理情報Ｍ２だけでは断片的な情報にすぎない。したがって、第２の分散管理情報Ｍ２が管理サーバＳＭから漏洩してもどのサーバにあるどの分割データをいくつ組み合わせれば元のデータに復元できるかがわからないこととなり、セキュリティを保つことができる。
【００３７】
＜データ復元例＞
図２は、実施の形態にかかるデータ復元例を示すシステム構成図である。図２では、図１の（８）で示した処理のあとに端末Ｔ２で実行されるデータ復元処理を示している。
【００３８】
（９）まず、端末Ｔ２は、管理サーバＳＭに対し、端末Ｔ２が所有している第１の分散管理情報Ｍ１と対をなす第２の分散管理情報Ｍ２の取得要求を管理サーバＳＭに送信する。そして、管理サーバＳＭは、第１の分散管理情報Ｍ１が、格納している第２の分散管理情報Ｍ２と対をなすことが確認できた場合に、第２の分散管理情報Ｍ２を、要求元の端末Ｔ２に送信する。
【００３９】
具体的には、端末Ｔ２は、第１の分散管理情報Ｍ１から共通ＩＤを抽出して、抽出した共通ＩＤを管理サーバＳＭに送信する。管理サーバＳＭは、格納している情報の中から、共通ＩＤが一致する第２の分散管理情報Ｍ２を検索する。そして、共通ＩＤが一致する第２の分散管理情報Ｍ２を要求元の端末Ｔ２に返す。
【００４０】
（１０）端末Ｔ２は、第２の分散管理情報Ｍ２をダウンロードすると、共通ＩＤが一致する第１および第２の分散管理情報Ｍ１，Ｍ２がそろうこととなる。端末Ｔ２は、第１および第２の分散管理情報Ｍ１，Ｍ２をマージして元の管理情報Ｍに復元する。
【００４１】
（１１）端末Ｔ２は、（１０）により管理情報Ｍが復元されると、対象データＤの識別情報ｎＤ、分割データＤ１〜Ｄ３の識別情報ｎＤ１〜ｎＤ３、暗号鍵ｋ１〜ｋ３、格納先サーバＳ１〜Ｓ３の識別情報ｎＳ１〜ｎＳ３を特定することができる。したがって、端末Ｔ２は、識別情報ｎＳ１〜ｎＳ３により特定された格納先サーバＳ１〜Ｓ３に、分割データＤ１〜Ｄ３の取得要求を送信する。
【００４２】
具体的には、端末Ｔ２は、格納先サーバＳ１に対し分割データＤ１の識別情報ｎＤ１を送信し、格納先サーバＳ２に対し分割データＤ２の識別情報ｎＤ２を送信し、格納先サーバＳ３に対し分割データＤ３の識別情報ｎＤ３を送信する。
【００４３】
格納先サーバＳ１〜Ｓ３は、受け取った識別情報ｎＤ１〜ｎＤ３をキーにして自サーバ内の情報を検索する。そして、格納先サーバＳ１〜Ｓ３は、該当する暗号化分割データＣ１〜Ｃ３が検索されると、要求元の端末Ｔ２に返す。
【００４４】
（１２）端末Ｔ２は、格納先サーバＳ１〜Ｓ３からの暗号化分割データＣ１〜Ｃ３がダウンロードされると、管理情報Ｍから暗号鍵ｋ１〜ｋ３を抽出する。そして、対応する暗号化データＣ１〜Ｃ３を復号する。これにより、分割データＤ１〜Ｄ３が得られることとなる。なお、格納先サーバＳ１〜Ｓ３において暗号化分割データＣ１〜Ｃ３ではなく分割データＤ１〜Ｄ３が格納されている場合は、（１２）の復号処理は不要である。
【００４５】
（１３）そして、端末Ｔ２は、（１２）で得られた分割データＤ１〜Ｄ３を結合して対象データＤを復元する。これにより、端末Ｔ２において、対象データＤを開くことができる。
【００４６】
（１４）このあと、可搬型記録媒体２００を端末Ｔ２に接続し、端末Ｔ２から対象データＤを可搬型記録媒体２００にデータ移動することで、端末Ｔ２から対象データＤを取り出すことができる。
【００４７】
このようなデータ分散処理およびデータ復元処理により、移動元（端末Ｔ１の所在地）から対象データＤを持ち運ばなくても安全に移動先（端末Ｔ２の所在地）で対象データＤを取り出すことができる。また、万が一、第１または第２の分散識別情報のいずれか一方が漏洩しても、どのサーバにあるどの分割データをいくつ組み合わせれば元のデータに復元できるかがわからない。したがって、対象データＤのセキュリティを保つことができる。
【００４８】
さらに、管理サーバＳＭでは、第２の分散管理情報Ｍ２を格納し、取得要求があった共通ＩＤと一致する共通ＩＤを有する第２の分散管理情報Ｍ２を、要求元の端末に返すだけでよい。したがって、管理サーバＳＭでは、論理的および物理的に厳格なアクセス制御を行う必要がなく、運用負担の軽減を図ることができる。
【００４９】
＜コンピュータのハードウェア構成例＞
図３は、実施の形態にかかるコンピュータ（端末Ｔ１，Ｔ２またはサーバＳＭ，Ｓ１〜Ｓｎ）のハードウェア構成例を示すブロック図である。図３において、コンピュータは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０３と、磁気ディスクドライブ３０４と、磁気ディスク３０５と、光ディスクドライブ３０６と、光ディスク３０７と、ディスプレイ３０８と、Ｉ／Ｆ（ＩｎｔｅｒＦａｃｅ）３０９と、キーボード３１０と、マウス３１１と、スキャナ３１２と、プリンタ３１３と、を備えている。また、各構成部はバス３００によってそれぞれ接続されている。
【００５０】
ここで、ＣＰＵ３０１は、コンピュータの全体の制御を司る。ＲＯＭ３０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ３０３は、ＣＰＵ３０１のワークエリアとして使用される。磁気ディスクドライブ３０４は、ＣＰＵ３０１の制御にしたがって磁気ディスク３０５に対するデータのリード／ライトを制御する。磁気ディスク３０５は、磁気ディスクドライブ３０４の制御で書き込まれたデータを記憶する。
【００５１】
光ディスクドライブ３０６は、ＣＰＵ３０１の制御にしたがって光ディスク３０７に対するデータのリード／ライトを制御する。光ディスク３０７は、光ディスクドライブ３０６の制御で書き込まれたデータを記憶したり、光ディスク３０７に記憶されたデータをコンピュータに読み取らせたりする。
【００５２】
ディスプレイ３０８は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ３０８は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００５３】
インターフェース（以下、「Ｉ／Ｆ」と略する。）３０９は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク３１４に接続され、このネットワーク３１４を介して他の装置に接続される。そして、Ｉ／Ｆ３０９は、ネットワーク３１４と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ３０９には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００５４】
キーボード３１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス３１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００５５】
スキャナ３１２は、画像を光学的に読み取り、コンピュータ内に画像データを取り込む。なお、スキャナ３１２は、ＯＣＲ（Ｏｐｔｉｃａｌ  Ｃｈａｒａｃｔｅｒ  Ｒｅａｄｅｒ）機能を持たせてもよい。また、プリンタ３１３は、画像データや文書データを印刷する。プリンタ３１３には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【００５６】
＜サーバのデータベース＞
図４は、管理サーバＳＭのデータベースの記憶内容を示す説明図である。図４において、データベース４００は、共通ＩＤごとに第２の分散管理情報Ｍ２が記憶されている。管理サーバＳＭは、端末Ｔ２から送られてくる共通ＩＤをキーにして、一致する共通ＩＤの第２の分散管理情報Ｍ２を検索することとなる。
【００５７】
図５は、サーバＳ１〜Ｓｎのデータベースの記憶内容を示す説明図である。図５では、代表としてサーバＳ１〜Ｓ３のデータベースを例に挙げて説明する。（Ａ）は、サーバＳ１のデータベース５０１の記憶内容を示している。データベース５０１には、分割データＤ１の識別情報ｎＤ１と暗号化分割データＣ１とが対応付けられて格納される。
【００５８】
（Ｂ）は、サーバＳ２のデータベース５０２の記憶内容を示している。データベース５０２には、格納先サーバとして分割データＤ２の識別情報ｎＤ２と暗号化分割データＣ１とが対応付けられて格納される。
【００５９】
（Ｃ）は、サーバＳ３のデータベース５０３の記憶内容を示している。データベース５０３には、格納先サーバとして分割データＤ３の識別情報ｎＤ３と暗号化分割データＣ１とが対応付けられて格納される。
【００６０】
各サーバＳ１〜Ｓ３は、端末Ｔ２から分割データＤ１〜Ｄ３の識別情報ｎＤ１〜ｎＤ３を受け取ると、データベース５０１〜５０３を検索する。そして、識別情報ｎＤ１〜ｎＤ３対応する暗号化分割データＣ１〜Ｃ３を抽出して、要求元の端末Ｔ２に返すこととなる。なお、図５では、サーバＳ１〜Ｓ３のデータベース５０１〜５０３の記憶内容について例示したが、残余のサーバＳ４〜Ｓｎについても同様のデータベースを有する。
【００６１】
＜管理情報Ｍの分割例＞
つぎに、管理情報Ｍの分割例について説明する。ここでは、例として、格納先サーバの識別情報ｎＳ＃としてサーバ名を用い、分割データＤ１〜Ｄｄの識別情報ｎＤ１〜ｎＤｄとして対象データＤのデータ名（たとえば、対象データＤがファイルであればファイル名）を用いる。サーバ名およびデータ名は、ＡＳＣＩＩ（Ａｍｅｒｉｃａｎ  Ｓｔａｎｄａｒｄ  Ｃｏｄｅ  ｆｏｒ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｉｎｔｅｒｃｈａｎｇｅ）文字コードを使用しているとすると、図６に示す文字コードを用いることとなる。
【００６２】
図６は、文字コードを示す図表である。図６において、各文字は文字コードの８ビット中の実質下位４〜５ビットで表現されていることがわかる。このことより、サーバ名やデータ名のような文字情報を文字単位で分割する際は、上位ビットと下位ビットで分割するのではなく、奇数ビットと偶数ビットで分割するほうが、元の文字情報を推測されにくい。
【００６３】
したがって、端末Ｔ１では、管理情報Ｍを２進数化して奇数番目のビット列と偶数番目のビット列に分割する。そして、分割された各々に対し、共通ＩＤを付加する。これにより、管理情報Ｍは、第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２とに分割される。なお、第１の分散管理情報Ｍ１が奇数番目のビット列を含むこととしてもよく、第１の分散管理情報Ｍ１が偶数番目のビット列を含むこととしてもよい。
【００６４】
図７は、管理情報Ｍの分割例を示す説明図である。（Ａ）に示す管理情報Ｍは、図１および図２に示した管理情報Ｍの具体例である。先頭から、「ＦＩＬＥ」は分割データＤの識別情報ｎＤを示す。つぎの「：」は識別情報ｎＤの終了を示す。
【００６５】
つぎの「Ｆ１＠ＳｅｒｖｅｒＡ＠ａ８ｆｂ３ｃ４２９ｅ」のうち、「Ｆ１」は分割データＤ１の識別情報ｎＤ１（ファイル名）を示す。「ＳｅｒｖｅｒＡ」は格納先サーバＳ１の識別情報ｎＳ１（サーバ名）を示す。「ａ８ｆｂ３ｃ４２９ｅ」は分割データＤ１の暗号鍵ｋ１を示す。識別情報ｎＤ１、識別情報ｎＳ１、暗号鍵ｋ１は「＠」で連結される。情報が続くため、「，」が記述される。
【００６６】
「，」のあとの「Ｆ２＠ＳｅｒｖｅｒＢ＠０ｄ２ｂｆ３８２ｃ９」のうち、「Ｆ２」は分割データＤ２の識別情報ｎＤ２（ファイル名）を示す。「ＳｅｒｖｅｒＢ」は格納先サーバＳ２の識別情報ｎＳ２（サーバ名）を示す。「０ｄ２ｂｆ３８２ｃ９」は分割データＤ２の暗号鍵ｋ２を示す。識別情報ｎＤ２、識別情報ｎＳ２、暗号鍵ｋ２は「＠」で連結される。情報が続くため、「，」が記述される。
【００６７】
「，」のあとの「Ｆ３＠ＳｅｒｖｅｒＣ＠３ｂｄ７２ｆａ９７ｅ」のうち、「Ｆ３」は分割データＤ３の識別情報ｎＤ３（ファイル名）を示す。「ＳｅｒｖｅｒＣ」は格納先サーバＳ３の識別情報ｎＳ３（サーバ名）を示す。「３ｂｄ７２ｆａ９７ｅ」は分割データＤ３の暗号鍵ｋ３を示す。識別情報ｎＤ３、識別情報ｎＳ３、暗号鍵ｋ３は「＠」で連結される。
【００６８】
（Ｂ）において、管理情報Ｍを１６進から２進数化する。２進数化された管理情報Ｍを、「管理情報Ｍ」とする。つぎに、（Ｃ）において、管理情報Ｍを奇数番目のビット列ｍ１と偶数番目のビット列ｍ２とに分離する。
【００６９】
最後に、（Ｄ）において、ビット列ｍ１，ｍ２のそれぞれの先頭（末尾でもよい）に、ビット列ｍ１，ｍ２に共通の共通ＩＤ「２０１００３０８０００１」を付与する。これにより、第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２とが生成される。なお、第１および第２の分散管理情報Ｍ１，Ｍ２から管理情報Ｍを復元する場合は、（Ｄ）→（Ｃ）→（Ｂ）→（Ａ）の順で処理することで、管理情報Ｍに復元することができる。
【００７０】
＜データ分散装置の機能的構成例＞
図８は、データ分散装置の機能的構成例を示すブロック図である。データ分散装置８００は、図１に示したデータ分散処理を実行するコンピュータであり、図１の端末Ｔ１に相当する。データ分散装置８００は、データ分割部８０１と、暗号鍵生成部８０２と、暗号化部８０３と、決定部８０４と、管理情報生成部８０５と、管理情報分割部８０６と、送信部８０７と、を備えている。データ分割部８０１〜送信部８０７は、具体的には、たとえば、図３に示したＲＯＭ３０２、ＲＡＭ３０３、磁気ディスク３０５、光ディスク３０７などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、その機能を実現する。
【００７１】
データ分割部８０１は、対象データＤを複数の分割データＤ１〜Ｄｄに分割する。具体的には、たとえば、データ分割部８０１は、分割数ｄをランダムに決定し、ランダムに決定された分割数ｄ個の分割データＤ１〜Ｄｄに対象データＤを分割する。なお、分割数ｄは必ずしもランダムにする必要はなく、あらかじめ設定された分割数ｄでもよい。なお、対象データＤの分散処理において（ｋ、ｎ）閾値法の秘密分散を用いる場合、対象データＤを復元する際に必要となる分割データの個数である閾値ｋは分割数ｄよりも小さい値となり得る。
【００７２】
暗号鍵生成部８０２は、分割データＤ１〜Ｄｄを暗号化する暗号鍵ｋ１〜ｋｄを分割データＤ１〜Ｄｄごとに生成する。図１に示した例では、暗号鍵生成部８０２は、分割データＤ１の暗号鍵ｋ１と、分割データＤ２の暗号鍵ｋ２と、分割データＤ３の暗号鍵ｋ３とを生成する。
【００７３】
暗号化部８０３は、分割データＤ１〜Ｄｄごとに暗号鍵生成部８０２によって生成された暗号鍵ｋ１〜ｋｄで暗号化することにより、分割データＤ１〜Ｄｄごとの暗号化分割データＣ１〜Ｃｄを生成する機能を有する。暗号化部８０３により暗号化処理については、既存の暗号化アルゴリズムを用いる。なお、暗号化分割データＣ１〜Ｃｄには、それぞれ分割データＤ１〜Ｄｄの識別情報ｎＤ１〜ｎＤｄが付与される。
【００７４】
決定部８０４は、サーバ群Ｓの中からデータ分割部８０１によって分割された各分割データＤ１〜Ｄｄの格納先サーバをランダムに決定する。具体的には、たとえば、決定部８０４は、サーバＳ１〜Ｓｎの中からランダムにｄ個のサーバを格納先サーバとして決定する。図１に示した例では、分割数ｄ＝３であるため、サーバＳ１〜Ｓ３が格納先サーバとしてランダムに決定されている。
【００７５】
管理情報生成部８０５は、サーバ群Ｓの中の特定のサーバの識別情報と格納先サーバの識別情報と各分割データの識別情報に基づいて、複数の分割データに関する管理情報Ｍを生成する。ここで、特定のサーバとは、第２の分散管理情報Ｍ２を格納する管理サーバＳＭである。なお、管理サーバＳＭは、サーバＳ１〜Ｓｎの中のサーバでもよい。管理情報生成部８０５は、図１や図７の（Ａ）に示したような管理情報Ｍを生成する。
【００７６】
管理情報分割部８０６は、管理情報生成部８０５によって生成された管理情報Ｍを分割し、分割された各々に共通する共通識別情報を付与することにより、第１および第２の分散管理情報Ｍ１，Ｍ２を生成する。ここで、共有識別情報とは、図１に示した共通ＩＤである。共通ＩＤは固有な情報である。管理情報分割部８０６は、図７に示したように、管理情報Ｍを分割する。
【００７７】
送信部８０７は、分割データＤ１〜Ｄｄの各々をｄ個の格納先サーバの中の対応する格納先サーバに送信する。また、分割データＤ１〜Ｄｄが暗号化されている場合は、暗号化分割データＣ１〜Ｃｄの各々を、ｄ個の格納先サーバの中の対応する格納先サーバに送信する。また、送信部８０７は、第１および第２の分散管理情報Ｍ１，Ｍ２のうちいずれか一方の分散管理情報（図１では、第２の分散管理情報Ｍ２）を、特定のサーバ（たとえば、管理サーバＳＭ）に送信する。
【００７８】
＜データ分散処理手順＞
図９および図１０は、データ分散処理手順を示すフローチャートである。まず、データ分散装置８００は、データ分割部８０１により、分割数ｄを決定する（ステップＳ９０１）。つぎに、データ分散装置８００は、データ分割部８０１により、対象データＤを分割数ｄ個に分割する（ステップＳ９０２）。そして、データ分散装置８００は、暗号鍵生成部８０２により、分割数ｄ分の暗号鍵ｋ１〜ｋｄをランダムに生成する（ステップＳ９０３）。つぎに、データ分散装置８００は、暗号化部８０３により、分割データＤ１〜Ｄの各々を対応する暗号鍵ｋ１〜ｋｄで暗号化する（ステップＳ９０４）。
【００７９】
そして、データ分散装置８００は、決定部８０４により、暗号化分割データＣ１〜Ｃｄの格納先サーバをランダムに決定する（ステップＳ９０５）。このあと、データ分散装置８００は、送信部８０７により、暗号化データＣ１〜Ｃｄを格納先サーバに送信する（ステップＳ９０６）。
【００８０】
つぎに、データ分散装置８００は、管理情報生成部８０５により、管理情報Ｍを生成し、管理情報分割部８０６により、生成された管理情報Ｍを分割する（ステップＳ９０７）。管理情報Ｍの詳細な生成処理および分割処理については後述する。管理情報Ｍ生成・分割処理（ステップＳ９０７）のあと、データ分散装置８００は、送信部８０７により、第１の分散管理情報Ｍ１を管理サーバＳＭに送信する（ステップＳ１００１）。そして、データ分散装置８００は、第１および第２の分散管理情報Ｍ１，Ｍ２の生成過程で生成された中間データをすべて削除し（ステップＳ１００２）、計時を開始する（ステップＳ１００３）。
【００８１】
そして、データ分散装置８００は、計時を開始してから、第２の分散管理情報Ｍ２がデータ分散装置８００外に出力されたか否かを判断する（ステップＳ１００４）。出力されていない場合（ステップＳ１００４：Ｎｏ）、データ分散装置８００は、所定時間経過したか否かを判断する（ステップＳ１００５）。所定時間経過していない場合（ステップＳ１００５：Ｎｏ）、ステップＳ１００４に戻る。
【００８２】
一方、所定時間経過した場合（ステップＳ１００５：Ｙｅｓ）、第２の分散管理情報Ｍ２が所定時間内に装置外に出力されなかったこととなる。この場合は、データ分散処理が正常に行われなかったとして、データ分散装置８００は、格納先サーバに、送信済みの暗号化分割データの削除指示を通知し、管理サーバＳＭに、送信済みの第２の分散管理情報Ｍ２の削除指示を通知する（ステップＳ１００６）。通知を受けた格納先サーバは、受信された暗号化分割データを削除する。同様に、管理サーバＳＭも、受信された第２の分散管理情報Ｍ２を削除する。そして、ステップＳ１００７に移行する。
【００８３】
また、ステップＳ１００４において、第２の分散管理情報Ｍ２が装置外に出力された場合（ステップＳ１００４：Ｙｅｓ）、所定時間内にデータ分散装置８００外に出力されたため、ステップＳ１００７に移行する。ステップＳ１００７では、第２の分散管理情報Ｍ２が出力済みであるため、データ分散装置８００は、データ分散装置８００から削除する（ステップＳ１００７）。これにより、データ分散処理を終了する。
【００８４】
＜管理情報Ｍ生成・分割処理手順＞
図１１は、図１０に示した管理情報Ｍ生成・分割処理（ステップＳ９０７）の詳細な処理手順を示すフローチャートである。まず、管理情報生成部８０５により、管理情報Ｍを生成する（ステップＳ１１０１）。具体的には、図１や図７の（Ａ）に示したように、対象データＤの識別情報ｎＤ、分割データＤ１の識別情報ｎＤ１、格納先サーバＳ１の識別情報ｎＳ１、暗号鍵ｋ１、分割データＤ２の識別情報ｎＤ２、格納先サーバＳ２の識別情報ｎＳ２、暗号鍵ｋ２、分割データＤ３の識別情報ｎＤ３、格納先サーバＳ３の識別情報ｎＳ３、暗号鍵ｋ３を連結する。
【００８５】
つぎに、管理情報分割部８０６により、図７の（Ｂ）に示したように、管理情報Ｍを２進数化して管理情報Ｍとする（ステップＳ１１０２）。そして、図７の（Ｃ）に示したように、２進数化された管理情報Ｍを奇数番目のビット列ｍ１と偶数番目のビット列ｍ２とに分離する（ステップＳ１１０３）。このあと、図７の（Ｄ）に示したように、固有の共通ＩＤを生成して（ステップＳ１１０４）、両ビット列ｍ１，ｍ２に付与する（ステップＳ１１０５）。これにより、管理情報Ｍが、第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２に分割される。このあと、ステップＳ１００１に移行する。なお、上述した分割方法のほか、管理情報Ｍは、一般的な秘密分散法により分割することとしてもよい。
【００８６】
＜データ復元装置の機能的構成例＞
図１２は、データ復元装置の機能的構成例を示すブロック図である。データ復元装置１２００は、図２に示したデータ復元処理を実行するコンピュータであり、図２の端末Ｔ２に相当する。データ復元装置１２００は、第１の取得部１２０１と、共通識別情報抽出部１２０２と、第２の取得部１２０３と、管理情報復元部１２０４と、第３の取得部１２０５と、暗号鍵抽出部１２０６と、復号部１２０７と、データ復元部１２０８と、を備えている。
【００８７】
第１の取得部１２０１〜データ復元部１２０８は、具体的には、たとえば、図３に示したＲＯＭ３０２、ＲＡＭ３０３、磁気ディスク３０５、光ディスク３０７などの記憶装置に記憶されたプログラムをＣＰＵ３０１に実行させることにより、その機能を実現する。
【００８８】
第１の取得部１２０１は、第１の分散管理情報Ｍ１を取得する。具体的には、たとえば、第１の分散管理装置をデータ復元装置１２００内に読み込めばよい。たとえば、データ分散装置８００からネットワーク１００経由で受信してもよく、また、第１の分散管理情報Ｍ１が格納されている可搬型記録媒体をデータ復元装置１２００に接続して、可搬型記録媒体からデータ移動することで、第１の分散管理情報Ｍ１を読み込むこととしてもよい。
【００８９】
共通識別情報抽出部１２０２は、第１の取得部１２０１によって取得された第１の分散管理情報Ｍ１の中から、共通識別情報を抽出する。具体的には、たとえば、第１および第２の分散管理情報Ｍ１，Ｍ２に含まれている共通ＩＤを、第１の分散管理情報Ｍ１の中から抽出する。
【００９０】
第２の取得部１２０３は、共通識別情報抽出部１２０２によって抽出された共通識別情報を特定のサーバに送信することにより、共通識別情報によって関連付けられている第２の分散管理情報Ｍ２を特定のサーバから取得する。具体的には、たとえば、共通ＩＤを管理サーバＳＭに送信する。
【００９１】
管理サーバＳＭでは、データベース４００を参照して、受信された共通ＩＤと一致する共通ＩＤに関連付けられている第２の分散管理情報Ｍ２を検索して、検索された第２の分散管理情報Ｍ２をデータ復元装置１２００に返す。第２の取得部１２０３は、このようにして管理サーバＳＭから送信されてくる第２の分散管理情報Ｍ２を受信する。
【００９２】
管理情報復元部１２０４は、第１の分散管理情報Ｍ１と第２の取得部１２０３によって取得された第２の分散管理情報Ｍ２とを結合することにより、管理情報Ｍを復元する。具体的には、たとえば、図７の（Ｄ）→（Ｃ）→（Ｂ）→（Ａ）の順に処理することで、管理情報Ｍに復元する。なお、管理情報Ｍを秘密分散法により第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２に分割した場合は、秘密分散法により第１の分散管理情報Ｍ１と第２の分散管理情報Ｍ２とを復号して結合することにより、管理情報Ｍに復元される。
【００９３】
第３の取得部１２０５は、復元部によって復元された管理情報Ｍに含まれている各格納先サーバの識別情報と各分割データの識別情報とに基づいて、格納先サーバごとに格納先サーバから暗号化分割データを取得する。具体的には、たとえば、図２の例では、格納先サーバＳ１〜Ｓ３の識別情報ｎＳ１〜ｎＳ３を管理情報Ｍから抽出して、格納先サーバＳ１〜Ｓ３を特定する。
【００９４】
また、分割データＤ１〜Ｄ３の識別情報ｎＤ１〜ｎＤ３を管理情報Ｍから抽出する。そして、第３の取得部１２０５は、特定された格納先サーバＳ１〜Ｓ３ごとに、分割データＤ１〜Ｄ３の識別情報ｎＤ１〜ｎＤ３を送信する。これにより、格納先サーバＳ１〜Ｓ３は、それぞれデータベース５０１〜５０３を検索し、識別情報ｎＤ１〜ｎＤ３が一致する暗号化分割データＣ１〜Ｃ３を抽出して、データ復元装置１２００に返す。第３の取得部１２０５は、格納先サーバＳ１〜Ｓ３からそれぞれ送信されてくる暗号化分割データＣ１〜Ｃ３を受信する。
【００９５】
暗号鍵抽出部１２０６は、管理情報Ｍの中から分割データごとの暗号鍵を抽出する。図２に示した例では、管理情報Ｍから暗号鍵ｋ１〜ｋ３を抽出する。
【００９６】
復号部１２０７は、暗号鍵抽出部１２０６によって抽出された暗号鍵を用いて第３の取得部１２０５によって取得された各暗号化分割データを復号する。図２に示した例では、抽出された暗号鍵ｋ１で暗号化分割データＣ１を復号して分割データＤ１を得る。また、抽出された暗号鍵ｋ２で暗号化分割データＣ２を復号して分割データＤ２を得る。また、抽出された暗号鍵ｋ３で暗号化分割データＣ３を復号して分割データＤ３を得る。
【００９７】
データ復元部１２０８は、復号部１２０７によって復号された各分割データを結合することにより対象データＤを復元する。図２の例では、復号された分割データＤ１〜Ｄ３を結合して対象データＤを生成する。また、格納先サーバＳ１〜Ｓ３から分割データＤ１〜Ｄ３が送信されてきた場合は、送信されてきた分割データＤ１〜Ｄ３を結合して、対象データＤを生成する。なお、秘密分散法により対象データＤを分割データＤ１〜Ｄ３に分割した場合は、秘密分散法により分割データＤ１〜Ｄ３を復号して結合することにより、対象データＤに復元される。
【００９８】
＜データ復元処理手順＞
図１３および図１４は、データ復元処理手順を示すフローチャートである。図１３および図１４では、図２に示した例に沿って（分割数＝３として）説明する。図１３において、まず、データ復元装置１２００は、第１の取得部１２０１により、第１の分散管理情報Ｍ１が取得されるのを待ち受ける（ステップＳ１３０１）。
【００９９】
第１の分散管理情報Ｍ１が取得された場合（ステップＳ１３０１：Ｙｅｓ）、データ復元装置１２００は、共通識別情報抽出部１２０２により、第１の分散管理情報Ｍ１の中から共通ＩＤを抽出する（ステップＳ１３０２）。つぎに、データ復元装置１２００は、第２の取得部１２０３により、抽出共通ＩＤを管理サーバＳＭに送信する（ステップＳ１３０３）。
【０１００】
そして、データ復元装置１２００は、第２の取得部１２０３により、管理サーバＳＭから抽出共通ＩＤと一致する共通ＩＤに関連付けられている第２の分散管理情報Ｍ２が受信されたか否かを判断する（ステップＳ１３０４）。受信されていない場合（ステップＳ１３０４：Ｎｏ）、データ復元装置１２００は、ＮＧ（該当する情報なし）か否かを判断する（ステップＳ１３０５）。
【０１０１】
ＮＧでない場合（ステップＳ１３０５：Ｎｏ）、データ復元装置１２００は、タイムアウトであるか否かを判断する（ステップＳ１３０６）。タイムアウトでない場合（ステップＳ１３０６：Ｎｏ）、ステップＳ１３０４に戻る。一方、タイムアウトの場合（ステップＳ：Ｙｅｓ）またはＮＧの場合（ステップＳ１３０５：Ｙｅｓ）、データ復元処理を終了する。この場合は、復元失敗となる。
【０１０２】
一方、ステップＳ１３０４において、第２の分散管理情報Ｍ２が受信された場合（ステップＳ１３０４：Ｙｅｓ）、データ復元装置１２００は、管理情報復元部１２０４により、管理情報Ｍに復元する（ステップＳ１３０７）。そして、データ復元装置１２００は、第３の取得部１２０５により、復元された管理情報Ｍから格納先サーバを特定して、暗号化分割データＣ１〜Ｃ３の取得要求を格納先サーバＳ１〜Ｓ３に送信する（ステップＳ１３０９）。
【０１０３】
このあと、図１４において、データ復元装置１２００は、取得要求した暗号化分割データＣ１〜Ｃ３がすべて受信されたか否かを判断する（ステップＳ１４０１）。いずれか１つでも受信されていない場合（ステップＳ１４０１：Ｎｏ）、データ復元装置１２００は、タイムアウトか否かを判断する（ステップＳ１４０２）。タイムアウトでない場合（ステップＳ１４０２：Ｎｏ）、ステップＳ１４０１に戻る。一方、タイムアウトの場合（ステップＳ１４０２：Ｙｅｓ）、データ復元処理を終了する。この場合も、復元失敗となる。
【０１０４】
一方、ステップＳ１４０１において、暗号化分割データＣ１〜Ｃ３が受信された場合（ステップＳ１４０１：Ｙｅｓ）、データ復元装置１２００は、暗号鍵抽出部１２０６により、管理情報Ｍから分割データＤ１〜Ｄ３ごとの暗号鍵ｋ１〜ｋ３を抽出する（ステップＳ１４０３）。そして、データ復元装置１２００は、復号部１２０７により、暗号化分割データＤ１〜Ｄ３を対応する暗号鍵ｋ１〜ｋ３で復号する（ステップＳ１４０４）。
【０１０５】
つぎに、データ復元装置１２００は、データ復元部１２０８により、復号された分割データＤ１〜Ｄ３を結合して対象データＤを復元する（ステップＳ１４０５）。このあと、データ復元装置１２００は、管理情報Ｍおよび対象データＤの生成過程で生成された中間データや管理情報Ｍをすべて削除し（ステップＳ１４０６）、対象データＤがデータ復元装置１２００外に読み出されたか否かを判断する（ステップＳ１４０７）。
【０１０６】
対象データＤが読み出されていない場合（ステップＳ１４０７：Ｎｏ）、データ復元装置１２００は、タイムアウトか否かを判断する（ステップＳ１４０８）。タイムアウトでない場合（ステップＳ１４０８：Ｎｏ）、ステップＳ１４０７に戻る。タイムアウトである場合（ステップＳ１４０８：Ｙｅｓ）、データ復元装置１２００は、対象データＤを削除する（ステップＳ１４０９）。これにより、データ復元処理を終了する。この場合は、復元は成功したが読み出しに失敗したこととなる。
【０１０７】
また、ステップＳ１４０７において、対象データＤが読み出された場合（ステップＳ１４０８：Ｙｅｓ）、データ復元処理を終了する。この場合は、復元および読み出しに成功したこととなる。
【０１０８】
以上説明したように、本実施の形態によれば、第２の分散管理情報Ｍ２が管理サーバＳＭから漏洩してもどのサーバにあるどの分割データをいくつ組み合わせれば元のデータに復元できるかがわからないこととなり、セキュリティを保つことができる。
【０１０９】
また、移動元（端末Ｔ１の所在地）から対象データＤを持ち運ばなくても安全に移動先（端末Ｔ２の所在地）で対象データＤを取り出すことができる。また、万が一、第１または第２の分散識別情報のいずれか一方が漏洩しても、どのサーバにあるどの分割データをいくつ組み合わせれば元のデータに復元できるかがわからない。したがって、対象データＤのセキュリティを保つことができる。
【０１１０】
さらに、管理サーバＳＭでは、第２の分散管理情報Ｍ２を格納し、取得要求があった共通ＩＤと一致する共通ＩＤを有する第２の分散管理情報Ｍ２を、要求元の端末に返すだけでよい。したがって、管理サーバＳＭでは、論理的および物理的に厳格なアクセス制御を行う必要がなく、運用負担の軽減を図ることができる。
【０１１１】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１１２】
（付記１）対象データを複数の分割データに分割し、各分割データに固有の識別情報を付与するデータ分割工程と、
前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成する管理情報生成工程と、
前記管理情報生成工程によって生成された管理情報を複数の分散管理情報に分割し、分割された各々に共通する共通識別情報を付与する管理情報分割工程と、
をコンピュータに実行させることを特徴とするデータ分散プログラム。
【０１１３】
（付記２）サーバ群の中から前記データ分割工程によって分割された各分割データの格納先サーバをランダムに決定する決定工程と、
前記管理情報分割工程によって分割された複数の分散管理情報のうち一部の分散管理情報を特定のサーバに送信するとともに、前記各分割データを当該分割データの格納先サーバに送信する送信工程と、を前記コンピュータにさらに実行させ、
前記管理情報生成工程は、
前記サーバ群の中の特定のサーバの識別情報と前記格納先サーバの識別情報と前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成することを特徴とする付記１に記載のデータ分散プログラム。
【０１１４】
（付記３）前記分割データを暗号化する暗号鍵を前記分割データごとに生成する暗号鍵生成工程と、
前記分割データごとに前記暗号鍵生成工程によって生成された暗号鍵で暗号化することにより、前記分割データごとの暗号化分割データを生成する暗号化工程と、を前記コンピュータに実行させ、
前記管理情報生成工程は、
前記特定のサーバの識別情報と前記格納先サーバの識別情報と前記分割データごとの暗号鍵とに基づいて、前記複数の分割データに関する管理情報を生成し、
前記送信工程は、
前記第２の分散管理情報を前記特定のサーバに送信するとともに、前記暗号化工程によって生成された各暗号化分割データを前記分割データの格納先サーバに送信する付記１または２に記載のデータ分散プログラム。
【０１１５】
（付記４）前記管理情報分割工程は、
前記管理情報を構成するビット列を、奇数番目のビット列と偶数番目のビット列とに分離して、両ビット列に前記共通識別情報を連結することにより、前記第１および第２の分散管理情報を生成する付記１〜３のいずれか１つに記載のデータ分散プログラム。
【０１１６】
（付記５）対象データを分割した各分割データの識別情報を有する管理情報から分割された複数の分散管理情報を取得する分散管理情報取得工程と、
前記分散管理情報取得工程により取得された複数の分散管理情報から前記管理情報を復元する管理情報復元工程と、
をコンピュータに実行させることを特徴とするデータ復元プログラム。
【０１１７】
（付記６）前記復元された管理情報が有する前記識別情報に対応する分割データを取得する分割データ取得工程と、
前記分割データ取得工程により取得された複数の分割データから前記対象データを復元する対象データ復元工程と、
をコンピュータにさらに実行させることを特徴とする付記５に記載のデータ復元プログラム。
【０１１８】
（付記７）前記分散管理情報取得工程は、
対象データを分割した各分割データの識別情報を有する管理情報から分割され共通の識別情報である共通識別情報を付与された複数の分散管理情報のうち、一部の分散管理情報を取得する第１の取得工程と、
前記第１の取得工程によって取得された分散管理情報から、当該分散管理情報に付与された前記共通識別情報を取得する共通識別情報取得工程と、
前記取得工程によって取得された共通識別情報に関連付けられている他の分散管理情報を取得する第２の取得工程と、を有することを特徴とする付記５または６に記載のデータ復元プログラム。
【０１１９】
（付記８）前記分散管理情報は、対象データを分割した各分割データの識別情報と当該各分割データの格納場所を示す格納場所識別情報とを有する管理情報から分割されたものであり、
前記分割データ取得工程は、
前記管理情報復元工程によって復元された管理情報が有する前記各分割データの識別情報と格納場所識別情報とに基づいて、前記格納場所情報により示される格納場所から前記識別情報に対応する前記分割データを取得する付記６に記載のデータ復元プログラム。
【０１２０】
（付記９）サーバ群の中の特定のサーバの識別情報と対象データを分割した各分割データの識別情報と前記各分割データを暗号化した各暗号化分割データを格納した前記サーバ群内の各格納先サーバの識別情報と前記分割データごとの暗号鍵とに基づく管理情報から分割された第１および第２の分散管理情報のうち、前記第１の分散管理情報を取得する第１の取得工程と、
前記第１の取得工程によって取得された第１の分散管理情報の中から、前記第１および第２の分散管理情報に固有な共通識別情報を抽出する共通識別情報抽出工程と、
前記共通識別情報抽出工程によって抽出された共通識別情報を前記特定のサーバに送信することにより、前記共通識別情報によって関連付けられている前記第２の分散管理情報を前記特定のサーバから取得する第２の取得工程と、
前記第１の分散管理情報と前記第２の取得工程によって取得された第２の分散管理情報とを結合することにより、前記管理情報を復元する管理情報復元工程と、
をコンピュータに実行させることを特徴とするデータ復元プログラム。
【０１２１】
（付記１０）前記復元工程によって復元された管理情報に含まれている前記各格納先サーバの識別情報と前記各分割データの識別情報とに基づいて、前記格納先サーバごとに前記格納先サーバから前記暗号化分割データを取得する第３の取得工程と、
前記管理情報の中から前記分割データごとの暗号鍵を抽出する暗号鍵抽出工程と、
前記暗号鍵抽出工程によって抽出された暗号鍵を用いて前記第３の取得工程によって取得された各暗号化分割データを復号する復号工程と、
前記復号工程によって復号された前記各分割データを結合することにより前記対象データを復元するデータ復元工程と、
を前記コンピュータに実行させることを特徴とする付記９に記載のデータ復元プログラム。
【０１２２】
（付記１１）対象データを複数の分割データに分割し、各分割データに固有の識別情報を付与するデータ分割手段と、
前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成する、管理情報生成手段と、
前記管理情報生成手段によって生成された管理情報を複数の分散管理情報に分割し、分割された各々に共通する共通識別情報を付与する管理情報分割手段と、
を備えることを特徴とするデータ分散装置。
【０１２３】
（付記１２）対象データを分割した各分割データの識別情報を有する管理情報から分割された複数の分散管理情報を取得する分散管理情報取得手段と、
前記分散管理情報取得手段により取得された複数の分散管理情報から前記管理情報を復元する管理情報復元手段と、
を備えることを特徴とするデータ復元装置。
【０１２４】
（付記１３）対象データを分割した複数の分割データに関する管理情報から分割された分散管理情報を格納する記憶媒体の製造方法であって、
対象データを複数の分割データに分割し、各分割データに固有の識別情報を付与するデータ分割工程と、
前記各分割データの識別情報に基づいて、前記複数の分割データに関する管理情報を生成する管理情報生成工程と、
前記管理情報生成工程によって生成された管理情報を複数の分散管理情報に分割し、分割された各々に共通する共通識別情報を付与する管理情報分割工程と、
前記管理情報分割工程によって分割され前記共通識別情報が付与された分散管理情報を記憶媒体に格納する格納工程と、
をコンピュータが実行する製造方法。
【０１２５】
（付記１４）対象データを分割した各分割データの識別情報を有する管理情報から分割された複数の分散管理情報を取得する、分散管理情報取得工程と、
前記分散管理情報取得工程により取得された複数の分散管理情報から前記管理情報を復元する、管理情報復元工程と、
前記復元された管理情報が有する前記識別情報に対応する分割データを取得する、分割データ取得工程と、
前記分割データ取得工程により取得された複数の分割データから前記対象データを復元する、対象データ復元工程と、
をコンピュータが実行することを特徴とするデータ復元方法。
【符号の説明】
【０１２６】
８００  データ分散装置
８０１  データ分割部
８０２  暗号鍵生成部
８０３  暗号化部
８０４  決定部
８０５  管理情報生成部
８０６  管理情報分割部
８０７  送信部
１２００  データ復元装置
１２０１  取得部
１２０２  共通識別情報抽出部
１２０３  取得部
１２０４  管理情報復元部
１２０５  取得部
１２０６  暗号鍵抽出部
１２０７  復号部
１２０８  データ復元部
【図１】
2011232834.tif 000003
【図２】
2011232834.tif 000004
【図３】
2011232834.tif 000005
【図４】
2011232834.tif 000006
【図５】
2011232834.tif 000007
【図６】
2011232834.tif 000008
【図７】
2011232834.tif 000009
【図８】
2011232834.tif 000010
【図９】
2011232834.tif 000011
【図１０】
2011232834.tif 000012
【図１１】
2011232834.tif 000013
【図１２】
2011232834.tif 000014
【図１３】
2011232834.tif 000015
【図１４】
2011232834.tif 000016