(57)【特許請求の範囲】
【請求項１】
公開鍵の少なくとも１つの要素を用いて第１平文が暗号化された第１暗号文と、前記公開鍵に対応する秘密鍵を複数に分散した分散鍵と、前記公開鍵の少なくとも１つの要素とを用いて、前記第１暗号文から第２平文を復元するときに用いられる部分復号情報を生成する復号サーバーから、前記秘密鍵に対応する互いに異なる分散鍵のそれぞれによって生成され、前記分散鍵のそれぞれに対応する部分復号情報を受信する部分復号情報受信部と、
受信された複数の前記部分復号情報と、前記公開鍵の少なくとも１つの要素とを用いて、前記第２平文を生成する平文生成部と、
前記第２平文と、前記公開鍵の少なくとも１つの要素とを用いて、第２暗号文を生成する暗号文候補生成部と、
前記第２暗号文が前記第１暗号文とあらかじめ決められた部分において一致する場合には前記複数の部分復号情報を用いて正しい平文を復元可能であると判定し、一致しない場合には前記複数の部分復号情報の少なくとも１つが正当でないと判定する判定部と
を備えることを特徴とする正当性検証装置。
【請求項２】
前記複数の部分復号情報を用いて正しい平文を復元可能であると判定された場合には前記第２平文を出力し、復元可能でないと判定された場合には前記部分復号情報のうちの少なくとも１つが正当でない旨を出力する出力部を備えることを特徴とする請求項１に記載の正当性検証装置。
【請求項３】
乱数及び公開鍵の少なくとも１つの要素を用いて第１平文が暗号化された第１暗号文と、前記公開鍵に対応する秘密鍵を複数に分散した分散鍵と、前記公開鍵の少なくとも１つの要素とを用いて、前記第１暗号文から第２平文を復元するときに用いられる第１部分復号情報を生成する第１復号サーバーから、前記秘密鍵に対応する互いに異なる分散鍵のそれぞれによって生成され、前記分散鍵のそれぞれに対応する第１部分復号情報を受信する第１部分復号情報受信部と、
受信された複数の前記第１部分復号情報と、前記公開鍵の少なくとも１つの要素とを用いて、前記第２平文を生成する平文生成部と、
前記第１暗号文と、前記第２平文と、前記公開鍵の少なくとも１つの要素とを用いて、乱数候補の復元に用いられる乱数格納データ候補を生成する乱数格納データ候補生成部と、
前記乱数格納データ候補と、第２分散鍵と、前記公開鍵の少なくとも１つの要素とを用いて、前記乱数候補の復元に用いられる第２部分復号情報を生成する第２復号サーバーから、前記第２部分復号情報を受信する第２部分復号情報受信部と、
少なくとも前記第２部分復号情報を用いて、前記乱数候補を復元する乱数候補復元部と、
復元された前記乱数候補と、生成された前記第２平文と、前記公開鍵の少なくとも１つの要素とを用いて、第２暗号文を生成する暗号文候補生成部と、
前記第２暗号文が前記第１暗号文のあらかじめ決められた部分において一致する場合には前記複数の第１部分復号情報及び前記複数の第２部分復号情報を用いて正しい平文を復元可能であると判定し、一致しない場合には前記複数の第１部分復号情報及び前記複数の第２部分復号情報のうち、少なくとも１つが正当でないと判定する判定部と
を備えることを特徴とする正当性検証装置。
【請求項４】
前記複数の第１部分復号情報及び前記複数の第２部分復号情報を用いて正しい平文を復元可能であると判定された場合には前記第２平文を出力し、復元可能でないと判定された場合には前記部分復号情報の少なくとも１つが正当でない旨を出力する出力部を備えることを特徴とする請求項３に記載の正当性検証装置。
【請求項５】
前記複数の第１部分復号情報及び前記複数の第２部分復号情報のうち、少なくとも１つが正当でないと判定された場合には、前記第１部分復号情報の送信元である第１復号サーバーまたは前記第２部分復号情報の送信元である第２復号サーバーの少なくとも一方に対して、前記第１部分復号情報または前記第２部分復号情報の少なくとも一方を構成する情報が正当であることを示す証明情報の送信を要求する証明情報要求部と、
前記送信元復号サーバーから正しい前記証明情報が受信されない場合には、前記送信元復号サーバーを不正サーバーとして特定する不正サーバー特定部とを備え、
前記出力部は、前記不正サーバーが特定されたことを示す情報を出力することを特徴とする請求項３に記載の正当性検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、しきい値暗号方式で用いられる部分復号情報の正当性を検証する正当性検証装置及び正当性検証方法に関する。
【背景技術】
【０００２】
従来、安全な通信を行うために、公開鍵暗号方式が用いられている。公開鍵暗号方式では、公開鍵に対応する復号鍵を安全に管理することが大きな課題の１つとなっている。この課題に対する解決方法の１つとして、しきい値暗号方式が開発されている。
【０００３】
しきい値暗号方式では、例えば、複数の復号サーバーと復元端末とが備えられている場合において、公開鍵暗号方式における復号鍵が複数の分散鍵として複数の復号サーバーに分散される。複数の復号サーバーは、分散鍵及び公開鍵を用いて、暗号文を平文に復元するときに用いられる部分復号情報を生成する。復元端末は、複数の復号サーバーから受信した複数の部分復号情報を用いて、暗号文を平文に復元する。しきい値暗号方式としては、例えば非特許文献１、非特許文献２などが知られている。
【非特許文献１】Pierre-Alain Fouque and David Pointcheval, Threshold Cryptosystems Secure against Chosen-Ciphertext Attacks.ASIACRYPT 2001,pp.351-368(2001)
【非特許文献２】V.Shoup and R.Gennaro, Securing Threshold Cryptosystems against Chosen Ciphertext Attack, Journal of Cryptology,vol.15,no.2,pp.75-96(2002)
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記非特許文献１，２をはじめとする既存の技術では、次のような問題が生じていた。
【０００５】
具体的には、復元端末は、受信した部分復号情報のそれぞれの正当性を１つ１つ検証する。このため、復元端末は、受信した複数の部分復号情報の全体の正当性を検証するまでには相当の時間を要していた。
【０００６】
また、部分復号情報の正当性の検証が行われる処理では、部分復号情報を生成するのに必要な分散鍵自体の送受信を行うことなく、部分復号情報の正当性、すなわち真に分散鍵を用いて部分復号情報を生成したか否かを検証する技術として「ゼロ知識証明」が用いられる場合がある。
【０００７】
例えば、ゼロ知識証明では、復元端末は、復号サーバーから受信した証明データに基づいて部分復号情報の正当性を検証する。このため、復元端末（正当性検証装置）は、受信した部分復号情報のそれぞれに対応する証明データを該当する復号サーバーから受信しなければ、各部分復号情報の正当性を検証することができず、複数の部分復号情報全体の正当性の検証を行う上での処理効率を向上させることができなかった。また、証明データの作成には一般に復号以上の時間がかかるため復号サーバーの処理効率を向上させることもできなかった。
【０００８】
そこで、本発明は以上の点に鑑みてなされたものであり、複数の部分復号情報の中に不正な部分復号情報が存在するか否かを高速に判定することができる正当性検証装置及び正当性検証方法を提供すること、さらに、その正当性検証方法により復号サーバーの処理効率を向上させることを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明の第１の特徴は、公開鍵の少なくとも１つの要素を用いて第１平文が暗号化された第１暗号文と、前記公開鍵に対応する秘密鍵を複数に分散した分散鍵と、前記公開鍵の少なくとも１つの要素とを用いて、前記第１暗号文から第２平文を復元するときに用いられる部分復号情報を生成する復号サーバーから、前記秘密鍵に対応する互いに異なる分散鍵のそれぞれによって生成され、前記分散鍵のそれぞれに対応する部分復号情報を受信する部分復号情報受信部と、受信された複数の前記部分復号情報と、前記公開鍵の少なくとも１つの要素とを用いて、前記第２平文を生成する平文生成部と、前記第２平文と、前記公開鍵の少なくとも１つの要素とを用いて、第２暗号文を生成する暗号文候補生成部と、前記第２暗号文が前記第１暗号文とあらかじめ決められた部分において一致する場合には前記複数の部分復号情報を用いて正しい平文を復元可能であると判定し、一致しない場合には前記複数の部分復号情報の少なくとも１つが正当でないと判定する判定部とを備えることを要旨とする。
【００１０】
かかる特徴によれば、正当性検証装置は、受信した複数の部分復号情報を用いて生成した第２暗号文が、当初の第１暗号文のあらかじめ決められた部分において同じである場合には、当該複数の部分復号情報を用いて正しい平文を復元可能であると判定する。
【００１１】
このため、正当性検証装置は、受信した複数の部分復号情報の“個々”についての正当性を検証することなく、当該複数の部分復号情報の“全体”についての正当性を即座に検証することができるため、当該正当性の検証を行う上での処理効率を向上させることができる。
【００１２】
また、正当性検証装置は、ゼロ知識証明を用いておらず、さらに検証鍵を用いなくても複数の部分復号情報の全体の正当性を検証することができるため、当該正当性の検証に必要なデータ量を低減することができる。これにより、一般的に処理効率が低く、記憶容量も少ない通信装置（例えば、携帯電話機）においても実用可能な検証処理を実現することができる。
【００１３】
本発明の第２の特徴は、前記複数の部分復号情報を用いて正しい平文を復元可能であると判定された場合には前記第２平文を出力し、正当でないと判定された場合には前記部分復号情報のうちの少なくとも１つが正当でない旨を出力する出力部を備えることを要旨とする。
【００１４】
本発明の第３の特徴は、乱数及び公開鍵の少なくとも１つの要素を用いて第１平文が暗号化された第１暗号文と、前記公開鍵に対応する秘密鍵を複数に分散した分散鍵と、前記公開鍵の少なくとも１つの要素とを用いて、前記第１暗号文から第２平文を復元するときに用いられる第１部分復号情報を生成する第１復号サーバーから、前記秘密鍵に対応する互いに異なる分散鍵のそれぞれによって生成され、前記分散鍵のそれぞれに対応する第１部分復号情報を受信する第１部分復号情報受信部と、受信された複数の前記第１部分復号情報と、前記公開鍵の少なくとも１つの要素とを用いて、前記第２平文を生成する平文生成部と、前記第１暗号文と、前記第２平文と、前記公開鍵の少なくとも１つの要素とを用いて、乱数候補の復元に用いられる乱数格納データ候補を生成する乱数格納データ候補生成部と、前記乱数格納データ候補と、第２分散鍵と、前記公開鍵の少なくとも１つの要素とを用いて、前記乱数候補の復元に用いられる第２部分復号情報を生成する第２復号サーバーから、前記第２部分復号情報を受信する第２部分復号情報受信部と、少なくとも前記第２部分復号情報を用いて、前記乱数候補を復元する乱数候補復元部と、復元された前記乱数候補と、生成された前記第２平文と、前記公開鍵の少なくとも１つの要素とを用いて、第２暗号文を生成する暗号文候補生成部と、前記第２暗号文が前記第１暗号文のあらかじめ決められた部分において一致する場合には前記複数の第１部分復号情報及び前記複数の第２部分復号情報を用いて正しい平文を復元可能であると判定し、一致しない場合には前記複数の第１部分復号情報及び前記複数の第２部分復号情報のうち、少なくとも１つが正当でないと判定する判定部と
を備えることを要旨とする。
【００１５】
本発明の第４の特徴は、前記複数の第１部分復号情報及び前記複数の第２部分復号情報を用いて正しい平文を復元可能であると判定された場合には前記第２平文を出力し、復元可能でないと判定された場合には前記部分復号情報の少なくとも１つが正当でない旨を出力する出力部を備えることを要旨とする。
【００１６】
本発明の第５の特徴は、前記複数の第１部分復号情報及び前記複数の第２部分復号情報のうち、少なくとも１つが正当でないと判定された場合には、前記第１部分復号情報の送信元である第１復号サーバーまたは前記第２部分復号情報の送信元である第２復号サーバーの少なくとも一方に対して、前記第１部分復号情報または前記第２部分復号情報の少なくとも一方を構成する情報が正当であることを示す証明情報の送信を要求する証明情報要求部と、前記送信元復号サーバーから正しい前記証明情報が受信されない場合には、前記送信元復号サーバーを不正サーバーとして特定する不正サーバー特定部とを備え、前記出力部は、前記不正サーバーが特定されたことを示す情報を出力することを要旨とする。
【発明の効果】
【００１７】
本発明の特徴によれば、複数の部分復号情報の中に不正な部分復号情報が存在するか否かを高速に判定することができ、また復号サーバーの復号時間の短縮を図ることもできる。
【発明を実施するための最良の形態】
【００１８】
［第１実施形態］
（通信システムの構成）
図１は、本実施形態における通信システム１００の概略構成図である。図１に示すように、通信システム１００は、暗号化端末１０と、復元端末２０と、鍵生成サーバー３０と、暗号文管理サーバー４０と、複数の復号サーバー５０１〜５０ｎと、ネットワーク６０とを備える。
【００１９】
図２は、暗号化端末１０と復元端末２０と鍵生成サーバー３０と暗号文管理サーバー４０と複数の復号サーバー５０１〜５０ｎとがネットワーク６０を介して送受信する情報の流れを示す図である。以下では、図１及び図２を参照しながら通信システム１００の内容を詳細に説明する。
【００２０】
鍵生成サーバー３０は、鍵生成部３１と、鍵データベース３２と、送信部３３とを備える。鍵生成部３１は、２つの相異なる奇素数ｐ，ｑを生成し、Ｎ＝ｐｑを計算する。また、鍵データベース３２は、（ｐ−１）（ｑ−１）と互いに素となる整数ｅを選択する。また、複数の要素からなる公開鍵（ｅ，Ｎ）と、当該複数の要素からなる公開鍵（ｅ，Ｎ）に対する秘密鍵ｄと、秘密鍵ｄを複数（ここではｎ個）に分散した分散鍵ｓ1〜ｓnとを生成する。但し、Δ＝ｎ！であると定義する。複数の要素からなる公開鍵が（ｅ，Ｎ）であるときにＧＣＤ（ｅ，Δ）＝１となるようにｅを定める。ＧＣＤ（Ｘ，Ｙ）は、ＸとＹとの最大公約数を表す。なお、公開鍵は、必ずしも複数の要素からなるものでなくても構わない。
【００２１】
本実施形態では各分散鍵を区別するときには、ｉ番目の分散鍵を「ｓｉ」と表す。このように分散鍵ｓには１〜ｎまでの番号が付与される。
【００２２】
また、鍵データベース３２は、公開鍵（ｅ，Ｎ）を記憶する。
【００２３】
送信部３３は、暗号化端末１０，復元端末２０，暗号文管理サーバー４０若しくは／及び復号サーバー５０１〜５０ｎに対して複数の要素からなる公開鍵（ｅ，Ｎ）を送信する。また、送信部３３は、復号サーバー５０i(i=1〜n)に対して分散鍵ｓｉを送信する。
【００２４】
暗号化端末１０は、受信部１１と、暗号文生成部１２と、送信部１３と、入力部１４とを備える。受信部１１は、鍵生成サーバー３０から複数の要素からなる公開鍵（ｅ，Ｎ）を受信する。
【００２５】
暗号文生成部１２は、受信部１１または入力部１４から第１平文ｍを取得する。暗号文生成部１２は、複数の要素からなる公開鍵（ｅ，Ｎ）を用いて下記に示す式１を計算することにより、第１平文ｍを暗号化して第１暗号文Ｃを生成する。送信部１３は、生成された第１暗号文Ｃを暗号文管理サーバー４０に送信する。
【００２６】
Ｃ＝ｍｅｍｏｄＮ  （式１）
但し、ｍ∈Ｚ＊Ｎの関係が成立する。Ｚ＊Ｎは０以上Ｎ未満でありＮと互いに素な整数の集合である。
【００２７】
暗号文管理サーバー４０は、受信部４１と、暗号文管理部４２と、暗号文データベース４３と、送信部４４とを備える。受信部４１は、暗号化端末１０から第１暗号文Ｃを受信するとともに、鍵生成サーバー３０から複数の要素からなる公開鍵（ｅ，Ｎ）を受信する。
【００２８】
暗号文データベース４３は、受信部４１により受信された第１暗号文Ｃを記憶する。送信部４４は、復号サーバー５０１〜５０ｎからの要求に応じて、第１暗号文Ｃとそれに対応する複数の要素からなる公開鍵（ｅ，Ｎ）とを復号サーバー５０１〜５０ｎに送信する。
【００２９】
復号サーバー５０１〜５０ｎは、受信部５１１〜５１ｎと、部分復号情報生成部５２１〜５２ｎと、送信部５３１〜５３ｎとを備える。復号サーバー５０１〜５０ｎには、１〜ｎまでの番号が付与される。
【００３０】
受信部５１１〜５１ｎは、暗号文データベース４３から第１暗号文Ｃとそれに対応する複数の要素からなる公開鍵（ｅ，Ｎ）とを受信する。受信部５１１〜５１ｎは、複数の要素からなる公開鍵（ｅ，Ｎ）に対応する秘密鍵が複数に分散された分散鍵ｓ１〜ｓｎをそれぞれ受信する。つまり、復号サーバー５０i(i=1〜n)は、分散鍵ｓｉを受信する。
【００３１】
復号サーバー５０i(i=1〜n)は、受信された第１暗号文Ｃと、分散鍵ｓｉと、複数の要素からなる公開鍵（ｅ，Ｎ）の少なくとも１つの要素とを用いて、部分復号情報δｎi(i=1〜n)を生成する。なお、分散鍵ｓ１〜ｓｎは部分復号情報δ１〜δｎと対応している。
【００３２】
部分復号情報生成部５２１〜５２ｎのうちのｉ番目の部分復号情報生成部５２ｉは、第１暗号文Ｃ（Ｃ＝（Ｃ１，Ｃ２））、分散鍵ｓｉ、及び複数の要素からなる公開鍵（ｅ，Ｎ）の少なくとも１つの要素を用いて、下記に示す式２を計算することにより、部分復号情報δｉを生成する。
【００３３】
なお、復元端末２０における正当性検証処理において、本実施形態では、第１暗号文Ｃ（Ｃ１，Ｃ２）は、Ｃ＝Ｃ１とする。つまり、Ｃ２は空データとして扱われる。
【００３４】
δｉ＝（Ｃ１）２ΔｓｉｍｏｄＮ  （式２）
送信部５３１〜５３ｎは、復元端末２０からの要求に応じて、部分復号情報δ１〜δｎのうちのｔ個（ここではｔ≦ｎ）を復元端末２０に送信する。
【００３５】
（復元端末の構成）
次に、復元端末２０について図３を参照しながら説明する。図３に示すように、復元端末２０は、第１受信部２０−１と、平文生成部２０−３と、暗号文候補生成部２０−５と、判定部２０−７と、平文出力部２０−９と、送信部２０−１１と、第２受信部２０−１３と、不正特定部２０−１５と、不正情報出力部２０−１７とを備える。
【００３６】
ここで、本実施形態における復元端末２０は、（ｔ，ｎ）しきい値暗号方式を用いて第１暗号文Ｃを第１平文ｍに復元する。（ｔ，ｎ）しきい値暗号方式とは、ｎ個の部分復号情報δ１〜δｎのうちのｔ個の部分復号情報を用いて、第１暗号文Ｃから第１平文ｍを復元する方式である。よって、「ｔ」は、（ｔ，ｎ）しきい値暗号方式において必要な部分復号情報δの数を表す。
【００３７】
第１受信部２０−１は、鍵生成サーバー３０から公開鍵（ｅ，Ｎ）を受信し、暗号文管理サーバー４０から第１暗号文Ｃを受信し、復号サーバー５０１〜５０nのうち任意のt個の復号サーバーからt個の部分復号情報を受信する。本実施形態では、第１受信部２０−１は、復号サーバー５０１〜５０tのt個の復号サーバーからt個の部分復号情報を受信する。つまり、第１受信部２０−１が部分復号情報δ１〜δｔを受信する場合を考える。
【００３８】
さらに、公開鍵の「ｅ」の選択方法から、「ｅ」と「４Δ」は互いに素である。このため、Ｘ×４Δ２＋Ｙ×ｅ＝１を満たす整数Ｘと整数Ｙとの組み合わせが存在する。よって、平文生成部２０−３は、次に、Ｘ×４Δ２＋Ｙ×ｅ＝１を満たす整数Ｘと整数Ｙとの組み合わせを計算する。例えば、平文生成部２０−３は、拡張ユークリッドアルゴリズムを用いて、多項式時間で整数Ｘ、Ｙを計算できる。
【００３９】
そして、平文生成部２０−３は、求めた整数Ｘ、Ｙと受信された部分復号情報δ１〜δｔと、複数の要素からなる公開鍵（ｅ，Ｎ）の少なくとも１つの要素とを用いて下記に示す式３を計算することにより、第２平文ｍ’を生成する。
【数１】
0005142361.tif 000002
【００４０】
ここで、もしｍ’=ｍが成立している場合、式４、式５及び式６よりｍ’’=mとなる。
【数２】
0005142361.tif 000003
【数３】
0005142361.tif 000004
【数４】
0005142361.tif 000005
【００４１】
受信された部分復号情報が正しい部分復号情報であれば、ｍ”＝ｍが成立する。一方、受信された部分復号情報が正しい部分復号情報でなければ、ｍ”≠ｍが成立する。
【００４２】
式３及び式４における「Ｓ」は、復元端末２０からの復号要求を受け入れた復号サーバー５０１〜５０ｔの番号の集合を表す。つまり、例えば、番号１、２、５が付与された復号サーバーが復号要求を受け入れた場合には、Ｓ＝｛１，２，５｝と記述される。但し、集合Ｓに含まれる番号の数は、（ｔ，ｎ）しきい値暗号方式において部分復号情報δが必要な数ｔに限定される。また、式３及び式４における「λ」は補間係数である。
【００４３】
式４における「Πｊ∈Ｓ／｛ｉ｝（ｉ−ｊ）」は、集合Ｓに含まれる番号のうちｉを除く全ての番号に関してｉから引き算した値を考え、それら全ての積を示す。同様に、「Πｊ∈Ｓ／｛ｉ｝（−ｊ）」は、集合Ｓに含まれる番号のうちｉを除く全ての数字に関して、絶符号を逆にした値の積を示す。
【００４４】
暗号文生成部２０−５は、生成された第２平文ｍ’ ’と、複数の要素からなる公開鍵（ｅ，Ｎ）の少なくとも１つの要素を用いて、下記の式７を計算することにより第２暗号文Ｃ’を生成する。なお、暗号文生成部２０−５は、暗号文候補生成部を構成する。
【００４５】
Ｃ’＝ｍ’’ｅｍｏｄＮ  （式７）
判定部２０−７は、暗号文生成部２０−５により生成された第２暗号文Ｃ’（＝（Ｃ１’，Ｃ２’））が、第１受信部２０−１により受信された第１暗号文Ｃのあらかじめ決められた部分Ｃ１において、Ｃ１’と一致するか否か判定する。
【００４６】
本実施形態では、第１暗号文Ｃ（Ｃ１，Ｃ２）のうちのＣ２が空データであるため、判定部２０−７は、第２暗号文Ｃ’がＣと完全に一致するか否かを判定する。
【００４７】
判定部２０−７は、当該第２暗号文Ｃ’が第１暗号文Ｃ（Ｃ１）の全部と一致する場合には、受信された部分復号情報δ１〜δｔを用いて正しい平文が復元可能であると判定する。一方、判定部２０−７は、それ以外の場合には、受信された部分復号情報δ１〜δｔの少なくとも１つが正当でないと判定する。
【００４８】
平文出力部２０−９は、判定部２０−７により部分復号情報δ１〜δｔを用いて正しい平文が復元可能であると判定された場合には、第２平文ｍ’’を出力する。一方、平文出力部２０−９は、判定部２０−７により部分復号情報δ１〜δｔの少なくとも１つが正当でないと判定された場合には、部分復号情報δ１〜δｔの少なくとも１つが正当でないことを示す情報を出力する。
【００４９】
送信部２０−１１は、判定部２０−７により部分復号情報δ１〜δｔの少なくとも１つが正当でないと判定された場合には、部分復号情報δ１〜δｔのそれぞれの送信元の復号サーバー５０１〜５０ｔ（第１復号サーバー、第２復号サーバー）に対して部分復号情報を構成する情報（分散鍵）が正当であることを示す証明情報（いわゆるｐｒｏｏｆ）の送信を要求する。
【００５０】
このため、受信部２０−１は、部分復号情報がどの復号サーバーから送信されたかを送信部２０−１１に伝える必要がある。
【００５１】
不正特定部２０−１５は、上記送信元復号サーバーから証明情報が所定期間内に受信されない場合には、当該送信元復号サーバーからの部分復号情報が正当でないと判定し、その旨を出力する。
【００５２】
一方、不正特定部２０−１５は、上記送信元復号サーバーから証明情報が所定期間内に受信された場合には、当該証明情報と鍵生成サーバー３０が送信して復号サーバーが受信した検証鍵ｖｋとを用いて、当該送信元復号サーバーからの部分復号情報が正当であるか否か判定する。
【００５３】
（通信システムの動作）
次に、本実施形態における通信システム１００を用いて行う通信方法の手順について図４を参照しながら説明する。
【００５４】
先ず、Ｓ１０１において、鍵生成サーバー３０が、複数の要素からなる公開鍵（ｅ，Ｎ）、複数の分散鍵ｓ１〜ｓｎ、複数の検証鍵ｖｋ１〜ｖｋｎを生成する。
【００５５】
Ｓ１０２乃至Ｓ１０５において、鍵生成サーバー３０は、複数の要素からなる公開鍵（ｅ，Ｎ）を復元端末２０、復号サーバー５０１〜５０ｎ、暗号文管理サーバー４０、暗号化端末１０に送信する。
【００５６】
Ｓ１０６において、鍵生成サーバー３０は、復号サーバー５０i(i=1〜n)に対して分散鍵ｓｉを送信する。
【００５７】
Ｓ１０７において、鍵生成サーバー３０は、複数の検証鍵ｖｋ１〜ｖｋｎを復元端末２０に送信する。
【００５８】
Ｓ１０８において、暗号化端末１０は、複数の要素からなる公開鍵（ｅ，Ｎ）を用いて上記式１を計算することにより、第１暗号文Ｃを生成する。
【００５９】
Ｓ１０９において、暗号化端末１０は、生成した第１暗号文Ｃを暗号文管理サーバー４０に送信する。
【００６０】
Ｓ１１０において、暗号文管理サーバー４０は、受信した第１暗号文Ｃを暗号文データベース４３に格納する。
【００６１】
Ｓ１１１において、復元端末２０は、第１暗号文Ｃの送信を暗号文管理サーバー４０に要求する。
【００６２】
Ｓ１１２において、暗号文管理サーバー４０は、復元端末２０の要求に応じて、暗号文データベース４３に記憶されている第１暗号文Ｃを復元端末２０に送信する。
【００６３】
Ｓ１１３において、暗号文管理サーバー４０は、復号サーバー５０１〜５０ｎの要求に応じて、暗号文データベース４３に記憶されている第１暗号文Ｃを復号サーバー５０１〜５０ｎに送信する。
【００６４】
Ｓ１１４において、復元端末２０は、復号サーバー５０１〜５０ｔ（ここではｔ≦ｎ）に対して、部分復号情報の送信を要求する。
【００６５】
Ｓ１１５において、復号サーバー５０１〜５０ｎはそれぞれ、第１暗号文Ｃと分散鍵ｓiと公開鍵Ｎとを用いて上記式２を計算することにより、部分復号情報δｉを生成する。
【００６６】
Ｓ１１６において、復号サーバー５０１〜５０ｔはそれぞれ、生成した部分復号情報δｉを復元端末２０に送信する。
【００６７】
Ｓ１１７において、復元端末２０は、受信した部分復号情報δ１〜δｔを用いて正しい平文を復元可能であるか否か判定する正当性検証処理１を実行する。
【００６８】
上記Ｓ１１７の正当性検証処理１について図５を参照しながら詳細に説明する。図５に示すように、Ｓ１１７−１において、復元端末２０は、復号サーバー５０１〜５０ｔから受信した部分復号情報δ１〜δｔ、鍵生成サーバー３０から受信した公開鍵（ｅ，Ｎ）を用いて、上記式３乃至式４を計算することにより、第２平文ｍ’’を生成する。
【００６９】
Ｓ１１７−３において、復元端末２０は、生成した第２平文ｍ’’と複数の要素からなる公開鍵（ｅ，Ｎ）とを用いて、上記式７を計算することにより第２暗号文Ｃ’を生成する。
【００７０】
Ｓ１１７−５において、復元端末２０は、第２暗号文Ｃ’が、Ｓ１１２で受信した第１暗号文Ｃのあらかじめ決められた部分において一致するか否か判定する（ここでは、ＣとＣ’が完全に一致するか否かを判定する。）。また、復元端末２０は、この判定がＹＥＳである場合にはＳ１１７−７の処理に移り、ＮＯである場合にはＳ１１７−９の処理に移る。
【００７１】
Ｓ１１７−７において、復元端末２０は、Ｓ１１６で受信した部分復号情報δ１〜δｔを用いて正しい平文を復元可能と判定し、第２平文ｍ’’を出力する。この場合には、ｍ＝ｍ’’が成立する。
【００７２】
Ｓ１１７−９において、復元端末２０は、Ｓ１１６で受信した部分復号情報δ１〜δｔの少なくとも１つが正当でないと判定し、当該部分復号情報δ１〜δｔの少なくとも１つが正当でないことを示す情報を出力する。
【００７３】
かかる特徴によれば、復元端末２０は、受信した部分復号情報δ１〜δｔを用いて生成した第２暗号文が、当初の第１暗号文のあらかじめ決められた部分において同じである場合には、当該部分復号情報δ１〜δｔを用いて正しい平文を復元可能であると判定する。
【００７４】
このため、復元端末２０は、受信した部分復号情報δ１〜δｔの“個々”についての正当性を検証することなく、当該部分復号情報δ１〜δｔの“全体”についての正当性を即座に検証することができるため、当該正当性の検証を行う上での処理効率を向上させることができる。
【００７５】
また、復元端末２０は、ゼロ知識証明を用いておらず、さらに検証鍵を用いなくても部分復号情報δ１〜δｔの全体の正当性を検証することができるため、当該正当性の検証に必要なデータ量及び計算量を低減することができる。これにより、一般的に処理効率が低く、記憶容量も少ない通信装置（例えば、携帯電話機）においても実用可能な検証処理を実現することができる。
【００７６】
（変更例）
なお、本発明は、上記実施形態に限定されずに下記に示す変更を加えてもよい。具体的には、復元端末２０は、図５に示す正当性検証処理１に替えて図６に示す正当性検証処理２を実行してもよい。図６に示す正当性検証処理２では、図５に示す正当性検証処理１とは異なり、不正に部分復号情報を生成した復号サーバー５０を特定する処理（不正復号サーバー特定処理Ａ）が加えられている。
【００７７】
図６に示すように、Ｓ１１７−１１において、復元端末２０は、図５に示すＳ１１７−１及びＳ１１７−３の処理Ａを実行する。この処理Ａについては上述した通りであるため、ここでの詳細な説明は省略する。
【００７８】
Ｓ１１７−１３において、復元端末２０は、第２暗号文Ｃ’が、Ｓ１１２で受信した第１暗号文Ｃ（ここでは、Ｃ（Ｃ１，Ｃ２）のうちのＣ１のみ）の全部と一致するか否か判定する。また、復元端末２０は、この判定がＹＥＳである場合にはＳ１１７−１５の処理に移り、ＮＯである場合にはＳ１１７−１７の処理に移る。
【００７９】
Ｓ１１７−１５において、復元端末２０は、Ｓ１１６で受信した部分復号情報δ１〜δｔを用いて正しい平文を復元可能であると判定し、第２平文ｍ’を出力する。
【００８０】
Ｓ１１７−１７において、復元端末２０は、部分復号情報δ１〜δｔの少なくとも１つが正当でないと判定し、部分復号情報δ１〜δｔの送信元の復号サーバー（送信元復号サーバー）５０１〜５０ｔに対して部分復号情報を構成する情報（分散鍵）が正当であることを示す証明情報の送信を要求する。
【００８１】
そして、復元端末２０は、上記送信元復号サーバーから正しい証明情報を受信できない場合（所定期間内に証明情報を受信できない場合も含む）には、当該送信元復号サーバーを不正サーバーとして特定する。
【００８２】
Ｓ１１７−１９において、復元端末２０は、当該不正サーバーがあったことを特定する情報及び当該不正サーバーを特定する情報を出力する。
【００８３】
かかる特徴によれば、復元端末２０が、上記送信元復号サーバーから正しい証明情報を受信できない場合（所定期間内に証明情報を受信できない場合も含む）には、当該復元端末２０は、当該送信元復号サーバーが正当な部分復号情報を生成していないと推定することができる。このため、復元端末２０は、当該送信元復号サーバーを不正サーバーとして特定することができる。
【００８４】
なお、第１実施形態では、公開鍵の少なくとも１つの要素と第１平文ｍとにより、第１暗号文Ｃが生成されているが、これに限定されない。例えば、公開鍵の少なくとも１つの要素と乱数ｒ（ここでは、上述した実施形態における平文と等価）とにより、第１暗号文Ｃが生成されてもよい。例えば、ハッシュ関数Ｈを定義し、C=(C1,C2),C1=re,C2=H(r)＊m（＊は排他的論理和）という場合、C1と暗号文候補Ｃ１'が完全に等しいかどうかを判定する。
【００８５】
［第２実施形態］
上記第１実施形態における暗号化端末１０は、一度の部分復号情報の結合で正当性検証が行えるが、第２実施形態における暗号化端末１０は、一度の部分復号情報の結合で正当性検証が行えないという点で相違する。
【００８６】
また、第１実施形態における復元端末２０は、公開鍵及び部分復号情報を用いて平文を生成し、生成した平文を用いて第２暗号文を生成している。これに対し、第２実施形態における復元端末２２０は、公開鍵及び部分復号情報（第１部分復号情報）を用いて第２平文を生成し、さらに当該部分復号情報以外の部分復号情報（第２部分復号情報）を用いて“乱数候補”を復元し、生成した第２平文及び復元した乱数候補を用いて第２暗号文を生成している点で相違する。
【００８７】
このため、第２実施形態における復元端末２２０は、第１実施形態にはない構成（例えば、乱数候補の復元に用いられる乱数格納データ候補生成部２２０−５など）を備える。なお、図７に示す各部のうち、図１に示す同一名称の部については、特段の説明をしていない限り同様の機能・構成を有するものとする。
【００８８】
（通信システムの構成）
図７は、本実施形態における通信システムの概略構成図である。図７に示すように、通信システム２００は、暗号化端末２１０と、復元端末２２０と、鍵生成サーバー２３０と、暗号文管理サーバー２４０と、複数の復号サーバー２５０１〜２５０ｎとを備える。これらの暗号化端末２１０と復元端末２２０と鍵生成サーバー２３０と暗号文管理サーバー２４０と複数の復号サーバー２５０１〜２５０ｎとはネットワーク（図示せず）により接続されている。
【００８９】
暗号化端末２１０は、２つの要素からなる公開鍵（ｇ，Ｎ）及び乱数ｒ（0からN-1までの値から一様な確率で選択）を用いて下記に示す式８を計算することにより、第１平文ｍを暗号化して第１暗号文Ｃを生成する。送信部１３は、生成された第１暗号文Ｃを暗号文管理サーバー２４０に送信する。
【００９０】
Ｃ＝ｇｍｒＮｍｏｄＮ２  （式８）
但し、ｇ＝（１＋ａＮ）ｂＮ，ａ∈ＺN＊，ｂ∈ＺN＊，Ｎ＝ｐｑ（p,qは強い素数）,
θ＝a(p-1)(q-1)βmod N、β∈ＺN＊
β(p-1)(q-1)/4 mod N・(p-1)(q-1)/4を秘密情報として先ほどと同様に分散鍵ｓ１〜ｓｎを作成する。
【００９１】
復号サーバー２５０１〜２５０ｎは、受信した第１暗号文Ｃ、分散鍵ｓ１〜ｓｎ、及び公開鍵の要素（ｇ，Ｎ）のＮ、またはＮとｇとを用いて、第１部分復号情報δ１〜δｎを生成する。
【００９２】
復号サーバー２５０１〜２５０ｎのうちのｉ番目の復号サーバー２５０ｉは、第１暗号文Ｃ、分散鍵ｓｉ及び公開鍵Ｎを用いて、下記に示す式９を計算することにより、第１部分復号情報δｉを生成する。
【００９３】
δｉ＝Ｃ２ΔｓｉｍｏｄＮ２  （式９）
復号サーバー２５０１〜２５０ｎは、復元端末２２０からの要求に応じて、第１部分復号情報δ１〜δｎのうちのｔ個（ここではｔ≦ｎ）を復元端末２２０に送信する。上述したように「ｔ」は、（ｔ，ｎ）しきい値暗号方式において必要な第１部分復号情報δの数を表す。
【００９４】
（復元端末の構成）
次に、復元端末２２０について図７を参照しながら詳細に説明する。図７に示すように、復元端末２２０は、第１受信部２２０−１と、平文生成部２２０−３と、乱数格納データ候補生成部２２０−５と、第１送信部２２０−７と、第２受信部２２０−９と、暗号文生成部２２０−１１と、判定部２２０−１３と、平文出力部２２０−１５と、第２送信部２２０−１７と、第３受信部２２０−１９と、不正特定部２２０−２１と、不正情報出力部２２０−２３とを備える。
【００９５】
第１受信部２２０−１は、鍵生成サーバー２３０から複数の要素からなる公開鍵（ｇ，Ｎ，θ）を受信し、暗号文管理サーバー２４０から第１暗号文Ｃを受信し、復号サーバー２５０１〜２５０ｔから第１部分復号情報δ１〜δｔを受信し、第１部分復号情報δ１〜δｔのそれぞれの送信元復号サーバーを個々に識別するための復号サーバー識別情報（h）を受信する。
【００９６】
平文生成部２２０−３は、受信された第１部分復号情報δ１〜δｔと複数の要素からなる公開鍵（ｇ，Ｎ，θ）の全てとを用いて下記の等式が成立することにより、第２平文ｍ’を計算できる。
【数５】
0005142361.tif 000006
【数６】
0005142361.tif 000007
【００９７】
乱数格納データ候補生成部２２０−５は、受信された第１暗号文Ｃと第２平文ｍ’と複数の要素からなる公開鍵ｇ，Ｎとを用いて下記に示す式１２を計算することにより、乱数格納データ候補Ｒ’（式１３）を生成する。
【００９８】
Ｒ’＝Ｃ/ｇｍ’ｍｏｄＮ２  （式１２）
なお、正しくｍが復元されている場合には、以下の式が成立する。
【００９９】
Ｒ’＝Ｒ＝ｒＮｍｏｄＮ    （式１３）
第１送信部２２０−７は、生成された乱数格納データ候補Ｒ’を、第１部分復号情報δｉの送信元の復号サーバー２５０ｉまたはそれ以外の復号サーバー２５０ｊに送信する。ここでは、第１送信部２２０−７は、生成された乱数格納データ候補Ｒ’を復号サーバー２５０ｊに送信するものとする（但し、jは１からtの間の値であってもよい）。
【０１００】
復号サーバー２５０ｊは、第１送信部２２０−７から受信した乱数格納データ候補Ｒ’を用いて下記に示す式１４を計算することにより、第２部分復号情報δｊ’を生成する。
【０１０１】
δｊ’＝Ｒ’２ΔｔｊｍｏｄＮ  （式１４）
但し、ｔｊは、復号サーバー２５０ｊで用いられる分散鍵である。また、ｔｊは、法Ｎ・（p-1）(q-1)/4のもとで、Ｎの逆元を秘密情報として第１実施形態と同様に構成される。
【０１０２】
第２受信部２２０−９は、復号サーバー２５０ｊにより生成された第２部分復号情報δｊ’を受信する。
【０１０３】
暗号文生成部２２０−１１は、受信された第２部分復号情報δｊ’、及び生成された乱数格納データ候補Ｒ’を用いて、上記式１４を計算することにより、乱数候補ｒ’を復元する。暗号文生成部２２０−１１は、復元した乱数候補ｒ’、第２平文ｍ’を以下の式に代入することにより、第２暗号文Ｃ’を生成する。なお、暗号文生成部２２０−１１は、乱数候補復元部を構成する。
【０１０４】
Ｃ’＝ｇｍ’ｒ’ＮｍｏｄＮ２  （式１５）
判定部２２０−１３は、暗号文生成部２２０−１１により生成された第２暗号文Ｃ’が、第１受信部２２０−１により受信された第１暗号文Ｃの全部と一致するか否か判定する。
【０１０５】
なお、本実施形態では、第１暗号文Ｃ（Ｃ１，Ｃ２）のうちのＣ２は空データであるものとする。
【０１０６】
判定部２２０−１３は、第２暗号文Ｃ’が当該第１暗号文Ｃの全部と一致する場合には、受信された第１部分復号情報δ１〜δｔ及び各第２部分復号情報を用いて正しい平文を復元可能であると判定する。一方、判定部２２０−１３は、それ以外の場合には、受信された第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当でないと判定する。
【０１０７】
平文出力部２２０−１５は、判定部２２０−１３により第１部分復号情報δ１〜δｔ及び各第２部分復号情報を用いて正しい平文を復元可能であると判定された場合には、第２平文ｍ’を出力する。この場合には、ｍ＝ｍ’が成立する。
【０１０８】
第２送信部２２０−１７は、判定部２２０−１３により第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当でないと判定された場合には、第１部分復号情報と第２部分復号情報の送信元の復号サーバー（送信元復号サーバー）に対して、第１部分復号情報、第２部分復号情報を構成する際に用いた情報（分散鍵）が正当であることを示す証明情報（いわゆるｐｒｏｏｆ）の送信を要求する。
【０１０９】
第３受信部２２０−１９は、上記送信元復号サーバーから証明情報を受信する。
【０１１０】
不正特定部２２０−２１は、上記送信元復号サーバーから証明情報が所定期間内に受信されない場合には、上記送信元復号サーバーを不正サーバーとして特定する。
【０１１１】
一方、不正特定部２２０−１９は、上記送信元復号サーバーから証明情報が所定期間内に受信された場合には、当該証明情報と鍵生成サーバー２３０から受信された検証鍵ｖｋとを用いて、当該証明情報に対応する第１部分復号情報が正当であるか否か判定する。
【０１１２】
もし、不正特定部２２０−１９は、正当でない第１部分復号情報が含まれている場合には、当該正当でない第１部分復号情報の送信元復号サーバーを不正サーバーとして特定する。
【０１１３】
一方、不正特定部２２０−１９は、正当でない第１部分復号情報が含まれていない場合には、第２部分復号情報が正当であるか否か判定する。不正特定部２２０−１９は、正当でない第２部分復号情報が含まれている場合には、当該正当でない第２部分復号情報の送信元復号サーバーを不正サーバーとして特定する。なお、不正特定部２２０−１９は、正当でない第１部分復号情報が含まれている場合にも、第２部分復号情報が正当であるか否か判定してもよい。
【０１１４】
不正情報出力部２２０−２３は、不正サーバーが特定されたことを示す情報を出力するとともに、第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当でないことを特定する情報を出力する。
【０１１５】
（通信システムの動作）
次に、本実施形態における通信システム２００を用いて行う通信方法の手順を説明する。第１実施形態で説明したＳ１０１乃至Ｓ１１６までの処理における第１暗号文（式１）、複数の要素からなる公開鍵（ｅ，Ｎ）及び部分復号情報δ（式２）を、本実施形態における第１暗号文Ｃ（式８）、複数の要素からなる公開鍵（ｇ，Ｎ，θ）及び第１部分復号情報δ（式９）に読み替えることができる。したがって、第１実施形態で説明したＳ１０１乃至Ｓ１１６までの処理の流れは本実施形態と同様であるため、ここでの詳細な説明は省略する。以下では、Ｓ１１７の正当性検証処理３について図８を参照しながら説明する。
【０１１６】
図８に示すように、Ｓ１１７−２１において、復元端末２２０は、受信した第１部分復号情報δ１〜δｔ、及び複数の要素からなる公開鍵（θ，Ｎ）を用いて上記式１０及び式１１を計算することにより、第２平文ｍ’を生成する。
【０１１７】
Ｓ１１７−２３において、復元端末２２０は、受信した第１暗号文Ｃ、複数の要素からなる公開鍵（ｇ，Ｎ）及び第２平文ｍ’を用いて上記式１２を計算することにより、乱数格納データ候補Ｒ’を生成する。
【０１１８】
Ｓ１１７−２５において、復元端末２２０は、生成した乱数格納データ候補Ｒ’を、第１部分復号情報δｉの送信元の復号サーバー２５０ｉまたはそれ以外の復号サーバー２５０ｊに送信する。ここでは、復元端末２２０は、生成した乱数格納データ候補Ｒ’を復号サーバー２５０ｊに送信するものとする。
【０１１９】
Ｓ１１７−２７において、復号サーバー２５０ｊは、復元端末２２０から受信した乱数格納データ候補Ｒ’を用いて上記式１４を計算することにより、第２部分復号情報δｊ’を生成する。
【０１２０】
Ｓ１１７−２９において、復元端末２２０は、復号サーバー２５０ｊから第２部分復号情報δｊ’を受信する。
【０１２１】
Ｓ１１７−３１において、復元端末２２０は、受信した第２部分復号情報δｊ’を用いて、上記式１３のＲ’が代入された上記式１４を計算することにより、乱数候補ｒ’を復元する。
【０１２２】
Ｓ１１７−３３において、復元端末２２０は、復元した乱数候補ｒ’、及び生成した第２平文ｍ’を上記式１５に代入することにより、第２暗号文Ｃ’を生成する。
【０１２３】
Ｓ１１７−３５において、復元端末２２０は、Ｓ１１７−３３により生成された第２暗号文Ｃ’が、受信された第１暗号文Ｃの全部と一致するか否か判定する。また、復元端末２２０は、この判定がＹＥＳである場合にはＳ１１７−３７の処理に移り、ＮＯである場合にはＳ１１７−３９の処理に移る。
【０１２４】
なお、本実施形態では、第１暗号文Ｃ（Ｃ１，Ｃ２）のうちのＣ２は空データであるものとする。
【０１２５】
Ｓ１１７−３７において、復元端末２２０は、Ｓ１１６で受信した第１部分復号情報δ１〜δｔ及び各第２部分復号情報を用いて正しい平文を復元可能であると判定し、Ｓ１１７−２１で生成した第２平文ｍ’を出力する。
【０１２６】
Ｓ１１７−３９において、復元端末２２０は、Ｓ１１６で受信した第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当でないと判定し、当該第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当ではないことを示す情報を出力する。
【０１２７】
かかる特徴によれば、復元端末２２０は、第１部分復号情報δ１〜δｔ及び第２部分復号情報を用いて生成された第２暗号文が、当初の第１暗号文のあらかじめ決められた部分において同じである場合には、当該第１部分復号情報δ１〜δｔを用いて正しい平文を復元可能であると判定する。
【０１２８】
このため、復元端末２２０は、受信した第１部分復号情報δ１〜δｔの“個々”についての正当性を検証することなく、当該第１部分復号情報δ１〜δｔの“全体”についての正当性を即座に検証することができるため、当該正当性の検証を行う上での処理効率を向上させることができる。
【０１２９】
また、復元端末２２０は、ゼロ知識証明を用いておらず、さらに検証鍵を用いなくても第１部分復号情報δ１〜δｔの全体の正当性を検証することができるため、当該正当性の検証に必要なデータ量を低減することができる。（復号サーバーはproofを計算する必要がない）これにより、一般的に処理効率が低く、記憶容量も少ない通信装置（例えば、携帯電話機）においても実用可能な検証処理を実現することができる。
【０１３０】
（変更例）
なお、本発明は、上記実施形態に限定されずに下記に示す変更を加えてもよい。具体的には、復元端末２２０は、図８に示す正当性検証処理３に替えて図９に示す正当性検証処理４を実行してもよい。
【０１３１】
図９に示すように、Ｓ１１７−４１において、復元端末２２０は、図８に示すＳ１１７−２１乃至Ｓ１１７−３３の処理Ｂを実行する。この処理Ｂについては上述した通りであるため、ここでの詳細な説明は省略する。
【０１３２】
Ｓ１１７−４３において、復元端末２２０は、第２暗号文Ｃ’が、受信した第１暗号文Ｃの全部と一致するか否か判定する。また、復元端末２２０は、この判定がＹＥＳである場合にはＳ１１７−４５の処理に移り、ＮＯである場合にはＳ１１７−４７の処理に移る。
【０１３３】
Ｓ１１７−４５において、復元端末２２０は、受信した第１部分復号情報δ１〜δｔ及び各第２部分復号情報を用いて正しい平文を復元可能であると判定し、第２平文ｍ’を出力する。
【０１３４】
Ｓ１１７−４７において、復元端末２２０は、第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当でないと判定した場合には、第１部分復号情報及び第２部分復号情報の送信元の復号サーバー（送信元復号サーバー）に対して、第２部分復号情報を構成する際に用いた情報（分散鍵）が正当であることを示す証明情報の送信を要求する。
【０１３５】
そして、復元端末２２０は、上記送信元復号サーバーから証明情報が所定期間内に受信されない場合には、上記送信元復号サーバーを不正サーバーとして特定する。
【０１３６】
一方、復元端末２２０は、上記送信元復号サーバーから証明情報が所定期間内に受信された場合には、当該証明情報と鍵生成サーバー２３０から受信された検証鍵ｖｋとを用いて、当該証明情報に対応する第１部分復号情報が正当であるか否か判定する。なお、検証鍵ｖｋは不正に備えてあらかじめ受信しておいてもいいし、不正が発覚してから受信してもよい。
【０１３７】
もし、復元端末２２０は、正当でない第１部分復号情報が含まれている場合には、当該正当でない第１部分復号情報の送信元復号サーバーを不正サーバーとして特定する。一方、復元端末２２０は、正当でない第１部分復号情報が含まれていない場合には、第２部分復号情報が正当であるか否か判定する。復元端末２２０は、正当でない第２部分復号情報が含まれている場合には、当該正当でない第２部分復号情報の送信元復号サーバーを不正サーバーとして特定する。
【０１３８】
Ｓ１１７−４９において、復元端末２２０は、不正サーバーが特定されたことを示す情報を出力するとともに、第１部分復号情報δ１〜δｔ及び各第２部分復号情報の少なくとも１つが正当でないことを示す情報を出力する。
【０１３９】
かかる特徴によれば、復元端末２２０が、上記送信元復号サーバーから正しい証明情報を受信できない場合（所定期間内に証明情報を受信できない場合を含めてもよい）には、当該復元端末２０は、上記送信元復号サーバーが正当な部分復号情報を生成していないと推定することができる。このため、復元端末２２０は、上記送信元復号サーバーを不正サーバーとして特定することができる。
【０１４０】
［プログラム］
上記通信システムにおいて動作する通信制御プログラムは、暗号化端末、復元端末、鍵生成サーバー、暗号文管理サーバー、または復号サーバーを構成する各部としてコンピュータを機能させるものである。通信制御プログラムは、記録媒体に記録されてもよい。この記録媒体は、ハードディスク、フレキシブルディスク、コンパクトディスク、ＩＣチップ、カセットテープなどが挙げられる。
【０１４１】
以上、本発明の一例を説明したが、具体例を例示したに過ぎず、特に本発明を限定するものではなく、各実施形態及び各変更例における具体的構成等は、適宜設計変更可能である。また、各実施形態及び各変更例の作用及び効果は、本発明から生じる最も好適な作用及び効果を列挙したに過ぎず、本発明による作用及び効果は、各実施形態及び各変更例に記載されたものに限定されるものではない。
【図面の簡単な説明】
【０１４２】
【図１】第１実施形態における通信システムの内部構成図である。
【図２】第１実施形態における公開鍵、暗号文等の情報の流れを示す図である。
【図３】第１実施形態における復元端末の内部構成図である。
【図４】第１実施形態における通信システムの動作を示す図である。
【図５】第１実施形態における正当性検証処理１の内容を示す図である。
【図６】変更例における正当性検証処理２の内容を示す図である。
【図７】第２実施形態における復元端末の内部構成図である。
【図８】第２実施形態における正当性検証処理３の内容を示す図である。
【図９】変更例における正当性検証処理４の内容を示す図である。
【符号の説明】
【０１４３】
１０…暗号化端末、２０…復元端末、３０…鍵生成サーバー、４０…暗号文管理サーバー、５０…復号サーバー、６０…ネットワーク、１００…通信システム、２００…通信システム、２１０…暗号化端末、２２０…復元端末、２２０…暗号文生成部、２３０…鍵生成サーバー、２４０…暗号文管理サーバー、２５０…復号サーバー
【図１】
0005142361.tif 000008
【図２】
0005142361.tif 000009
【図３】
0005142361.tif 000010
【図４】
0005142361.tif 000011
【図５】
0005142361.tif 000012
【図６】
0005142361.tif 000013
【図７】
0005142361.tif 000014
【図８】
0005142361.tif 000015
【図９】
0005142361.tif 000016