説明

署名生成装置、署名人特定装置、グループ署名システム、およびそれらの方法とプログラム

【課題】1個のグループ署名データで、署名人が複数のグループに対して署名人特定者を指定できる署名生成装置などを提供する。
【解決手段】本発明に係る署名生成装置200は、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人特定者についての情報である署名人特定者情報の入力を受け付ける入力部13と、署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶する記憶部220と、署名人特定者情報に対応する署名人特定者公開鍵を取得する署名人特定者公開鍵取得手段212a1と、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する署名生成手段212a2と、生成されたグループ署名データおよび署名人特定者情報を出力する出力部13とを有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はグループ署名方式に関し、特に該方式における署名人特定者の指定に関する。
【背景技術】
【0002】
グループ署名方式は、たとえば特定の企業や特定の部署などのような特定のグループに所属するメンバーが、署名装置を操作して該グループのメンバーであることを示す電子署名を生成する署名方式である。グループ署名方式では、特別な権限を持つ者が、署名を生成したメンバーを特定する機能を備えている。この権限を持つ者を、署名人特定者という。署名人特定者以外の者は、確かに該グループのメンバーがその署名を生成したか否かを検証することはできるが、該メンバー個人を特定することはできない。
【0003】
たとえば、クレジットカード(「該グループのメンバー」=「該カードの会員」)であれば、メンバーが通常は店舗側に自らの個人情報を公開せずに該カードのサービスを利用することができる。かつ、不正使用が発生した場合などには署名人特定者がその不正使用を行ったメンバーを特定することが可能であるので、不正使用によるリスクを抑制することができる。署名人特定者は、メンバーがそのグループ署名を生成する際に指定する。
【0004】
このグループ署名方式については、次に示す各々の技術文献が開示されている。特許文献1には、映像などのコンテンツの有料配信で、鍵の漏洩に対する被害を抑制するためにグループ署名方式を利用した配信システムが記載されている。特許文献2には、会員向けサービスを外部業者にアウトソーシングする際に、グループ署名方式を利用して該会員の個人情報をその外部業者に開示せずに済むというサービス提供システムが記載されている。特許文献3には、グループ署名方式において、グループの公開鍵の大きさを該グループのメンバー数に比例させずに済むという署名処理方法が記載されている。
【0005】
また、非特許文献1〜2にはRSA(Rivest Shamir Adleman)ベースの暗号化方式を利用したグループ署名方式、非特許文献3〜4にはペアリング(Pairing)ベースの暗号化方式を利用したグループ署名方式が、それぞれ記載されている。非特許文献5には、ファイルの作成、閲覧、改変,印刷などのたびにグループ署名を作成し、このグループ署名データをログ管理サーバーで記憶しているというログ管理システムが記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2006−203819号公報
【特許文献2】特開2007−004461号公報
【特許文献3】特許3513324号公報
【非特許文献】
【0007】
【非特許文献1】J. Camenisch and J. Groth. Group Signatures: Better Efficiency and New Theoretical Aspects. Security in Communication Networks (SCN2004), vol. 3352 of LNCS, pp. 120--133.
【非特許文献2】Toshiyuki Isshiki, Kengo Mori, Kazue Sako, Isamu Teranishi, and Shoko Yonezawa. Using Group Signature for Identity Management and its Implementation. Workshop on Digital Identity Management (DIM2006), pp. 73--78.
【非特許文献3】Dan Boneh, Xavier Boyen, and Hovav Shacham. Short Group Signatures. Advances in Cryptology --- CRYPTO 2004, vol. 2656 of LNCS, pp. 614-629, Springer-Verlag, 2004.
【非特許文献4】Jan Camenisch, Anna Lysyanskaya. Signature Schemes and Anonymous Credentials from Bilinear Maps. Advances in Cryptology --- CRYPTO 2004, vol. 2139 of LNCS, pp. 388-407, Springer-Verlag, 2004.
【非特許文献5】尾花賢、一色寿幸、佐古和恵、宮崎邦彦、藤井康広、本多義則、「プライバシを考慮した来歴管理を実現する墨塗りグループ署名」, SCIS2009, 3B2-4.
【発明の概要】
【発明が解決しようとする課題】
【0008】
グループA、B、Cという3つのグループが存在する場合、その中のグループAの属する署名人が作成したグループAの一員としてのグループ署名データは、グループA、B、Cのいずれに属する検証者が検証しても、グループAの一員が正当に作成した署名データであることのみがわかるが、その署名人がグループAの中の誰であるかは、署名人があらかじめ指定した署名人特定者にしか特定されない。ここで、署名人がグループA、B、Cの各々に対して署名人特定者を指定することを考えた場合、各グループで指定された署名人特定者が署名人を特定した場合の結果は必ず一致することが必要となる。
【0009】
しかしながら、特許文献1〜3および非特許文献1〜5に記載されたグループ署名方式では、署名人は1人の署名人特定者しか指定できなかったため、上記のようにグループごとに署名人特定者を指定したグループ署名を生成することは不可能であった。また、これを解決するために、同一の署名人がグループA、B、およびCの各々に対して異なる署名人特定者を指定したグループ署名データを作成することも考えられるが、前述したグループ署名の性質上、検証者はそれらのグループ署名データが本当に同じ署名人によって作成されたものなのかを確認することはできない。
【0010】
この場合、複数のグループ署名データが同じ署名人によって生成されたものであることをゼロ知識証明によって署名人のIDを秘匿したまま証明することも考えられる。しかしながら、この場合に必要になる署名データのデータ長は、指定した署名人特定者の数に比例するグループ署名データとゼロ知識証明のデータ長との合計となる。例えば、非特許文献2の方式でこれを行った場合、推奨されているセキュリティパラメータを利用した場合、署名人特定者1人に対するデータ長は約6000ビットとなる。これが指定する署名人特定者の数だけ生成されるので、そのデータ長および必要となる計算量は非現実的なものとなる。
【0011】
本発明の目的は、1個のグループ署名データで、署名人が複数のグループに対して署名人特定者を指定し、その署名人特定者の各々が同一の署名人を特定でき、かつ署名生成に必要な計算量の小さいグループ署名データを生成および署名人特定することを可能とする署名生成装置、署名人特定装置、グループ署名システム、およびそれらの方法とプログラムを提供することにある。
【課題を解決するための手段】
【0012】
上記目的を達成するため、本発明に係る署名生成装置は、グループのメンバーである一の署名人がグループに属することを証明する電子署名データとしてのグループ署名を生成して出力する署名生成装置であって、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人を特定することを許可したい複数の署名人特定者についての情報である署名人特定者情報の入力を受け付ける入力部と、署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶する記憶部と、署名人特定者情報に対応する署名人特定者公開鍵を取得する署名人特定者公開鍵取得手段と、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する署名生成手段と、生成されたグループ署名データおよび入力された署名人特定者情報を出力する出力部とを有することを特徴とする。
【0013】
上記目的を達成するため、本発明に係る署名人特定装置は、グループのメンバーである一の署名人がグループに属することを証明する電子署名データであるグループ署名についてグループに属する署名人が誰であるかを特定する署名人特定装置であって、外部の署名生成装置から出力されたグループ署名と署名人特定者情報の入力を受け付ける入力部と、署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶する記憶部と、記憶部から署名人特定者秘密鍵を取得する署名人特定者秘密鍵取得手段と、署名人特定者秘密鍵に対応する署名人特定者公開鍵が署名人特定者情報に含まれている場合に署名人特定者秘密鍵を利用してグループ署名を復号して署名人情報を得る署名人特定手段と、復号して得られた署名人情報に対応するメンバー特定子をメンバーリストから検索するメンバー検索手段と、検索されたメンバー特定子を出力する出力部とを有することを特徴とする。
【0014】
上記目的を達成するため、本発明に係るグループ署名システムは、グループのメンバーである一の署名人がグループに属することを証明する電子署名データであるグループ署名を生成して出力する署名生成装置と、グループ署名がグループに属する署名人によって正当に生成されたものであるか否かを検証する検証装置と、グループ署名について署名人が誰であるかを特定する署名人特定装置とを含むグループ署名システムであって、署名生成装置が、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付ける第1の入力部と、署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶する第1の記憶部と、署名人特定者情報に対応する署名人特定者公開鍵を取得する署名人特定者公開鍵取得手段と、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する署名生成手段と、生成されたグループ署名データおよび署名人特定者情報を出力する第1の出力部とを有し、検証装置が、署名生成装置から出力されたグループ署名データと署名人特定者情報、およびグループの発行管理者公開鍵と失効管理者公開鍵の入力を受け付ける第2の入力部と、自らの署名人特定者秘密鍵を記憶する第2の記憶部と、グループ署名データグループに属する署名人によって正当に生成されたものであるか否かを検証する検証部と、検証の結果を出力する第2の出力部とを有し、署名人特定装置が、外部の署名生成装置から出力されたグループ署名と署名人特定者情報の入力を受け付ける第3の入力部と、署名人特定者秘密鍵と署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶する第3の記憶部と、記憶部から署名人特定者秘密鍵を取得する署名人特定者秘密鍵取得手段と、署名人特定者秘密鍵に対応する署名人特定者公開鍵が署名人特定者情報に含まれている場合に署名人特定者秘密鍵を利用してグループ署名を復号して署名人情報を得る署名人特定手段と、復号して得られた署名人情報に対応するメンバー特定子をメンバーリストから検索するメンバー検索手段と、検索されたメンバー特定子を出力する第3の出力部とを有することを特徴とする。
【0015】
上記目的を達成するため、本発明に係る署名生成方法は、グループのメンバーである一の署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶している署名生成装置にあって、署名人がグループに属することを証明する電子署名データであるグループ署名を生成して出力する署名生成方法であって、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付け、署名人特定者情報に対応する署名人特定者公開鍵を取得し、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成し、生成されたグループ署名データおよび署名人特定者情報を出力することを特徴とする。
【0016】
上記目的を達成するため、本発明に係る署名人特定方法は、署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶している署名人特定装置にあって、グループのメンバーである一の署名人がグループに属することを証明する電子署名データであるグループ署名についてグループに属する署名人が誰であるかを特定する署名人特定方法であって、外部の署名生成装置から出力されたグループ署名と署名人特定者情報の入力を受け付け、署名人特定者秘密鍵を取得し、署名人特定者秘密鍵に対応する署名人特定者公開鍵が署名人特定者情報に含まれているか否かを判断し、署名人特定者公開鍵が署名人特定者情報に含まれている場合に署名人特定者秘密鍵を利用してグループ署名を復号して署名人情報を得て、復号して得られた署名人情報に対応するメンバー特定子をメンバーリストから検索し、検索されたメンバー特定子を出力することを特徴とする。
【0017】
上記目的を達成するため、本発明に係る署名生成プログラムは、グループのメンバーである一の署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶している署名生成装置にあって、署名生成装置が備えるコンピュータに、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付ける手順と、署名人特定者情報に対応する署名人特定者公開鍵を取得する手順と、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する手順と、生成されたグループ署名データおよび署名人特定者情報を出力する手順とを実行させることを特徴とする。
【0018】
上記目的を達成するため、本発明に係る署名人特定プログラムは、署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶している署名人特定装置にあって、署名人特定装置が備えるコンピュータに、外部の署名生成装置から出力されたグループ署名と署名人特定者情報の入力を受け付ける手順と、署名人特定者秘密鍵を取得する手順と、署名人特定者秘密鍵に対応する署名人特定者公開鍵が署名人特定者情報に含まれているか否かを判断する手順と、署名人特定者公開鍵が署名人特定者情報に含まれている場合に署名人特定者秘密鍵を利用してグループ署名を復号して署名人情報を得る手順と、復号して得られた署名人情報に対応するメンバー特定子をメンバーリストから検索する手順と、検索されたメンバー特定子を出力する手順とを実行させることを特徴とする。
【発明の効果】
【0019】
本発明は、上述したように署名人特定者情報に対応する署名人特定者公開鍵を利用してメンバー秘密鍵に含まれる署名人情報を暗号化するように構成したので、これに対応する署名人特定者秘密鍵を持つ署名人特定者のみが署名人情報を復号化して署名人を特定することができる。さらに、全ての署名人特定者に対して共通する乱数を利用して署名人情報を暗号化するので、暗号化に必要な計算量を抑制することができる。これによって、1個のグループ署名データで、署名人特定者が何人であっても、その署名人特定者の各々が同一の署名人を特定でき、かつ署名生成に必要な計算量およびデータ容量の小さいグループ署名データを生成および署名人特定することが可能である署名生成装置、署名人特定装置、グループ署名システム、およびそれらの方法とプログラムを提供することができる。
【図面の簡単な説明】
【0020】
【図1】、本発明の第1の実施形態に係るグループ署名システム全体の構成を示す説明図である。
【図2】図1に示した発行者装置、メンバー装置、検証装置、署名人特定装置、失効管理者装置として機能するコンピュータ装置のハードウェアとしての構成を示す説明図である。
【図3】図1に示したメンバー装置がグループ署名を生成する動作について示すフローチャートである。
【図4】図1に示した検証装置がグループ署名を検証する動作について示すフローチャートである。
【図5】図1に示した署名人特定装置が署名人を特定する動作について示すフローチャートである。
【図6】本発明の第2の実施形態に係るグループ署名システム全体の構成を示す説明図である。
【図7】図6に示したメンバー装置がグループ署名を生成する動作について示すフローチャートである。
【図8】図6に示した検証装置がグループ署名を検証する動作について示すフローチャートである。
【図9】図6に示した署名人特定装置が署名人を特定する動作について示すフローチャートである。
【図10】本発明の第3の実施形態に係るグループ署名システム全体の構成を示す説明図である。
【図11】図10に示したメンバー装置がグループ署名を生成する動作について示すフローチャートである。
【図12】図10に示した検証装置がグループ署名を検証する動作について示すフローチャートである。
【図13】図10に示した署名人特定装置が行う署名人を特定する動作について示すフローチャートである。
【図14】本発明の第4の実施形態に係るグループ署名システム全体の構成を示す説明図である。
【図15】図14に示したメンバー装置がグループ署名を生成する動作について示すフローチャートである。
【図16】図14に示した検証装置がグループ署名を検証する動作について示すフローチャートである。
【図17】図14に示した署名人特定装置が行う署名人を特定する動作について示すフローチャートである。
【発明を実施するための形態】
【0021】
(第1の実施形態)
以下、本発明の実施形態の構成について添付図に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係る署名生成装置(メンバー装置200)は、グループのメンバーである一の署名人がグループに属することを証明する電子署名データとしてのグループ署名を生成して出力する署名生成装置であって、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付ける入力部(入出力部13)と、署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶する記憶部(メンバー記憶部220)と、署名人特定者情報に対応する署名人特定者公開鍵を取得する署名人特定者公開鍵取得手段212aと、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する署名生成手段212bと、生成されたグループ署名データおよび署名人特定者情報を出力する出力部(入出力部13)とを有する。
【0022】
また、本実施形態に係る署名人特定装置400は、グループのメンバーである一の署名人がグループに属することを証明する電子署名データであるグループ署名についてグループに属する署名人が誰であるかを特定する署名人特定装置であって、外部の署名生成装置から出力されたグループ署名と署名人特定者情報の入力を受け付ける入力部(入出力部13)と、署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子(ID)を記憶したメンバーリスト421とをあらかじめ記憶する記憶部(署名人特定者記憶部420)と、記憶部から署名人特定者秘密鍵を取得する署名人特定者秘密鍵取得手段412a1と、署名人特定者秘密鍵に対応する署名人特定者公開鍵が署名人特定者情報に含まれている場合に署名人特定者秘密鍵を利用してグループ署名を復号して署名人情報を得る署名人特定手段412a2と、復号して得られた署名人情報に対応するメンバー特定子をメンバーリストから検索するメンバー検索手段412a3と、検索されたメンバー特定子を出力する出力部(入出力部13)とを有する。
【0023】
この構成を備えることにより、本実施形態は、1個のグループ署名データで、署名人特定者が何人であっても、その署名人特定者の各々が同一の署名人を特定できるグループ署名データを生成して使用することが可能となる。
以下、これをより詳細に説明する。
【0024】
本明細書ではまず、以下のような各々の区分の者が本発明の実施形態に係るグループ署名システムを使用する。
「メンバー(署名人)」−特定のグループに属し、そのグループの一員としての署名データであるグループ署名を生成して使用する。
「発行者」−グループのメンバーに対して、グループ署名の生成に使用するグループ鍵を生成および発行する。
「検証者」−グループ署名を受け取り、このグループ署名が該グループのメンバーによって正当に作成されたものであるか否かを検証する。
「署名人特定者」−グループ署名を受け取り、このグループ署名を生成したメンバーが誰であるかを特定する。
「失効管理者」−グループの中で特定のメンバーが持つグループ鍵を失効させる。
【0025】
本明細書では、このグループ署名を生成したメンバーが誰であるかを示す情報を「署名人情報」といい、署名人特定者の中で誰がそのメンバーを特定することができるかを示す情報を「署名人特定者情報」という。
【0026】
本明細書の数式以外の行では、a^bは「aのb乗」を意味し、a_bは「aに下付き添え字b」がついた状態を示す。さらに、整数Nの剰余群をZ_Nと記す。すなわち、Z_N={0,1,…,N−1}である。そして、整数Nに対して、y=x^2 mod Nを満たすxを持つZ_Nの要素yの集合をQR(N)と記す。
【0027】
図1は、本発明の第1の実施形態に係るグループ署名システム1全体の構成を示す説明図である。グループ署名システム1は、発行管理者がグループのメンバーに対してメンバー鍵を生成および発行する発行者装置100、発行されたメンバー鍵によって各メンバーがグループ署名を生成するメンバー装置200、生成されたグループ署名の正当性を検証する検証装置300、生成されたグループ署名を行ったメンバーを特定する署名人特定装置400、および特定のメンバーのメンバー鍵を失効させる失効管理者装置500が、ネットワーク600によって相互に接続されて構成される。
【0028】
発行者装置100、メンバー装置200、検証装置300、署名人特定装置400、失効管理者装置500は、いずれも後述の図2で説明するコンピュータ装置である。メンバー装置200および署名人特定装置400はネットワーク600に何台接続されていてもよいが、図1には簡単のため各1台ずつのみ記載している。
【0029】
図2は、図1に示した発行者装置100、メンバー装置200、検証装置300、署名人特定装置400、失効管理者装置500として機能するコンピュータ装置10のハードウェアとしての構成を示す説明図である。コンピュータ装置10は、コンピュータプログラムを実行する主体となるプロセッサ11と、コンピュータプログラムおよびデータを記憶する記憶部12と、データの入出力を行う入出力部13と、ネットワーク600を介して他のコンピュータ装置とのデータ通信を行う通信部14とを備える。
【0030】
図1に戻って、発行者装置100の備えるプロセッサ11および記憶部12を、各々プロセッサ110および発行者記憶部120と表記する。プロセッサ110では、発行者鍵生成部111と発行部112が、各々コンピュータプログラムとして動作する。同様に、メンバー装置200の備えるプロセッサ11および記憶部12を、各々プロセッサ210およびメンバー記憶部220と表記する。プロセッサ210では、参加部211と署名生成部212が、各々コンピュータプログラムとして動作する。
【0031】
検証装置300の備えるプロセッサ11および記憶部12を、各々プロセッサ310および検証者記憶部320と表記する。プロセッサ310では、検証部311がコンピュータプログラムとして動作する。署名人特定装置400の備えるプロセッサ11および記憶部12を、各々プロセッサ410および署名人特定者記憶部420と表記する。プロセッサ410では、署名人特定者鍵生成部411と署名人特定部412が、各々コンピュータプログラムとして動作する。
【0032】
失効管理者装置500の備えるプロセッサ11および記憶部12を、各々プロセッサ510および失効管理者記憶部520と表記する。プロセッサ510では、失効管理者鍵生成部511と失効部512が、各々コンピュータプログラムとして動作する。
【0033】
グループ署名システム1では、あらかじめ以下に示す鍵データが何らかの方法によって作成されている。以下に示す各々の鍵の名称で、略称の2文字目が「s」(secret)であるものが秘密鍵、2文字目が「p」(public)であるものが公開鍵である。
(1)発行管理者秘密鍵と発行管理者公開鍵(isk,ipk)
(2)失効管理者秘密鍵と失効管理者公開鍵(rsk,rpk)
(3)N人(Nは自然数)の署名人特定者各々に対する署名人特定者秘密鍵と署名人特定者公開鍵(osk[1],opk[1])〜(osk[N],opk[N])
(4)メンバー秘密鍵とメンバー公開鍵(msk,mpk)
【0034】
各々の公開鍵ipk,rpk,opk[1]〜opk[N],mpkは、グループ署名システム1の全装置に対して公開されている。発行管理者秘密鍵iskは発行者記憶部120にのみ記憶され、発行者装置100からのみ参照できる。同様に、失効管理者秘密鍵rskは失効管理者記憶部520にのみ記憶され、失効管理者装置500からのみ参照できる。署名人特定者秘密鍵osk[i](iは自然数、かつ1≦i≦N)は、該署名人特定者の署名人特定者記憶部420にのみ記憶され、該署名人特定者の署名人特定装置400からのみ参照できる。メンバー秘密鍵mskは該メンバーのメンバー記憶部220にのみ記憶され、該メンバーのメンバー装置200からのみ参照できる。
【0035】
上記の各々の公開鍵と秘密鍵のペアは、たとえば非特許文献2などに記載された公知の鍵生成部によって生成されたものである。ただし、安全性の観点から、N人の署名人特定者は各々共通のパラメータを利用していることが望ましい。ここでいう共通のパラメータとは、例えば非特許文献2に記載の方法では、鍵の生成に用いられる楕円曲線とその基点である。
【0036】
発行者装置100で動作する発行者鍵生成部111は、与えられたセキュリティパラメータを入力として、iskおよびipkを出力する。同じく発行者装置100で動作する発行部112は、メンバー装置200で動作する参加部211と連携して、各々のメンバーに対してmskおよびmpkを発行する。発行部112はセキュリティパラメータとiskとipkを、参加部211はセキュリティパラメータとipkとrpkとopkを、それぞれ入力とする。
【0037】
署名人特定装置400で動作する署名人特定者鍵生成部411は、セキュリティパラメータを入力として、osk[i]およびopk[i](iは自然数、かつ1≦i≦N)を出力する。失効管理者装置500で動作する失効管理者鍵生成部511は、セキュリティパラメータを入力として、rskおよびrpkを出力する。同じく失効管理者装置500で動作する失効部512は、rskおよびrpkと、失効するメンバーのmpkを入力として、更新されたrpkを出力する。更新されたrpkを使用すると、失効したメンバーの生成したグループ署名は無効となる。
【0038】
メンバー装置200で動作する署名生成部212は、署名人特定者公開鍵取得手段212a1と、署名生成手段212a2とを有する。署名人特定装置400で動作する署名人特定部412は、署名人特定者秘密鍵取得手段412a1と、署名人特定手段412a2と、メンバー検索手段412a3とを有する。これらと、検証装置300で動作する検証部311の各々の動作については後述する。
【0039】
また、mpkにはメンバーごとに異なる署名人情報hが必ず含まれ、この署名人情報hとメンバーを特定するIDとを一意に対応させるリストが発行者記憶部120および署名人特定者記憶部420に記憶されている。これを各々メンバーリスト121および421という。
【0040】
図3は、図1に示したメンバー装置200がグループ署名を生成する動作について示すフローチャートである。発行者が管理するグループに所属するメンバーは、N人の署名人特定者の中から署名人(該メンバー自分自身)を特定させたいと思うj人の署名人特定者i_1〜i_jを選択して(jは自然数、かつj≦N)、メンバー装置200の署名生成部212に対してipk、rpk、署名人特定者情報、メッセージM、以上の各データを入力し、メンバー装置200の入出力部13がこの入力を受け取る(ステップS11)。
【0041】
ここで、メンバー記憶部220には、署名人が指定した署名人特定者の公開鍵が記憶されている署名人特定者リスト221が予め記憶されている。または、署名人特定者リスト221には署名人特定者の名前や公開鍵が公開されている場所の情報やURLなど、公開鍵とリンクする情報が予め記憶されているようにしてもよい。
【0042】
署名人特定者公開鍵取得手段212a1は、この署名人特定者リスト221を参照して、ユーザが指定した署名人特定者の公開鍵opk[i_1]〜opk[i_j]を取得する。これらの公開鍵opk[i_1]〜opk[i_j]が署名人特定者情報である。そして署名人特定者公開鍵取得手段212a1は、メンバー記憶部220から該メンバーのmpkとmskとを読み込む。(ステップS12)。
【0043】
ipk、rpk、opk[i_1]〜opk[i_j]、mpk、msk、メッセージM、以上のデータをここまでで受け取った署名生成手段212a2は、mpkに含まれる署名人情報hをopk[i_1]〜opk[i_j]を用いてそれぞれ暗号化して、ENC[opk[i_1]](h)〜ENC[opk[i_j]](h)を生成する(ステップS13)。
【0044】
続いて署名生成手段212a2は、ENC[opk[i_1]](h)〜ENC[opk[i_j]](h)を含むグループ署名データσと、署名人特定者情報opk[i_1]〜opk[i_j]とを出力する(ステップS14)。
【0045】
図4は、図1に示した検証装置300がグループ署名を検証する動作について示すフローチャートである。メンバー装置200によって図3に示す動作で生成されたグループ署名データσ、署名人特定者情報opk[i_1]〜opk[i_j]、さらにipkおよびrpkを、検証者が検証装置300に入力する(ステップS21)。検証部311は、これらのデータに対してグループ署名検証の演算を行い、このグループ署名データσが正当であるか否かを判断して(ステップS22)、正当であれば受理(ステップS23)、そうでなければ不受理(ステップS24)をそれぞれ出力する。
【0046】
図5は、図1に示した署名人特定装置400が署名人を特定する動作について示すフローチャートである。メンバー装置200によって図3に示す動作で生成されたグループ署名データ、署名人特定者情報opk[i_1]〜opk[i_j]を、署名人特定者が署名人特定装置400に入力する(ステップS31)。
【0047】
署名人特定者秘密鍵取得手段412aは、署名人特定者記憶部420に記憶されている自らの署名人特定者秘密鍵osk[i]を読み込む(ステップS32)。署名人特定手段412a2は、受け取った署名人特定者情報opk[i_1]〜opk[i_j]の中に自らの署名人特定者秘密鍵osk[i]に対応する公開鍵opk[i]が含まれているか否かを判断し(ステップS33)、含まれていればこの秘密鍵osk[i]でσに含まれる暗号を復号して署名人情報hを得る(ステップS34)。ステップS33で、署名人特定者情報opk[i_1]〜opk[i_j]の中に公開鍵opk[i]が含まれていなければ特定失敗を出力して処理を終了する(ステップS37)。
【0048】
ステップS34までの処理で署名人情報hを得たメンバー検索手段412a3は、メンバーリスト421を読み込んで署名人情報hに対応するメンバーのIDを検索して、そのIDを出力する(ステップS35〜36)。
【0049】
(第1の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本実施形態に係る署名生成方法は、グループのメンバーである一の署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶している署名生成装置(メンバー装置200)にあって、署名人がグループに属することを証明する電子署名データであるグループ署名を生成して出力する署名生成方法であって、グループの発行管理者公開鍵と失効管理者公開鍵、および署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付け(図3:ステップS11)、署名人特定者情報に対応する署名人特定者公開鍵を取得し(図3:ステップS12)、署名人特定者公開鍵と、全ての署名人特定者に対して共通する乱数とを利用してメンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成し(図3:ステップS13)、生成されたグループ署名データおよび署名人特定者情報を出力する(図3:ステップS14)。
【0050】
そして、本実施形態に係る署名人特定方法は、署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子(ID)を記憶したメンバーリストとをあらかじめ記憶している署名人特定装置400にあって、グループのメンバーである一の署名人がグループに属することを証明する電子署名データであるグループ署名についてグループに属する署名人が誰であるかを特定する署名人特定方法であって、外部の署名生成装置から出力されたグループ署名と署名人特定者情報の入力を受け付け(図5:ステップS31)、署名人特定者秘密鍵を取得し(図5:ステップS32)、署名人特定者秘密鍵に対応する署名人特定者公開鍵が署名人特定者情報に含まれているか否かを判断し(図5:ステップS33)、署名人特定者公開鍵が署名人特定者情報に含まれている場合に署名人特定者秘密鍵を利用してグループ署名を復号して署名人情報を得て(図5:ステップS34)、復号して得られた署名人情報に対応するメンバー特定子をメンバーリストから検索し(図5:ステップS35)、検索されたメンバー特定子を出力する(図5:ステップS36)。
【0051】
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータであるメンバー装置200および署名人特定装置400に実行させるようにしてもよい。
この構成および動作により、本実施形態は以下のような効果を奏する。
【0052】
本実施形態では、署名人特定者が何人であっても、1個のグループ署名データで、その署名人特定者の各々が同一の署名人を特定できるグループ署名データを生成して使用することが可能となる。処理に係るグループ署名データなどのデータ量の総計は、署名人特定者の数に比例して増大するなどのようなことはない。
【0053】
本実施形態では、グループ署名データの生成に当たっては、前述の特許文献および非特許文献にあるような任意の公知技術を適用することができるが、特に非特許文献1、非特許文献3、非特許文献4に記載された方式に適している。これらの方式には失効管理装置が存在しないが、失効管理者の鍵ペアrskおよびrpkを空データとすることによって容易に適用することができる。この場合、非特許文献1に記載の方式における共通パラメータはエルガマル暗号の群およびその生成元であり、非特許文献3と4記載の方式における共通パラメータは利用する楕円曲線およびその基点である。
【0054】
(第2の実施形態)
本発明の第2の実施形態は、前述の第1の実施形態の構成に加えて、署名装置(メンバー装置200b)の入力部(入出力部13)が、2名以上の署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、署名生成部212bが、署名人特定者論理構造を利用してグループ署名データを生成するように構成した。
【0055】
さらに、これに対して署名人特定装置400の入力部(入出力部13)が、2名以上の署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、署名人特定部412bが、署名人特定者論理構造を利用してグループ署名を復号する。
【0056】
この構成を備えることにより、署名人が2名以上の署名人特定者が協力して署名人を特定するという条件を含むグループ署名データを生成することができるようになる。
以下、これをより詳細に説明する。
【0057】
図6は、本発明の第2の実施形態に係るグループ署名システム1b全体の構成を示す説明図である。グループ署名システム1bは、ハードウェアおよびソフトウェアの構成は第1の実施形態で説明したものと同一であるが、後述するように署名生成部、検証部、署名人特定部の各々の動作が第1の実施形態で説明したものと異なる。これらを各々、署名生成部212b、検証部311b、署名人特定部412bという。署名生成部212bは、署名人特定者公開鍵取得手段212b1と、署名生成手段212b2とを有する。署名人特定部412bは、署名人特定者秘密鍵取得手段412b1と、署名人特定手段412b2と、メンバー検索手段412b3とを有する。また、メンバー装置、検証装置、署名人特定装置を各々、メンバー装置200b、検証装置300b、署名人特定装置400bという。これら各々の装置のハードウェア的な構成は、図2で説明したものと同一である。
【0058】
第1の実施形態に係るグループ署名システム1では、たとえば署名人特定者情報によって指定された署名人特定者がA、B、Cの3名であった場合、このA、B、Cのうちいずれか1名が署名人を特定できた。これに対して第2の実施形態に係るグループ署名システム1bでは、署名人特定者情報に「2名以上の署名人特定者が協力して署名人を特定する」という条件を含むことができる。この条件が含まれた場合、たとえば「署名人特定者Aは単独で署名人を特定可能。署名人特定者BとCは各々単独では署名人を特定できないが、署名人特定者BとCが協力すれば署名人を特定可能である」などのようなという任意の論理構造を持つ条件をつけることが可能となる。
【0059】
第2の実施形態に係るグループ署名システム1bでは、第1の実施形態に係るグループ署名システム1と同様の鍵データがあらかじめ作成され、各装置に与えられている。また、発行者記憶部120および署名人特定者記憶部420には第1の実施形態と同様の各々メンバーリスト121および421が記憶されている。
【0060】
図7は、図6に示したメンバー装置200bがグループ署名を生成する動作について示すフローチャートである。発行者が管理するグループに所属するメンバーは、N人の署名人特定者の中から署名人(該メンバー自分自身)を特定させたいと思うj人の署名人特定者i_1〜i_jを選択して(jは自然数、かつj≦N)、メンバー装置200の署名生成部212に対してipk、rpk、署名人特定者情報、署名人特定者論理構造、メッセージM、以上の各データを入力し、メンバー装置200bの入出力部13がこの入力を受け取る(ステップS111)。
【0061】
ここで、メンバー記憶部220には、署名人が指定した署名人特定者の公開鍵が記憶されている署名人特定者リスト221が予め記憶されている。または、署名人特定者リスト221には署名人特定者の名前や公開鍵が公開されている場所の情報やURLなど、公開鍵とリンクする情報が予め記憶されているようにしてもよい。
【0062】
また、署名人特定者論理構造は、署名人特定者情報によって指定された署名人特定者i_1〜i_jの署名人特定権限に対する論理構造を指定するものである。例えば、「1人で特定可能:i_1,i_2」「協力して特定可能:(i_3,i_4),(i_5,i_6,i_7)」のように記載されている。または「i_1 OR i_2 OR(i_3 AND i_4)OR(i_5 AND i_6 AND i_7)」のように記載することもできる。ここでは、簡単のために、「1人で特定可能:i_1,i_2」「協力して特定可能:(i_3,i_4),(i_5,i_6,i_7)」と記載されているものとする。
【0063】
署名人特定者公開鍵取得手段212b1は、署名人特定者リスト221を参照して、ユーザが指定した署名人特定者の公開鍵opk[i_1]〜opk[i_j]を取得する。そして署名人特定者公開鍵取得手段212b1は、メンバー記憶部220から該メンバーのmpkとmskとを読み込む。(ステップS112)
ipk、rpk、opk[i_1]〜opk[i_j]、署名人特定者論理構造、mpk、msk、メッセージM、以上のデータをここまでで受け取った署名生成手段212b2は、この署名人特定者論理構造にしたがって、署名人情報hを暗号化する。1人で特定可能である署名人特定者i_1およびi_2に対しては、署名生成部212bは各々単独で特定可能な暗号であるENC[opk[i_1]](h)、ENC[opk[i_2]](h)を生成する。
【0064】
協力して特定可能である署名人特定者i_3〜i_4の組に対して、署名生成部212bはosk[i_3]とosk[i_4]に対応する公開鍵であるopk[i_3,i_4]を生成する。同様に署名生成部212bは、協力して特定可能である署名人特定者i_5〜i_7の組に対して、osk[i_5]、osk[i_6]およびosk[i_7]に対応する公開鍵opk[i_5,i_6,i_7]を生成する。その上で署名生成部212bは、それらの各々の暗号鍵を利用して、署名人情報hを暗号化してENC[opk[i_3,i_4]](h)、ENC[opk[i_5,i_6,i_7]]を生成する(ステップS113)。
【0065】
続いて署名生成手段212b2は、ENC[i_1](h),ENC[i_2](h),ENC[opk[i_3,i_4]](h)、ENC[opk[i_5,i_6,i_7]]を含むグループ署名データσと、署名人特定者情報である署名人特定者の公開鍵(opk[i_1]〜opk[i_j])、および署名人特定者論理構造を出力する(ステップS114)。
【0066】
図8は、図6に示した検証装置300bがグループ署名を検証する動作について示すフローチャートである。メンバー装置200bによって図7に示す動作で生成されたグループ署名データ、署名人特定者情報opk[i_1]〜opk[i_j]、署名人特定者論理構造、さらにipkおよびrpkを、検証者が検証装置300に入力する(ステップS121)。
【0067】
協力して特定可能である署名人特定者i_3〜i_4の組に対して、検証部311bはosk[i_3]とosk[i_4]に対応するopk[i_3,i_4]を生成する。署名人特定者i_5〜i_7の組に対しては、検証部311bはosk[i_5]、osk[i_6]とosk[i_7]に対応するopk[i_5,i_6,i_7]を生成する。そして検証部311bは、これらのopk[i_1]、opk[i_2],opk[i_3,i_4],opk[i_5,i_6,i_7]を用いて、グループ署名データσが正当であるか否かを判断して(ステップS122)、正当であれば受理(ステップS123)、そうでなければ不受理(ステップS124)をそれぞれ出力する。
【0068】
図9は、図6に示した署名人特定装置400bが署名人を特定する動作について示すフローチャートである。メンバー装置200によって図3に示す動作で生成されたグループ署名データσ、署名人特定者情報opk[i_1]〜opk[i_j]、および署名人特定者論理構造を、署名人特定者が署名人特定装置400bに入力する(ステップS131)。
【0069】
署名人特定者秘密鍵取得手段412b1は、署名人特定者記憶部420から署名人特定者の秘密鍵の集合OSKを読み込む。ここで、入力される署名人特定者の秘密鍵は1つ以上であればいくつでも構わない。以下では、OSK=(osk[i_3],osk[i_4])が入力された場合を例に説明を行う(ステップS132)。
【0070】
署名人特定手段412b2は、ステップS131で入力された署名人特定者論理構造を、OSKが満たすことを確認する。すなわち、OSKに含まれる秘密鍵が、署名人特定者論理構造に指定された条件を満たし、署名人特定を行うことができることを確認する(ステップS133)。満たしていなければ特定失敗を出力して処理を終了する(ステップS137)。満たしていれば、必要な秘密鍵osk[i_3],osk[i_4]を用いてσに含まれる暗号ENC[opk[i_3],opk[i_4]](h)を復号し、署名人情報hを得る(ステップS134)。
【0071】
ステップS134までの処理で署名人情報hを得たメンバー検索手段412b3は、メンバーリスト421を読み込んで署名人情報hに対応するメンバーのIDを検索して、そのIDを出力する(ステップS135〜136)。
【0072】
(第2の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。本実施形態に係る署名生成方法は、前述の第1の実施形態の動作に加えて、入力を受け付ける工程が、2名以上の署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け(図7:ステップS111)、グループ署名データを生成する工程が、署名人特定者論理構造を利用してグループ署名データを生成する(図7:ステップS113)。
【0073】
そして、本実施形態に係る署名人特定方法は、前述の第1の実施形態の動作に加えて、入力を受け付ける工程が、2名以上の署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け(図9:ステップS131)、グループ署名を復号する工程が、署名人特定者論理構造を利用してグループ署名を復号する(図9:ステップS134)。
【0074】
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するコンピュータである署名生成装置(メンバー装置200b)および署名人特定装置400bに実行させるようにしてもよい。
この構成および動作により、本実施形態は以下のような効果を奏する。
【0075】
本実施形態では、署名人が2名以上の署名人特定者が協力して署名人を特定するという条件を含むグループ署名データを生成できるので、第1の実施形態と比べてユーザおよび署名人特定者にとっての利便性を増加させることができる。しかも、処理に係るグループ署名データなどのデータ量の総計は、署名人特定者論理構造に相当する分が増すだけであるので、署名人特定者の数に比例して増大するなどのようなことはない。
【0076】
前述の第1の実施形態と同様に、本実施形態では、グループ署名データの生成に当たっては、前述の特許文献および非特許文献にあるような任意の公知技術を適用することができるが、特に非特許文献1、非特許文献3、非特許文献4に記載された方式に適している。これらの方式には失効管理装置が存在しないが、失効管理者の鍵ペアrskおよびrpkを空データとすることによって容易に適用することができる。この場合、非特許文献1に記載の方式における共通パラメータは楕円エルガマル暗号の群およびその生成元であり、非特許文献3と4記載の方式における共通パラメータは利用する楕円曲線およびその基点である。
【0077】
(第3の実施形態)
本発明の第3の実施形態は、前述の第1の実施形態の構成に加えて、署名装置(メンバー装置200c)の署名生成手段212c2は、全ての署名人特定者に対して共通する乱数を利用して署名人情報を暗号化したデータを含むグループ署名データを生成するように構成した。
【0078】
この構成を備えることにより、本実施形態は、グループ署名データのデータ長が署名人特定者の人数に応じて増大することがなくなる。
以下、これをより詳細に説明する。
【0079】
図11は、本発明の第3の実施形態に係るグループ署名システム1c全体の構成を示す説明図である。グループ署名システム1cは、ハードウェアおよびソフトウェアの構成は第1および第2の実施形態で説明したものと同一であるが、後述するように署名生成部、検証部、署名人特定部の各々の動作が第1の実施形態で説明したものと異なる。これらを各々、署名生成部212c、検証部311c、署名人特定部412cという。署名生成部212cは、署名人特定者公開鍵取得手段212c1と、署名生成手段212c2とを有する。署名人特定部412cは、署名人特定者秘密鍵取得手段412c1と、署名人特定手段412c2と、メンバー検索手段412c3とを有する。また、メンバー装置、検証装置、署名人特定装置を各々、メンバー装置200c、検証装置300c、署名人特定装置400cという。これら各々の装置のハードウェア的な構成は、図2で説明したものと同一である。
【0080】
本発明の第3の実施形態は、前述した第1の実施形態によるグループ署名システム1を、非特許文献2に記載のグループ署名方式における発行者、署名人特定者、失効管理者、メンバーの公開鍵・秘密鍵を用いて実現した例である。
【0081】
本実施形態でも採用する非特許文献2に記載のグループ署名方式では、発行者、署名人特定者、失効管理者、メンバーの公開鍵・秘密鍵は以下のようになっている。ただし,κ_n、κ_l、κ_e、κ_{e’}、κ、κ_c、κ_Sはいずれもセキュリティパラメータである。安全性の観点から、各セキュリティパラメータはκ_n=κ_l=1024、κ_e=504、κ_{e’}=60、κ=160、κ_c=160、κ_S=60以上であることが望ましい。
【0082】
発行者公開鍵ipk=(n,a_0,a_1,a_2)、発行者秘密鍵isk=(p_1,p_2)
ここでp_1,p_2はそれぞれκ_n/2ビットの安全素数(Safe Prime)、つまり、p_1=2p’_1+1,p_2=2p’_2+1を満たす素数p’_1,p’_2が存在する素数である。ここで、n=p_1p_2である。また、a_0、a_1、a_2はQR(n)の元である。
【0083】
署名人特定者公開鍵opk=(q,g,H_1,H_2),署名人特定者秘密鍵osk=(y_1,y_2)
ここで、qはDDH(Computational Diffie-Hellman)仮定が成り立つ群G、Gの位数である。また、群Gの生成元g、H_1=[y_1]g、H_2=[y_2]gである。
【0084】
ただし、安全性の観点から、署名人特定者1〜Nは共通パラメータ(q,g)を利用していることが望ましい。すなわち、署名人特定者i(1≦i≦N)の鍵ペアをopk[i]およびosk[i]と記載することにすると、以下に示す数1が成立する。
【数1】

【0085】
失効管理者公開鍵rpk=(l,b,w),失効管理者秘密鍵rsk=(l_1,l_2)
l_1,l_2はそれぞれκ_l/2ビットの安全素数であり、l=l_1l_2である。また、b,wはQR(l)の元である。
【0086】
メンバーU_iの公開鍵mpk=(h_i,A_i,e’_i,B_i),メンバーU_iの秘密鍵msk=x_i
ここでh_i、B_iおよびa_0a_1は、以下に示す数2に示す関係を満たす。
【数2】

【0087】
図11は、図10に示したメンバー装置200cがグループ署名を生成する動作について示すフローチャートである。発行者が管理するグループに所属するメンバーは、N人の署名人特定者の中から署名人(該メンバー自分自身)を特定させたいと思うj人の署名人特定者i_1〜i_jを選択して(jは自然数、かつj≦N)、メンバー装置200の署名生成部212に対してipk、rpk、署名人特定者情報、メッセージM、以上の各データを入力し、メンバー装置200cの入出力部13がこの入力を受け取る(ステップS211)。
【0088】
ここで、メンバー記憶部220には、署名人が指定した署名人特定者の公開鍵が記憶されている署名人特定者リスト221が予め記憶されている。または、署名人特定者リスト221には署名人特定者の名前や公開鍵が公開されている場所の情報やURLなど、公開鍵とリンクする情報が予め記憶されているようにしてもよい。
【0089】
署名人特定者公開鍵取得手段212c1は、この署名人特定者リスト221を参照して、ユーザが指定した署名人特定者の公開鍵opk[i_1]〜opk[i_j]を取得する。そして署名人特定者公開鍵取得手段212c1は、メンバー記憶部220から該メンバーのmpk_i=(h_i,A_i,e’_i,B_i)、msk_i=x_iを読み込む。(ステップS212)ipk、rpk、opk[i_1]〜opk[i_j]、mpk_i、msk_i、メッセージMを受け取った署名生成手段212c2は、以下のステップS213〜223に示す演算処理を行う。
【0090】
署名生成手段212c2は、Z_[q]の要素ρ_Eをランダムに選び、数3で示すEを計算する(ステップS213)。
【数3】

【0091】
この数3で、ρ_Eが、本願の請求項でいう「共通の乱数」となる。1人の署名人特定者に対して、署名生成手段212c2は数4に示すように3つの要素を計算するので、署名人特定者がj人いるとすると3j個の要素を計算することになる。
【数4】

【0092】
本実施形態では、これらの3j個の要素で使用される乱数ρ_Eをすべての署名人特定者に対して共通化しているので、3つの要素のうちの1つである[ρ_E]gがすべての署名人特定者にとって共通となる。従って、実際には要素の計算は2j+1個で済み、計算量をほぼ3分の2に削減することができる。
【0093】
これに続いて署名生成手段212c2は、κ_n/2ビットのρ_mをランダムに選び、数5で示すA_[com]およびsを計算する。ただし、e_i=2^{κ_{e}}+e’_iである(ステップS214)。
【数5】

【0094】
署名生成手段212c2は、κ_l/2ビットのρ_rをランダムに選び、数6で示すB_[com]およびtを計算する(ステップS215)。
【数6】

【0095】
署名生成手段212c2は、λ=κ_n+κ+κ_Sとし、λビットのμ_xをランダムに選ぶ。また、κ_e+(κ_n/2)+κ_c+κ_S ビットのμ_S、κ_{e’}+κ_c+κ_Sビットのμ_{e’}、κ_{e’}+κ_l/2+κ_c+κ_Sビットのμ_t、およびZ_qの要素μ_Eの各々をそれぞれランダムに選ぶ(ステップS216)。
【0096】
署名生成手段212c2は、数7で示すV_Cを計算する(ステップS217)。
【数7】

【0097】
署名生成手段212c2は、数8で示すV_Mを計算する(ステップS218)。
【数8】

【0098】
署名生成手段212c2は、数9で示すV_Rを計算する(ステップS219)。
【数9】

【0099】
署名生成手段212c2は、数10で示すcを計算する(ステップS220)。
【数10】

【0100】
署名生成手段212c2は、数11で示すτ_x、τ_s、τ_t、τ_{e’}、τ_Eの各々を計算する(ステップS221)。
【数11】

【0101】
署名生成手段212c2は、数12で示す各条件が成立することを確認する(ステップS222)。成立しない場合上記ステップS216に戻って他のμ_x、μ_S、μ_{e’}、μ_t、μ_Eの各々をそれぞれランダムに選び直す。
【数12】

【0102】
署名生成手段212c2は、以上の計算で得られた(σ=((E,A_[com],B_[com],c,τ_x,τ_S,τ_{e’},τ_t,τ_E),M),署名人特定者情報)を、グループ署名データとして出力する(ステップS223)。
【0103】
図12は、図10に示した検証装置300cがグループ署名を検証する動作について示すフローチャートである。メンバー装置200cによって図12に示す動作で生成されたグループ署名データσ、署名人特定者情報opk[i_1]〜opk[i_j]、さらにipkおよびrpkを、検証者が検証装置300に入力する(ステップS321)。検証部311cは、これらのデータに対して以下のステップS322〜324に示す演算を行い、このグループ署名を検証する。
【0104】
検証部311cは、数13で示す各条件が成立することを確認する(ステップS322)。成立すればステップS323以降の処理に進み、成立しなければ不受理を出力して処理を終了する(ステップS326)。
【数13】

【0105】
検証部311cは、数14で示すτ_e、V’_C、V’_M、V’_Rの各々を計算する(ステップS323)。
【数14】

【0106】
検証部311cは、数15で示す条件が成立しているか否かを確認し(ステップS324)、成立していれば受理を出力し(ステップS325)、そうでなければ不受理を出力して処理を終了する(ステップS326)。
【数15】

【0107】
図13は、図10に示した署名人特定装置400cが行う署名人を特定する動作について示すフローチャートである。メンバー装置200cによって図12に示す動作で生成されたグループ署名データ、署名人特定者情報opk[i_1]〜opk[i_j]を、署名人特定者が署名人特定装置400cに入力する(ステップS331)。
【0108】
署名人特定者秘密鍵取得手段412c1は、署名人特定者記憶部420に記憶されている自らの署名人特定者秘密鍵osk[i]を読み込む(ステップS332)。署名人特定手段412c2は、受け取った署名人特定者情報opk[i_1]〜opk[i_j]の中に自らの署名人特定者秘密鍵osk[i]に対応する公開鍵opk[i]が含まれているか否かを判断する(ステップS333)。ここで、osk_[i]=(y_{i,1},y_{i_2})であるため,数16に示す条件を満たすi_kが存在すれば、受け取った署名人特定者情報の中に自らの署名人特定者秘密鍵に対応する公開鍵が含まれていることになる。
【数16】

【0109】
ステップS333で含まれていると判断されれば、ステップS334以降の処理に進む。含まれていないと判断されれば、失敗を出力して処理を終了する(ステップS337)。含まれていれば、署名人特定手段412c2はこの秘密鍵osk[i_k]でσに含まれる暗号を復号して署名人情報hを得る(ステップS334)。
【0110】
より具体的には、グループ署名データσの要素Eに含まれるopk[i]で暗号化された部分をE_1およびE_2とする。このとき、署名人特定手段412c2は数17で示すS_1およびS_2を計算し、S_1=S_2であれば署名人情報h=S_1である。
【数17】

【0111】
ステップS334までの処理で署名人情報hを得たメンバー検索手段412c3は、メンバーリスト421を読み込んで署名人情報hに対応するメンバーのIDを検索して、そのIDを出力する(ステップS335〜336)。
【0112】
以上で説明したように、本実施形態は次の効果を奏する。
本実施形態は、全ての署名人特定者に対して共通する乱数を利用して署名人情報を暗号化したデータを含むグループ署名データを生成するように構成したので、署名人特定者の人数をjとすると、計算量を3j個から2j+1個に削減することができる。
【0113】
(第4の実施形態)
本発明の第4の実施形態は、前述の第2の実施形態の構成に加えて、署名装置(メンバー装置200d)の入力部(入出力部13)が、2名以上の署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、署名生成部212dが、署名人特定者論理構造を利用してグループ署名データを生成するように構成した。
【0114】
さらに、これに対して署名人特定装置400の入力部(入出力部13)が、2名以上の署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、署名人特定部412dが、署名人特定者論理構造を利用してグループ署名を復号する。
【0115】
この構成を備えることにより、前述の第2および第3の実施形態の両方の効果を同時に得ることが可能となる。
以下、これをより詳細に説明する。
【0116】
図14は、本発明の第4の実施形態に係るグループ署名システム1d全体の構成を示す説明図である。グループ署名システム1dは、ハードウェアおよびソフトウェアの構成は第1〜第3の実施形態で説明したものと同一であるが、後述するように署名生成部、検証部、署名人特定部の各々の動作が第1の実施形態で説明したものと異なる。これらを各々、署名生成部212d、検証部311d、署名人特定部412dという。署名生成部212dは、署名人特定者公開鍵取得手段212d1と、署名生成手段212d2とを有する。署名人特定部412dは、署名人特定者秘密鍵取得手段412d1と、署名人特定手段412d2と、メンバー検索手段412d3とを有する。また、メンバー装置、検証装置、署名人特定装置を各々、メンバー装置200d、検証装置300d、署名人特定装置400dという。これら各々の装置のハードウェア的な構成は、図2で説明したものと同一である。
【0117】
本発明の第4の実施形態は、前述した第2の実施形態によるグループ署名システム1bを、非特許文献2に記載のグループ署名方式における発行者、署名人特定者、失効管理者、メンバーの公開鍵・秘密鍵を用いて実現する場合の例である。
【0118】
本実施形態でも採用する非特許文献2に記載のグループ署名方式では、発行者、署名人特定者、失効管理者、メンバーの公開鍵・秘密鍵は以下のようになっている。ただし,κ_n、κ_l、κ_e、κ_{e’}、κ、κ_c、κ_Sはいずれもセキュリティパラメータである。安全性の観点から、各セキュリティパラメータはκ_n=κ_l=1024、κ_e=504、κ_{e’}=60、κ=160、κ_c=160、κ_S=60以上であることが望ましい。
【0119】
発行者公開鍵ipk=(n,a_0,a_1,a_2)、発行者秘密鍵isk=(p_1,p_2)
ここでp_1,p_2はそれぞれκ_n/2ビットの安全素数(Safe Prime)、つまり、p_1=2p’_1+1,p_2=2p’_2+1を満たす素数p’_1,p’_2が存在する素数である。ここで、n=p_1p_2である。また、a_0、a_1、a_2はQR(n)の元である。
【0120】
署名人特定者公開鍵opk=(q,g,H_1,H_2),署名人特定者秘密鍵osk=(y_1,y_2)
ここで、qはDDH(Computational Diffie-Hellman)仮定が成り立つ群G、Gの位数である。また、群Gの生成元g、H_1=[y_1]g、H_2=[y_2]gである。
【0121】
ただし、安全性の観点から、署名人特定者1〜Nは共通パラメータ(q,g)を利用していることが望ましい。すなわち、署名人特定者i(1≦i≦N)の鍵ペアをopk[i]およびosk[i]と記載することにすると、以下に示す数18が成立する。
【数18】

【0122】
失効管理者公開鍵rpk=(l,b,w),失効管理者秘密鍵rsk=(l_1,l_2)
l_1,l_2はそれぞれκ_l/2ビットの安全素数であり、l=l_1l_2である。また、b,wはQR(l)の元である。
【0123】
メンバーU_iの公開鍵mpk=(h_i,A_i,e’_i,B_i),メンバーU_iの秘密鍵msk=x_i
ここでh_i、B_iおよびa_0a_1は、以下に示す数19に示す関係を満たす。
【数19】

【0124】
図15は、図14に示したメンバー装置200dがグループ署名を生成する動作について示すフローチャートである。発行者が管理するグループに所属するメンバーは、N人の署名人特定者の中から署名人(該メンバー自分自身)を特定させたいと思うj人の署名人特定者i_1〜i_jを選択して(jは自然数、かつj≦N)、メンバー装置200の署名生成部212に対してipk、rpk、署名人特定者情報、署名人特定者論理構造、メッセージM、以上の各データを入力する(ステップS411)。
【0125】
本実施例では、簡単のため、署名人情報は署名人特定者の公開鍵opk[i_1]〜opk[i_7]、署名人特定者論理構造は第2の実施形態で説明したものと同様に「1人で特定可能:i_1,i_2」「協力して特定可能:(i_3,i_4),(i_5,i_6,i_7)」が入力されたものとして説明を行う。署名人特定者の公開鍵は1つ以上であればいくつ入力されてもよいし、論理構造は充足可能な論理式であればどのような論理式でもよい。
【0126】
署名人特定者公開鍵取得手段212c1は、署名人特定者リスト221を参照して、ユーザが指定した署名人特定者の公開鍵opk[i_1]〜opk[i_j]を取得する。そして署名人特定者公開鍵取得手段212c1は、メンバー記憶部220から該メンバーのmpk_i=(h_i,A_i,e’_i,B_i),msk_i=x_iとを読み込む(ステップS412)。
【0127】
ipk、rpk、opk[i_1]〜opk[i_j]、署名人特定者論理構造、mpk_i、msk_i、メッセージM、以上のデータをここまでで受け取った署名生成部212dは、この署名人特定者論理構造にしたがって、以下のステップS413〜423に示す演算処理を行う。
【0128】
署名生成手段212d2は、以下に示す数20に示す演算によってopk[i_3,i_4]およびopk[i_5,i_6,i_7]を算出する(ステップS413)。
【数20】

【0129】
続いて署名生成手段212d2は、Z_{q}の要素ρ_Eをランダムに選び、以下の数21に示す演算によってEを算出する(ステップS414)。
【数21】

【0130】
この数21で、ρ_Eが、本願の請求項でいう「共通の乱数」となる。この「共通の乱数」による効果は、前述の第3の実施形態の所(図12のステップS213)で説明したものと同一である。
【0131】
続いて署名生成手段212d2は、κ_n/2ビットのρ_mをランダムに選び、以下の数22に示す演算によってA_[com]およびsを算出する(ステップS415)。ただし、e_i=2^{κ_{e}}+e’_iである。
【数22】

【0132】
続いて署名生成手段212d2は、κ_n/2ビットのρ_rをランダムに選び、以下の数23に示す演算によってB_[com]およびtを算出する(ステップS416)。
【数23】

【0133】
続いて署名生成手段212d2は、λ=κ_n+κ+κ_Sとし、λビットのμ_xをランダムに選ぶ。また、κ_e+(κ_n/2)+κ_c+κ_Sビットのμ_Sと、κ_{e’}+κ_c+κ_Sビットのμ_{e’}と、κ_{e’}+κ_l/2+κ_c+κ_Sビットのμ_tと、Z_qの要素μ_Eとをそれぞれランダムに選ぶ(ステップS417)。
【0134】
続いて署名生成手段212d2は、以下の数24に示す演算によってV_Cを算出する(ステップS418)。
【数24】

【0135】
続いて署名生成手段212d2は、以下の数25に示す演算によってV_Mを算出する(ステップS419)。
【数25】

【0136】
続いて署名生成手段212d2は、以下の数26に示す演算によってV_Rを算出する(ステップS420)。
【数26】

【0137】
続いて署名生成手段212d2は、以下の数27に示す演算によってcを算出する(ステップS421)。
【数27】

【0138】
続いて署名生成手段212d2は、以下の数28に示す演算によってτ_x、τ_s、τ_t、τ_{e’}、τ_Eの各々を算出する(ステップS422)。
【数28】

【0139】
署名生成手段212d2は、数29で示す各条件が成立することを確認する(ステップS423)。成立しない場合上記ステップS417に戻って他のμ_x、μ_S、μ_{e’}、μ_t、μ_Eの各々をそれぞれランダムに選び直す。
【数29】

【0140】
署名生成手段212d2は、以上の計算で得られた(σ=((E,A_[com],B_[com],c,τ_x,τ_S,τ_{e’},τ_t,τ_E),M),署名人特定者情報)をグループ署名データとして出力する(ステップS424)。
【0141】
図16は、図14に示した検証装置300dがグループ署名を検証する動作について示すフローチャートである。メンバー装置200dによって図15に示す動作で生成されたグループ署名データσ、署名人特定者情報opk[i_1]〜opk[i_j]、署名人特定者論理構造、さらにipkおよびrpkを、検証者が検証装置300に入力する(ステップS521)。検証部311dは、これらのデータに対して以下のステップS522〜524に示す演算を行い、このグループ署名を検証する。
【0142】
本実施例では、簡単のため、署名人情報は署名人特定者の公開鍵opk[i_1]〜opk[i_7]、署名人特定者論理構造は第2の実施形態で説明したものと同様に「1人で特定可能:i_1,i_2」「協力して特定可能:(i_3,i_4),(i_5,i_6,i_7)」が入力されたものとして説明を行う。署名人特定者の公開鍵は1つ以上であればいくつ入力されてもよいし、論理構造は充足可能な論理式であればどのような論理式でもよい。
【0143】
検証部311cは、数30で示す計算を行い、数31で示す各条件が成立することを確認する(ステップS522)。成立すればステップS523以降の処理に進み、成立しなければ不受理を出力して処理を終了する(ステップS526)。
【数30】

【数31】

【0144】
検証部311cは、数32で示す各々を計算する(ステップS523)。
【数32】

【0145】
検証部311dは、数33で示す条件が成立しているか否かを確認し(ステップS524)、成立していれば受理を出力し(ステップS525)、そうでなければ不受理を出力して処理を終了する(ステップS526)。
【数33】

【0146】
図17は、図14に示した署名人特定装置400dが行う署名人を特定する動作について示すフローチャートである。メンバー装置200dによって図15に示す動作で生成されたグループ署名データ、署名人特定者情報opk[i_1]〜opk[i_j]、および署名人特定者論理構造を、署名人特定者i_3およびi_4がそれぞれの署名人特定装置400dに入力する(ステップS531)。
【0147】
それぞれの署名人特定部412dは、署名人特定者記憶部420に記憶されているそれぞれの署名人特定者秘密鍵osk[i_3]およびosk[i_4]を読み込み(ステップS532)、受け取った署名人特定者情報opk[i_1]〜opk[i_j]の中に自らの署名人特定者秘密鍵osk[i]に対応する公開鍵opk[i]が含まれ、かつそれらが署名人特定者論理構造を満たしているか否かを判断する(ステップS533)。
【0148】
ステップS533で満たしていると判断されれば、ステップS534以降の処理に進む。満たしていないと判断されれば、失敗を出力して処理を終了する(ステップS537)。満たしていれば、署名人特定部412dはこの秘密鍵osk[i_3]およびosk[i_4]でσに含まれる暗号(E_0,E_{i_3,i_4,1},E_{i_3,i_4,2})を復号して署名人情報hを得る(ステップS534)。
【0149】
より具体的には、署名人特定部412dは数34で示す各々のopkおよびoskを計算し、さらにそこから数35で示すS_1およびS_2を計算し、S_1=S_2であれば署名人情報h=S_1である。
【数34】

【数35】

【0150】
ステップS534までの処理で署名人情報hを得た署名人特定部412dは、メンバーリスト421を読み込んで署名人情報hに対応するメンバーのIDを検索して、そのIDを出力する(ステップS535〜536)。
【0151】
以上で説明したように、本実施形態は次の効果を奏する。
本実施形態は、第3の実施形態と同様に、全ての署名人特定者に対して共通する乱数を利用して署名人情報を暗号化したデータを含むグループ署名データを生成するように構成したので、署名人特定者の人数をjとすると、計算量を3j個から2j+1個に削減することができる。かつ、署名人が2名以上の署名人特定者が協力して署名人を特定するという条件を含むグループ署名データを生成できるので、ユーザおよび署名人特定者にとっての利便性を増加させることができる。
【0152】
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。
【産業上の利用可能性】
【0153】
本発明は、電子署名を使用するデジタルデータ全般に適用できる。特に、署名人が特定のグループに所属していることを証明することが必要である電子署名において有用である。
【符号の説明】
【0154】
1、1b、1c、1d グループ署名システム
10 コンピュータ装置
11、110、210、310、410、510 プロセッサ
12 記憶部
13 入出力部
14 通信部
100 発行者装置
111 発行者鍵生成手段
112 発行手段
120 発行者記憶部
121、421 メンバーリスト
200、200b、200c、200d メンバー装置
211 参加手段
212、212b、212c、212d 署名生成手段
220 メンバー記憶部
221 署名人特定者リスト
300、300b、300c、300d 検証装置
311、311b、311c、311d 検証手段
320 検証者記憶部
400、400b、400c、400d 署名人特定装置
411 署名人特定者鍵生成手段
412、412b、412c、412d 署名人特定手段
420 署名人特定者記憶部
500 失効管理者装置
511 失効管理者鍵生成手段
512 失効手段
520 失効管理者記憶部
600 ネットワーク

【特許請求の範囲】
【請求項1】
グループのメンバーである一の署名人が前記グループに属することを証明する電子署名データとしてのグループ署名を生成して出力する署名生成装置であって、
前記グループの発行管理者公開鍵と失効管理者公開鍵、および前記署名人を特定することを許可したい複数の署名人特定者についての情報である署名人特定者情報の入力を受け付ける入力部と、
前記署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶する記憶部と、
前記署名人特定者情報に対応する署名人特定者公開鍵を取得する署名人特定者公開鍵取得手段と、
前記署名人特定者公開鍵と、全ての前記署名人特定者に対して共通する乱数とを利用して前記メンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する署名生成手段と、
生成された前記グループ署名データおよび入力された前記署名人特定者情報を出力する出力部と
を有することを特徴とする署名生成装置。
【請求項2】
前記入力部が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記署名生成手段が、前記署名人特定者論理構造を利用して前記グループ署名データを生成することを特徴とする、請求項1に記載の署名生成装置。
【請求項3】
グループのメンバーである一の署名人が前記グループに属することを証明する電子署名データであるグループ署名について前記グループに属する前記署名人が誰であるかを特定する署名人特定装置であって、
外部の署名生成装置から出力された前記グループ署名と署名人特定者情報の入力を受け付ける入力部と、
署名人特定者秘密鍵と前記グループ署名に含まれる署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶する記憶部と、
前記記憶部から前記署名人特定者秘密鍵を取得する署名人特定者秘密鍵取得手段と、
前記署名人特定者秘密鍵に対応する署名人特定者公開鍵が前記署名人特定者情報に含まれている場合に前記署名人特定者秘密鍵を利用して前記グループ署名を復号して署名人情報を得る署名人特定手段と、
復号して得られた前記署名人情報に対応するメンバー特定子を前記メンバーリストから検索するメンバー検索手段と、
検索された前記メンバー特定子を出力する出力部と
を有することを特徴とする署名人特定装置。
【請求項4】
前記入力部が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記署名人特定手段が、前記署名人特定者論理構造を利用して前記グループ署名を復号することを特徴とする、請求項3に記載の署名人特定装置。
【請求項5】
グループのメンバーである一の署名人が前記グループに属することを証明する電子署名データであるグループ署名を生成して出力する署名生成装置と、前記グループ署名が前記グループに属する前記署名人によって正当に生成されたものであるか否かを検証する検証装置と、前記グループ署名について前記署名人が誰であるかを特定する署名人特定装置とを含むグループ署名システムであって、
前記署名生成装置が、前記グループの発行管理者公開鍵と失効管理者公開鍵、および前記署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付ける第1の入力部と、前記署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶する第1の記憶部と、前記署名人特定者情報に対応する署名人特定者公開鍵を取得する署名人特定者公開鍵取得手段と、前記署名人特定者公開鍵と、全ての前記署名人特定者に対して共通する乱数とを利用して前記メンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する署名生成手段と、生成された前記グループ署名データおよび前記署名人特定者情報を出力する第1の出力部とを有し、
前記検証装置が、前記署名生成装置から出力された前記グループ署名データと前記署名人特定者情報、および前記グループの発行管理者公開鍵と失効管理者公開鍵の入力を受け付ける第2の入力部と、自らの署名人特定者秘密鍵を記憶する第2の記憶部と、前記グループ署名データ前記グループに属する前記署名人によって正当に生成されたものであるか否かを検証する検証部と、前記検証の結果を出力する第2の出力部とを有し、
前記署名人特定装置が、外部の署名生成装置から出力された前記グループ署名と署名人特定者情報の入力を受け付ける第3の入力部と、署名人特定者秘密鍵と署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶する第3の記憶部と、前記記憶部から前記署名人特定者秘密鍵を取得する署名人特定者秘密鍵取得手段と、前記署名人特定者秘密鍵に対応する署名人特定者公開鍵が前記署名人特定者情報に含まれている場合に前記署名人特定者秘密鍵を利用して前記グループ署名を復号して署名人情報を得る署名人特定手段と、復号して得られた前記署名人情報に対応するメンバー特定子を前記メンバーリストから検索するメンバー検索手段と、検索された前記メンバー特定子を出力する第3の出力部とを有することを特徴とするグループ署名システム。
【請求項6】
前記第1の入力部が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記署名生成手段が、前記署名人特定者論理構造を利用して前記グループ署名データを生成し、
前記署名人特定手段が、前記署名人特定者論理構造を利用して前記グループ署名を復号することを特徴とする、請求項5に記載のグループ署名システム。
【請求項7】
グループのメンバーである一の署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶している署名生成装置にあって、前記署名人が前記グループに属することを証明する電子署名データであるグループ署名を生成して出力する署名生成方法であって、
前記グループの発行管理者公開鍵と失効管理者公開鍵、および前記署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付け、
前記署名人特定者情報に対応する署名人特定者公開鍵を取得し、
前記署名人特定者公開鍵と、全ての前記署名人特定者に対して共通する乱数とを利用して前記メンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成し、
生成された前記グループ署名データおよび前記署名人特定者情報を出力する
ことを特徴とする署名生成方法。
【請求項8】
前記入力を受け付ける工程が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記グループ署名データを生成する工程が、前記署名人特定者論理構造を利用して前記グループ署名データを生成することを特徴とする、請求項7に記載の署名生成方法。
【請求項9】
署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶している署名人特定装置にあって、グループのメンバーである一の署名人が前記グループに属することを証明する電子署名データであるグループ署名について前記グループに属する前記署名人が誰であるかを特定する署名人特定方法であって、
外部の署名生成装置から出力された前記グループ署名と署名人特定者情報の入力を受け付け、
前記署名人特定者秘密鍵を取得し、
前記署名人特定者秘密鍵に対応する署名人特定者公開鍵が前記署名人特定者情報に含まれているか否かを判断し、
前記署名人特定者公開鍵が前記署名人特定者情報に含まれている場合に前記署名人特定者秘密鍵を利用して前記グループ署名を復号して署名人情報を得て、
復号して得られた前記署名人情報に対応するメンバー特定子を前記メンバーリストから検索し、
検索された前記メンバー特定子を出力する
ことを特徴とする署名人特定方法。
【請求項10】
前記入力を受け付ける工程が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記グループ署名を復号する工程が、前記署名人特定者論理構造を利用して前記グループ署名を復号することを特徴とする、請求項9に記載の署名人特定方法。
【請求項11】
グループのメンバーである一の署名人のメンバー秘密鍵およびメンバー公開鍵をあらかじめ記憶している署名生成装置にあって、前記署名生成装置が備えるコンピュータに、
前記グループの発行管理者公開鍵と失効管理者公開鍵、および前記署名人を特定することを許可したい署名人特定者についての情報である署名人特定者情報の入力を受け付ける手順と、
前記署名人特定者情報に対応する署名人特定者公開鍵を取得する手順と、
前記署名人特定者公開鍵と、全ての前記署名人特定者に対して共通する乱数とを利用して前記メンバー秘密鍵に含まれる署名人情報を暗号化したデータを含むグループ署名データを生成する手順と、
生成された前記グループ署名データおよび前記署名人特定者情報を出力する手順と
を実行させることを特徴とする署名生成プログラム。
【請求項12】
前記入力を受け付ける手順が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記グループ署名データを生成する手順とが、前記署名人特定者論理構造を利用して前記グループ署名データを生成することを特徴とする、請求項11に記載の署名生成プログラム。
【請求項13】
署名人特定者秘密鍵とグループ署名に含まれる署名人情報に対応するメンバー特定子を記憶したメンバーリストとをあらかじめ記憶している署名人特定装置にあって、前記署名人特定装置が備えるコンピュータに、
外部の署名生成装置から出力された前記グループ署名と署名人特定者情報の入力を受け付ける手順と、
前記署名人特定者秘密鍵を取得する手順と、
前記署名人特定者秘密鍵に対応する署名人特定者公開鍵が前記署名人特定者情報に含まれているか否かを判断する手順と、
前記署名人特定者公開鍵が前記署名人特定者情報に含まれている場合に前記署名人特定者秘密鍵を利用して前記グループ署名を復号して署名人情報を得る手順と、
復号して得られた前記署名人情報に対応するメンバー特定子を前記メンバーリストから検索する手順と、
検索された前記メンバー特定子を出力する手順と
を実行させることを特徴とする署名人特定プログラム。
【請求項14】
前記入力を受け付ける手順が、2名以上の前記署名人特定者が協力して署名人を特定する旨の論理条件を含みうる署名人特定者論理構造の入力を受け付け、
前記グループ署名を復号する手順が、前記署名人特定者論理構造を利用して前記グループ署名を復号することを特徴とする、請求項13に記載の署名人特定プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate


【公開番号】特開2011−24011(P2011−24011A)
【公開日】平成23年2月3日(2011.2.3)
【国際特許分類】
【出願番号】特願2009−167847(P2009−167847)
【出願日】平成21年7月16日(2009.7.16)
【国等の委託研究の成果に係る記載事項】(出願人による申告)平成20年度 総務省 「情報の来歴管理等の高度化・容易化に関する 研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】