(57)【要約】【課題】  従来の秘密分散法の管理方法は、元データから生成した複数の分散データの１つを共通鍵で暗号化し、公開鍵で該共通鍵を暗号化して残りの分散データと共に１箇所に格納するため、共通鍵が復号されると容易に元データを復元できる問題点があった。また、閾値秘密分散法では所定数の分散情報を集めると秘密情報が部分的に復元でき、所定数に足りなくても特定の分散情報の組み合わせで秘密情報の特定部分が復元できるため、情報の秘匿性に欠ける問題点もあった。【解決手段】  本発明は、各手段で生成された素数ｐｉ、整数ｘｉ、乱数ａｉｊを用いて秘密情報２０から分割情報２１の５つ組みの成分を生成し、分散配置手段１６でｎ個の分割情報２１を各サーバ３に分散して管理し、復元の際は、収集した分割情報２１が復元に必要な条件を満たすと復元可能性判別手段１８で判別された場合のみ復元手段１９で秘密情報２０に復元できることで解決する。【選択図】  図１
2008241932.tif 000002
【特許請求の範囲】
【請求項１】
法の値（ｓ）、秘密情報（γ）から生成する分割情報の個数（ｎ）、および秘密情報を復元するために必要な分割情報の個数の閾値（ｋ）を設定する条件設定手段と、
ｋ個の任意の素数（ｐｉ）を生成して、前記素数を加算した合計値を復元可能性の重みの情報（ｍ）とする素数生成手段と、
ｋ個の前記素数（ｐｉ）と任意に生成した乱数（ａｉｊ）を用い、前記素数を底とする前記乱数のべき乗の積を分割情報に関する情報（α）とする第１の成分生成手段と、
前記法の値のオイラー関数に１を加算した値を２つの整数ｙおよび整数ｚの積に分解し、前記整数ｙあるいは整数ｚをｋ個の整数（ｘｉ）の和に分解する整数生成手段と、
ｋ個の前記整数（ｘｉ）と前記乱数（ａｉｊ）を用い、前記整数と前記乱数の積の和からなる連立１次方程式を復元に関する情報（β）とする第２の成分生成手段と、
前記整数ｙあるいは整数ｚと前記秘密情報と前記法の値とを用いて秘密情報に関する情報（Γ）を生成する第３の成分生成手段と、
前記分割情報に関する情報（α）、前記復元に関する情報（β）、前記秘密情報に関する情報（Γ）、前記復元可能性の重みの情報（ｍ）および前記法の値（ｓ）の５つ組で構成される前記分割情報を予め用意した複数のサーバに１つずつ分散配置する分散配置手段と、
前記サーバから複数の前記分割情報を収集する分割情報収集手段と、
収集された前記分割情報の前記分割情報に関する情報（α）を素因数分解して素数を取り出し、取り出した前記素数の合計値を算出し、復元に必要な条件を満たしているかを判別する復元可能性判別手段と、
前記復元に必要な条件を満たしている場合には、収集された前記分割情報の前記復元に関する情報（β）と前記復元可能性判別手段で素因数分解をして得た指数（ａｉｊ）とを用いて連立１次方程式を生成し、前記連立１次方程式の解と前記秘密情報に関する情報と前記法の値とを用いて前記秘密情報（γ）を復元する復元手段とを有することを特徴とするデータの分散管理システム。
【請求項２】
前記復元に必要な条件は、取り出した前記素数の合計値と前記復元可能性の重みの情報の値が一致し、かつ収集された前記分割情報の個数がｋ個以上であることを特徴とする請求項１に記載のデータの分散管理システム。
【請求項３】
前記条件設定手段により、前記法の値は任意に定めた２つ以上の素数の積で生成されることを特徴とする請求項１に記載のデータの分散管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、秘密分散法を用いて秘密情報から複数個の分割情報を生成して複数のサーバに分散して管理し、分散配置されたサーバから複数個の分割情報を収集し、収集した分割情報が復元に必要な条件を満たしている場合に限り秘密情報が復元できるデータの分散管理システムに関するものである。
【背景技術】
【０００２】
近年、情報資産を安全に管理することに関する意識の高まりにより、個人情報や秘密情報のデータをより安全に保管できるセキュリティ技術の提供が求められている。
【０００３】
従来のデータの管理方法には、秘密分散法を用いてデータの暗号化を行うものがあり、分散データ生成手段１１で元データＤから複数（ｎ、但しｎ≧２）の分散データを生成し、鍵暗号化手段１２で１つの分散データＰ（ｍｉｎ）を共通鍵で暗号化して鍵暗号分散データを生成し、また公開鍵で共通鍵を暗号化して共通鍵暗号化データを生成して、他の分散データＰｒｅｇ（１）〜Ｐｒｅｇ（ｎ−１）とともに格納する。そして、これらの各種データの送受信を行い、鍵復号化手段２３で共通鍵、分散データＰ（ｍｉｎ）を復号し、データ復元手段２４で復号された分散データＰ（ｍｉｎ）とＰｒｅｇ（１）〜Ｐｒｅｇ（ｎ−１）とから元データＤを復元する技術が特許文献１に記載されている。
【０００４】
また、（ｄ，ｋ，ｎ）閾値秘密分散法を用いたデータ管理方法では、秘密情報Ｓについて任意の（ｋ−ｄ＋１）個から（ｋ−１）個までの分割情報を集めると元の秘密情報Ｓが部分的に復元可能である。所定の数に足りなくても特定の分割情報の組み合わせからは秘密情報Ｓの特定の分割情報Ｓｔ（０≦ｔ≦ｄ−１）のみが復元可能であり、他の分割情報Ｓｕ（０≦ｕ≦ｄ−１，ｕ≠ｔ）は復元不可能とした秘密情報の復元を制御する技術が特許文献２に記載されている。
【特許文献１】特開２００６−３１１３８３号公報
【特許文献２】特開２００５−１３０４０４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の如く従来の秘密分散法を用いたデータの管理方法では、元データから生成した複数の分散データの１つに対して共通鍵で暗号化し、更に公開鍵でこの共通鍵を暗号化して、残りの分散データと共に１つの格納部に格納している。そのため少ないハードウェア資源でこれらのデータを保管することができても、暗号化された共通鍵が復号されてしまうと、同一の格納部に保存してある全ての分散データから容易に元データを復元できてしまう問題点があった。
【０００６】
また、閾値秘密分散法では所定の数の分散情報を集めると秘密情報が部分的に復元できてしまう問題点もあった。
【０００７】
更に、収集した分散情報が所定の数に足りなくても、特定の分散情報の組み合わせにより秘密情報の特定の部分情報のみが復元できるため全ての秘密情報は復元できないが、情報の秘匿性に欠ける問題点もあった。
【０００８】
最後に、秘密情報をより安全に効率よく保管することや、データの暗号化あるいは復号化に用いる鍵のリスク分散を実現するデータの管理方法が望まれていた。
【課題を解決するための手段】
【０００９】
本発明は、上述した問題点に鑑みて為されたものであり、法の値（ｓ）、秘密情報（γ）から生成する分割情報の個数（ｎ）、および秘密情報を復元するために必要な分割情報の個数の閾値（ｋ）を設定する条件設定手段と、ｋ個の任意の素数（ｐｉ）を生成して、前記素数を加算した合計値を復元可能性の重みの情報（ｍ）とする素数生成手段と、ｋ個の前記素数（ｐｉ）と任意に生成した乱数（ａｉｊ）を用い、前記素数を底とする前記乱数のべき乗の積を分割情報に関する情報（α）とする第１の成分生成手段と、前記法の値のオイラー関数に１を加算した値を２つの整数ｙおよび整数ｚの積に分解し、前記整数ｙあるいは整数ｚをｋ個の整数（ｘｉ）の和に分解する整数生成手段と、ｋ個の前記整数（ｘｉ）と前記乱数（ａｉｊ）を用い、前記整数と前記乱数の積の和からなる連立１次方程式を復元に関する情報（β）とする第２の成分生成手段と、前記整数ｙあるいは整数ｚと前記秘密情報と前記法の値とを用いて秘密情報に関する情報（Γ）を生成する第３の成分生成手段と、前記分割情報に関する情報（α）、前記復元に関する情報（β）、前記秘密情報に関する情報（Γ）、前記復元可能性の重みの情報（ｍ）および前記法の値（ｓ）の５つ組で構成される前記分割情報を予め用意した複数のサーバに１つずつ分散配置する分散配置手段と、前記サーバから複数の前記分割情報を収集する分割情報収集手段と、収集された前記分割情報の前記分割情報に関する情報（α）を素因数分解して素数を取り出し、取り出した前記素数の合計値を算出し、復元に必要な条件を満たしているかを判別する復元可能性判別手段と、前記復元に必要な条件を満たしている場合には、収集された前記分割情報の前記復元に関する情報（β）と前記復元可能性判別手段で素因数分解をして得た指数（ａｉｊ）とを用いて連立１次方程式を生成し、前記連立１次方程式の解と前記秘密情報に関する情報と前記法の値とを用いて前記秘密情報（γ）を復元する復元手段とを有することで解決するものである。
【００１０】
また、本発明では、前記復元に必要な条件は、取り出した前記素数の合計値と前記復元可能性の重みの情報の値が一致し、かつ収集された前記分割情報の個数がｋ個以上であることを特徴とする。
【００１１】
更に、本発明では、前記条件設定手段により、前記法の値は任意に定めた２つ以上の素数の積で生成されることを特徴とする。
【発明の効果】
【００１２】
上述したように、本発明のデータの分散管理システムは、素数生成手段で生成したｋ個の任意の素数（ｐｉ）と乱数（ａｉｊ）とを用いて分割情報に関する情報（α）を生成する第１の成分生成手段と、条件設定手段で設定した法の値（ｓ）を分解して得た整数ｚあるいは整数ｙを更に整数生成手段でｋ個の整数（ｘｉ）の和に分解し、整数（ｘｉ）と乱数（ａｉｊ）とを用いて復元に関する情報（β）を生成する第２の成分生成手段と、第３の成分生成手段で生成した秘密情報に関する情報（Γ）とを含む５つ組の成分からなる分割情報を複数サーバに分散配置する分散配置手段とを有することにより、秘密情報（γ）から生成したｎ個の分割情報をそれぞれ分散して管理することができる。そして、分割情報収集手段で収集した分割情報を用いて素数を取り出し、復元に必要な条件を満たしているかを復元可能性判別手段で判別し、必要な条件を満たしている場合には復元に関する情報（β）と復元可能性判別手段で素因数分解をして得た指数（ａｉｊ）とを用いて連立１次方程式を生成し、連立1次方程式の解と秘密情報に関する情報（Γ）と法の値（ｓ）とを用いて秘密情報（γ）を復元する復元手段とを有することにより、復元可能な条件を満たした場合のみ収集した分割情報より秘密情報が復元できる。これにより、秘密情報をｎ個に分割して安全に管理し、また復元可能な条件を満たさない限り、収集した分割情報から秘密情報を部分的あるいは全体的に復元することはできないので、秘密情報の秘匿性を提供することができる。
【００１３】
また、本発明では、収集した分割情報から取り出した素数の合計値と復元可能性の重みの情報（ｍ）が一致し、かつ収集された分割情報の個数がｋ個以上であることを復元に必要な条件とするため、収集した分割情報から秘密情報の部分的あるいは全てが漏洩することを防げ、機密性を確保することができる。これにより、所定数の分散情報から秘密情報を部分的に復元できたり、所定数に満たない場合でも特定の分散情報の組み合わせで秘密情報の特定の部分情報のみが復元できる従来の秘密分散法の問題点を回避できる。
【００１４】
更に、本発明では、法の値は任意に定めた２つ以上の素数の積で生成されるので、法の値から素因数分解で元の素数を取り出すことは困難である。これにより、悪意に分割情報を収集した場合に対し、秘密情報の復元処理を困難にすることができる。
【００１５】
更に、本発明では、秘密情報をより安全に効率よく保管することや、暗号化あるいは復号化に用いる鍵のリスク分散を実現する管理方法を提供している。
【発明を実施するための最良の形態】
【００１６】
秘密分散法とは秘密情報を安全に保管する方法のことであり、その方法のひとつにShamirにより提案された秘密分散法がある。Shamirの秘密分散法は、秘密情報に対して数学的処理を行って分散符号化し、複数個の分散情報に分割する。そしてこの生成された全てあるいは一定数以上の分散情報から元の秘密情報が復元可能とし、この分散情報が一定数より少ない場合には、それらの分散情報からは元の秘密情報が復元できない方法である。また、一般に知られている秘密分散法は（ｋ，ｎ）閾値法であり、生成したｎ個の分散情報のうちｋ個以上の分散情報があれば秘密情報を復元可能とし、ｋ個未満の分散情報からは秘密情報を復元できないとする方法である。
【００１７】
以下に、本発明における実施の形態について、図１〜図５を参照にして詳細に説明する。
【００１８】
図１は本発明の一実施の形態であるデータの分散管理システムの構成を説明する図であり、図２は本発明の一実施の形態であるデータの分散管理システムにより秘密情報が分散符号化された状態を表した図である。
【００１９】
図１に示すごとく、データの分散管理システムは、コンピュータ端末１と、ネットワーク２と、ネットワーク２を介してコンピュータ端末１とアクセスが行われる複数のサーバ３とを含むシステムで構成される。
【００２０】
コンピュータ端末１は、少なくとも入力部、出力部、表示部、記憶部、演算部等を備えたコンピュータである。例えば、条件設定手段１０、素数生成手段１１、第１の成分生成手段１２、整数生成手段１３、第２の成分生成手段１４、第３の成分生成手段１５、分散配置手段１６、分割情報収集手段１７、復元可能性判別手段１８、復元手段１９を備え、管理したい秘密情報２０から複数の分割情報２１を生成して、それらを複数のサーバ３に配置して管理し、また収集した一部の分割情報２１を用いて秘密情報２０を復元する。
【００２１】
条件設定手段１０は、法の値（ｓ）、秘密情報（γ）２０から生成する分割情報２１の個数（ｎ）、および秘密情報２０を復元するために必要な分割情報２１の個数の閾値（ｋ）を設定する手段であり、設定されたデータはコンピュータ端末１の記憶部に保存される。法の値（ｓ）とは２つ以上の任意個の素数の積の値であり、法あるいはｍｏｄ（モジュロ）と呼ばれる計算法は割り算を行った後の余りが答えとなる計算である。例えば、「３を法とする世界」では答えが必ず０〜２となり、「ｍｏｄ  ３をとる」と同等の意味である。秘密情報２０とは個人情報等の第３者に知られたくない情報であり、分割情報２１とは元の秘密情報とは相関性のない情報である。
【００２２】
素数生成手段１１は、ｋ個の任意の素数（ｐｉ）を生成して、その素数を加算した合計値を復元可能性の重みの情報（ｍ）とする手段であり、設定されたデータはコンピュータ端末１の記憶部に保存される。復元可能性の重みの情報（ｍ）は、
【００２３】
【数１】
2008241932.tif 000003
で表される。
【００２４】
第１の成分生成手段１２は、ｋ個の素数（ｐｉ）と任意に生成した乱数（ａｉｊ）を用い、素数を底とする乱数のべき乗の積を分割情報に関する情報（α）とする手段である。分割情報に関する情報（α）は、
αｉ＝ｐ１ａｉ１×ｐ２ａｉ２×…×ｐｋａｉｋ
（１≦ｉ≦ｎ），（１≦ｊ≦ｋ）
の式で生成され、条件設定手段１０で設定されたｎ個の分割情報に関する情報（α）が生成される。
【００２５】
整数生成手段１３は、法の値（ｓ）のオイラー関数に１を加算した値を２つの整数ｙおよび整数ｚの積に分解し、整数ｙあるいは整数ｚ（ここでは、整数ｚを用いるとする）をｋ個の整数（ｘｉ）の和に分解する手段である。整数ｙおよび整数ｚは、
φ（ｓ）＋１≡ｙｚ（ｍｏｄ  ｓ）
の式を満たす値であり、整数ｚを分解して生成されるｋ個の整数（ｘｉ）は
ｚ＝ｘ１＋ｘ２＋…＋ｘｋ
と表せる。尚、素数生成手段１１で生成された素数（ｐｉ）と整数（ｘｉ）は１対１に対応させる。
【００２６】
第２の成分生成手段１４は、ｋ個の整数（ｘｉ）と乱数（ａｉｊ）を用い、整数と乱数の和からなる連立１次方程式を復元に関する情報（β）とする手段である。復元に関する情報（β）は、
β＝ａｉ１×ｘ１＋ａｉ２×ｘ２＋…＋ａｉｋ×ｘｋ
（１≦ｉ≦ｎ），（１≦ｊ≦ｋ）
の式で生成され、条件設定手段１０で設定されたｎ個の復元に関する情報（β）が生成される。
【００２７】
第３の成分生成手段１５は、整数ｙと秘密情報２０を用いて秘密情報に関する情報（Γ）を生成する手段である。秘密情報に関する情報（Γ）は、
γｙ≡Γ（ｍｏｄ  ｓ）
の式を満たす。
【００２８】
分散配置手段１６は、分割情報に関する情報（α）、復元に関する情報（β）、秘密情報に関する情報（Γ）、復元可能性の重みの情報（ｍ）および法の値（ｓ）の５つ組で構成される分割情報２１を予め用意した複数のサーバ３に１つずつ分散配置する手段である。例えば、図２に示すごとく、秘密情報２０はｎ個（この場合は５個）の分割情報２１ａ、２１ｂ、２１ｃ、２１ｄ、２１ｅに分割され、分割情報は左から順に｛α，β，Γ，ｍ，ｓ｝と並べられ、各成分の間はカンマで区切られている。
【００２９】
分割情報収集手段１７は、サーバ３から複数の分割情報２１を収集する手段である。
【００３０】
復元可能性判別手段１８は、収集された分割情報２１の分割情報に関する情報（α）を素因数分解して素数（ｐｉ）を取り出し、取り出した素数の合計値を算出し、復元に必要な条件を満たしているかを判別する手段である。復元に必要な条件は、取り出した素数の合計値と復元可能性の重みの情報（ｍ）の値とが一致し、かつ収集された分割情報２１の個数がｋ個以上であることを満たすか否かである。
【００３１】
復元手段１９は、復元に必要な条件を満たしている場合には、収集された分割情報２１の復元に関する情報（β）と復元可能性判別手段１８で素因数分解をして得た指数（ａｉｊ）とを用いて連立１次方程式を生成し、連立１次方程式の解の和と秘密情報に関する情報（Γ）と法の値（ｓ）とを用いて秘密情報（γ）を復元する手段である。ここで、復元に必要な条件を満たす場合には、連立１次方程式の解はｘ１、ｘ２、…、ｘｋとなり、これら解の和
ｘ１＋ｘ２＋…＋ｘｋ
は、整数生成手段１３で生成した整数ｚと一致する。そして、以下の式
Γｚ≡γ（ｍｏｄ  ｓ）
に収集した分割情報２１の成分（この場合は、Γ、ｓ）を当てはめると秘密情報（γ）２０を復元できる。
【００３２】
ネットワーク２は、ハードウェア、ソフトウェア、データなどを共有する目的でコンピュータを結び付けた状態であり、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を利用して同一フロア、同一建物ないしは近隣の建物内にあるコンピュータ同士を接続したり、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を利用して遠隔地にあるコンピュータ同士を公衆回線網で接続したりする。
【００３３】
サーバ３は、ネットワーク２を介してコンピュータ端末１とアクセスできる端末であり、少なくとも入力部、出力部、表示部、記憶部、演算部とを備えている。例えば、コンピュータ端末１で生成した分割情報が分割情報分散配置手段１３によりサーバ３の記憶部に保存される。
【００３４】
次に図３は、本発明の一実施の形態であるデータの分散管理システムの処理を説明するフローチャートである。
【００３５】
まず、条件設定手段１０により法の値（ｓ）と秘密情報（γ）２０から生成する分割情報２１の個数（ｎ）および復元に必要な分割情報の個数の閾値（ｋ）を設定する（ステップＳ１）。設定されたデータはコンピュータ端末１の記憶部へ保存される。
【００３６】
続いて、素数生成手段１１でｋ個の素数（ｐｉ）を生成し、その素数の合計値を算出して復元可能性の重み情報（ｍ）の値を生成する（ステップＳ２）。
【００３７】
そして、第１の成分生成手段１２でｋ個の素数（ｐｉ）と任意に生成した乱数（ａｉｊ）とを用いて分割情報に関する情報（α）をｎ個生成する（ステップＳ３）。尚、分割情報に関する情報（α）は、ｐ１ａｉ１×ｐ２ａｉ２×…×ｐｋａｉｋで表される。
【００３８】
そして、整数生成手段１３で法の値（ｓ）を用いて２つの整数ｙ、整数ｚに分解し、整数ｚあるいは整数ｙをｋ個の整数（ｘｉ）の和に分解をする（ステップＳ４）。ここでは、整数ｚを用いて以下の処理を進めていく。
【００３９】
そして、第２の成分生成手段１４でｋ個の整数（ｘｉ）と乱数（ａｉｊ）とを用いて、復元に関する情報（β）をｎ個生成する（ステップＳ５）。尚、復元に関する情報（β）は、ａｉ１×ｘ１＋ａｉ２×ｘ２＋…＋ａｉｋ×ｘｋ＝βと連立１次方程式で表される。
【００４０】
そして、第３の成分生成手段１５で整数ｙと秘密情報（γ）とを用いて、秘密情報に関する情報（Γ）を生成する（ステップＳ６）。
【００４１】
そして、分散配置手段１６ではステップＳ１〜ステップＳ６で生成した５つ組みの成分で構成される分割情報２１をｎ個生成し、予め用意した複数のサーバ３に１つずつ分散配置する（ステップＳ７）。尚、ここまでが秘密情報２０から分割情報２１を生成する分散符号化の処理である。
【００４２】
次に、分割情報収集手段１７でサーバ３から複数個の分割情報２１を収集する（ステップＳ８）。
【００４３】
続いて、復元可能性判別手段１８で収集した分割情報２１を素因数分解し、取り出した素数（ｐｉ）の合計値と収集した分割情報２１の復元可能性の重みの情報（ｍ）が一致し、かつ収集した分割情報２１の個数が復元に必要な分割情報２１の個数の閾値（ｋ）以上であるという復元に必要な条件を満たすか否かを判別する（ステップＳ９）。
【００４４】
そして、復元に必要な条件を満たす場合には（ステップＳ９のＹＥＳ）、復元手段１９で収集した分割情報２１から秘密情報（γ）２０を復元できる（ステップＳ１０）。一方、復元に必要な条件を満たさない場合には（ステップＳ９のＮＯ）、復元の処理に必要な素数が不足するため秘密情報の部分あるいは全体を復元することはできずに、処理は終了する。尚、ステップＳ８からここまでが分割情報２１から秘密情報２０を復元する処理である。
【００４５】
次に図４および図５を用いて本発明の一実施の形態であるデータの分散管理システムの処理を簡単に説明する。図４（Ａ）は本発明の一実施の形態であるデータの分散管理システムにおける秘密情報の分散符号化の処理を説明する図であり、図４（Ｂ）は本発明の一実施の形態であるデータの分散管理システムにおける秘密情報の復元処理を説明する図であり、図５は本発明の基本となる連立方程式と素数のべき乗の積との変換を表した図である。
【００４６】
図４（Ａ）に示すごとく、秘密情報（γ）２０から分割情報２１を生成する場合は、
（１）まず、条件設定手段１０で法の値（ｓ）、秘密情報（γ）２０から生成する分割情報２１の個数（ｎ）、復元に必要な分割情報の個数の閾値（ｋ）を設定し、後続の処理へそれらの値を渡す。尚、法の値（ｓ）は任意に定めた２つ以上の素数の積で生成される。
【００４７】
また、整数生成手段１３で法の値（ｓ）のオイラーの関数に１を加算した値を２つの整数ｙ、整数ｚの積に分解する。ここでは、整数ｚを更にｋ個の整数（ｘｉ）の和
ｚ＝ｘ１＋ｘ２＋…＋ｘｋ
に分解し、それらの値も後続の処理へ渡す。
【００４８】
（２）次に、素数生成手段１１でｋ個の任意の素数（ｐｉ）を生成し、その合計値で復元可能性の重みの情報（ｍ）
ｍ＝ｐ１＋ｐ２＋…＋ｐｋ
を生成する。また、（１）より受け取ったｋ個の整数（ｘｉ）をｋ個の素数（ｐｉ）に１対１対応させる。
【００４９】
（３）次に、第１の成分生成手段１２でｋ個の素数（ｐｉ）と任意に生成した乱数（ａｉｊ）を用い、以下の公式
αｉ＝ｐ１ａｉ１×ｐ２ａｉ２×…×ｐｋａｉｋ
（１≦ｉ≦ｎ）
に変換をし、ｎ個の分割情報に関する情報（α）を生成する。
【００５０】
（４）次に、第２の成分生成手段１４でｋ個の整数（ｘｉ）と乱数（ａｉｊ）を用い、以下の公式
βｉ＝ａｉ１×ｘ１＋ａｉ２×ｘ２＋…＋ａｉｋ×ｘｋ
（１≦ｉ≦ｎ）
に変換をし、ｎ個の復元に関する情報（β）を生成する。
【００５１】
そして、図示はしないが、第３の成分生成手段１５で整数ｙと秘密情報（γ）と法の値（ｓ）を用い、以下の公式
γｙ≡Γ（ｍｏｄ  ｓ）
を満たす秘密情報に関する情報（Γ）を生成し、分散配置手段１６で｛α，β，Γ，ｍ，ｓ｝のように構成されるｎ個の分割情報２１を複数のサーバ３に分散配置をして、分散符号化の処理は終了する。
【００５２】
尚、ここでは、第１の分生成手段１２で分割情報に関する情報（α）を生成した後に、第２の成分生成手段１４で復元に関する情報（β）を生成する順番で説明しているが、両者は法の値（ｓ）および復元可能性の重みの情報（ｍ）が求まれば生成することができる。したがって、復元に関する情報（β）を生成した後に分割情報に関する情報（α）を生成する順番で処理を進めても良い。
【００５３】
続いて、図４（Ｂ）に示すごとく、収集した分割情報２１から秘密情報（γ）２０を復元する場合は、
（５）まず、分割情報収集手段１７で複数のサーバ３に分散された分割情報２１を収集し、分割情報に関する情報（α）を取り出す。尚、ここでは復元に必要な分割情報の個数（ｋ個）以上が収集されているものとして説明していく。
【００５４】
（６）次に、復元可能性判別手段１８で分割情報に関する情報（α）を素因数分解して、素数（ｐｉ）を取り出す。取り出した素数の合計値を算出し、その合計値が復元可能性の重みの情報（ｍ）と一致し、かつ収集した分割情報がｋ個以上であるかを判別する。尚、ここでは復元に必要な条件を満たしているものとして説明していく。
【００５５】
（７）次に、復元手段１９で収集した分割情報２１の復元に関する情報（β）と取り出した指数（ａｉｊ）とを用いて連立１次方程式
β＝ａｉｊ×ｘｉ
を生成し、連立１次方程式を解く。連立１次方程式の解の和（ｚ）と秘密情報に関する情報（Γ）と法の値（ｓ）とを用いて、
Γｚ≡γ（ｍｏｄ  ｓ）
を満たす秘密情報（γ）の値を算出でき、復元の処理は終了する。
【００５６】
一方、復元に必要な条件を満たさない場合には、復元可能性判別手段１８で取り出す素数が不足しているため、復元手段１９で生成した連立１次方程式を解くことができない。これにより復元に必要な条件を満たした場合のみ、収集した分割情報２１より秘密情報（γ）２０を復元することができる。
【００５７】
尚、秘密情報（γ）が連立１次方程式の解の和（ｘ１+ｘ２+…+ｘｋ＝ｚ）と秘密情報に関する情報（Γ）とを用いて復元できる場合には、図５に示すごとく、復元に関する情報（β）を求める連立１次方程式の変数（ｘｉ）と係数（ａｉｊ）の和で構成される
左辺＝ａｉ１×ｘ１＋ａｉ２×ｘ２＋…+ａｉｋ×ｘｋ
を、変数（ｘｉ）を使わずに変数の代用である素数（ｐｉ）のべき乗の積、すなわち分割情報に関する情報（α）を求める式
ｐ１ａｉ１×ｐ２ａｉ２×…×ｐｋａｉｋ
に変換できる。これにより、復元に関する情報（β）および分割情報に関する情報（α）を自然数に変換することができる。
【００５８】
（実施例１）
以下に図６を用いて秘密情報から分割情報を生成して複数のサーバに分散管理し、サーバから分割情報の一部を収集して秘密情報へ復元する場合を詳細に説明する。
【００５９】
図６（Ａ）は分散管理システムの分散符号化の処理により秘密情報から分割情報が生成される過程を説明する図であり、図６（Ｂ）は分散管理システムの復元の処理により収集した分割情報から秘密情報を復元する過程を説明する図である。ここでは秘密情報（γ）をγ＝１０２３として説明する。
【００６０】
図６（Ａ）に示すごとく、秘密情報（γ）２０から分割情報２１を生成する場合は、
（１）まず、条件設定手段１０で
・法の値（ｓ）：  ｓ＝４９９４９（＝２５１×１９９）
・生成する分割情報の個数（ｎ）：  ｎ＝５
・復元に必要な分割情報の個数の閾値（ｋ）：  ｋ＝３
を設定し、後続の処理へそれらの値を渡す。ここでは任意の２つ以上の素数２５１と１９９を用いて法の値を生成する。
【００６１】
また、整数生成手段１３で法の値（ｓ）を用いて以下の式
φ（ｓ）＋１≡ｙｚ（ｍｏｄ  ｓ）
を満たす２つの整数ｙ、整数ｚを求めると、
φ（ｓ）＋１＝２５０×１９８＋１＝４９５０１より
ｙ＝５９，ｚ＝８３９
となる。ここでは、整数ｚを更に３個の整数（ｘｉ）の和
８３９＝４４５＋２９５＋９９
に分解し、それらの値（ｘ１＝４４５，ｘ２＝２９５，ｘ３＝９９）も後続の処理へ渡す。
【００６２】
（２）次に、素数生成手段１１で３個の任意の素数（ｐ１＝７，ｐ２＝１１，ｐ３＝１３）を生成し、その合計値で復元可能性の重みの情報（ｍ）
ｍ＝７＋１１＋１３＝３１
を生成する。また、（１）より受け取った３個の整数（ｘ１、ｘ２、ｘ３）を３個の素数（ｐ１、ｐ２、ｐ３）に１対１対応させる。この場合は、７⇔４５５、１１⇔２９５、１３⇔９９となる。
【００６３】
（３）次に、第１の成分生成手段１２で３個の素数（ｐ１、ｐ２、ｐ３）と任意に生成した乱数（２，２，２）、（１，２，０）、（１，２，２）、（２，１，０）、（２，２，１）とを用い、以下の式
α１：  ７＾２×１１＾２×１３＾２＝１００２００１
α２：  ７＾１×１１＾２×１３＾０＝８４７
α３：  ７＾１×１１＾２×１３＾２＝１４３１４３
α４：  ７＾２×１１＾１×１３＾０＝５３９
α５：  ７＾２×１１＾２×１３＾１＝７７０７７
に変換をし、５個の分割情報に関する情報（α）を生成する。
【００６４】
（４）次に、第２の成分生成手段１４で３個の整数（ｘ１、ｘ２、ｘ３）と乱数（２，２，２）、（１，２，０）、（１，２，２）、（２，１，０）、（２，２，１）とを用い、以下の式
β１：  β１＝２×４５５＋２×２９５＋２×９９＝１６７８
β２：  β２＝２×４５５＋２×２９５＋２×９９＝１０３５
β３：  β３＝２×４５５＋２×２９５＋２×９９＝１２３３
β４：  β４＝２×４５５＋２×２９５＋２×９９＝１１８５
β５：  β５＝２×４５５＋２×２９５＋２×９９＝１５７９
に変換をし、５個の復元に関する情報（β）を生成する。
【００６５】
そして、図示はしないが、第３の成分生成手段１５で整数ｙと秘密情報（γ）と法の値（ｓ）とを用い、以下の公式
γｙ≡Γ（ｍｏｄ  ｓ）より
１０２３＾５９≡Γ（ｍｏｄ  ４９９４９）
を満たす秘密情報に関する情報（Γ）（この場合は、Γ＝１４６６７）を生成し、分散配置手段１６で｛α，β，Γ，ｍ，ｓ｝の５つ組みの成分で構成される５個の分割情報
分割情報１：｛１００２００１，１６７８，１４６６７，３１，４９９４９｝
分割情報２：｛８４７，１０３５，１４６６７，３１，４９９４９｝
分割情報３：｛１４３１４３，１２３３，１４６６７，３１，４９９４９｝
分割情報４：｛５３９，１１８５，１４６６７，３１，４９９４９｝
分割情報５：｛７７０７７，１５７９，１４６６７，３１，４９９４９｝
を複数のサーバ３に分散配置をして、分散符号化の処理は終了する。
【００６６】
尚、ここでは、分割情報に関する情報（α）を生成した後に復元に関する情報（β）を生成する順番で説明しているが、復元に関する情報（β）を生成した後に分割情報に関する情報（α）を生成する順番で処理を進めても良い。
【００６７】
続いて、図６（Ｂ）に示すごとく、収集した分割情報２１から秘密情報（γ）２０を復元する場合は、
（５）まず、分割情報収集手段１７で複数のサーバ３に分散された分割情報２１を収集する。尚、ここでは分割情報１〜分割情報４の４個を収集したものとして説明する。そして、４個の分割情報より分割情報に関する情報（α）
｛αｉ｝＝｛１００２００１，８４７，１４３１４３，５３９｝
を取り出す。
【００６８】
（６）次に、復元可能性判別手段１８で分割情報に関する情報（α）を
α１：１００２００１＝７＾２×１１＾２×１３＾２
α２：８４７＝７＾１×１１＾２
α３：１４３１４３＝７＾１×１１＾２×１３＾２
α４：５３９＝７＾２×１１＾１
と素因数分解をし、素数（ｐ１＝７、ｐ２＝１１、ｐ３＝１３）を取り出す。そして、取り出した素数ｐ１〜ｐ３の合計値
ｐ１＋ｐ２＋ｐ３＝７＋１１＋１３＝３１
を算出し、（6-1）その合計値が復元可能性の重みの情報（ｍ＝３１）と一致し、かつ（6-2）収集した分割情報が３個以上か否かを判別する。この場合は、
(6-1)  ｐ１＋ｐ２＋ｐ３＝ｍ
(6-2)  分割情報１〜分割情報４≧３個（閾値）
であるので、復元に必要な条件を満たしている。
【００６９】
（７）次に、復元手段１９で収集した分割情報２１の復元に関する情報（β）と復元可能性判別手段１８の素因数分解で取り出した指数（２，２，２）、（１，２，０）、（１，２，２）、（２，１，０）とを用いて連立１次方程式
β１：  ２×ｘ１＋２×ｘ２＋２×ｘ３＝１６７８
β２：  １×ｘ１＋２×ｘ２＝１０３５
β３：  １×ｘ１＋２×ｘ２＋２×ｘ３＝１２３３
β４：  ２×ｘ１＋１×ｘ２＝１１８５
を生成し、連立１次方程式を解く。この場合は、
ｘ１＝４４５、ｘ２＝２９５、ｘ３＝９９より
ｘ１＋ｘ２＋ｘ３＝４４５＋２９５＋９９＝８３９
となり、連立１次方程式の解の和（ｚ）はｚ＝８３９となる。そして、秘密情報に関する情報（Γ）と法の値（ｓ）とを用いて、
Γｚ≡γ（ｍｏｄ  ｓ）より
１４６６７＾８３９≡γ（ｍｏｄ  ４９９４９）
を満たす秘密情報（γ）の値をγ＝１０２３と算出でき、復元の処理は終了する。
【産業上の利用可能性】
【００７０】
以上詳しく説明したとおり、本発明のデータの分散管理システムを用いることにより、素数の性質を利用して秘密情報を分散符号化した分割情報を複数のサーバに１つずつ分散して配置し、復元処理では、収集した分割情報から算出した素数の合計値と分割可能性の重みの情報（ｍ）が一致し、かつ収集した分割情報の個数が復元に必要な分割情報の個数の閾値（ｋ）以上である場合のみ、収集した分割情報より秘密情報が完全に復元できる。従って、より高い秘匿性を提供する秘密情報の管理に利用できる。
【図面の簡単な説明】
【００７１】
【図１】図１は、本発明の一実施の形態であるデータの分散管理システムの構成を説明する図である。
【図２】図２は、本発明の一実施の形態であるデータの分散管理システムにより秘密情報が分散符号化された状態を表した図である
【図３】図３は、本発明の一実施の形態であるデータの分散管理システムの処理を説明するフローチャートである。
【図４】図４（Ａ）は本発明の一実施の形態であるデータの分散管理システムにおける秘密情報の分散符号化の処理を説明する図であり、図４（Ｂ）は本発明の一実施の形態であるデータの分散管理システムにおける秘密情報の復元処理を説明する図である。
【図５】図５は、本発明の基本となる連立方程式と素数のべき乗の積との変換を表した図である。
【図６】図６（Ａ）は分散管理システムの分散符号化の処理により秘密情報から分割情報が生成される過程を説明する図であり、図６（Ｂ）は分散管理システムの復元の処理により収集した分割情報から秘密情報を復元する過程を説明する図である。
【符号の説明】
【００７２】
１    コンピュータ端末
２    ネットワーク
３    サーバ
１０    条件設定手段
１１    素数生成手段
１２    第１の成分生成手段
１３    整数生成手段
１４    第２の成分生成手段
１５    第３の成分生成手段
１６    分散配置手段
１７    分割情報収集手段
１８    復元可能性判別手段
１９    復元手段
２０    秘密情報
２１    分割情報
【図１】
2008241932.tif 000004
【図２】
2008241932.tif 000005
【図３】
2008241932.tif 000006
【図４】
2008241932.tif 000007
【図５】
2008241932.tif 000008
【図６】
2008241932.tif 000009