(57)【要約】【課題】復元処理を復元装置に委託しつつ、悪意ある主体による追跡を防止する。【解決手段】  分散情報管理装置２は、（ｋ,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存する。情報利用装置１は、乱数をｎ個生成し保存するとともに、要求する分散情報を一意に識別する分散情報識別子と前記各乱数とを含む情報復元要求を行う。  分散情報管理装置２は、前記分散情報を前記乱数で秘匿し、前記復元装置３に送信する。  復元装置３は、ｋ個の前記秘匿分散情報を受信すると、（ｋ,ｎ）閾値秘密分散法の復元処理を行い、秘匿秘密情報を復元する。前記情報利用装置は、復元された前記秘匿秘密情報を前記乱数を用いて復号し、秘密情報を得る。【選択図】図１
2008250931.tif 000002
【特許請求の範囲】
【請求項１】
（ｋ,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、前記秘密情報を得るための情報利用装置とが、ネットワークを介して接続される分散情報復元システムであって、
前記情報利用装置は、
前記分散情報のビット長と同じビット長の乱数をｎ個生成する生成手段と、
前記分散情報管理装置でそれぞれ保存する分散情報を一意に識別する分散情報識別子を取得する取得手段と、
前記各乱数と前記各分散情報識別子とを対応づけて保存する保存手段と、
前記分散情報識別子と前記乱数の一つとを含む情報復元要求を前記分散情報管理装置の少なくともｋ台へそれぞれ送信する送信手段とを備え、
前記各分散情報管理装置は、
前記情報復元要求を受信すると、該情報復元要求に含まれる前記分散情報識別子に対応する前記分散情報を取得する分散情報取得手段と、
取得された前記分散情報を前記情報復元要求に含まれる前記乱数により秘匿して秘匿分散情報を生成する秘匿分散情報生成手段と、
生成した前記秘匿分散情報を前記復元装置に送信する秘匿分散情報送信手段とを備え、
前記復元装置は、
ｋ個の前記秘匿分散情報を受信すると、（ｋ,ｎ）閾値秘密分散法の復元処理を行い、秘匿秘密情報を復元する秘匿分散情報復元手段と、
復元された前記秘匿秘密情報を前記情報利用装置に送信する秘匿秘密情報送信手段とを備え、
前記情報利用装置は、送信された秘匿秘密情報を前記保存手段で保存した乱数を用いて復号し、秘密情報を得るようにしたことを特徴とする分散情報復元システム。
【請求項２】
（ｋ,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、サービスの提供を得るために前記秘密情報を得るための要求を行う情報利用装置と、前記サービスを提供するために前記秘密情報の確認を行う検証装置とが、ネットワークを介して接続される分散情報復元システムであって、
前記検証装置は、検証情報を生成する検証情報生成手段を備え、
前記情報利用装置は、
前記検証装置から前記検証情報を得る検証情報取得手段と、
前記分散情報のビット長と同じビット長の乱数をｎ個生成する生成手段と、
前記分散情報管理装置でそれぞれ保存する分散情報を一意に識別する分散情報識別子を取得する分散情報識別子取得手段と、
前記各乱数と前記各分散情報識別子とを対応づけて保存する保存手段と、
前記検証情報と前記分散情報識別子と前記乱数の一つとを含む情報復元要求を前記分散情報管理装置の少なくともｋ台へそれぞれ送信する送信手段とを備え、
前記各分散情報管理装置は、
前記情報復元要求を受信すると、該情報復元要求に含まれる前記分散情報識別子に対応する前記分散情報を取得する分散情報取得手段と、
取得された前記分散情報を前記情報復元要求に含まれる前記乱数により秘匿して秘匿分散情報を生成する秘匿分散情報生成手段と、
生成した前記秘匿分散情報を前記検証情報と共に前記復元装置に送信する秘匿分散情報送信手段とを備え、
前記復元装置は、
ｋ個の前記秘匿分散情報を受信すると、（ｋ,ｎ）閾値秘密分散法の復元処理を行い、秘匿秘密情報を復元する秘匿分散情報復元手段と、
復元された前記秘匿秘密情報を前記検証情報と共に、前記情報利用装置に送信する秘匿秘密情報送信手段とを備え、
前記情報利用装置は、送信された秘匿秘密情報と前記検証情報と前記保存手段で保存した前記乱数に基づく復号用情報とを、前記検証装置へ送信し、
前記検証装置は、送信された前記検証情報を確認の上、前記秘匿秘密情報を前記復号用情報を用いて復号し、秘密情報を得るようにしたことを特徴とする分散情報復元システム。
【請求項３】
前記（ｋ，ｎ）閾値秘密分散法は、（２，ｎ）閾値秘密分散法を用い、
前記分散情報管理装置の前記秘匿分散情報生成手段は、前記分散情報と前記情報復元要求に含まれる前記秘匿乱数との排他的論理和演算によって、秘匿分散情報を生成し、
秘匿分散情報の復号時には、前記秘匿秘密情報と前記情報利用装置で保存していた前記乱数とを排他的論理和演算によって、秘密情報を得るようにしたことを特徴とする請求項１または２に記載の分散情報復元システム。
【請求項４】
前記秘密情報が復元される一連の過程を一つのセッションとしたとき、各セッション毎に、
前記情報利用装置の前記生成手段は、都度ｎ個の乱数を新規に生成するようにすることを特徴とする請求項１乃至３の何れかの分散情報復元システム。
【請求項５】
（２,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、ネットワークを介して接続され、前記秘密情報を得るための情報利用装置であって、
前記分散情報のビット長と同じビット長の乱数をｎ個生成する生成手段と、
前記分散情報管理装置でそれぞれ保存する分散情報を一意に識別する分散情報識別子を取得する取得手段と、
前記各乱数と前記各分散情報識別子とを対応づけて保存する保存手段と、
前記分散情報識別子と前記乱数の一つとを含む情報復元要求を前記分散情報管理装置の少なくとも２台へそれぞれ送信する送信手段と、
前記分散情報管理装置で保存する分散情報と前記情報復元要求に含む前記乱数とで排他的論理和演算された少なくとも２つの秘匿分散情報から復元装置で復元された秘匿秘密情報を受信する受信手段と、
受信した秘匿秘密情報を前記保存手段で保存した乱数を用いて復号し、秘密情報を得る
復号手段とを備えたことを特徴とする情報利用装置。
【請求項６】
（２,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、前記秘密情報を提示して特定のサービスを受ける情報利用装置と、ネットワークを介して接続され、前記秘密情報の提示を受け、前記特定のサービスを与える検証装置であって、
前記情報利用装置から前記特定のサービスを受けたい旨の要求を受け、検証情報を生成する検証情報生成手段と、
生成した前記検証情報を前記情報利用装置へ送信する送信手段と、
検証情報を含む情報復元要求により得られる、前記分散情報管理装置で保存する分散情報と前記情報利用装置で生成された乱数とで排他的論理和演算された少なくとも２つの秘匿分散情報から復元装置で復元された秘匿秘密情報と、秘匿秘密情報に付加して与えられる検証情報と、前記乱数に基づく復号用情報とを受信する受信手段と、
送信された前記検証情報を確認の上、前記秘匿秘密情報を前記復号用情報を用いて復号し、秘密情報を得る秘密情報取得手段とを備えたことを特徴とする検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、（ｋ、Ｎ）閾値秘密分散法で分散した分散情報を復元するための分散情報復元システム、情報利用装置、および、検証装置に関する。
【背景技術】
【０００２】
従来、（ｋ、Ｎ）閾値秘密分散法という技術が存在する（k、Nは整数で、ｋ≦Ｎとする）。この技術は、入力されたlビットの情報（以下では秘密情報）から、同じビット長のN個の異なるデータ（以下では分散情報とよぶ）を生成する秘密分散アルゴリズム（以下、分散アルゴリズム）と、N個の分散情報のうち任意のk個から分散前の秘密情報を復元する秘密復元アルゴリズム（以下、復元アルゴリズム）とからなる。K−1個以下の分散情報からは秘密情報に関する情報を一切得ることができないため、分散情報を複数の主体で分散して管理することで、秘密情報を一箇所で集中管理することで生じる秘密情報の漏洩リスクを低下させることができる。
【０００３】
秘密分散法としては、Shamirにより提案された秘密分散法が代表的であるが、その他に、排他的論理和を利用して構成されるXOR閾値法が存在する。現在までに提案されているXOR閾値法は、Nを任意とする場合には、（2，N）閾値法までしか実現できていないが、Shamir法と比較して復号処理が非常に高速かつ低負荷であること、実際の応用システムへの適用においてはk＝2で問題が生じないことが多いことから、秘密分散の応用システムにおいて利用が期待できる閾値秘密分散法である。
【０００４】
この（k，N）閾値秘密分散を利用したシステムとして、分散情報を保存する複数の分散情報管理装置と、k以上の分散情報を収集した上で秘密情報を復元して検証した上で利用する情報利用装置とからなる分散情報復元システムを考える。そして、復元処理を代行する復元装置を導入して、情報利用装置が分散情報を少なくともk回入手して正当性を検証する作業負荷（通信負荷を含む）とそれらの分散情報を復元する処理負荷を減らすことを考える。この場合、復元装置が復元した秘密情報を知ってしまうという問題がある。この問題は、秘密情報を乱数等で暗号化などの秘匿処理をした上で分散させることで対処できるが、秘密情報そのもの、秘匿された秘密情報、これら2つの情報の分散情報、秘匿された秘密情報を復号するための乱数などの識別情報を利用した攻撃（以降、これを追跡と呼ぶ）が脅威となる。追跡とは、復元装置や悪意のある攻撃者がこれらの識別情報を入手し、情報利用装置の識別情報として利用することで、同一の秘密情報を復元した回数や秘密情報の使用先や復元頻度を把握する攻撃である。この攻撃は、毎回異なった乱数を付与する等の処理で変形した秘密情報から分散情報を再計算して、分散情報管理装置の保持する分散情報を定期的に置き換えることで対処できるが、置き換えがない間は追跡をうけるなどの問題が残る他、そもそもアプリケーションによっては分散情報の置換にかかるコストが大きく適用できないことが問題となる。この問題を回避する方法として、秘密情報を暗号化してから分散させるのではなく、分散情報を毎回異なった乱数で暗号化して、その暗号化された分散情報（以降、秘匿分散情報）を入手し、それを復号して分散情報に戻した上で復元処理をする方法があり、これを実施しているシステムも存在する。
【０００５】
その具体例としては、非特許文献１記載の分散属性認証システムがある。このシステムでは、秘密情報は年齢、性別などの属性情報に、分散情報は属性情報を分散させた情報にそれぞれ相当する。分散情報管理装置は分散情報の正当性を保証した電子証明書をそれぞれ発行し、情報利用装置は複数枚の証明書を検証した上で分散情報から属性情報を復元して属性を確認する。つまり、分散情報の電子証明書の正当性を拠り所として属性認証を行う。秘密分散の特性から分散情報管理装置であっても結託しないかぎりは元の属性情報を復元できず、分散情報管理装置からの情報漏洩にも強いという特徴を有するプライバシ保護を意識した属性証明方式である。このアプリケーションでは、分散情報管理装置は自身が証明する分散情報の証明書の正当性を信頼の拠り所としたサービスが存在することから、分散情報を登録する際の正当性確認は厳重に行われると考えられ、一旦確認して保存した分散情報の置換にはコストがかかるため慎重にならざるを得ない。また、このアプリケーションでの情報の追跡は、情報利用装置が同一の属性を提示した属性の回数や頻度やタイミングを意味するためプライバシ保護上の問題につながる。これらのことから、このシステムでは上述の方式を採用して、分散情報を乱数で毎回秘匿して秘匿分散情報を生成し、復号した上でその復元処理を実施して追跡を防ぎ、プライバシを保護する。
【０００６】
しかしながら、追跡の問題を回避するだけでなく、情報利用装置の処理負荷の問題を解決することも目的とした場合、この手法では情報利用装置の処理負荷を減少させることができない。特に携帯電話等の計算能力が低い端末を情報利用装置として想定するモバイル環境での属性証明（たばこ購入時の年齢証明など）を実施するサービスに適用するのは難しい。
【非特許文献１】上山，清藤，四方，松本,分散属性認証方式に対する基本検討(3), 2006年コンピュータセキュリティシンポジウム,pp.477-482.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
以上説明したように、分散情報復元システムにおいて情報利用装置の負荷を軽減するための処理の委託と追跡の回避とを両立することは難しかった。
【０００８】
本発明は、上記問題点に鑑みなされたものであり、復元処理を復元装置に委託しつつ、悪意ある主体による追跡を防止することができる分散情報復元システム、情報利用装置、及び、検証装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、（ｋ,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、前記秘密情報を得るための情報利用装置とが、ネットワークを介して接続される分散情報復元システムであって、前記情報利用装置は、前記分散情報のビット長と同じビット長の乱数をｎ個生成する生成手段と、前記分散情報管理装置でそれぞれ保存する分散情報を一意に識別する分散情報識別子を取得する取得手段と、前記各乱数と前記各分散情報識別子とを対応づけて保存する保存手段と、前記分散情報識別子と前記乱数の一つとを含む情報復元要求を前記分散情報管理装置の少なくともｋ台へそれぞれ送信する送信手段とを備え、前記各分散情報管理装置は、前記情報復元要求を受信すると、該情報復元要求に含まれる前記分散情報識別子に対応する前記分散情報を取得する分散情報取得手段と、取得された前記分散情報を前記情報復元要求に含まれる前記乱数により秘匿して秘匿分散情報を生成する秘匿分散情報生成手段と、生成した前記秘匿分散情報を前記復元装置に送信する秘匿分散情報送信手段とを備え、前記復元装置は、ｋ個の前記秘匿分散情報を受信すると、（ｋ,ｎ）閾値秘密分散法の復元処理を行い、秘匿秘密情報を復元する秘匿分散情報復元手段と、復元された前記秘匿秘密情報を前記情報利用装置に送信する秘匿秘密情報送信手段とを備え、前記情報利用装置は、送信された秘匿秘密情報を前記保存手段で保存した乱数を用いて復号し、秘密情報を得るようにしたことを特徴とする。
【００１０】
また、本発明は、（ｋ,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、サービスの提供を得るために前記秘密情報を得るための要求を行う情報利用装置と、前記サービスを提供するために前記秘密情報の確認を行う検証装置とが、ネットワークを介して接続される分散情報復元システムであって、前記検証装置は、検証情報を生成する検証情報生成手段を備え、前記情報利用装置は、前記検証装置から前記検証情報を得る検証情報取得手段と、前記分散情報のビット長と同じビット長の乱数をｎ個生成する生成手段と、前記分散情報管理装置でそれぞれ保存する分散情報を一意に識別する分散情報識別子を取得する分散情報識別子取得手段と、前記各乱数と前記各分散情報識別子とを対応づけて保存する保存手段と、前記検証情報と前記分散情報識別子と前記乱数の一つとを含む情報復元要求を前記分散情報管理装置の少なくともｋ台へそれぞれ送信する送信手段とを備え、前記各分散情報管理装置は、前記情報復元要求を受信すると、該情報復元要求に含まれる前記分散情報識別子に対応する前記分散情報を取得する分散情報取得手段と、取得された前記分散情報を前記情報復元要求に含まれる前記乱数により秘匿して秘匿分散情報を生成する秘匿分散情報生成手段と、生成した前記秘匿分散情報を前記検証情報と共に前記復元装置に送信する秘匿分散情報送信手段とを備え、前記復元装置は、ｋ個の前記秘匿分散情報を受信すると、（ｋ,ｎ）閾値秘密分散法の復元処理を行い、秘匿秘密情報を復元する秘匿分散情報復元手段と、復元された前記秘匿秘密情報を前記検証情報と共に、前記情報利用装置に送信する秘匿秘密情報送信手段とを備え、前記情報利用装置は、送信された秘匿秘密情報と前記検証情報と前記保存手段で保存した前記乱数に基づく復号用情報とを、前記検証装置へ送信し、前記検証装置は、送信された前記検証情報を確認の上、前記秘匿秘密情報を前記復号用情報を用いて復号し、秘密情報を得るようにしたことを特徴とする。
【００１１】
また、本発明は、（２,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、ネットワークを介して接続され、前記秘密情報を得るための情報利用装置であって、前記分散情報のビット長と同じビット長の乱数をｎ個生成する生成手段と、前記分散情報管理装置でそれぞれ保存する分散情報を一意に識別する分散情報識別子を取得する取得手段と、前記各乱数と前記各分散情報識別子とを対応づけて保存する保存手段と、前記分散情報識別子と前記乱数の一つとを含む情報復元要求を前記分散情報管理装置の少なくとも２台へそれぞれ送信する送信手段と、前記分散情報管理装置で保存する分散情報と前記情報復元要求に含む前記乱数とで排他的論理和演算された少なくとも２つの秘匿分散情報から復元装置で復元された秘匿秘密情報を受信する受信手段と、受信した秘匿秘密情報を前記保存手段で保存した乱数を用いて復号し、秘密情報を得る復号手段とを備えたことを特徴とする。
【００１２】
また、本発明は、（２,ｎ）閾値秘密分散法を用いて、秘密にしたい秘密情報から生成されたｎ個の分散情報のそれぞれを保存するｎ個の分散情報管理装置と、復元装置と、前記秘密情報を提示して特定のサービスを受ける情報利用装置と、ネットワークを介して接続され、前記秘密情報の提示を受け、前記特定のサービスを与える検証装置であって、前記情報利用装置から前記特定のサービスを受けたい旨の要求を受け、検証情報を生成する検証情報生成手段と、生成した前記検証情報を前記情報利用装置へ送信する送信手段と、検証情報を含む情報復元要求により得られる、前記分散情報管理装置で保存する分散情報と前記情報利用装置で生成された乱数とで排他的論理和演算された少なくとも２つの秘匿分散情報から復元装置で復元された秘匿秘密情報と、秘匿秘密情報に付加して与えられる検証情報と、前記乱数に基づく復号用情報とを受信する受信手段と、送信された前記検証情報を確認の上、前記秘匿秘密情報を前記復号用情報を用いて復号し、秘密情報を得る秘密情報取得手段とを備えたことを特徴とする。
【発明の効果】
【００１３】
本発明によれば、復元装置が処理するのは毎回異なった乱数で秘匿処理された分散情報（秘匿分散情報）であり、その復元処理結果も乱数で秘匿された秘匿秘密情報である。そのため復元装置に秘密情報を秘匿しつつ、情報利用装置は復元装置が出力した秘匿秘密情報から秘密情報を復号できることから、復元処理を委託して処理負荷を減らすことができる。さらに、従来は情報利用装置がk個の分散情報を受信し、検証した後に復号する必要があったが、発明では秘匿分散情報と同サイズの復元装置の出力データを一つ受信すればよいので、秘匿分散情報の復号処理回数と通信量をそれぞれ減らすことができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態につき図面を参照して説明する。
【００１５】
まず、第１の実施の形態について説明する。図１は、本実施の形態が適用される分散情報復元システムの全体を示しており、また、図２は、分散情報復元システムの概略的なフローを示している。  
分散情報復元システムは、インターネットなどのオープンな通信ネットワークやそれに接続される専用線などの各種通信ネットワーク４を介して、例えばＴＣＰ／ＩＰなどによってそれぞれ通信可能に接続された、情報利用装置１と複数の分散情報管理装置２…２と復元装置３とを備える。また、分散情報生成装置５は、本分散情報復元システムを利用するユーザが自身の情報利用装置１内では保存したくない秘密情報（文書、画像、動画、暗号鍵等）を、分散情報管理装置２…２に分散して保存するために、複数の分散情報を生成するものである。
【００１６】
分散情報管理装置２…２は、ユーザにとって信頼できる第三者の位置づけであるが、意図しない情報漏洩等もあり得る。そこで、ユーザの秘密情報の分散登録時処理において、分散情報生成装置５は、入力された秘密情報から(k,n)秘密分散法を利用して生成したｎ個の分散情報それぞれを、各種通信ネットワーク４を利用したり記録メディアなどを利用したりして直接的あるいは間接的に分散情報管理装置２…２へ配布する。分散情報管理装置２…２は、自身宛に配布された分散情報を、自装置内へ保存する。このようにすることにより、分散情報管理装置２…２から復元に必要な閾値以上の数の分散情報の漏洩がない限りは、ユーザと秘密情報との対応がとれないようにしている。
【００１７】
復元装置３は、秘密分散の復元アルゴリズムを正しく実行することは信頼するが、その入出力を利用して情報利用装置１を利用するユーザを追跡したり統計情報を入手しようとしたりする可能性がある主体と想定する。そこで、ユーザの秘密情報の取得時処理において、情報利用装置１は、各分散情報と同じ長さの乱数を、少なくともｋ個生成し保存するとともに、生成した各乱数を含んだ秘密情報の取得要求を、少なくともｋ個の分散情報管理装置２へそれぞれ送信する。取得要求を受けた各分散情報管理装置２は、分散情報を取得要求に含まれる乱数によって暗号化して得た秘匿分散情報を、復元装置３へ送信する。復元装置３は、分散情報管理装置２…２から秘匿分散情報をｋ個得て、秘匿分散情報のままで(k,n)秘密分散法の復元アルゴリズムによって復元し、復元された秘匿秘密情報を情報利用装置１へ送信する。情報利用装置１は、秘匿秘密情報を、要求時に生成して保存した乱数を用いて復号することにより秘密情報を得ることができる。このようにすることにより、情報利用装置１と分散情報管理装置２…２以外の復元装置３や攻撃者が秘匿秘密情報や秘匿分散情報を利用して情報利用装置１（あるいはそれを利用しているユーザ）を追跡することを防止できる。
【００１８】
以上のような本実施の形態の分散情報復元システムによれば、乱数で秘匿された分散情報を復号処理する前に復元処理することができるから、情報利用装置１で行っていた復元処理を、復元装置３に秘密情報を秘匿したままで委託することができ、情報利用装置１の復元処理に係る処理負荷を無くすことができる。さらに、情報利用装置１は、通信における受信において秘匿分散情報を１つだけ受信すればよく、既存のように少なくともｋ個の分散情報を受信する必要がなくなったため、通信量をそれぞれ減らすことができる。
【００１９】
なお、情報利用装置１が動的にＩＰアドレスが変化するモバイル端末等のみならず、固定のＩＰアドレスで通信を行う据え置きのコンピュータであっても、システムを構成する各装置のＩＰアドレスを、プロキシサーバやオニオンルーティングなどで知られる既存の匿名通信技術で秘匿することにより、情報利用装置１は、ネットワークアドレスを識別子とした追跡の問題を気にすることなく復元装置３とデータ送受信ができる。
【００２０】
また、情報利用装置１から分散情報管理装置２…２への通信は、復元装置３の中継を受けても良く、この場合には、復元装置３による中間者攻撃の危険性があるが、情報利用装置１と分散情報管理装置２…２との間で、適切なセキュアチャネル（送信者と受信者が互いを認証し、通信路上を流れるデータの機密性・完全性が確保された通信路）を確立した上で通信することで回避できる。このようなセキュアチャネルを確立する既存技術としては、例えばSSL(Secure Sockets Layer)が良く知られている。情報利用装置１が、復元装置３による中継の下、分散情報管理装置２…２に接続する場合には、分散情報管理装置２…２の公開鍵証明書を利用したSSLサーバ認証モードと分散情報管理装置２…２による情報利用装置１の認証との組み合わせか、情報利用装置１と分散情報管理装置２…２が互いに公開鍵証明書を利用したSSL相互認証モードによって上述したセキュアチャネルが確立できる。
【００２１】
次に、上記実施の形態をより具現化した例を以下に示す。
【００２２】
本例のうち秘密情報の分散登録処理は、ユーザからの秘密情報のそれぞれから、(k,n)閾値分散アルゴリズムによってｎ個の分散情報を生成し、分散情報復元システム上のｎ台の分散情報管理装置２…２のそれぞれへ分散して保管・管理させる。
【００２３】
図３は、分散情報生成装置５の機能ブロック図を示したものである。
【００２４】
秘密情報入力部５０１は、ユーザからの指示により入力された、ｄ×（ｎ−1）ビットの秘密情報Ｋ（ｓｉｄ）を受付ける。なお、ｓｉｄは、ユーザから複数の秘密情報を受けとる場合、そのうちの一つを識別するための識別子である。
【００２５】
秘密情報分散部５０２は、秘密情報入力部５０１からの秘密情報Ｋ（ｓｉｄ）を（２，ｎ）ＸＯＲ閾値法を用いた秘密分散法により、サイズｄ×（ｎ−1）ビットのｎ個の分散情報Ｓ（ｓｉｄ，ｉ）を生成するものである。なお、ｉは、分散情報管理装置２…２のそれぞれを識別するための識別子であり、０からｎ−１までの正整数である。ここで、（２，ｎ）ＸＯＲ閾値法の秘密分散法の詳細なアルゴリズムは、公知文献「高速な(2,n)閾値法の構成法とシステムへの応用、2005年コンピュータセキュリティシンポジウム,pp.631-636.（藤井,多田,保坂,栃窪,加藤）」に記載される分散アルゴリズムを用いればよく、ここでは説明を省略する。
【００２６】
秘密情報分散部５０２は、生成したｎ個の分散情報Ｓ（ｓｉｄ，ｉ）を、出力部５０５へ出力する。
【００２７】
また秘密情報分散部５０２の動作と並行して、分散情報識別子生成部５０３は、分散情報Ｓ（ｓｉｄ，ｉ）を分散情報管理装置２…２へ配布した後に分散情報Ｓ（ｓｉｄ，ｉ）を特定するための分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）を生成し、出力部５０５へ出力する。
【００２８】
接続先情報管理部５０４は、予め保存している各分散情報管理装置２・・・２や復元装置３の接続先アドレスやポート番号などを予め保存しておき、秘密情報分散部５０２の動作と並行して、それらを出力部５０５へ出力する。また、分散情報管理装置２・・・２が情報利用装置１を認証するような場合には、接続先情報管理部５０４は、認証情報（ユーザID、パスワード、公開鍵方式での認証に必要な各種認証情報、等）を予め保存しておき、秘密情報分散部５０２の動作と並行して、それらを出力部５０５へ出力する。
【００２９】
出力部５０５は、それぞれ出力を受けた各種情報を、次に示すように適切な装置へ配布する。
【００３０】
ｎ個の分散情報Ｓ（ｓｉｄ，ｉ）はそれぞれ、識別子ｉに対応する分散情報管理装置２へそれぞれ配布される。
【００３１】
ｎ個の分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）はそれぞれ、識別子ｉに対応する分散情報管理装置２へそれぞれ配布される。また、ｎ個の分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）の全ては、情報利用装置１へ配布される。
【００３２】
接続先アドレスやポート番号は、情報利用装置１へ配布される。また、分散情報管理装置２・・・２が情報利用装置１を認証するような場合には、ユーザＩＤ、パスワード、などの認証情報は、情報利用装置１および各分散情報管理装置２へ配布される。なお、ここでは特に示さなかったが、（２，ｎ）ＸＯＲ閾値法によるシステムパラメータＫ０∈｛０，１｝ｄ、が復元時に利用される場合には、復元装置３へ配布される。
【００３３】
これら各情報の配布においては、セキュアな通信路を用いて配布したり、セキュア管理の下、文書を用いて配布して配布先の各分散情報管理装置２…２でオペレータなどによって入力したりすることにより、行えば良い。
【００３４】
以上のようにして配布された各種情報は、各装置で次のような各テーブルに登録し保存される。
【００３５】
情報利用装置１は、図４の分散情報識別子テーブル１０２と、図５の接続先情報テーブル１０３とを備える。
【００３６】
分散情報識別子テーブル１０２は、秘密情報の識別子ｓｉｄに対応付けて、n個の分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）を格納する。また、復元する秘密情報を選択・決定する際に有効であるため、識別子ｓｉｄが指す秘密情報Ｋ（ｓｉｄ）がどのような情報であるかといった補足情報（コメント欄）もｓｉｄに対応付けて保存する。
【００３７】
接続先情報テーブル１０３は、後述する秘密情報取得処理時に、各装置と通信を行うために、各分散情報管理装置２の識別子（０〜ｎ−１）や復元装置３であることを示す名前と、それらの接続先アドレスやポート番号などを、それぞれ対応付けて保存している。また、ここでは、分散情報管理装置２が情報利用装置１を認証する場合もあるため、認証情報を保存している。
【００３８】
次に、各分散情報管理装置２・・・２は、図６の接続元情報テーブル２０１と、図７の分散情報テーブル２０２とを備える。
【００３９】
各分散情報管理装置２…２では、本実施の形態の情報利用装置１以外にも他の情報利用装置とも同様なシステムが構築できるようするべきである。従って、接続元情報テーブル２０１は、情報利用装置や復元装置などの装置識別ＩＤと、その認証情報とを対応付けて保存する。なお、図示しないが、復元装置３が情報利用装置１と分散情報管理装置２との通信を中継する場合には、IPアドレスやポート番号などを保存するようにしても良い。
【００４０】
分散情報テーブル２０２は、分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）と、分散情報Ｓ（ｓｉｄ，ｉ）とを対応付けて保存する。
【００４１】
以上のように各装置の各テーブルに保存することによって、秘密情報の分散登録時処理が完了する。
【００４２】
次に、ユーザの秘密情報の取得時処理について、情報利用装置１、分散情報管理装置２、復元装置３の動作について説明する。図８、図９、図１０は、それぞれ情報利用装置１、分散情報管理装置２、復元装置３の機能ブロックを示したものである。また、図１１、図１２、図１３はそれぞれ情報利用装置１、復元装置３、分散情報管理装置２の処理手順を示したフローチャートである。
【００４３】
ユーザは取得したい秘密情報を情報利用装置１で指定すると、情報復元要求部１０４は、分散情報識別子テーブル１０２を参照し、指定された秘密情報に対応した秘密情報識別子ｓｉｄを取得する（Ａ１０１）。次に、情報復元要求を行うためのセッションを識別するための復元要求セッション識別子session_idを定める（Ａ１０２）。次に、分散情報識別子取得部１０５は、分散情報識別子テーブル１０２から各分散情報管理装置（の識別子ｉ）に対応した分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）を取得する（Ａ１０３）。
【００４４】
次に、乱数生成部１０６は、分散情報Ｓ（ｓｉｄ，ｉ）に対応し、分散情報Ｓ（ｓｉｄ，ｉ）と同じビットサイズであるｄビットの乱数Ｍ（ｓｉｄ，ｉ）を生成し（Ａ１０４）、分散情報数であるn個分生成して復元要求セッション識別子とともに秘匿乱数テーブル１０１に保存する（Ａ１０５）。なお、乱数生成アルゴリズムは任意の公知技術を利用すればよい。生成した結果の乱数Ｍ（ｓｉｄ，ｉ）に互いに同一のデータが存在する場合、本方式の安全性に問題が生じる可能性があるので生成した乱数が異なることをチェックするようにしてもよい。
【００４５】
ここで秘匿乱数テーブル１０１を図１４に示す。秘匿乱数テーブル１０１は、秘密情報Ｋ（ｓｉｄ）を分散したn個の分散情報Ｓ（ｓｉｄ，ｉ）に対応して、長さd×ｎビットの乱数Ｍ（ｓｉｄ，ｉ）を、復元要求セッション識別子session_idと対応付けて格納する。また、開始時刻や状態などの復元要求セッションを識別する際の補助情報を格納する欄を設けていてもよい。
【００４６】
次に、情報復元要求部１０４は、各分散情報管理装置２…２に対応して、復元要求セッション識別子ｓｅｓｓｉｏｎ  ｉｄと分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）と秘匿乱数Ｍ（ｓｉｄ，ｉ）とを含む情報復元要求を生成し、復元装置３を中継して各分散情報管理装置２…２へ送信する（Ａ１０６）。
【００４７】
ここで、復元要求は一度にｎ台の分散情報管理装置に送信してもよいが、それより少ない台数に送信し、閾値k以上の応答がなければ随時、他の分散情報管理装置２に情報復元要求を送信するようにしてもよい。ただし、この場合は、情報利用装置１と復元装置３との間で現在までに得られている応答の数などを随時把握するための通信が必要となる。また、この際、接続先情報テーブル１０３の認証情報を利用して分散情報管理装置２との間にセキュアチャネルを確立した上で送信するため、通信を中継する復元装置３は復元要求に含まれる情報が分からないので、安全である。復元要求セッション識別子としては情報復元要求をする際のＴＣＰ／ＩＰでの送受信アドレスとポート番号の4つ組といった通信セッション識別子を流用してもよいが、復元装置３が秘匿秘密情報の返送に際してこの通信セッションを利用しなければならなかったり、なんらかの原因で通信セッションが遮断された場合に、復元要求セッション識別子と復元装置３から返信される秘匿秘密情報との対応が不明となったりする問題がある。その場合には、復元要求セッション識別子を通信セッション識別子とは別に発行すればよい。復元要求セッション識別子の具体例としては、総当たりでの推測が難しいような十分に大きい空間から採取した乱数（例えば32ビットとか64ビットの乱数）が考えられる。また、既に作成した秘匿乱数を引数としてハッシュ関数で作成することで、秘匿乱数のみを覚えておけばよいようにすることも可能である。この場合、分散情報管理装置２は情報利用装置１から復元要求セッション識別子をセキュアチャネルで受信する。そして、分散情報管理装置２が復元装置３に秘匿分散情報を送信する際に復元要求セッション識別子を秘匿セッション情報に含めて併せて通知し、復元装置３は情報利用装置１に復元要求セッション識別子を復元セッション情報に含めて情報利用装置１に送信することで情報復元要求セッションを識別する。なお、ここでは、分散情報管理装置２が復元装置３に伝えるとしたが、情報利用装置１が復元装置３に復元要求セッション識別子を別途通知しておいてもよい。
【００４８】
以上のようにして、情報利用装置１は、情報復元要求を復元装置３を経由し分散情報管理装置２へ送信する。
【００４９】
次に、復元装置３は、情報利用装置１からの情報復元要求を受信部３０１で受信し（Ｂ１０１）、中継部３０２によって、各情報復元要求で指定された分散情報管理装置２へ情報復元要求を中継する（Ｂ１０２）。なお、本実施例では情報利用装置１と分散情報管理装置２との通信を復元装置３が中継するとしたが、情報利用装置１と分散情報管理装置２とが直接通信し、分散情報管理装置２が処理結果と情報利用装置１の受信アドレスとを併せて復元装置３に送信し、その受信アドレスをもとに復元装置３が復元処理結果を送信してもよい。この際、前述のようにプロキシサーバや匿名通信技術を利用すれば、復元装置３は情報利用装置１の受信アドレスで不正に追跡できない。
【００５０】
次に、復元装置３から送信された情報復元要求の送付先の分散情報管理装置２は、受信部２０３で、情報復元要求を受信する（Ｃ１０１）。この例では、ネットワークレベルの接続要求元は、復元装置３であるため、安全性を確保するために、正当な情報利用装置１の情報復元要求が中継されているかどうかを判断する（Ｃ１０２）。より具体的には、接続元情報テーブル２０１に格納された認証情報を利用して情報利用装置１を利用している（ユーザ）を認証してセキュアチャネルを確立する。この場合、前述したようにＳＳＬなどが利用できる。ここで、相互認証は情報利用装置１と復元装置３との間では行われないので、復元装置３は情報利用装置１を追跡できない。また、分散情報管理装置２は認証した情報利用装置１の識別子をログ等に記録し、証拠として保存したりしてもよい。
【００５１】
秘匿処理部２０４は、受信部２０３で受信した情報復元要求から分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）を取得する(Ｃ１０３)。取得した分散情報識別子ＤＩＤ（ｓｉｄ，ｉ）で分散情報テーブル２０２から分散情報Ｓ（ｓｉｄ，ｉ）＝｛S(sid,i,j)|S(sid,i,j) ∈｛０，１｝ｄ，0≦j≦n-2｝（長さd×（ｎ−１）ビットの分散情報Ｓ（ｓｉｄ，ｉ）を長さdビットのｎ−１個の分散情報ｓ（ｓｉｄ，ｉ，ｊ）で構成されているとみなす）を取得する（Ｃ１０４）。
【００５２】
そして、情報復元要求に含まれる乱数Ｍ（ｓｉｄ，ｉ）＝｛M(sid,i,j)|M(sid,i,j) ∈｛０，１｝ｄ，0≦j≦n-2｝（分散情報と同様にみなす）の各要素と、分散情報Ｓ（ｓｉｄ，ｉ）の各要素とをビット毎に排他的論理和演算し、秘匿分散情報Ｃ（ｓｉｄ，ｉ）を生成する（Ｃ１０５）。なお、秘匿分散情報Ｃ（ｓｉｄ，ｉ）をより詳細に記載すると次式で表される。
【数１】
2008250931.tif 000003
【００５３】
次に、送信部２０５は、復元要求セッション識別子と秘匿分散情報Ｃ（ｓｉｄ，ｉ）とを含む秘匿セッション情報を復元装置３に送信する（Ｃ１０６）。ここで、分散情報管理装置２と復元装置３との間で相互認証したセキュアチャネルを設け第三者による攻撃を防止して安全性を向上させると良い。また、ここで、分散情報管理装置２が秘匿セッション情報のうち、秘匿分散情報に電子署名を付与することでシステムの安全性を向上させることができる。さらに、秘匿セッション情報に電子署名を施すことで情報復元要求セッションと秘匿分散情報の対応を明示的に示すことができ、復元装置３に偽の秘匿分散情報と復元要求セッション識別子との組を送信して復元させるなどのサービス負荷攻撃を回避できる他、情報作成の主体が明確になり、分散情報管理装置２による不正を抑止できる。
【００５４】
次に復元装置３は、受信部３０１で、分散情報管理装置２から送信された秘匿セッション情報を受信する（Ｂ１０３）。分散情報管理装置２からの返答を待った結果、閾値以上の秘匿セッション情報が入手できないなどの問題が生じたら、情報利用装置１に報告するなどのエラー処理（Ｂ１０４）の後に処理を終了する。また、秘匿セッション情報やその中に含まれる秘匿分散情報Ｃ（ｓｉｄ，ｉ）に分散情報管理装置２の秘密鍵により電子署名が付与されている場合には、それを検証することで改竄の有無を検知する。
【００５５】
一方、分散情報管理装置２からの返答を待った結果、閾値以上の秘匿セッション情報が入手できた場合には、復元部３０４は、閾値２以上の分散情報管理装置２から受信した秘匿セッション情報に含まれる秘匿分散情報Ｃ（ｓｉｄ，ｉ）から任意の２組を選定し、（２，ｎ）ＸＯＲ閾値法の復元アルゴリズムを適用して秘匿秘密情報ＣＫ（ｓｉｄ）＝｛ＣＫ（ｓｉｄ，ａ）｜ＣＫ（ｓｉｄ，ａ）∈｛０，１｝ｄ，1≦a≦n-1，a∈Ｚ｝を求める（Ｂ１０５）。この復元アルゴリズムを適用する際、受信した秘匿分散情報Ｃ（ｓｉｄ，ｉ）のiやnの値が必要となるが、これらの値は秘匿セッション情報内の秘匿分散情報Ｃ（ｓｉｄ，ｉ）のヘッダ情報などの形で分散情報管理装置２から送信される。また、ここで閾値分の秘匿分散情報が集まった段階で処理を打ち切って処理負荷や転送待ち時間を軽減したり、逆に、閾値より多くの秘密分散情報Ｃ（ｓｉｄ，ｉ）を受信しておいて、それぞれ復元した秘匿秘密情報ＣＫ（ｓｉｄ）が一致することを検証して正確性を高めたりするといった方法も考えられる。
【００５６】
復元装置３は、復元要求セッション識別子と、復元のために使用した２個の秘匿分散情報の送信元の分散情報管理装置の識別子（ここでは、ｍ、ｌとする）をヘッダとして付加した秘匿秘密情報とで構成される復元セッション情報を情報利用装置１に送信する（Ｂ１０６）。
【００５７】
情報利用装置１は、復元装置３からの情報復元要求に対する応答を待ち（Ａ１０７）、復元装置３から閾値以上の分散情報が入手できないため復元できないなどの問題が報告された場合はエラー処理（Ａ１０８）の後、処理を終了する。一方、復元装置３からの復元要求セッション情報を受信できた場合には、復号用データ生成部１０９は、復元要求セッション識別子と分散情報管理装置の識別子ｌとｍとをキーとして秘匿乱数テーブル１０１を参照して（ここでｍ＞ｌと一般化する）、秘匿乱数Ｍ（ｓｉｄ，ｌ）とＭ（ｓｉｄ，ｍ）とを取得し、次の処理によって復号用データＰ（ｓｉｄ）＝｛Ｐ（ｓｉｄ，ａ）｜Ｐ（ｓｉｄ，ａ）∈｛０，１｝ｄ，1≦a≦n-1，a∈Ｚ｝を生成する（Ａ１０９）。
【００５８】
まず、ｒ＝ｍ−ｌ  ｍｏｄ  ｎ  を計算し、以下の場合に分けて計算する（ここでの計算はnを法として実施される）。
【００５９】
識別子ｌの分散情報管理装置２から入手したＭ（ｓｉｄ，ｌ）＝｛Ｍ（ｓｉｄ，ｌ，ｊ）｜Ｍ（ｓｉｄ，ｌ，ｊ）∈｛０，１｝ｄ，０≦ｊ≦ｎ−２｝が、Ｍ（ｓｉｄ，ｌ，ｌ）を含む場合は、整数ｋ(初期値は０)がｌ−ｋｒ＝ｎ−１（ｋ＜ｎ−２）を満たすまでｋをインクリメントしつつ次のように計算する。
【数２】
2008250931.tif 000004
【００６０】
また、識別子ｍの分散情報管理装置から入手したＭ（ｓｉｄ，ｍ）＝｛Ｍ（ｓｉｄ，ｍ，ｊ）｜Ｍ（ｓｉｄ，ｌ，ｊ）∈｛０，１｝ｄ，０≦ｊ≦ｎ−２｝が、Ｍ（ｓｉｄ，ｍ，ｍ）を含む場合は、ｍ−ｋｒ＝ｎ−１（ｋ＜ｎ−２）を満たすまで、ｋを０からインクリメントしつつ次のように計算する。
【数３】
2008250931.tif 000005
【００６１】
情報利用装置１の復号処理部１１０は、復号用データ生成部１０９によって生成されたＰ（ｓｉｄ）と受信した秘匿秘密情報ＣＫ（ｓｉｄ）とをそれぞれ排他的論理和で計算し、秘密情報Ｋ（ｓｉｄ）を得る（Ａ１１０）。
【００６２】
以上詳細に説明してきた、第１の実施の形態によれば、復元装置３は乱数で秘匿された分散情報から秘匿された秘匿分散情報を、復号する前に復元することができるから、情報利用装置１で行っていた復元処理を、復元装置３に秘密情報を秘匿したままで委託することができ、情報利用装置１の復元処理に係る処理負荷を無くすことができる。さらに、情報利用装置１は、通信における受信において秘匿分散情報を１つだけ受信すればよく、既存のように少なくともｋ個の分散情報を受信する必要がなくなったため、通信量をそれぞれ減らすことができる。
【００６３】
また、秘匿秘密情報は毎回異なった乱数で秘匿されていることから、秘匿秘密情報を知り得る主体による追跡を防ぐことができる。
【００６４】
次に、第２の実施の形態について説明する。第２の実施の形態は、第１の実施の形態に加え、ユーザの秘密情報を検証して、ユーザへサービスを提供する検証装置を含めたものである。以下では、秘密情報を年齢、性別などの属性情報であると仮定し、分散した属性情報を利用した属性証明システムに関して説明する。ただし、本実施形態における秘密情報は特に属性情報に限る必要はなく、保証された秘密情報を復元装置に提示してサービスを提供する他のアプリケーションにも適用できる。
【００６５】
図１５は、本実施の形態の属性証明システムの全体を示しており、図１６はこのシステムの概略フローを指名している。
【００６６】
本システムにおいては、情報利用装置１’と複数の分散情報管理装置２’と復元装置３’とに加えて検証装置６が存在し、インターネットなどのオープンな通信ネットワークやそれに接続される専用線などの各種通信ネットワーク４を介して互いに接続されている。また、第１の実施の形態と同様に、分散情報生成装置５が存在する。
【００６７】
検証装置６は、情報利用装置１’からサービス要求を受けると、検証情報を生成し、情報利用装置１’に対して検証情報を供給して秘密情報の提示を要求する。そして、検証装置６は、情報利用装置１’から提供されたハッシュされた検証情報によって、提供された秘匿秘密情報の正当性を確認し、秘匿秘密情報を復号し、サービスの提供条件を満たす場合には、情報利用装置１’に要求されたサービスを提供する。
【００６８】
次に、本実施の形態の実現例を以下に示す。本実施の形態の秘密情報の分散登録時の処理は、第１の実施の形態と同様で良い。
【００６９】
一方、本実施の形態の秘密情報の取得時の処理は、第１の実施の形態の秘密情報の取得時の処理に対し、最初に情報利用装置１’から検証装置６へのサービスの要求を行い、検証装置６から検証セッション識別子を受ける点と、その検証セッション識別子が分散情報管理装置２’で処理される点と、セッション情報利用装置１’で受け取った秘匿秘密情報を復号することなく、処理された検証セッション識別子を付加して検証装置６へ送信し、検証装置６内で検証の上、復号する点とが付加される。
【００７０】
本実施形態において、分散情報管理装置２’に要求される信頼性は第1の実施の形態と同様であるが、復元装置３’に要求される信頼性は異なる。第１の実施の形態では、秘密情報の保持者であるユーザのみが復元された情報を利用していたが、本実施形態では秘匿秘密情報が検証装置に提供され、復元装置の秘匿秘密情報への電子署名を信頼の基盤として検証装置６がサービスを提供する。そのため本実施形態では、復元装置３’も分散情報管理装置２’と同様の高い信頼性を要求される。
【００７１】
検証装置６と情報利用装置１’との間の通信は、検証装置６をサーバとしてＳＳＬサーバ認証を利用した通信路で悪意ある第三者による攻撃から保護する。ここで、検証装置６は情報利用装置１’の秘密情報のみを検証すればよいため、情報利用装置１’を認証する必要はない。なお、装置のネットワークアドレスに関する条件や、閾値法に関する条件、そして情報利用装置１’、復元装置３’、分散情報管理装置２のそれぞれの間での通信に関する条件や、やりとりは上記第１の実施の形態と同様である。
【００７２】
次に、情報利用装置１’および、検証装置６の動作について説明する。図１７、図１８は、それぞれ情報利用装置１’、検証装置６の機能ブロックを示し、また、図１９、図２０はそれぞれ情報利用装置１’、検証装置６の処理手順を示したフローチャートである。
【００７３】
まず、情報利用装置１’のサービス要求部１１１は、検証装置６にサービス要求を送信する（Ａ１００１）。
【００７４】
検証装置６の要求検証部６０３は、受信部５０２からサービス要求を受信する（Ｄ１００１）と、乱数生成部６０４で検証セッション識別子の作成用データであるセッション識別乱数を生成する（Ｄ1００２）。この際の乱数アルゴリズムやそのビット長に関しては任意の公知技術を利用してよい。
【００７５】
要求検証部６０３は、生成されたセッション識別乱数と、検証装置自身の識別情報を連結したデータのハッシュ値を検証セッション識別子として生成する（Ｄ１００３）。
【００７６】
要求検証部６０３は、検証セッション識別子をセッション記憶テーブル６０１に格納する（Ｄ１００４）。図２１にセッション記憶テーブル５０１を示す。同図のように、検証セッション識別子に対応付けて、サービス要求の内容に応じてセッションで検証する秘密情報の種別とセッション確立用リソースの管理に必要な情報（ここでは、有効期限）を併せて格納する。なお、定期的に古いセッション識別子を削除することでセッション確立用資源の有効利用を図ってもよい。
【００７７】
要求検証部６０３は、セッション識別乱数と提示を要求する秘密情報の種別や条件とを情報利用装置１’に送信し（Ｄ１００５）、情報利用装置１’からの秘匿秘密情報の提示を待つ。
【００７８】
情報利用装置１’のサービス要求部１１１は、受信（Ａ１００２）したセッション識別乱数と検証装置６の識別子とを連結したデータのハッシュ値を生成し、検証セッション識別子とする（Ａ１００３）。
【００７９】
サービス要求部１１１は、検証装置６から提示を要求された秘密情報に関して、情報復元要求を実施する（Ａ１００４）。このとき、第１の実施の形態では、乱数生成部１０６で生成した乱数を、秘匿乱数テーブル１０１に登録していたが、この実施の形態においては、更に検証セッション識別子も対応付けた秘匿乱数テーブル１００１（図２２）を用い、先に生成した検証セッション識別子も保存するようにする。
【００８０】
以後、情報利用装置１’が復元装置３’から秘匿秘密情報を受信し、秘密情報を得るまでの処理（Ａ１００５）に関しては、第1の実施の形態とほぼ同様に処理が実施される。ただし、情報復元要求に検証セッション識別子が含まれている点、各分散情報管理装置２’が受信した秘匿乱数Ｍ（ｓｉｄ，ｉ）のハッシュ値である秘匿乱数ハッシュＨ（Ｍ（ｓｉｄ，ｉ））を生成する点、検証セッション識別子と秘匿乱数ハッシュも秘匿セッション情報に含まれて秘匿結果データとして分散情報管理装置２’から復元装置３’に伝えられ、復元装置３’から情報利用装置２’には検証セッション識別子と、秘匿秘密情報の生成に利用された秘匿分散情報を提供した分散情報管理装置（ｌ）と分散情報管理装置（ｍ）の秘匿乱数ハッシュＨ（Ｍ（ｓｉｄ，ｉ））、Ｈ（Ｍ（ｓｉｄ，ｉ））も復元セッション情報に含まれて復元結果データとして返信される点が異なる。なお、分散情報管理装置２’が秘匿乱数ハッシュを生成するのではなく、情報利用装置１’が秘匿乱数ハッシュを作成し、分散情報管理装置２’は受信した秘匿乱数のハッシュ値と秘匿乱数ハッシュとが一致することを確認するという構成にしてもよい。
【００８１】
本実施形態においては、秘匿秘密情報と、検証セッション識別子と、復元要求セッション識別子と、秘匿乱数ハッシュＨ（Ｍ（ｓｉｄ，ｌ））、Ｈ（Ｍ（ｓｉｄ，ｍ））の対応が保証されていることがセキュリティ上重要であるため、復元装置３’から情報利用装置２’に送信されるこれらの復元セッション情報には復元装置３’の秘密鍵による電子署名が付与されていることが望ましい。以降では復元装置３’の電子署名が施されているとして話を進め、復元セッション情報（秘匿秘密情報と検証セッション識別子と復元要求セッション識別子と秘匿乱数ハッシュＨ（Ｍ（ｓｉｄ，ｌ））、Ｈ（Ｍ（ｓｉｄ，ｍ））と電子署名とを秘匿秘密情報証明と呼ぶ。秘匿秘密情報証明には有効期限やコメント等の他のフィールドがあってもよい。なお場合によっては、復元要求セッション識別子がなくてもよい。
【００８２】
情報利用装置１’のサービス要求部は秘匿秘密情報証明と、秘匿秘密情報を復号するための復号用データを生成するのに必要な秘匿乱数Ｍ（ｓｉｄ，ｌ）、Ｍ（ｓｉｄ，ｍ）とを検証装置６に送信する（Ａ１００６）。
【００８３】
検証装置６の要求検証部５０３は前記の情報を受信すると（Ｄ１００６）、セッション記憶テーブル５０１を参照し、検証セッション識別子が有効なことを確かめる（Ｄ１００８）。秘匿秘密情報証明を受信できなかった場合には、エラー処理を行い（Ｄ１００７）、処理を終了する。
【００８４】
検証装置６は署名検証部６０５により受信した秘匿秘密情報証明の電子署名を検証する（Ｄ１００９）。
【００８５】
検証装置６の復号データ生成部５０６は、受信した秘匿乱数Ｍ（ｓｉｄ，ｌ）、Ｍ（ｓｉｄ，ｍ）のハッシュ値がそれぞれ秘匿乱数ハッシュＨ（Ｍ（ｓｉｄ，ｌ））、Ｈ（Ｍ（ｓｉｄ，ｍ））と等しいことを確認した後、受信した秘匿乱数から秘匿秘密情報を復号するための復号データを生成する（Ｄ１０１０）。この処理は、第１の実施の形態の情報利用装置１の動作フローＡ１０７と同様である。ここで秘匿乱数ではなく情報利用装置１’が作成済みの復号データを利用することも考えられるが、悪意のある情報利用者が、元の秘密情報と異なる復元結果を生成する復号用データを送信する攻撃が存在するため、ここでは復号用データではなく秘匿乱数を送信している。さらに情報利用装置１’が検証装置６に異なる復号結果を生成する復号用データが生成されるような秘匿乱数に置き換えて送信する可能性もあることから、秘匿乱数ハッシュの改竄を復元装置３’の電子署名で防止している。また、検証装置６が秘匿分散情報証明だけでなく、秘匿分散情報とそれに対する分散情報管理装置２’の電子署名も併せて入手し、署名の検証と秘匿分散情報の復元処理結果と受信した秘匿秘密情報との一致を確認することで、検証装置６にとってのシステムの安全性をより向上させることができる。しかし、この場合、秘匿分散情報と秘匿乱数から分散情報管理装置２’の保持する分散情報が復元できてしまうため、仮に分散情報管理装置２’からの情報漏洩があった際には、その分散情報をキーとして、個人とその属性が対応づけられてしまうという問題が発生し、本来、ｋ個の分散情報管理装置２’からの漏洩に耐性がある本方式の特徴が損なわれてしまうという問題がある。そこで本実施形態では、検証装置６へは秘匿分散情報は提供しないこととする。
【００８６】
検証装置６の復号処理部６０７は、受信した秘匿秘密情報を復号用データにより復号し（Ｄ１０１１）、秘密情報を確認する（Ｄ１０１２）。確認した秘密情報がサービス提供条件を満たす場合には検証装置６は情報利用装置１’にサービスを提供する（Ｄ１０１３）。
【００８７】
本実施の形態では、情報利用装置１’が検証装置６の要求を受けてから秘匿秘密情報証明を入手して属性証明をするが、検証セッション識別子を含まない秘匿秘密情報証明をあらかじめ復元装置６から入手しておき、情報利用装置１は検証装置６に接続した際に秘匿秘密情報証明を提示してもよい。
【００８８】
以上のようにした、本実施の形態よれば、第１の実施の形態と同様の効果を備えつつ、更に、検証装置６が情報利用装置1‘の属性情報の正当性を確認しつつ、情報利用装置1’は検証装置６による追跡を防止しつつサービスを享受できる。
【００８９】
また、秘匿秘密情報は毎回異なった乱数で秘匿されていることから、秘匿秘密情報を知り得る主体による追跡を防ぐことができる。
【００９０】
なお、上記で説明した各実施の形態における各装置は、説明を簡易にするために専用装置のように記載したが、一般には、サーバ装置、パーソナルコンピュータ、携帯電話などのモバイル端末、等の汎用的な装置を用い、各機能ブロックは、それら汎用的な装置内のプロセッサによって実行されるソフトウェアプログラムで実現されるものであり、このようなものを含むことは明白である。
【００９１】
また、上記実施の形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施の形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【００９２】
【図１】第１の実施の形態が適用されるシステムを示す図。
【図２】第１の実施の形態の概略動作を示すフロー図。
【図３】分散情報生成装置５の機能ブロック図。
【図４】第１の実施の形態の分散情報識別子テーブルを示した図
【図５】第１の実施の形態の接続先情報テーブルを示した図。
【図６】第１の実施の形態の接続元情報テーブルを示した図。
【図７】第１の実施の形態の分散情報テーブルを示した図。
【図８】第１の実施の形態の情報利用装置１の機能ブロックを示す図。
【図９】第１の実施の形態の分散情報管理装置２の機能ブロックを示す図。
【図１０】第１の実施の形態の復元装置３の機能ブロックを示す図。
【図１１】第１の実施の形態の情報利用装置１の処理手順を示すフローチャート。
【図１２】第１の実施の形態の復元装置３の処理手順を示すフローチャート。
【図１３】第１の実施の形態の分散情報管理装置２の処理手順を示すフローチャート。
【図１４】第１の実施の形態の秘匿乱数テーブルを示した図。
【図１５】本発明の第２の実施の形態が適用されるシステムを示す図。
【図１６】第２の実施の形態の概略動作を示すフロー図。
【図１７】第２の実施の形態の情報利用装置１’を示す図。
【図１８】第２の実施の形態の検証装置３’を示す図。
【図１９】第２の実施の形態の情報利用装置１‘の処理手順を示すフローチャート。
【図２０】第２の実施の形態の検証装置６の処理手順を示すフローチャート。
【図２１】第２の実施の形態のセッション記憶テーブルを示す図。
【図２２】第２の実施の形態の秘匿乱数テーブルを示した図。
【符号の説明】
【００９３】
１、１’…情報利用装置
２、２’…分散情報管理装置
３、３’…復元装置
４…ネットワーク
５…分散情報生成装置
６…検証装置
１０１、１００１…秘匿乱数テーブル
１０２…分散情報識別子テーブル
１０３…接続先情報テーブル
１０４…情報復元要求部
１０５…分散情報識別子取得部
１０６…乱数生成部
１０７、２０５、３０３、６０８…送信部
１０８、２０３、３０１、６０２…受信部
１０９…復号用データ生成部
１１０…復号処理部
１１１…サービス要求部
２０１…接続元情報テーブル
２０２…分散情報テーブル
２０４…秘匿処理部
３０２…中継部
３０４…復元部
６０３…要求検証部
６０４…乱数生成部
６０５…署名検証部
６０６…復号用データ生成部
６０７…復号処理部
【図１】
2008250931.tif 000006
【図２】
2008250931.tif 000007
【図３】
2008250931.tif 000008
【図４】
2008250931.tif 000009
【図５】
2008250931.tif 000010
【図６】
2008250931.tif 000011
【図７】
2008250931.tif 000012
【図８】
2008250931.tif 000013
【図９】
2008250931.tif 000014
【図１０】
2008250931.tif 000015
【図１１】
2008250931.tif 000016
【図１２】
2008250931.tif 000017
【図１３】
2008250931.tif 000018
【図１４】
2008250931.tif 000019
【図１５】
2008250931.tif 000020
【図１６】
2008250931.tif 000021
【図１７】
2008250931.tif 000022
【図１８】
2008250931.tif 000023
【図１９】
2008250931.tif 000024
【図２０】
2008250931.tif 000025
【図２１】
2008250931.tif 000026
【図２２】
2008250931.tif 000027