(57)【要約】【課題】  個人情報などの秘密情報を複数のデータベースなどに分散保管し、これらの内幾つか以上の分散された情報により元の秘密情報を復元可能とする。【解決手段】  情報分散元は、保管の対象とする秘密情報を入力し、該入力された秘密情報を符号化して、部分的な提示を許す提示情報部分と部分的な提示を許さない非提示情報部分とに分割し、特定の分散情報の組み合わせから提示情報部分を復元可能なように、前記分割された秘密情報から複数の分散情報を生成し、該生成した情報を複数の情報保管先に配布して保管する。情報復元元は、復元したい情報の指定を受け付けて、元の秘密情報あるいはその提示情報部分の復元に必要な特定の分散情報の組み合わせを選択し、該選択された分散情報を保管する各情報保管先から当該分散情報を取得し、該取得した分散情報から元の秘密情報あるいはその提示情報部分を復元する。【選択図】図１
2005141436.tif 000002
【特許請求の範囲】
【請求項１】
秘密情報を複数の分散情報に分散符号化して保管する情報分散保管方法であって、
情報分散元は、保管の対象とする秘密情報を入力し、該入力された秘密情報を符号化して、部分的な提示を許す提示情報部分と部分的な提示を許さない非提示情報部分とに分割し、特定の分散情報の組み合わせから提示情報部分を復元可能なように、前記分割された秘密情報から複数の分散情報を生成し、該生成した情報を複数の情報保管先に配布して保管することを特徴とする情報分散保管方法。
【請求項２】
請求項１に記載の情報分散保管方法であって、
情報復元元は、復元したい情報の指定を受け付けて、元の秘密情報あるいはその提示情報部分の復元に必要な特定の分散情報の組み合わせを選択し、該選択された分散情報を保管する各情報保管先から当該分散情報を取得し、該取得した分散情報から元の秘密情報あるいはその提示情報部分を復元し出力することを特徴とする情報分散保管方法。
【請求項３】
秘密情報を複数の分散情報に分散符号化する情報分散装置、分散情報を保管管理する情報保管装置、及び、分散情報から元の秘密情報あるいはその提示情報部分を復元する情報復元装置により構成される情報分散保管システムであって、
情報分散装置は、保管の対象とする秘密情報の入力を受け付ける情報入力手段と、入力された秘密情報を符号化し、部分的な提示を許す提示情報部分と部分的な提示を許さない非提示情報部分とに分割する情報分割手段と、特定の分散情報の組み合わせから提示情報部分を復元可能なように、提示情報部分と非提示情報部分とに分割した秘密情報から複数の分散情報を生成する分散情報生成手段と、生成した分散情報を情報保管装置に配布する分散情報通信手段とを備え、
情報保管装置は、分散情報を情報分散装置または情報復元装置との間で送受信する分散情報通信手段と、情報分散装置から配布された分散情報を記憶する分散情報記憶手段とを備え、
情報復元装置は、復元したい情報の指定を受け付けて、元の秘密情報あるいはその提示情報部分の復元に必要な特定の分散情報の組み合わせを選択する分散情報選択手段と、選択した分散情報を保管する各情報保管装置から分散情報を取得する分散情報通信手段と、取得した分散情報から元の秘密情報あるいはその提示情報部分を復元する情報復元手段と、復元した情報を出力する情報出力手段とを備えることを特徴とする情報分散保管システム。
【請求項４】
請求項３に記載の情報分散保管システムであって、
情報保管装置は、配布された分散情報を記憶する分散情報記憶手段内での配置場所を決定する分散情報配置手段を備えることを特徴とする情報分散保管システム。
【請求項５】
請求項３もしくは４に記載の情報分散保管システムであって、
情報分散装置、情報保管装置および情報復元装置の少なくとも一部の装置は、元の秘密情報、提示情報部分および非提示情報部分、分散情報を暗号化する情報暗号化手段、及び／又は、暗号化された元の秘密情報、提示情報部分および非提示情報部分、分散情報を復号する情報復号手段を備えることを特徴とする情報分散保管システム。
【請求項６】
請求項３乃至５のいずれか１項に記載の情報分散保管システムであって、
情報分散装置、情報保管装置及び情報装置の少なくとも一部の装置は、分散情報を送受信する際に、相互の装置ないしはその利用者が適切な資格を有していることを認証する認証手段を備えることを特徴とする情報分散保管システム。
【請求項７】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報分散装置。
【請求項８】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報保管装置。
【請求項９】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報復元装置。
【請求項１０】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報分散装置の処理機能をコンピュータで実行させるためのプログラム。
【請求項１１】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報保管装置の処理機能をコンピュータで実行させるためのプログラム。
【請求項１２】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報復元装置の処理機能をコンピュータで実行させるためのプログラム。
【請求項１３】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報分散装置の処理機能をコンピュータで実行させるためのプログラムを記録した記録媒体。
【請求項１４】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報保管装置の処理機能をコンピュータで実行させるためのプログラムを記録した記録媒体。
【請求項１５】
請求項３乃至６のいずれか１項に記載の情報分散保管システムに使用される情報復元装置の処理機能をコンピュータで実行させるためのプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パスワードや個人情報などの秘密情報を複数のデータベースなどに分散保管し、これらの内幾つか以上の分散された情報により元の秘密情報を復元可能とする秘密分散法を用いた情報保管技術に関する。
【背景技術】
【０００２】
パスワードや個人情報、暗号鍵情報といった各種情報を保管する場合、情報の漏洩と破損に対する安全性の確保が重要な課題となる。従来、例えば一つの情報保管装置で保管する場合、保管対象の情報を暗号化して保管する暗号技術や保管対象の情報を取得できる利用者を制限する認証技術などが用いられるが、情報保管装置自体のハッキング、暗号の解読などにより情報が不正に取得される可能性があり、情報の漏洩に対する安全性は高いとは言えない。また、情報保管装置が破損してしまうと元の秘密情報を復元することはできないことから、破損に対する安全性はないに等しい。
【０００３】
これに対し、秘密情報を複数の情報保管装置で保管する技術がある。例えば、秘密情報を細分化した上で幾つかのまとまりに無作為に分けて情報の順序や分け方を記した配置情報とともに分散して保管する方法（特許文献１）や、秘密情報を分散させる関数を使って分散して保管する方法（特許文献２）などがある。これらの技術によれば、全ての分散情報あるいは所定の幾つかの分散情報を集約することで元の秘密情報を完全に復元することが可能になる。どちらも単体の情報保管装置に保管した情報からは元の秘密情報が全く分からないため、情報の漏洩に対する安全性が高い。また、これらの技術では冗長な構成をとることにより、幾つかの情報保管装置が破損した場合でも元の秘密情報を復元することが可能であり、情報の破損に対する安全性も高いと言える。
【０００４】
【特許文献１】国際公開第００／４５３５８号パンフレット
【特許文献２】特開２００３−１８８８６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の情報分散保管技術では、秘密情報を復元するために必要な分散情報を全てあるいは規定数集めることにより、元の秘密情報を完全に復元することができる。しかしながら、復元される情報が完全な元の秘密情報そのものであるために、例えば個人情報や取引情報など安全に保管する必要があり、かつ必要な時に必要な情報だけを取り出すような分散および復元を必要とする情報の分散保管には適していない。すなわち、秘密情報として何が保管されているかを確認するために部分的に試し復元したり、公開しても良い部分だけ復元し、残りは復元しないようにしたりといった、秘密情報の部分的な復元をすることができないという問題がある。
【０００６】
本発明は、従来の上述のような問題に鑑みてなされたもので、秘密情報の分散保管において、情報の漏洩と破損に対する安全性が高く、なおかつ秘密情報の部分的な復元を可能とする情報分散保管方法、情報分散保管システム、その装置、プログラム及び記録媒体を実現することを目的とする。
【課題を解決するための手段】
【０００７】
本発明では、本出願人が先に出願した特願２００３−３６６５３８号に記載の復元制御型秘密情報分散法を用いる。これは、基本的には、秘密情報Ｓについて、秘密情報Ｓの完全な復元に必要な分散情報の最低数である２以上の整数の閾値ｋ、閾値ｋに対して秘密情報Ｓの部分的な復元を許容する分散情報の不足数を決定する２以上ｋ以下の整数の分割数ｄと、秘密情報Ｓのｄ個の分割情報Ｓ０，Ｓ１，…，Ｓｄ−１などの秘密情報Ｓを分散するための条件を入力し、
最大の分割情報Ｓｔ（０≦ｔ≦ｄ−１）よりも大きな素数ｐと、素数ｐよりも小さく０でない（ｋ−ｄ個）の乱数ｒｉ（１≦１≦ｋ−ｄ）と、（ｋ（ｋ−１）／２）個の乱数ａｊ（１≦ｊ≦ｋ（ｋ−１）／２）を生成して、
ｆ（ｘ）＝Ｓ０＋Ｓ１（ｘ−ａ１）＋…＋Ｓｄ−１（ｘ−ａ（ｄ一１）（ｄ−２）／２＋１）（ｘ−ａ（ｄ−１）（ｄ−２）／２＋２）…（ｘ−ａ（ｄ−１）（ｄ−２）／２＋ｄ−１）＋ｒ１（ｘ−ａｄ（ｄ−１）／２＋１）（ｘ−ａｄ（ｄ−１）／２＋２）…（ｘ−ａｄ（ｄ−１）／２＋ｄ）＋…＋ｒｋ−ｄ（ｘ−ａ（ｋ−１）（ｋ−２）／２＋１）（ｘ−ａ（ｋ−１）（ｋ−２）／２＋２）…（ｘ−ａ（ｋ−１）（ｋ−２）／２＋ｋ−１）  mod  ｐ
の式で表現される秘密情報Ｓの分散関数ｆ（ｘ）を生成するものである。
【０００８】
本復元制御型秘密情報分散法は、従来の秘密情報分散技術である（ｋ，ｎ）閾値秘密分散法および（ｄ，ｋ，ｎ）閾値秘密分散法を拡張した方法で、ｎ個の分散情報の内、任意のｋ個の分散情報がそろえば、ｆ（ｘ）に関する連立方程式を解くことにより元の秘密情報Ｓを復元できるが、任意の（ｋ−ｄ）個までの分散情報がそろってもｆ（ｘ）に関する連立方程式を解くことはできないため、元の秘密情報Ｓは復元できないという特徴をもつ。ただし、情報を分散させる分散関数を特定の形式に規定することにより、任意の（ｋ−ｄ＋１）個から（ｋ−１）個までの分散情報が特定の組み合わせによりそろった場合にはｆ（ｘ）に関する連立方程式から特定の分割情報Ｓ０，Ｓ１，…，Ｓｄ−１を求めることができ、元の秘密情報Ｓを部分的に復元することができる。
【０００９】
なお、（ｋ，ｎ）閾値秘密分散法および（ｄ，ｋ，ｎ）閾値秘密分散法について、詳しくは、それそれ「Ａ．Ｓhamir，“Ｈow  to  Ｓhare  a  Ｓecret”，Ｃommun．Of  ＡＣＭ，Ｖol．２２，Ｎo．１１，ｐｐ．６１２−６１３，１９７９」と「Ｇ．Ｒ．Ｂlakley，Ｃ．Ｍeadows，“Ｓecurity  of  ramp  schemes”，Ｐroc．of  Ｃrypto'８４，Ｌecure  Ｎotes  on  Ｃomput．Ｓci，１９６，pp２４２−２６８，１９８４」に述べられている。
【００１０】
例えばｋ＝３、ｄ＝２とした場合、上記の分散関数ｆ（ｘ）は、
ｆ（ｘ）＝Ｓ０＋Ｓ１（ｘ−ａ１）＋ｒ（ｘ−ａ２）（ｘ−ａ３）
で表現され、任意の２個の分散情報ＷｘとＷｘ＋ｂ（ｘ＞０、ｂ＞０）についての連立方程式は以下のような行列式で表現できる。
【数１】
2005141436.tif 000003
【００１１】
行列式の左項を掃き出し法により変形すると、
【数２】
2005141436.tif 000004
となり、ａｌ，ａ２，ａ３の値によっては−ｘ２＋（２ａ１−ｂ）＋ａ１ｂ−ａ１ａ２−ａ１ａ３＋ａ２ａ３＝０，もしくは２ｘ＋ｂ−ａ２−ａ３＝０を満たすｘとｂがある場合に、連立方程式から分割情報のＳ０のみ、もしくはＳ１のみを求めることができる。
【００１２】
本発明の情報分散保管システムは、基本的に、秘密情報を複数の分散情報に分散符号化する情報分散装置、分散情報を保管管理する情報保管装置、及び、分散情報から元の秘密情報あるいはその提示情報部分を復元する情報復元装置により構成される。
【００１３】
情報分散装置は、保管の対象とする秘密情報の入力を受け付ける情報入力手段と、入力された秘密情報を符号化し、部分的な提示を許す提示情報部分と部分的な提示を許さない非提示情報部分とに分割する情報分割手段と、特定の分散情報の組み合わせから提示情報部分を復元可能なように、提示情報部分と非提示情報部分とに分割した秘密情報から複数の分散情報を生成する分散情報生成手段と、生成した分散情報を情報保管装置古土配布する分敵情報通信手段とを備える。これにより、特定の分散情報の組み合わせから提示情報部分が復元可能であって、非提示情報部分は所定の数の分散情報を集めて初めて復元可能となるような、秘密情報の分散符号化を行うことができる。
【００１４】
情報保管装置は、散情報を情報分散装置または情報復元装置との間で送受する分散情報通信手段と、配布された分散情報を記憶する分散情報記憶手段とを備える。
【００１５】
この情報保管装置は、配布された分散情報を記憶する分散情報記憶手段内での配置場所を決定する分散情報配置手段を備えることを特徴とする。これにより、例えば複数の情報保管装置から不正に分散情報が取得された場合でも、装置間での分散情報の組み合わせを特定することができないため、漏洩に対する情報の安全性を高めて保管することが可能となる。
【００１６】
情報復元装置は、復元したい情報の指定を受け付けて、元の秘密情報あるいはその提示情報部分の復元に必要な持定の分散情報の組み合わせを選択する分散情報選択手段と、選択した分散情報を保管する各情報保管装置から分散情報を取得する分散情報通信手段と、受信した分散情報から元の秘密情報あるいはその提示情報部分を復元する情報復元手段と、復元した情報を出力する情報出力手段とを備える。
【００１７】
これにより、復元したい個人の秘密情報の提示情報部分について、復元に必要な分散情報の組み合わせを特定して分散情報を取得し、かつ提示情報部分を復元することが可能となる。
【００１８】
また、本発明の情報分散保管システムにおいては、情報分散装置、情報保管装置および情報復元装置の少なくとも一部の装置は、元の秘密情報、提示情報部分および非提示情報部分、分散情報を暗号化する情報暗号化手段と、暗号化された元の秘密情報、提示情報部分および非提示情報部分、分散情報を復号する情報復号手段とを備える。これにより、不正に情報が取得されても情報が漏洩するのを防ぐことができる。すなわち、情報の漏洩に対する安全性をさらに高めて秘密情報および分散情報を分散、保管、復元することが可能となる。
【００１９】
また、本発明の情報分散保管システムにおいては、情報分散装置、情報保管装置および情報復元装置の少なくとも一部の装置は、分散情報を送受信する際に、相互の装置ないしはその利用者が適切な資格を有していることを認証する認証手段を備えることを特徴とする。情報分散装置、情報保管装置、情報復元装置は分散情報の送受の際に装置間の認証を行うことにより、不正な装置に分散情報が取得されて情報が漏洩するのを防ぐことができる。すなわち、通信回路における情報の漏洩に対する安全性を高めて分散情報を送受信することが可能となる。また、装置の利用者に対して認証を行うことにより、情報分散装置において生成し、情報保管装置内に保管する分散情報、あるいは情報復元装置において復元する秘密情報ならびにその提示情報部分、非提示情報部分について、適切な利用者のみが利用できるようになる。すなわち、装置の使用における情報の漏洩に対する安全性を高めることが可能となる。
【発明の効果】
【００２０】
以上述べたように、本発明によれば、情報分散装置において秘密情報Ｓを分散符号化し、複数の情報保管装置において安全に保管し、情報復元装置において秘密特報Ｓの特定の部分のみを復元するような、秘密情報の安全な分散保管ならびに復元を可能とすることができる。
【発明を実施するための最良の形態】
【００２１】
図１に、本発明の一実施の形態における情報分散システムの全体構成図を示す。図１において、情報分散装置１００、情報復元装置２００、情報保管装置３００〜３０４は、通信回線５００を通してそれぞれネットワーク的に接続されている。また、外部記録媒体４００は、情報分散装置１００に付随する任意の外部記憶装置である。情報分散装置１００は、情報入力部１１０、情報分割部１２０、分散情報生成部１３０、分散情報通信部１４０から構成され、情報復元装置２００は分散情報選択部２１０、分散情報通信部２２０、情報復元部２３０、情報出力部２４０から構成され、情報保管装置３００は分散情報通信部３１０、分散情報記憶部３２０から構成される。情報保管装置３０１、３０２、３０３、３０４は情報保管装置３００と同等の機能を有する。
【００２２】
情報分散装置１００では、情報入力部１１０が保管の対象とする秘密情報の入力を受け付け、情報分割部１２０が、入力された秘密情報を符号化し、部分的な提示を許す提示情報部分と部分的な提示を許さない非提示情報部分とに分割し、分散情報生成部１３０が、特定の分散情報の組み合せから提示情報部分を復元可能なように、分割された秘密情報から複数の分散情報を生成し、分散情報通信部１４０が、生成された分散情報を情報保管装置３００〜３０４及び外部記録媒体４００に配布する。
【００２３】
情報保管装置３００は、分散情報通信部３１０が、情報分散装置１００から配布された分散情報を受信し、分散情報記憶部３２０が該分散情報を記憶する。また、分散情報通信部３１０では、情報復元装置２００から要求があると、分散情報記憶部３２０に保管されている分散情報を情報保管装置２００へ送信する。分散保管装置３０１〜３０４の動作は、情報保管装置３００と同様である。
【００２４】
情報復元装置２００では、分散情報選択部２１０が、復元したい情報の指定を受け付けて、元の秘密情報あるいはその提示情報部分の復元に必要な特定の分散情報の組み合わせを選択し、分散情報通信部２２０が、該選択された分散情報を保管する各情報保管装置３００〜３０４、外部記録媒体４００から分散情報を受信して取得し、情報復元部２３０が該取得した分散情報から元の秘密情報あるいはその提示情報部分を復元し、情報出力部２４０が復元した情報を出力する。
【実施例】
【００２５】
以下の実施例では、複数の利用者の個人情報を秘密情報Ｓとして５つの情報保管装置３００〜３０４および外部記録媒体４００に分散して保管し、複数の情報保管装置に保管された特定の分散情報の組み合わせにより提示情報部分Ｓ１、Ｓ２、および元の秘密情報Ｓを復元可能とする。具体的に、実施例における分散の対象とする秘密情報Ｓは、個人の住所情報と電話番号情報からなるものとし、提示情報部分Ｓ１は住所情報の内の市町村部分、提示情報部分Ｓ２は電話番号情報の内の市外局番と市内局番部分、非提示情報部分Ｓ３は住所情報の残り番地部分と電話番号情報の残り加入者番号部分から構成されるものとする。
【００２６】
情報分散装置１００は各個人の秘密情報Ｓについて分散情報Ｗ１〜Ｗ６を生成し、情報保管装置３００〜３０４および外部記録媒体４００に分散保管する。情報保管装置３００に保管された分散情報Ｗｌと情報保管装置３０１に保管された分散情報Ｗ２からは提示情報部分Ｓ１すなわち住所情報の内市町村部分が、情報保管装置３０２に保管された分散情報Ｗ３と情報保管装置３０３に保管された分散情報Ｗ４からは提示情報部分Ｓ２すなわち電話番号情報の内市外局番と市内局番部分が、情報復元装置２００において復元されるものとする。ただし、これらの組み合わせ以外の任意の２個ないしは上記の組み合わせを含まない３個の情報保管装置に保管された分散情報の組み合わせからは提示情報部分Ｓ１も提示情報部分Ｓ２も非提示情報部分Ｓ３も復元不可能であり、したがって元の秘密情報Ｓも復元不可能であるものとする。また、任意の４個の情報保管装置に保管された分散情報の組み合わせからは、提示情報部分Ｓ１、堤示情報部分Ｓ２、非提示情報部分Ｓ３が復元可能であり、したがって元の秘密情報Ｓが完全に復元可能であるものとする。
【００２７】
以下、本実施例における情報分散装置１００、情報保管装置３００〜３０４、情報復元装置２００の動作について説明する。
【００２８】
〈情報分散装置１００〉
情報分散装置１００において、まず、情報入力部１１０は秘密情報Ｓとして各個人の個人情報の入力を受け付ける。受け付けた個人情報は例えば内部メモリなどに記憶するのが望ましい。本実施例ではユーザＡＡＡの個人情報として、電話番号情報「０２３４−５６−７８９０」および住所情報「Ａ市Ｂ町Ｃｌ−２−３」が入力されたものとする。以降、他ユーザの秘密情報Ｓと区別するために、ユーザＡＡＡの秘密情報ＳをＳＡとして記述する。図２は、本実施例におけるユーザＡＡＡからユーザＤＤＤの個人情報の入力例である。
【００２９】
なお、本発明は、情報入力部１１０において秘密情報Ｓとして入力を受け付ける情報の種類や内容を特に規定するものではない。数値情報、文字列など符号化することで分散関数による演算が可能であれば、どのような情報でも良く、また文書や画像データなどのマルチメディアなどを対象としても良い。また、本実施例は情報の入力の方法および形式を規定するものではない。キーボード入力やファイル入力の他に、インターネットなどの接続回線を介して他の装置から入力するようにしても構わない。
【００３０】
次に、情報分割部１２０は、秘密情報Ｓを符号化し、提示情報部分Ｓ１とＳ２、非提示情報部分Ｓ３に分割する。符号化し分割した情報Ｓ１、Ｓ２、Ｓ３を例えば内部メモリなどに記憶する。元の秘密情報Ｓ自体は内部メモリから消去することが望ましい。例えば、ユーザＡＡＡの秘密情報ＳＡは、提示情報部分Ｓ１として電話番号情報の市外局番＋市内局番「０２３４５６」のシフトＪＩＳコードによる符号化として１６進文字列「３０３２３３３４３５３６」、提示情報部分Ｓ２として住所情報の市町村Ａ市Ｂ町を符号化として１６進文字列「４１８Ｅ７３４２９２ＡＣ」、非提示情報部分Ｓ３として電話番号情報の加入者番号と住所情報の番地「７８９０Ｃｌ−２−３」を符号化として１６進文字列「３７３８３９３０４３３１２Ｄ３２２Ｄ３３」を得る。以降、他ユーザの提示情報部分Ｓ１、Ｓ２および非提示情報部分Ｓ３と区別するために、ユーザＡＡＡの提示情報部分Ｓ１、Ｓ２および非提示情報部分Ｓ２をそれそれＳＡｌ、ＳＡ２、ＳＡ３として記述する。図３は、本実施例におけるユーザＡＡＡからユーザＤＤＤの個人情報の符号化例である。
【００３１】
なお、本実施例は入力情報から提示情報部分、非提示情報部分への分割の方法を特に規定するものではない。本実施例では市外局番、市内局番、加入者番号、市町村、番地などの意味的な区切りにより分割したが、上位５０ｂｉｔ、下位５０ｂｉｔのように長さを単位として分割しても構わないし、情報列を細かく分解した後にその組み合わせにより分割するようにしても良い。
【００３２】
本実施例では秘密情報Ｓを提示情報部分Ｓ１、Ｓ２と非提示情報部分Ｓ３に分割、符号化したが、提示情報部分および非提示情報部分の個数と組み合わせを変更することも可能である。また、本実施例では各情報の符号化の方法および符号化した結果を特に規定するものではない。本実施例では単に入力情報のシフトＪＩＳコード化による１６進表現を符号化の方法とし、符号化の結果を１６進文字列としたが、他のコード表や独自のコード、符号化の方法を使って符号化しても良いし、符号化の結果として１６進文字列に限定せず、０と１によるビット列、１０進表記を使っても構わない。さらに、符号化した結果を暗号化することで情報の安全性を高めることもできる。
【００３３】
次に、分散情報生成部１３０は、特殊な分散関数ｆ（ｘ）を使って提示情報部分Ｓ１、Ｓ２および非提示情報部分Ｓ３から、情報保管装置３００〜３０４および外部記録媒体４００に保管するための６つの分散情報Ｗを作成する。本実施例における分散関数ｆ（ｘ）は以下の式で表現される。
ｆ（ｘ）＝Ｓ１＋Ｓ２(ｘ−3)＋Ｓ３(ｘ−31)(ｘ−28)＋ｒ(ｘ−27)(ｘ−33)(ｘ−38)
（modｐ）
なお、本式におけるｘは分散情報Ｗを生成するための情報番号ｘ、ｒはＳ１、Ｓ２およびＳ３と同様のサイズの任意の乱数文字列ｒ、ＰはＳ１、Ｓ２およびＳ３よりも大きな固定文字列ｐである。
【００３４】
上記散関数ｆ（ｘ）はｘに２８を代入して算出したｆ（２８）とｘに３１を代入して算出したｆ（３１）とからＳ１が、また、ｘに２９を代入して算出したｆ（２９）とｘに３０を代入して算出したｆ（３０）とからＳ２が、それぞれ復元可能となるような秘密情報Ｓの分散関数である。このような特殊な分散関数ｆ（ｘ）は、先に出願した特願２００３−３６６５３８に記載の復元制御型秘密情報分散法により求めることができ、本実施例に記載の式に制限されない。
【００３５】
以下に、ユーザＡＡＡの秘密情報ＳＡに対する分散情報Ｗの生成の例を示す。なお、６つの分散情報Ｗを区別するために分散情報Ｗｌ〜Ｗ６と記述し、特にユーザＡＡＡの秘密情報ＳＡから生成した分散情報をＷＡおよびＷＡｌ〜ＷＡ６と記述する。
【００３６】
分散情報生成部１３０は、情報分割部１２０において符号化された図３に示すＳＡｌ、ＳＡ２、ＳＡ３を受け取ると、まず乱数文字列ｒを生成する。乱数ｒはＳ１、Ｓ２およびＳ３と同程度のサイズの乱数文字列であることが望ましく、ここでは「１Ａ２Ｂ３Ｃ４Ｄ５Ｅ６Ｆ７０８１９２０３」を得たものとする。乱数ｒは秘密情報の入力の都度生成するものとし、よってユーザによって異なる。以降、他ユーザの秘密情報の入力に対して生成された乱数ｒと区別するために、ユーザＡＡＡに対する乱数ｒをｒＡと記述する。
【００３７】
固定文字列ｐは、全てのユーザの入力に対して共通で、Ｓ１、Ｓ２およびＳ３よりも大きな固定文字列であることから、本実施例においては１０バイトの１６進文字列「ＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ」を用いる。固定文字列ｐは素数であることが望ましいが、本実施例では簡便化のため素数ではない文字列を使用する。本実施例で使用した固定文字列ｐ＝ＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤは最小の素因数が６４７である合成数である。なお、固定文字列ｐのサイズに関しては、想定されるＳ１、Ｓ２およびＳ３のサイズよりも大きいものとし、例えば情報入力部１００において入力を受け付ける文字数を制限して、その制限値からサイズを算出して特定するようにしても良い。
【００３８】
次に、分散情報生成部１３０は、先の分散関数ｆ（ｘ）に従って、Ｓ１、Ｓ２、Ｓ３および生成した乱数文字列ｒと所定の情報番号ｘから分散情報Ｗを演算する。ここで、本実施例における分散関数ｆ（ｘ）の特性から、本実施例における所定の情報番号ｘは２８、３１、２９、３０、３２、３４であるものとし、分散情報Ｗｌ＝ｆ（２８）、Ｗ２＝ｆ（３１）、Ｗ３＝ｆ（２９）、Ｗ４＝ｆ（３０）、Ｗ５＝ｆ（３２）、Ｗ６＝ｆ（３４）により算出されるものとする。
【００３９】
例えば、ユーザＡＡＡの秘密情報ＳＡからは、Ｓ１として「３０３２３３３４３５３６」、Ｓ２として「４１８Ｅ７３４２９２ＡＣ」、Ｓ３として「３７３８３９３０４３３１２Ｄ３２２Ｄ３３」、乱数文字列ｒとして「１Ａ２Ｂ３Ｃ４Ｄ５Ｅ６Ｆ７０８１９２０３」を代入し、情報番号ｘとして「２８」を代入して、次のように分散情報ＷＡｌを算出する。
ＷＡ１＝ｆ（28）＝３０３２３３３４３５３６＋４１８Ｅ７３４２９２ＡＣ×(28−3)
＋３７３８３９３０４３３１２Ｄ３２２Ｄ３３×(28−31)×(28−28)
＋１Ａ２Ｂ３Ｃ4Ｄ５Ｅ６Ｆ７０８１９２０３×(28−27)×(28−33)
×(28−38)
＝１Ｃ７１Ｃ７２３０８ＤＦ６Ｅ０３０ＣＡ７
（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）
すなわち、本実施例では、ユーザＡＡＡの秘密情報ＳＡから生成した分散情報ＷＡｌとして、ＷＡｌ＝ｆ（28）＝１Ｃ７１Ｃ７２３０８ＤＦ６Ｅ０３０ＣＡ７を得る。以下、同様にして、情報番号ｘとして３１、２９、３０、３２、３４を代入して分散情報Ｗ２からＷ６をそれぞれ算出する。図４は、本実施例におけるユーザＡＡＡからユーザＤＤＤに対する乱数文字列ｒおよび分散情報Ｗｌ〜Ｗ６の生成例である。
【００４０】
分散情報生成部１３０では、上記の演算の過程および演算の結果で得られる分散情報Ｗを例えば内部メモリなどに記憶する。ただし、分散情報Ｗを生成した後は、秘密情報Ｓ、提示情報部分Ｓ１、Ｓ２、Ｓ３および乱数文字列ｒの値を破棄することが望ましい。
【００４１】
分散情報通信部１４０は、分散情報生成部１３０において生成された分散情報Ｗｌ〜Ｗ６のうち、分散情報Ｗ１〜Ｗ６を通信回線５００を介して情報保管装置３００〜３０４に送信し、分散情報Ｗ６を外部記録媒体４００に記録する。例えば、ユーザＡＡＡの分散情報ＷＡｌは、情報保管装置３００に対して「ＡＡＡ」，「１Ｃ７１Ｃ７２３０８ＤＦ６Ｅ０３０ＣＡ７」のようにユーザ名とともに送信される。
【００４２】
本実施例は、分散情報通信部１４０における分散情報の送信および記録のためのプロトコルやそのフォーマットを特に規定するものではない。例えばユーザ情報としてユーザ名ではなくユーザを表わすコードを用いて送信したり、あるいは送信項目として分散情報を生成した情報番号ｘを送信するようにしても良い。また、分散情報を送信する際に分散情報をさらに暗号化したり、分散情報を送信する際に相手側の情報保管装置３００〜３０４との間で認証を行うなどして、通信回線５００における盗聴に対する安全性を高めることが望ましい。
【００４３】
なお、本実施例では、情報分散装置１００は、分散情報生成部１３０において一旦全ての分散情報Ｗを生成した後に、分散情報通信部１４０が各情報保管装置３００〜３０４および外部記録媒体４００に分散情報Ｗを送信、記録するものとして記述しているが、分散情報生成部１３０と分散情報通信部１４０が連動して、分散情報生成部１３０において分散情報Ｗを１つ生成する度に、分散情報通信部１４０が該当する情報保管装置や外部記録媒体に生成した分散情報Ｗを送信・記録するようにしても良い。
【００４４】
〈情報保管装置３００〜３０４〉
情報保管装置３００〜３０４の動作は同じであるので、以下では、情報保管装置３００における分散情報の保管について説明する。また、外部記録媒体４００における分散情報の保管は省略する。
【００４５】
情報保管装置３００は、分散情報通信部３１０において、情報分散装置１００から送信された情報を分散情報記憶部３２０に記憶する。例えば、分散情報通信部３１０は、情報分散装置１００から送信された「ＡＡＡ」，「１Ｃ７１Ｃ７２３０８ＤＦ６Ｅ０３０ＣＡ７」を受け取り、これをユーザ名「ＡＡＡ」、分散情報「１Ｃ７１Ｃ７２３０８ＤＦ６Ｅ０３０ＣＡ７」として分散情報記憶部３２０に記憶する。図５は、情報保管装置３００における分散情報記憶部３２０に記憶されたユーザＡＡＡからユーザＤＤＤの分散情報の記憶例である。
【００４６】
なお、本発明は分散情報記憶部３２０の実現を特に規定するものではない。情報分散装置１００から送信された分散情報をユーザ名などと関連付けて記憶できれば良く、例えばデータベースやファイル、外部記録媒体に記憶するなどの手段が考えられる。
【００４７】
また、本実施例は分散情報記録部３２０において、ユーザ名と分散情報を関連付けて、情報が送信された順に記憶するように記述しているが、そのような関連付けや通信順の記憶は本来望ましくない。例えば、情報保管装置３００における分散情報記憶部３２０に記憶された情報が不正に取得された場合に、情報保管装置３０１における分散情報記憶部３２１に記録された情報と付き合わせることで、個々のユーザに関する分散情報の組み合わせが容易に特定できてしまう。本発明では、分散情報記憶部３２０における分散情報の記憶位置を通信順や関連付けによらずに決定することで、情報の保管の安全性を高めることができる。これは、例えば、ユーザ名ＡＡＡを符号化した後にハッシュ関数などでハッシュ値を算出するなどして、分散情報記憶部３２０における送信された分散情報の記録位置を決定するなどの手段で実現することができる。
【００４８】
〈情報復元装置２００〉
情報復元装置２００において、分散情報選択部２１０は、まず秘密情報Ｓを復元したい個人のユーザ名およびその復元個所として提示情報部分Ｓ１、Ｓ２あるいは秘密情報Ｓの選択を入力として受け付ける。本実施例では、ユーザＢＢＢの秘密情報Ｓについて提示情報部分Ｓ１およびＳ２、すなわちユーザＢＢＢの電話番号情報の市外局番＋市内局番および住所情報の市町村の復元を指定されたものとする。
【００４９】
なお、本実施例は、分散情報選択部２１０における入力および選択の内容および方法を特に規定するものではない。本実施例ではユーザ名および復元個所を入力指定するように記述しているが、ユーザ名の一覧と復元個所を指定して一覧中のユーザの情報を復元するようにしたり、ユーザ名のみ受け付けて復元場所は指定できないようにしても構わない。また入力の手段としてキーボード入力やファイル入力の他にインターネットなどの接続回線を介して他の装置からの入力を受け付けるようにしても構わない。
【００５０】
次に、分散情報選択部２１０は、秘密情報Ｓに対して指定された復元個所の復元に必要な分散情報の組み合わせ及びその分散情報を保管した情報保管装置の組み合わせを特定する。例えば本実施例においては、復元個所が提示情報部分Ｓ１である場合には情報保管装置３００と３０１、提示情報部分Ｓ２である場合には情報保管装置３０２と３０３が、目的とする分散情報の保管場所である。秘密情報Ｓを完全に復元する場合には４つの分敵情報が必要なため、情報保管装置３００〜３０３を目的とする分散情報の保管場所として決定する。
【００５１】
分散情報通信部２２０は、分散情報選択郡２１０において決定された情報保管装置と通信を行い、該情報保管装置に保管された目的とするユーザの分散情報を取得する。例えば、分散情報通信部２２０は、情報保管装置３００に対してユーザ名「ＢＢＢ」に対応する分散情報を要求する。情報保管装置３００においては、分散情報通信部３１０が分散情報記憶部３２０より該当するユーザ名の分散情報を取得し、情報復元装置２００に対して、要求の応答として「７１Ｃ７１Ｃ７８５Ｂ１４Ｃ３３９２２０２」を送信する。これを分散情報通信部２２０が取得し、例えば内部メモリなどに分散情報Ｗｌとして記憶する。分散情報通信部２２０は、同様にして情報保管装置３０１よりユーザＢＢＢに対応する分散情報Ｗ２として「７５３０ＥＣＡＦＢＣ６３２６６ＣＥＣ８１」を取得し、これを内部メモリなどに記憶する。同様にして、情報保管装置３０２より分散情報Ｗ３として「ＢＡ８５５０３３Ａ９Ｅ９ＦＥＡ１９Ｅ０７」を、情報保管装置３０３より分散情報Ｗ４として「ＢＡ８５５０３３ＥＢ７８７１Ｅ４３０Ｂ３」を取得し、内部メモリなどに記憶する。
【００５２】
情報復元部２３０は、取得した分散情報から秘密情報Ｓあるいはその提示情報部分Ｓ１ないしＳ２を復元する。情報の復元は以下のようにして行う。
【００５３】
まず、本実施例における分散関数が
ｆ（ｘ）＝Ｓ１＋Ｓ２(ｘ−3)＋Ｓ３(ｘ−31)(ｘ−28)＋ｒ(ｘ−27)(ｘ−33)(ｘ−38)
（modｐ）
であることから、２個の分散情報に関する連立方程式は次のような行列式で表現できる。
【数３】
2005141436.tif 000005
【００５４】
したがって、２個の分散情報から提示情報部分Ｓ１、Ｓ２および非提示情報部分Ｓ３、乱数文字列ｒを求めるための行列式を次のように書くことができる。
【数４】
2005141436.tif 000006
【００５５】
情報復元部２３０は、Ｓ１を求める場合には、上記の行列式においてｘ＝２８、ｙ＝３１、Ｗｘ＝Ｗｌ＝７１Ｃ７１Ｃ７８５Ｂ１４Ｃ３３９２２０２、Ｗｙ＝Ｗ２＝７５３０ＥＣＡＦＢＣ６３２６６ＣＥＣ８１を代入して行列演算を行い、その結果としてＳ１＝３０３２３３３４３５３６を得る。なお、分散情報Ｗ１とＷ２の組み合わせはＳ１を算出するものであって、Ｓ２、Ｓ３およびｒについては演算結果を得ることはできない。同様にして、Ｓ２を求める場合には、上記の行列式においてｘ＝２９、ｙ＝３０、Ｗｘ＝Ｗ３＝ＢＡ８５５０３３Ａ９Ｅ９ＦＥＡ１９Ｅ０７、Ｗｙ＝Ｗ４＝ＢＡ８５５０３３ＥＢ７８７１Ｅ４３０Ｂ３を代入して行列演算を行い、その結果としてＳ２＝４１８Ｅ７３４２９２ＡＣを得る。この組み合わせからは、Ｓ１、Ｓ３およびｒについて演算結果を得ることはできない。情報復元部２３０は、演算結果を内部メモリなどに記憶し、記憶していた分散情報Ｗｌ、Ｗ２、Ｗ３、Ｗ４を消去する。
【００５６】
本実施例は、分散情報からのＳ１およびＳ２の算出を行列演算により行っているが、他の手段により算出を行うようにしても良い。例えば、分散閑数ｆ（ｘ）の式および情報番号ｘから、分散情報Ｗｌ、Ｗ２およびＷ３、Ｗ４についての次のような連立方程式をたてることができる。
Ｗ１＝ｆ(28)＝Ｓ１＋Ｓ２×(28−3)＋Ｓ３×(28−31)(28−28)＋ｒ×(28−27)×(28−33)×(28-38)
＝Ｓ１＋25Ｓ２＋50ｒ（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）
Ｗ２＝ｆ(31)＝Ｓ１＋Ｓ２×(31−3)＋Ｓ３×(31−31)×(31−28)＋ｒ×(31−27)×(31−33)×(31-38)
＝Ｓ１＋２８Ｓ２＋56ｒ（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）Ｗ３＝ｆ(29)＝Ｓ１＋Ｓ２×(29−3)＋Ｓ３×(29−31)×(29−28)＋ｒ×(29−27)×(29−33)×(29-38)
＝Ｓ１＋26Ｓ２−2Ｓ３＋72ｒ
（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）
Ｗ４＝ｆ(30)＝Ｓ１＋Ｓ２×(30−3)＋Ｓ３×(30−31)×(30−28)＋ｒ×(30−27)×(30−33)×(30-38)
＝Ｓ１＋27Ｓ２−2Ｓ３＋72ｒ
（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）
【００５７】
上記の式を変形すると、次のようなＳ１およびＳ２を求めるための式を得ることができる。
Ｓ１＝(28×Ｗ１−25×Ｗ２)÷３（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）
Ｓ２＝Ｗ４−Ｗ３（modＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＦＤ）
したがって、情報復元部２３０において、分散情報ＷｌとＷ２、Ｗ３とＷ４から上記の式により簡便にそれぞれＳ１、Ｓ２を復元できるように実装することも可能である。しかしながら、分散関数ｆ（ｘ）を変更したり、分散情報の組み合わせを変更可能なように、行列演算を行う情報復元部２３０を実装することが望ましい。
【００５８】
情報出力部２４０は、情報復元部２３０において復元した秘密情報Ｓあるいはその提示情報部分Ｓ１ないしはＳ２を復号して、ユーザ名とともに出力する。本実施例では、Ｓ１＝３０３２３３３４３５６、Ｓ２＝４１８Ｅ７３４２９２ＡＣであるから、ユーザ名「ＢＢＢ」に対し、市外＋市内局番「０２３４５６」、市町村「Ａ市Ｂ町」が結果として出力される。
【００５９】
なお、本実施例は、情報出力部２４０において出力する情報の形式および出力の方法を制限するものではない。ユーザ名と対応する提示情報部分を一覧形式で表示したり、また画面出力やファイル出力以外に、ネットワークを介して他の装置に出力するなどが考えられる。
【００６０】
以上のように、本実施例における情報分散装置１００は、個人の秘密情報Ｓを６つの分散情報ＷｌからＷ６に分散符号化し、これを情報保管装置３００から３０４および外部記録媒体４００に送信あるいは記録する。情報復元装置２００は、特定の個人の秘密情報Ｓに対し、複数の情報保管装置に保管した特定の分散情報の組み合わせＷ１とＷ２、Ｗ３とＷ４を取得して、秘密情報Ｓの部分的な情報Ｓ１、Ｓ２のみを復元する。
【００６１】
情報分散装置１００において生成した分散情報ＷｌからＷ６からは４つの分散情報を集めないと元の秘密情報Ｓを完全に復元することはできない。したがって、例えば情報保管装置の内の一つから不正に情報が取得された場合でも元の秘密情報ＳやＳ１、Ｓ２、Ｓ３は復元できず、したがって情報の満現に対する安全性が高いと言える。また、６つの分散情報を生成することから、例えば情報保管装置の内の一つが破損した場合でも元の秘密情報Ｓを復元することができため、情報の紛失に対する安全性が高いと言える。本実施例における情報保管装置３０４および外部記録媒体４００は、情報の保管の安全性を高めるための構成である。
【００６２】
なお、図１で示した情報分散装置、情報保管装置、情報復元装置における各部の一部もしくは全部の処理機能をコンピュータのプログラムで構成し、そのプログラムをコンピュータを用いて実行して本発明の方法やシステムを実現することができること、あるいは、その処理手順をコンピュータのプログラムで構成し、そのプログラムをコンピュータに実行させることができることは言うまでもない。また、コンピュータでその処理機能を実現するためのプログラム、あるいは、コンピュータにその処理手順を実行させるためのプログラムを、そのコンピュータが読み取り可能な記録媒体、例えば、ＦＤ、ＭＯ、ＲＯＭ、メモリカード、ＣＤ、ＤＶＤ、リムーバブルディスクなどに記録して、保存したり、提供したりすることができるとともに、インターネット等のネットワークを通してそのプログラムを配布したりすることが可能である。
【図面の簡単な説明】
【００６３】
【図１】本発明の一実施形態における情報分散保管システムの全体構成図である。
【図２】実施例における個人情報の入力例である。
【図３】実施例における個人情報の符号化例である。
【図４】実施例におれる分散情報の生成例である。
【図５】実施例における分散情報の記憶例である。
【符号の説明】
【００６４】
１００  情報分散装置
１１０  情報入力部
１２０  情報分割部
１３０  分散情報生成部
１４０  分散情報通信部
２００  情報復元装置
２１０  分散情報選択部
２２０  分散情報通信部
２３０  情報復元部
２４０  情報出力部
３００、３０１、３０２、３０３、３０４  情報保管装置
３１０  分散情報通信部
３２０  分散情報記憶部
４００  外部記録媒体
５００  通信回線
【図１】
2005141436.tif 000007
【図２】
2005141436.tif 000008
【図３】
2005141436.tif 000009
【図４】
2005141436.tif 000010
【図５】
2005141436.tif 000011