(57)【要約】【課題】本発明は、グループ署名において、スタンダートモデルで安全性の証明が可能であり、署名長を短縮することが可能なデジタル署名技術を提供することを目的とする。【解決手段】会員向けコンテンツ提供サービスシステム（グループ署名システム）２は、グループメンバーインデックス生成ステップ（Ｓ１）を実行するグループインデックス管理装置４０と、セットアップステップ（Ｓ３）及びジョインステップ（Ｓ４）を実行するグループ管理装置１０と、署名生成ステップ（Ｓ５）を実行するグループメンバー装置（署名生成装置）２０と、署名検証ステップ（Ｓ７）を実行する署名検証装置３０とを備え、グループインデックス管理装置４０がオープンステップ（Ｓ１０）を実行する。【選択図】図２
2010161517.tif 000002
【特許請求の範囲】
【請求項１】
サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーの個人情報と分離されたグループ内識別子を示すグループメンバーインデックスを生成するグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループインデックス管理装置であって、
複数の前記グループメンバーを一意に識別するグループメンバー情報識別値のリストであるグループメンバー情報識別値リストを受信するグループメンバー情報識別値受信手段と、
前記グループメンバーインデックスを前記署名生成装置と同数生成し、生成した当該グループメンバーインデックスと前記グループメンバー情報識別値とをランダム置換によって対応付けた対応付け表を生成するグループメンバーインデックス生成手段と、
前記グループメンバーインデックスを前記署名生成装置に送信するグループメンバーインデックス送信手段と、
を備えることを特徴とするグループインデックス管理装置。
【請求項２】
前記グループメンバー情報識別値受信手段は、更新された前記グループメンバー情報識別値リストを受信し、
前記グループメンバーインデックス生成手段は、前記更新されたグループメンバー情報識別値リストに含まれなくなった前記グループメンバー情報識別値に対応する前記グループメンバーインデックスを前記対応付け表から削除すると共に、グループメンバー資格が有効な前記グループメンバーの前記グループメンバー情報識別値のリストである有効グループメンバーインデックスリストを生成することを特徴とする請求項１に記載のグループインデックス管理装置。
【請求項３】
前記ランダム置換の逆変換であるグループ秘密鍵を生成するグループ秘密鍵生成手段と、
前記グループ署名を受信すると共に、前記グループ秘密鍵を用いて、受信した当該グループ署名に含まれる前記グループメンバーインデックスから、当該グループ署名を生成したグループメンバーの前記グループメンバー情報識別値を求めるオープン手段と、
をさらに備えることを特徴とする請求項１又は請求項２に記載のグループインデックス管理装置。
【請求項４】
請求項１に記載のグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループ管理装置であって、
前記グループ公開鍵を生成するグループ公開鍵生成手段と、
前記グループ公開鍵をグループ公開情報として前記署名検証装置に送信する公開情報送信手段と、
当該グループ管理装置が保管するマスタ鍵を生成するマスタ鍵生成手段と、
前記グループメンバーインデックスと前記マスタ鍵とを用いて、前記グループメンバー毎の秘密にされるメンバー鍵として、前記グループメンバー固有の秘密ライセンス情報を生成するメンバー鍵生成手段と、
を備えることを特徴とするグループ管理装置。
【請求項５】
請求項１に記載のグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名生成装置であって、
前記グループメンバー固有の秘密ライセンス情報と署名対象のリクエストメッセージとを用いて、随時署名を生成する随時署名生成手段と、
前記随時署名と前記グループメンバーインデックスとを含む前記グループ署名を生成するグループ署名生成手段と、
前記グループ署名と前記リクエストメッセージとを前記署名検証装置に送信するグループ署名送信手段と、
を備えることを特徴とする署名生成装置。
【請求項６】
請求項１に記載のグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名検証装置であって、
前記署名生成装置で生成されたグループ署名を受信するグループ署名受信手段と、
前記グループ管理装置で生成された前記グループ公開鍵をグループ公開情報として受信する公開情報受信手段と、
前記グループ公開情報と前記グループ署名とが、予め設定された条件式を満たすか否かを判別し、当該条件式を満たす場合に前記グループ署名の検証が成功したと判定するグループ署名検証手段と、
を備えることを特徴とする署名検証装置。
【請求項７】
前記グループインデックス管理装置が生成した有効グループメンバーインデックスリストの中に、前記受信したグループ署名に含まれるグループメンバーインデックスが存在するか否かを判別し、当該グループメンバーインデックスが存在する場合、グループメンバー資格が有効であると判定する有効メンバー判別手段、をさらに備え、
前記グループ署名検証手段は、前記有効メンバー判別手段によってグループメンバー資格が有効であると判定された場合、前記条件式を満たすか否かの判定を行うことを特徴とする請求項６に記載の署名検証装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットや専用ＩＰ回線等のネットワークを介して提供されるサービスを利用するユーザの認証技術に関し、特に、ユーザが匿名性を有しながら、正規のサービス受給権利者のグループに属していることを証明することができるユーザの個人情報保護を目的としたデジタル署名技術に関する。
【背景技術】
【０００２】
通信技術の発展、普及に伴って、インターネットや専用ＩＰ回線等のネットワーク利用者（ユーザ）が、ネットワークを介して電子データを送受信することで各種のサービスを享受する形態のコミュニケーションが増加してきている。しかしながら、電子データを改変することは容易である。従って、ネットワークを介したコミュニケーションにおいては、サービスを供給されるべき正しい権利のあるユーザ（以下、正当なユーザという）とは異なる第三者が、電子データを偽造、複製、改ざんなどをすることによって、正当なユーザに成りすますという問題がある。そのため、ネットワークを介したコミュニケーションにおいては、正当なユーザであることを示すために、ユーザ認証の技術が利用される。
【０００３】
認証技術の代表的なものとして、ＩＤ・パスワード方式と、デジタル署名とが挙げられる。このうち、ＩＤ・パスワード方式では、ユーザは、事前に個人情報と関連付けたＩＤ（ユーザＩＤ）とパスワードとを登録する。ここで、ユーザＩＤは、例えば、氏名・住所または必要に応じて決済情報といった個人情報と関連付けられているため個人情報と同等な扱いが必要なものである。そして、ユーザがサービスを受けるためにサービス提供者へアクセスするときに、サービス提供者は、ユーザにユーザＩＤとパスワードとを入力させる。そして、入力されたパスワードと事前に登録されたパスワードとが一致したときに、サービス提供者は、アクセスしたユーザが正当なユーザであることを確認することでユーザ認証を行っている。
【０００４】
また、デジタル署名による認証方式では、ＰＫＩ（Public Key Infrastructure）に基づいて、各ユーザがそれぞれ自らのユーザＩＤと公開鍵とをサービス提供者へ登録しておき、登録した公開鍵に対応する秘密鍵を自ら安全に所有しておく。そして、ユーザがサービス提供者へアクセスするときには、自分の秘密鍵でデジタル署名情報を生成しユーザＩＤとあわせて発行する。そして、サービス提供者は、この署名が、ユーザＩＤと関連付けて予め登録されている公開鍵で検証可能であるときに正当なユーザであることを確認することでユーザ認証を行っている。
【０００５】
これらの既存の認証技術は、いずれも、ユーザＩＤをサービス提供者側（ユーザがアクセスしたサーバ側）に明示しなければならない。一般に、サービス提供者に登録されたユーザの個人情報は本来の目的以外に使用されるものではないが、何らかの原因で漏洩する可能性は否定できない。ユーザＩＤは、複数のユーザを単に区別する識別番号という意味を持つだけではなく、そのユーザの氏名・住所（あるいは決済情報）と関連付けられているために、いわゆる個人情報と同等な情報となり得る可能性がある。そのため、さまざまなサービスが電子化・オンライン化される中で、ユーザのあらゆる行動がユーザＩＤに紐付けて蓄積され、消費活動や趣味嗜好などといったプライバシ情報がユーザの意思とは無関係に管理されることになりかねないことが指摘されているのが現状である。そのため、ユーザＩＤをサービス提供者側（ユーザがアクセスしたサーバ側）に明示しなければならない認証方式に対する不安を払拭して、ネットワークを介したコミュニケーションを発展させることが要望されている。
【０００６】
また、ネットワーク上のサービスは、多様化してきており、デジタル署名を用いた認証方式においてもサービスに応じて様々な機能が求められてきている。例えば、電子投票やアンケート、電子決済などのサービスで利用することを目的としたデジタル署名において、署名者の匿名性を有するデジタル署名が開発されている。匿名性を有するデジタル署名には、グループ署名と呼ばれるものがある。
【０００７】
グループ署名は、Chaumとvan Heystにより初めて提案された（非特許文献１参照）。その後、多くの研究者によって、改良された方式が提案されてきており、改良された代表的な方式として、例えば、Ateniese、Camenisch、Joye、Tsudikらによるグループ署名が知られている（非特許文献２参照）。また、FurukawaとImaiによる効率的なグループ署名方式も知られている（非特許文献３参照）。これらのグループ署名方式は、「ランダムオラクルモデル」と呼ばれる理想的なランダム関数の存在を仮定することにより、安全性の証明が可能となる。しかし、このようなランダム関数は、実在しないことから、「スタンダードモデル」と呼ばれる、実在する関数のみを用いて、安全性の証明が可能なグループ署名方式も提案されている（例えば、非特許文献４参照）。近年、グループ署名方式では、「ランダムオラクルモデル」よりも「スタンダードモデル」によって、安全性の証明が行われている。
【０００８】
グループ署名では、あるサービスを受ける権利を持つユーザを予めグループ化しておき、検証者は、署名を作成したユーザが、グループに属しているか否かで認証を行う。検証者は、署名を作成したユーザが、グループに属しているということは分かったとしても、そのユーザが誰であるのかを特定することは不可能である。一般的なグループ署名では、グループを管理するグループ管理者が存在する。このグループ管理者は、グループ独自の公開鍵と秘密鍵のペアを生成して、公開鍵を公開する。ユーザがグループに所属することを希望するときには、そのユーザは、グループ管理者と交信を行い、グループ管理者は、該当するユーザの署名鍵を生成し、ユーザに渡す。ユーザは、自らの署名鍵で署名を作成し、検証者はグループの公開鍵で署名を検証する。また、一般的なグループ署名では、グループ内で不正が起きた場合に、その不正を起こした不正者を特定するため、グループ管理者には、非常手段として署名の匿名性を破棄して、署名者を特定できる権限がある。
【０００９】
図１１は、従来のグループ署名システムの概要を模式的に示す構成図である。グループ署名システム９０１は、グループ管理装置９１０と、グループメンバー装置（署名生成装置）９２０と、署名検証装置９３０とを備えている。グループ管理装置９１０は、はじめにセットアップと呼ばれる準備ルーチンを行い、グループ署名に必要なグループ秘密鍵および検証鍵（グループ公開情報）等の基本パラメータを生成する。グループ管理装置９１０は、次に、ジョインルーチンをグループメンバー装置９２０と交信しながら行う。グループ管理装置９１０は、基本パラメータとメンバーのＩＤとを用いて、ライセンス（ＩＤ，メンバー秘密鍵）を発行し、検証鍵（グループ公開情報）とライセンスとをグループメンバー装置９２０に渡す。ライセンスを受け取ったグループメンバー装置９２０（の操作者）は、グループのメンバーと見做される。グループメンバー装置９２０は、受け取ったライセンスを用いて署名を生成し、生成した署名を署名検証装置９３０に渡す。署名検証装置９３０は、グループ管理装置９１０から取得した検証鍵（グループ公開情報）を用いて、グループメンバー装置９２０から受け取った署名の正当性を検証するものである。署名検証装置９３０は、受け取った署名が、正規のグループメンバー装置９２０が正しいライセンスを用いて作成した署名であるか否かを検証し、署名の正当性を出力する。このグループ署名システム９０１において、グループメンバー装置９２０以外の装置は署名を生成することができない。また、グループメンバー装置９２０や署名検証装置９３０は、どの装置が署名を生成したのかを特定することはできない。
【００１０】
また、グループ署名の従来の方式では、異なる２つの署名が同一署名者によるものであるのか否かについて分からないという性質（Ｕｎｌｉｎｋａｂｉｌｉｔｙと呼ばれる性質）を持っているものが多い。なお、Ｕｎｌｉｎｋａｂｌｅなグループ署名において、グループ管理者は、署名の匿名性を破棄すれば、異なる二つの署名が同一署名者によるものであるのか否かについて分かる。
【先行技術文献】
【非特許文献】
【００１１】
【非特許文献１】D.Chaum and E. van Heyst :“ Group signatures, ”Eurocrypt ’91, Lecture Notes in Computer Science 547, p.257-265 , Springer-Verlag (1991)
【非特許文献２】G. Ateniese, J. Camenisch, M. Joye, and G. Tsudik:“A practical and provably secure coalition-resistant group signature scheme, ” CRYPTO 2000, Lecture Notes in Computer Science 1880, p.255-270, Springer-Verlag (2000)
【非特許文献３】J. Furukawa and H. Imai:“An Efficient Group Signature Scheme from Bilinear Maps, ” ACISP 2005, Lecture Notes in Computer Science 3574, p.455-467, Springer-Verlag (2005)
【非特許文献４】X.Liang,Z.Cao,J.Shao and H.Lin,”Short Group Signature without Random Oracles,”Proc. Of ICICS 2007,Lectur Notes inComputer Science 4861,p.69-82,Springer-Verlag(2007)
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、グループ署名の従来の方式では、Ｕｎｌｉｎｋａｂｉｌｉｔｙと呼ばれる性質を満足させるために、署名を生成する際に複雑な計算が必要であり、原理的に、署名の長さ（署名長）の長大化を招いていた。このため、グループ管理装置９１０およびグループメンバー装置９２０の実装に大きなコストがかかっていた。
【００１３】
また、グループ署名がＵｎｌｉｎｋａｂｉｌｉｔｙを満たしている場合には、グループ内の所定のメンバーがそのグループを脱退する場合に、その所定のメンバーの署名のみを無効化させるという運用を行うことが困難であった。この場合には、それまで使用していたグループ独自の公開鍵と秘密鍵のペアを破棄してグループに対応する新たな公開鍵と秘密鍵を生成しなければならなかった。このため、グループを構成するメンバーの数が巨大である場合には、新たな公開鍵と秘密鍵を更新する度に、残りのメンバーにライセンス（グループ秘密鍵）を安全に再配布するために多大な手間と時間とコストとを要することとなっていた。例えば、ライセンスの再配布を郵送で行うとメンバーが脱退してからグループ署名の機能が再開する日にちまで他のメンバーがサービスを享受できなくなってしまう。
【００１４】
さらに、グループ署名がＵｎｌｉｎｋａｂｉｌｉｔｙを満たしている場合には、例えば、コンテンツ配信サービスを受けることのできるグループに属するグループメンバーが、ドラマ等のコンテンツを複数回に分けてネットワーク受信するときに、前回供給された状態の続きから受信することを要望したとしても、異なる２つの署名が同一署名者によるものであるのか分からないので、前回の履歴が分からず、このような要望に応えることができない。
【００１５】
本発明は、以上のような問題点に鑑みてなされたものであり、グループ署名において、スタンダートモデルで安全性の証明が可能であり、署名長を短縮できるＬｉｎｋａｂｌｅなデジタル署名技術を提供することを目的とする。
【課題を解決するための手段】
【００１６】
前記した課題を解決するため、請求項１に係るグループインデックス管理装置は、サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーの個人情報と分離されたグループ内識別子を示すグループメンバーインデックスを生成するグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループインデックス管理装置であって、グループメンバー情報識別値受信手段と、グループメンバーインデックス生成手段と、グループメンバーインデックス送信手段と、を備えることを特徴とする。
【００１７】
かかる構成によれば、グループインデックス管理装置は、グループメンバー情報識別値受信手段によって、複数のグループメンバーを一意に識別するグループメンバー情報識別値のリストであるグループメンバー情報識別値リストを受信する。また、グループインデックス管理装置は、グループメンバーインデックス生成手段によって、グループメンバーインデックスを署名生成装置と同数生成し、生成したグループメンバーインデックスとグループメンバー情報識別値とをランダム置換によって対応付けた対応付け表を生成する。さらに、グループインデックス管理装置は、グループメンバーインデックス送信手段によって、グループメンバーインデックスを署名生成装置に送信する。
【００１８】
このように、グループインデックス管理装置で、グループメンバーインデックスとグループメンバーの個人情報とを秘密裡に紐付けして管理することで、グループ管理装置、署名生成装置および署名検証装置では、署名者のサービス利用状況を、氏名・住所等の個人情報に紐付けられることはない。従って、匿名性を保持してネットワークを介したサービスをグループメンバーに提供することが可能となる。なお、「Ｌｉｎｋａｂｉｌｉｔｙ」とは、署名者の匿名性を維持しながら、異なる複数の署名が同一署名者により生成されたものであるか否かが分かる性質である。
【００１９】
請求項２に係るグループインデックス管理装置は、請求項１に記載のグループインデックス管理装置において、グループメンバー情報識別値受信手段は、更新されたグループメンバー情報識別値リストを受信し、グループメンバーインデックス生成手段は、更新されたグループメンバー情報識別値リストに含まれなくなったグループメンバー情報識別値に対応するグループメンバーインデックスを対応付け表から削除すると共に、グループメンバー資格が有効なグループメンバーのグループメンバー情報識別値のリストである有効グループメンバーインデックスリストを生成することを特徴とする。
【００２０】
かかる構成によれば、グループインデックス管理装置は、例えば、署名検証装置が有効グループメンバーインデックスリストを確認することで、グループメンバー資格を失効したグループメンバーからグループ署名を受信した場合、以降の署名を検証する計算を署名検証装置に省略させることができる。
【００２１】
請求項３に係るグループインデックス管理装置は、請求項１又は請求項２に記載のグループインデックス管理装置において、ランダム置換の逆変換であるグループ秘密鍵を生成するグループ秘密鍵生成手段と、グループ署名を受信すると共に、グループ秘密鍵を用いて、受信したグループ署名に含まれるグループメンバーインデックスから、グループ署名を生成したグループメンバーのグループメンバー情報識別値を求めるオープン手段と、をさらに備えることを特徴とする。
【００２２】
かかる構成によれば、グループインデックス管理装置は、オープン手段によって、例えば、不正アクセス等の事態が生じた場合、その不正アクセスをおこなったグループメンバーのグループメンバー情報識別値を求めることができる。一方、グループインデックス管理装置以外の装置によってグループメンバーのグループメンバー情報識別値を求めることはできない。これによって、グループ署名システムの安全性を高くすることができる。
【００２３】
前記した課題を解決するため、請求項４に係るグループ管理装置は、請求項１に記載のグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループ管理装置であって、グループ公開鍵生成手段と、公開情報送信手段と、マスタ鍵生成手段と、メンバー鍵生成手段と、を備えることを特徴とする。
【００２４】
かかる構成によれば、グループ管理装置は、グループ公開鍵生成手段によって、グループ公開鍵を生成する。また、グループ管理装置は、公開情報送信手段によって、グループ公開鍵をグループ公開情報として署名検証装置に送信する。ここで、グループメンバーは、グループメンバーインデックスを用いて管理することが可能なので、グループ内の所定のメンバーがそのグループを脱退する場合に、グループ管理装置は、グループ公開鍵を変更する必要がない。つまり、その所定のメンバーの署名のみを容易に無効化させることができる。さらに、新規メンバーの加入を容易に行うこともできる。これによって、グループ署名システムの設計や運用を適宜柔軟に変更することができる。
【００２５】
そして、グループ管理装置は、マスタ鍵生成手段によって、グループ管理装置が保管するマスタ鍵を生成する。さらに、グループ管理装置は、メンバー鍵生成手段によって、グループメンバーインデックスとマスタ鍵とを用いて、グループメンバー毎の秘密にされるメンバー鍵として、グループメンバー固有の秘密ライセンス情報を生成する。このようにグループ管理装置の外部で、グループメンバーインデックスとグループメンバーの個人情報とを秘密裡に紐付けして管理することで、グループ管理装置、署名生成装置および署名検証装置では、署名者のサービス利用状況を、氏名・住所等の個人情報に紐付けられることはない。従って、匿名性を保持してネットワークを介したサービスをグループメンバーに提供することが可能となる。
【００２６】
前記した課題を解決するため、請求項５に係る署名生成装置は、請求項１に記載のグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名生成装置であって、随時署名生成手段と、グループ署名生成手段と、グループ署名送信手段と、を備えることを特徴とする。
【００２７】
かかる構成によれば、署名生成装置は、随時署名生成手段によって、グループメンバー固有の秘密ライセンス情報と署名対象のリクエストメッセージとを用いて、随時署名を生成する。ここで、随時署名は、署名検証装置に最終的に出力するグループ署名に含めるものである。本発明はグループ署名がＵｎｌｉｎｋａｂｉｌｉｔｙを満たさない（Ｌｉｎｋａｂｉｌｉｔｙを満たす）ことを前提としているので、随時署名の段階においても従来よりも署名長を短縮した構成とすることができる。
【００２８】
また、署名生成装置は、グループ署名生成手段によって、随時署名とグループメンバーインデックスとを含むグループ署名を生成する。ここで、グループ署名には、例えば、グループメンバーインデックスが含まれている。このグループメンバーインデックスは、これによりグループ署名の署名者が誰であるかを特定することはできないが他の署名者と区別することができるものである。それは、グループメンバーインデックスは、グループ内において各グループメンバーを区別できるインデックスであるからである。しかも、グループメンバーインデックスは、グループメンバーの個人情報とは分離されているので、個人情報と紐付けされた通常のユーザＩＤとは異なる。一方、Ｕｎｌｉｎｋａｂｉｌｉｔｙを満たす従来の方式では、グループ署名中に、グループメンバーを識別する情報は含まれていない。また、署名生成装置が生成する随時署名、および、グループメンバーインデックスは、それぞれ、例えば、５１６ビットおよび８０ビット程度のビット長とすることが可能なので、リクエストに、随時署名およびグループメンバーインデックスは、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、署名生成装置の実装に必要なコストを低減できる。
【００２９】
さらに、署名生成装置は、グループ署名送信手段によって、グループ署名とリクエストメッセージとを署名検証装置に送信する。従って、グループ署名を受信した署名検証装置では、同一署名者により生成された異なる２つの署名が同一人物によるものであることが分かる。これにより、署名生成装置が生成するグループ署名は、Ｕｎｌｉｎｋａｂｉｌｉｔｙを満たさない（Ｌｉｎｋａｂｉｌｉｔｙを満たす）ことになる。そのため、グループ内の所定のメンバーがそのグループを脱退する場合に、その所定のメンバーの署名のみを容易に無効化させることができる。また、新規メンバーの加入を容易に行うこともできる。さらに、Ｌｉｎｋａｂｉｌｉｔｙを満たすことから、署名生成装置を利用するグループメンバーが、サービスをネットワーク受信するときに、前回供給された状態の続きから受信することも可能となる。
【００３０】
前記した課題を解決するため、請求項６に係る署名検証装置は、請求項１に記載のグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名検証装置であって、グループ署名受信手段と、公開情報受信手段と、グループ署名検証手段と、を備えることを特徴とする。
【００３１】
かかる構成によれば、署名検証装置は、グループ署名受信手段によって、署名生成装置で生成されたグループ署名を受信する。また、署名検証装置は、公開情報受信手段によって、グループ管理装置で生成されたグループ公開鍵をグループ公開情報として受信する。そして、署名検証装置は、グループ署名検証手段によって、グループ公開情報とグループ署名とが、予め設定された条件式を満たすか否かを判別し、条件式を満たす場合にグループ署名の検証が成功したと判定する。これによって、署名検証装置は、グループ署名を生成した署名生成装置と同程度の計算を実行するだけでグループ署名を検証することができる。言い換えると、本発明は、Ｌｉｎｋａｂｉｌｉｔｙを満たすグループ署名を可能とすることで、署名生成と署名検証との計算量を、従来のＵｎｌｉｎｋａｂｉｌｉｔｙを満たすグループ署名よりも少なくできる。
【００３２】
請求項７に係る署名検証装置は、請求項６に記載の署名検証装置において、グループインデックス管理装置が生成した有効グループメンバーインデックスリストの中に、受信したグループ署名に含まれるグループメンバーインデックスが存在するか否かを判別し、グループメンバーインデックスが存在する場合、グループメンバー資格が有効であると判定する有効メンバー判別手段、をさらに備え、グループ署名検証手段は、有効メンバー判別手段によってグループメンバー資格が有効であると判定された場合、条件式を満たすか否かの判定を行うことを特徴とする。
【００３３】
かかる構成によれば、署名検証装置は、メンバー資格が失効したグループメンバーからグループ署名を受信した場合には、グループ署名に含まれるグループメンバーインデックスを確認しさえすればよく、以降の署名を検証する計算を省略することができる。
【発明の効果】
【００３４】
本発明によれば、以下のような優れた効果を奏する。
請求項１，４，５，６に係る発明によれば、安全性の証明が可能なスタンダートモデルで、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、Ｌｉｎｋａｂｌｅなグループ署名システムの実装に必要なコストを低減できる。
【００３５】
請求項２，７に係る発明によれば、署名検証装置が、メンバー資格が失効したグループメンバーからグループ署名を受信した場合に、署名を検証する計算を省略することができる。
【００３６】
請求項３に係る発明によれば、Ｌｉｎｋａｂｌｅな性質を維持しつつ、不正アクセス等の事態に対応することができるため、グループ署名システムの安全性を高くすることができる。
【図面の簡単な説明】
【００３７】
【図１】グループ署名システムの概要を模式的に示す構成図である。
【図２】会員向けコンテンツ提供サービスシステムの概要を模式的に示す構成図である。
【図３】本発明の実施形態に係るグループ管理装置の構成を模式的に示すブロック図である。
【図４】本発明の実施形態に係るグループインデックス管理装置の構成を模式的に示すブロック図である。
【図５】本発明の実施形態に係るグループメンバー装置の構成を模式的に示すブロック図である。
【図６】本発明の実施形態に係る署名検証装置の構成を模式的に示すブロック図である。
【図７】セットアップステップを示すフローチャートである。
【図８】ジョインステップを示すフローチャートである。
【図９】署名生成ステップ及び署名検証ステップを示すフローチャートである。
【図１０】オープンステップを示すフローチャートである。
【図１１】従来のグループ署名システムの概要を模式的に示す構成図である。
【発明を実施するための形態】
【００３８】
以下、図面を参照して本発明を実施するための最良の形態（以下「実施形態」という）について詳細に説明する。
【００３９】
［グループ署名システムの構成］
グループ署名システム１は、図１に示すように、グループ管理装置１０と、グループメンバー装置（署名生成装置）２０と、署名検証装置３０と、グループインデックス管理装置４０と、会員情報管理サーバ５０とを備えている。このグループ署名システム１では、会員向けサービスの運営者（運営主体）により利用される、グループインデックス管理装置４０と、会員情報管理サーバ５０とを備えている点が、図１１に示したグループ署名システム９０１と大きく異なっている。なお、グループインデックス管理装置４０の管理者をインデックス管理者という。また、各装置１０〜５０は、例えば、ＣＰＵ（Central Processing Unit）と、ＲＡＭ（Random Access Memory）と、ＲＯＭ（Read Only Memory）と、ＨＤＤ（Hard Disk Drive）と、通信を行うためのＮＩＣ（Network Interface Card）等を備えている。
【００４０】
（グループ管理装置）
グループ管理装置１０は、グループメンバー装置２０においてサービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーによる署名であることを示すグループ署名を生成及び検証する際に利用されるグループ公開鍵を生成するものである。グループ公開鍵は、予め選択された生成元を用いて生成される値と、生成元と、セキュリティーパラメータとを含む。グループ管理装置１０は、例えば、会員向けサービスの運営主体（運営者）により使用される。会員向けサービスの運営主体（運営者）は、サービス提供者からサービスの提供を受けるグループの管理者であるグループ管理者と兼務してもよいし、別であってもよい。
【００４１】
（グループメンバー装置）
グループメンバー装置（署名生成装置）２０は、サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーによる署名であることを示すグループ署名を生成するものである。グループメンバー装置２０は、サービス提供者からサービスの提供を受けるグループメンバーとなる会員（ユーザ）により使用される。なお、グループメンバー装置２０が、請求項に記載の署名生成装置に相当する。
【００４２】
（署名検証装置）
署名検証装置３０は、生成されたグループ署名をグループ公開鍵に基づいて検証するものである。本実施形態では、署名検証装置３０は、グループ署名が、サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーによる署名であることを示すグループ署名であるか否かを検証する。署名検証装置３０は、サービス提供者により使用される。
【００４３】
（会員向けサービスの運営者）
会員向けサービスの運営者（運営主体）は、グループメンバー（会員）の個人情報、例えば住所・氏名といった個人を特定する情報を管理する。なお、有料サービスであれば課金徴収に関する情報も管理する必要がある。ただし、グループメンバー資格（会員資格）を有するユーザのサービス利用状況についてその匿名性を保つことが望まれる場合には、ユーザからのサービス要求時に行うユーザ認証方式はグループ署名が適している。その理由は、ユーザ側ではサービス利用状況についてのプライバシを保護するためであり、また、運営者側では危機管理のためである。このような理由から、会員向けサービスの運営主体は、自ら管理する個人情報を識別するために、会員情報識別値（グループメンバー情報識別値）をつけて管理している。なお、会員情報識別値が請求項に記載のグループメンバー情報識別値に相当する。
【００４４】
（グループインデックス管理装置）
グループインデックス管理装置４０は、複数の会員情報識別値（例えば、一般的な会員番号やユーザＩＤ）のリストである会員情報識別値リスト（グループメンバー情報識別値リスト）Ｌ1を入力として、個々のグループメンバーに対応するグループメンバーインデックスＩＤiを生成し、会員情報識別値とＩＤiとの対応付け表Ｔを秘密裡に保管するものである。ここで、グループメンバーインデックスＩＤiは、グループメンバーの個人情報と分離されたグループ内識別子を示す。また、グループインデックス管理装置４０は、現時点におけるグループ参加資格者（グループ資格が有効なユーザ）のグループメンバーインデックスＩＤiのリストである有効グループメンバーインデックスリストＬ２を生成発行する。グループ資格が失効したユーザのグループメンバーインデックスＩＤiは、有効グループメンバーインデックスリストＬ２から削除される。このグループメンバーインデックスＩＤiは、グループ署名を行う各個人を互いに区別するグループ署名用のインデックスである。言い換えると、グループメンバーインデックスＩＤiは、異なる複数の署名が同一署名者により生成されたものであるか否かが分かるという性質（Ｌｉｎｋａｂｉｌｉｔｙと呼ばれる性質）を持っている。なお、会員情報識別値リストＬ１が請求項に記載のグループメンバー情報識別値リストに相当する。
【００４５】
また、グループインデックス管理装置４０は、個々のグループメンバーインデックス（ＩＤi）を安全な方法で各グループメンバー装置２０に配布する。配布方法としては、例えば対面方式などのようにオフラインな手法を使用することも可能である。ここで、グループ管理装置１０、グループメンバー装置２０、署名検証装置３０およびグループインデックス管理装置４０のそれぞれは、インターネットまたは専用ＩＰ回線等の外部ネットワークに必ずしも常時接続されている必要性はない。ただし、会員向けサービスを適正に運営するために、グループインデックス管理装置４０が、最新の有効グループメンバーインデックスリストＬ２を常時更新することが望ましく、署名検証装置３０が有効グループメンバーインデックスリストＬ２の最新の情報を常時閲覧可能な運用とする必要がある。
【００４６】
（会員情報管理サーバ）
会員情報管理サーバ５０は、会員情報（個人情報）と共に会員情報識別値を管理するものであり、会員情報識別値リストＬ１を保有している。会員情報識別値は、各個人を直接特定する個人情報に紐付けられた個人情報インデックスとなり得るものである。会員情報管理サーバ５０は、例えば、会員向けサービスの運営主体（運営者）により使用される。
【００４７】
（グループ署名システムの特徴）
グループ管理装置１０、グループメンバー装置２０および署名検証装置３０の間において、グループ署名を生成および検証することにより、グループインデックス管理装置４０以外の装置では、グループメンバーインデックスＩＤiから個人を特定する情報を得ることは不可能である。このような事業形態の一例としては、例えば、会員向けサービスの運営主体が、グループ管理者に対してサービスを委託する場合（アウトソ−シング）が想定される。つまり、グループインデックス管理装置４０の運営者と、グループ管理装置１０の運営者（グループ管理者）とが異なる場合には、グループ署名のグループ管理者ですら、グループ署名を作成したユーザが、グループに属しているということは分かったとしても、そのユーザが誰であるのかを特定することが不可能となる。なお、図１１に示したグループ署名システム９０１と同様に、グループ署名システム１においても、グループメンバー装置２０以外の装置はグループ署名を生成することができないことはもちろんである。また、検証者は、署名を作成したユーザが、グループに属しているということは分かったとしても、そのユーザが誰であるのかを特定することは不可能である。なお、グループインデックス管理装置４０は、後記するオープンステップを実行することで、個人を特定する情報を得ることができる。
【００４８】
［会員向けコンテンツ提供サービスシステムの概要］
図１に示したグループ署名システム１を会員向けコンテンツ提供サービスシステムに応用したときの構成とその全体動作の概要を図２に示す。この会員向けコンテンツ提供サービスシステム２では、コンテンツサーバ６０を備えている点が、図１に示したグループ署名システム１と異なっている。
【００４９】
会員向けコンテンツ提供サービスシステム２における動作の概要は、以下の通りである
。まず、会員向けサービスを運営する運営者（例えば、サービスプロバイダ）において、会員の個人情報から各個人を識別する会員番号を抽出して会員情報識別値リストＬ１を作成しておき、会員情報管理サーバ５０から、グループインデックス管理装置４０に会員情報識別値リストＬ１を入力する（ステップＳ１）。
【００５０】
次に、グループインデックス管理装置４０は、会員番号との関連性や規則性が無い値、または、推測不可能なランダムな値からなるグループメンバーインデックスＩＤiを生成し、グループメンバー装置２０に渡す（ステップＳ２：グループメンバーインデックス生成ステップ）。そして、グループ管理装置１０は、グループ署名に必要なグループ公開鍵を作成しておく（ステップＳ３：セットアップステップ）。次いで、グループメンバー装置２０は、グループメンバーインデックスＩＤiを用いて、グループ管理装置１０に対し、グループへの加入することを要求する。グループ管理装置１０とグループメンバー装置２０との間のジョインプロトコルの実行により、グループ管理装置１０からグループメンバー装置２０に秘密ライセンス情報とが渡される（ステップＳ４：ジョインステップ）。
【００５１】
続いて、会員（ユーザ）は、会員向けサービスを提供している提供者（例えば、別のサービスプロバイダ）にサービスの提供を要求する。すなわち、グループメンバー装置２０は、コンテンツサーバ６０に対して、サービスの要求と会員資格を示すために、グループ署名を作成して送信する。リクエストを受けたコンテンツサーバ６０は、受け取ったグループ署名を署名検証装置３０に渡し、グループ署名の検証を依頼する（ステップＳ６）。そして、署名検証装置３０は、グループ署名の有効性の検証を行い（ステップＳ７：検証ステップ）、検証結果を、コンテンツサーバ６０に返す（ステップＳ８）。そして、コンテンツサーバ６０は、検証成功メッセージを受信すれば（正当なユーザであれば）、要求されたコンテンツを、該当するグループメンバー装置２０に提供し（ステップＳ９）、検証失敗メッセージを受信すれば（正当なユーザでなければ）、コンテンツに対するリクエストを拒否する。
【００５２】
もし、不正なリクエストがあった場合、グループインデックス管理装置４０は、このリクエストに添付されている会員の会員情報識別値を求め（ステップＳ１０：オープンステップ）、この会員を特定する。そして、会員向けコンテンツ提供サービスシステム２では、この特定した会員に対するサービスを停止（拒絶）する。
【００５３】
なお、会員向けコンテンツ提供サービスシステム２において、決済を行う場合に、会員向けサービスを提供している提供者（例えば、別のサービスプロバイダ）にとっては、会員の氏名やクレジット番号等が不明である。しかしながら、会員向けサービスを運営する運営者（例えば、サービスプロバイダ）は、会員の氏名やクレジット番号を知っているので、提供者（検証者）が運営者に対価を要求し、運営者と会員との間で決済をして、運営者と提供者（検証者）との間で決済をすることができる。この場合、運営者は、会員が具体的に何を購入したかを知らないことになり、また、提供者（検証者）は、商品／サービスを受けた会員が誰であるのか特定できないことになる。従って、匿名性を保持してネットワークを介したサービスをユーザに提供することが可能となる。
【００５４】
［グループ管理装置の構成］
グループ管理装置１０は、図３に示すように、記憶手段１００と、セットアップ初期値生成手段１０１と、公開情報送信手段１０３と、ジョインリクエスト受信手段１０４と、メンバー鍵生成手段１０５と、ライセンス送信手段１０６と、マスタ鍵生成手段１０７と、グループ公開鍵生成手段１１２とを備えている。
【００５５】
記憶手段１００は、例えば、演算処理等に利用されると共にネットワークＮを介して取得した情報等を記憶するＲＡＭと、所定のプログラム等を記憶するＲＯＭと、グループメンバー毎のライセンスを格納するＨＤＤ等を備えている。記憶手段１００は、耐タンパな領域を有している。耐タンパな領域は、例えば、耐タンパ性を有するスマートカード（ＩＣ（Integrated Circuit）カード）から構成される。なお、記憶手段１００を一括で表示したが、適宜分割されていてもよいことはもちろんである。
【００５６】
セットアップ初期値生成手段１０１は、素数や生成元などのセットアップステップに必要な基本的なパラメータを生成するものである。本実施形態では、セットアップ初期値生成手段１０１は、パラメータとして、セキュリティーパラメータと、素数ｐと、位数を素数ｐとする群Ｇ，ＧＴと、双線形写像ｅ：Ｇ×Ｇ→ＧＴと、群Ｇの生成元ｇと、０以上ｐ−１以下の乱数αと、乱数αを離散対数とするｇ１＝ｇαとを選択する。また、セットアップ初期値生成手段１０１は、パラメータとして、群Ｇの元ｇ２，ｕ’，ｘ’を群Ｇからランダムに選択する。また、これらのパラメータは、記憶手段１００に格納される。
【００５７】
グループ公開鍵生成手段１１２は、グループの公開鍵であるグループ公開鍵を生成するものである。本実施形態では、グループ公開鍵生成手段１１２は、ベクトルＸ＝［ｘ１，ｘ２，・・・，ｘｎｍ］を生成する。なお、ｉはベクトルＸの各要素のインデックスであり、ｎｍは、メッセージのビット長である。例えば、メッセージが１６０ビットであれば、ベクトルＸは、各要素が１６０個の乱数で構成されることになる。
【００５８】
また、このとき、グループ公開鍵生成手段１１２は、ｘｉを群Ｇからランダムに選択する（但し、ｉ≦ｎｍ）。そして、グループ公開鍵生成手段１１２は、式（１）に示すグループ公開鍵（グループ公開情報）ｇｐｋを生成する。
【００５９】
【数１】
2010161517.tif 000003
【００６０】
公開情報送信手段１０３は、グループ公開鍵をグループ公開情報ｇｐｋとして署名検証装置３０に送信する（公開する）ものである。
【００６１】
ジョインリクエスト受信手段１０４は、グループメンバー装置２０からネットワークＮを介してジョインリクエストを受信するものである。このジョインリクエストには、グループメンバー装置２０を識別するためにグループメンバーインデックスＩＤiが含まれている。取得されたグループメンバーインデックスＩＤiは、記憶手段１００に格納される。
【００６２】
メンバー鍵生成手段１０５は、秘密ライセンス情報生成手段１２２を備えている。
秘密ライセンス情報生成手段１２２は、秘密ライセンス情報を算出するものである。本実施形態では、秘密ライセンス情報生成手段１２２は、乱数ｒｕをＺｐからランダムに選択し、選択した乱数ｒｕと、マスタ鍵ｇ２αと、グループメンバーインデックスＩＤiとを用いて、式（２）に示すように、グループメンバーインデックスＩＤiに対応する秘密ライセンス情報ｓｋＩＤｉを算出する。
【００６３】
【数２】
2010161517.tif 000004
【００６４】
そして、秘密ライセンス情報生成手段１２２は、式（３）に示すように、グループメンバー毎に異なる秘密ライセンス情報ｇｓｋｉを生成する。
【００６５】
【数３】
2010161517.tif 000005
【００６６】
ライセンス送信手段１０６は、秘密ライセンス情報生成手段１２２が生成した秘密ライセンス情報ｇｓｋｉをライセンスとしてグループメンバー装置２０に送信するものである。ここで、秘密ライセンス情報ｇｓｋｉの受け渡しには、秘匿な通信網またはセキュアなデバイス等を用いて安全にグループメンバー装置２０に渡す。なお、グループメンバー装置２０は、安全に秘密ライセンス情報ｇｓｋｉを保管する。
【００６７】
マスタ鍵生成手段１０７は、グループ管理装置１０が秘密裏に保管するマスタ鍵を生成するものである。本実施形態では、マスタ鍵生成手段１０７は、セットアップ初期値生成手段１０１が選択した元ｇ２及び乱数αを用いて、ｇ２αをマスタ鍵として生成する。
【００６８】
［グループインデックス管理装置］
図３は、本発明の実施形態に係るグループインデックス管理装置の構成を模式的に示すブロック図である。グループインデックス管理装置４０は、図４に示すように、記憶手段４００と、会員情報識別値受信手段（グループメンバー情報識別値受信手段）４０１と、グループメンバーインデックス生成手段４０２と、グループメンバーインデックス送信手段４０３と、グループ秘密鍵生成手段４０４と、オープン手段４０５とを備えている。
記憶手段４００は、グループ管理装置１０の記憶手段１００と同様なものなので、説明を省略する。
【００６９】
会員情報識別値受信手段（グループメンバー情報識別値受信手段）４０１は、会員情報管理サーバ５０から会員情報識別値リストＬ１を受信し、記憶手段４００に格納するものである。また、会員情報識別値受信手段４０１は、会員情報識別値リストＬ１が更新された場合、更新された会員情報識別値リストＬ１を受信し、記憶手段４００に格納する。なお、会員情報識別値受信手段４０１が、請求項に記載のグループメンバー情報識別値受信手段に相当する。
【００７０】
グループメンバーインデックス生成手段４０２は、グループメンバーインデックスＩＤiをグループメンバー装置２０と同数生成し、生成したグループメンバーインデックスＩＤiと会員情報識別値ｉとをランダム置換πによって対応付けた対応付け表Ｔ１を生成するものである。本実施形態では、グループメンバーインデックス生成手段４０２は、ランダム置換πを選択する。また、グループメンバーインデックス生成手段４０２は、更新された会員情報識別値リストＬ１に含まれなくなった会員情報識別値ｉに対応するグループメンバーインデックスＩＤiを対応付け表Ｔ１から削除する。そして、グループメンバーインデックス生成手段４０２は、グループメンバー資格が有効なグループメンバーの会員情報識別値ｉのリストである有効グループメンバーインデックスリストＬ２を生成する。さらに、グループメンバーインデックス生成手段４０２は、生成した対応付け表Ｔ１と、有効グループメンバーインデックスリストＬ２とを記憶手段４００に格納する。
【００７１】
グループメンバーインデックス送信手段４０３は、有効グループメンバーインデックスリストＬ２に記載されたグループメンバーインデックスを該当するグループメンバー装置２０にネットワークＮを介して送信するものである。また、グループメンバーインデックス送信手段４０３は、有効グループメンバーインデックスリストＬ２を、ネットワークＮを介して署名検証装置３０に送信する。本実施形態では、グループメンバーインデックス送信手段４０３は、有効グループメンバーインデックスリストＬ２が更新されるたびに有効グループメンバーインデックスリストＬ２を署名検証装置３０に送信する。なお、グループメンバーインデックス送信手段４０３は、更新されたかどうかに関わらず有効グループメンバーインデックスリストＬ２を定期的に署名検証装置３０に送信することもできる。また、署名検証装置３０から、グループインデックス管理装置４０に格納された有効グループメンバーインデックスリストＬ２を定期的に参照することもできる。
【００７２】
グループ秘密鍵生成手段４０４は、グループメンバーインデックス生成手段４０２が用いたランダム置換πの逆変換π−１を選択し、選択した逆変換π−１をグループ秘密鍵として記憶手段１００の耐タンパな領域に秘密裡に保管する。
【００７３】
オープン手段４０５は、グループ署名σＧＳを受信すると共に、グループ秘密鍵生成手段４０４が生成したグループ秘密鍵π−１を用いて、グループ署名σＧＳに含まれるグループメンバーインデックスＩＤiから、グループ署名σＧＳを生成したグループメンバーの会員情報識別値ｉを求めるものである。本実施形態では、オープン手段４０５は、グループ署名σＧＳをグループメンバーインデックスＩＤiと随時署名σＩＤｉとに分離した後、随時署名σＩＤｉが正しい署名であるか否かを検証する。そして、オープン手段４０５は、随時署名σＩＤｉが正しい署名である場合、式（４）に示すように、グループ秘密鍵π−１とグループメンバーインデックスＩＤiとを用いて、会員情報識別値ｉを求める。
【００７４】
【数４】
2010161517.tif 000006
【００７５】
［グループメンバー装置の構成］
グループメンバー装置（署名生成装置）２０は、図５に示すように、記憶手段２００と、公開情報受信手段２０１と、グループメンバーインデックス受信手段２０２と、ジョインリクエスト生成手段２０３と、ジョインリクエスト送信手段２０４と、ライセンス受信手段２０５と、ライセンス検証手段２０６と、乱数選択手段２０７と、随時署名生成手段２０９と、グループ署名生成手段２１０と、サービスリクエスト送信手段（グループ署名送信手段）２１１と、サービス受信手段２１２と、コンテンツ再生手段２１３とを備えている。
【００７６】
記憶手段２００は、グループ管理装置１０の記憶手段１００と同様なものなので、説明を省略する。
公開情報受信手段２０１は、グループ管理装置１０からネットワークＮを介してグループ公開情報（グループ公開鍵）ｇｐｋを受信するものである。受信されたグループ公開情報ｇｐｋは、記憶手段２００に格納される。
グループメンバーインデックス受信手段２０２は、グループインデックス管理装置４０からネットワークＮを介してグループメンバーインデックスＩＤiを受信するものである。受信されたグループメンバーインデックスＩＤiは、記憶手段２００のメモリに格納される。
【００７７】
ジョインリクエスト生成手段２０３は、グループ管理装置１０に対してジョイン処理を要求するジョインリクエストを生成するものである。このジョインリクエストには、グループメンバー装置２０を識別するためにグループメンバーインデックスＩＤiが含まれている。
ジョインリクエスト送信手段２０４は、ジョインリクエスト生成手段２０３で生成されたジョインリクエストを、ネットワークＮを介してグループ管理装置１０に送信するものである。
【００７８】
ライセンス受信手段２０５は、グループ管理装置１０からネットワークＮを介してライセンスを受信するものである。受信されたライセンスは、ライセンス検証手段２０６で正当なライセンスであることが検証された後に記憶手段２００に格納される。正当なライセンスとは、正規のグループ管理者が生成したライセンスである。
【００７９】
乱数選択手段２０７は、０からｐ−１までの整数Ｚｐから乱数ｒｍをランダムに選択するものである。
随時署名生成手段２０９は、秘密ライセンス情報ｇｓｋｉと署名対象のリクエストメッセージｍとを用いて、随時署名σＩＤｉを生成するものである。本実施形態では、随時署名生成手段２０９は、下記式（５）を満たすｊの集合χを算出する。なお、式（５）において、ｍ［ｊ］はリクエストメッセージｍのｊ番目のビットを示す。
【００８０】
【数５】
2010161517.tif 000007
【００８１】
そして、随時署名生成手段２０９は、式（６）に示すように、随時署名σＩＤｉを算出する。
【００８２】
【数６】
2010161517.tif 000008
【００８３】
なお、本実施形態では、リクエストメッセージｍは、入力装置Ｍから入力されるサービスリクエストとする。サービスリクエストは、例えば、コンテンツのタイトルやコンテンツＩＤ等を含む。また、入力装置Ｍは、視聴者（ユーザ）から各種情報を入力することのできるデバイスであり、例えば、キーボード、マウス、押し釦スイッチ、リモコン等である。
【００８４】
グループ署名生成手段２１０は、随時署名σＩＤｉとグループメンバーインデックスＩＤiと含むグループ署名σＧＳを生成するものである。本実施形態では、グループ署名生成手段２１０は、式（７）に示すグループ署名σＧＳを生成する。
【００８５】
【数７】
2010161517.tif 000009
【００８６】
サービスリクエスト送信手段（グループ署名送信手段）２１１は、グループ署名生成手段２１０で生成されたグループ署名σＧＳとリクエストメッセージｍとを、ネットワークＮを介して署名検証装置３０に送信するものである。なお、サービスリクエスト送信手段２１１が、請求項に記載のグループ署名送信手段に相当する。
【００８７】
サービス受信手段２１２は、例えば、リクエストメッセージｍ（入力装置Ｍから入力されるサービスリクエスト）に応じてコンテンツサーバ６０からネットワークＮを介して提供されるコンテンツ等のサービスを受信するものである。
【００８８】
コンテンツ再生手段２１３は、サービス受信手段２１２で受信したコンテンツを出力装置Ｄに出力可能に再生するものである。ここで、出力装置Ｄは、コンテンツの映像を表示する表示手段と、音声を出力する音声出力手段（スピーカ）等を備える。表示手段は、例えば、ＣＲＴ（Cathode Ray Tube）、液晶ディスプレイ（ＬＣＤ：Liquid Crystal Display）、ＰＤＰ（Plasma Display Panel）、ＥＬ（Electronic Luminescence）等から構成される。
【００８９】
［署名検証装置の構成］
署名検証装置３０は、図６に示すように、記憶手段３００と、公開情報受信手段３０１と、インデックスリスト受信手段３０２と、グループ署名受信手段３０３と、有効メンバー判別手段３０４と、検証用情報生成手段３０５と、グループ署名検証手段３０６と、検証結果送信手段３０７とを備えている。
【００９０】
記憶手段３００は、例えば、演算処理等に利用されると共にネットワークＮを介して取得した情報等を記憶するＲＡＭと、所定のプログラム等を記憶するＲＯＭと、グループメ
ンバ毎のライセンスを格納するＨＤＤ等を備えている。
公開情報受信手段３０１は、グループ管理装置１０からネットワークＮを介して、グループ公開情報（グループ公開鍵）ｇｐｋを受信するものである。受信されたグループ公開情報ｇｐｋは、記憶手段３００に格納される。
【００９１】
インデックスリスト受信手段３０２は、グループインデックス管理装置４０からネットワークＮを介して有効グループメンバーインデックスリストＬ２を受信するものである。受信された有効グループメンバーインデックスリストＬ２は、記憶手段３００に格納される。
グループ署名受信手段３０３は、グループメンバー装置２０で生成されたグループ署名σＧＳを、ネットワークＮを介して受信するものである。本実施形態では、グループ署名受信手段３０３は、グループメンバー装置２０で生成されたグループ署名σＧＳを、コンテンツサーバ６０との専用線７０を経由して受信することとする。
【００９２】
有効メンバー判別手段３０４は、記憶手段３００に格納した有効グループメンバーインデックスリストＬ２の中に、グループ署名受信手段３０３で受信したグループ署名σＧＳに含まれるグループメンバーインデックスＩＤiが存在するか否かを判別し、存在する場合にメンバー資格が有効であると判定するものである。
【００９３】
検証用情報生成手段３０５は、検証用情報を生成するものである。本実施形態では、検証用情報生成手段３０５は、グループ署名σＧＳに含まれる随時署名σＩＤｉを用いて、式（８）に示す検証用情報（Ｖ，Ｒｕ，Ｒｍ）を生成する。また、本実施形態では、検証用情報生成手段３０５は、有効メンバー判別手段３０４によってメンバー資格が有効であると判定された場合に検証用情報（Ｖ，Ｒｕ，Ｒｍ）を生成することとする。
【００９４】
【数８】
2010161517.tif 000010
【００９５】
グループ署名検証手段３０６は、グループ公開情報ｇｐｋとグループ署名σＧＳとが、予め設定された条件式を満たすか否かを判別し、この条件式を満たす場合にグループ署名σＧＳの検証が成功したと判定するものである。ここで、グループ署名検証手段３０６は、有効メンバー判別手段３０４によってグループメンバー資格が有効であると判定された場合、条件式を満たすか否かの判定を行っても良い。本実施形態では、グループ署名検証手段３０６は、グループ公開情報ｇｐｋとグループ署名σＧＳとが、検証用情報（Ｖ，Ｒｕ，Ｒｍ）を用いた条件式としての式（９）を満たす場合、グループ署名σＧＳの検証が成功したと判定し、署名検証成功メッセージを生成する。一方、グループ署名検証手段３０６は、グループ公開情報ｇｐｋとグループ署名σＧＳとが、式（９）を満たさない場合、グループ署名σＧＳの検証が失敗したと判定し、署名検証失敗メッセージを生成する。
【００９６】
【数９】
2010161517.tif 000011
【００９７】
検証結果送信手段３０７は、グループ署名検証手段３０６で生成された検証結果を示す検証成功メッセージまたは検証失敗メッセージを、ネットワークＮを介してグループメンバー装置２０に送信するものである。本実施形態では、検証結果送信手段３０７は、検証結果を、コンテンツサーバ６０を経由して、グループメンバー装置２０に送信することとする。
【００９８】
［コンテンツサーバ］
コンテンツサーバ６０は、例えば、ＣＰＵと、ＲＡＭと、ＲＯＭと、ＨＤＤと、ＮＩＣ等を備えており、図６に示すように、コンテンツ記憶手段６００と、サービスリクエスト受信手段６０１と、検証リクエスト送信手段６０２と、サービス提供手段６０３とを備えている。
コンテンツ記憶手段６００は、コンテンツを蓄積記憶するものであり、例えば、一般的なハードディスク等から構成される。なお、コンテンツ記憶手段６００は、外部記憶装置から構成されていてもよい。
【００９９】
サービスリクエスト受信手段６０１は、ネットワークＮを介してグループメンバー装置２０からサービスリクエストを受信するものである。
検証リクエスト送信手段６０２は、サービスリクエスト受信手段６０１で受信したサービスリクエスト（グループ署名）を検証することを依頼する検証リクエストをグループ署名と共に署名検証装置３０に専用線７０を介して送信するものである。なお、検証リクエストとグループ署名とを専用線７０を用いずにネットワークＮ経由で送信してもよいし、オフラインで渡してもよい。
【０１００】
サービス提供手段６０３は、署名検証装置３０から、検証成功メッセージを取得した場合に、受信したサービスリクエストに該当するグループメンバー装置２０に対して、コンテンツ記憶手段６００に蓄積記憶されたコンテンツを、ネットワークＮ経由で提供するものである。また、サービス提供手段６０３は、署名検証装置３０から、検証失敗メッセージを取得した場合に、受信したサービスリクエストに該当するグループメンバー装置２０に対して、コンテンツの提供が許可されていないことを示すメッセージをネットワークＮ経由で通知する。
【０１０１】
［会員向けコンテンツ提供サービスシステムの動作］
次に、図２に示した会員向けコンテンツ提供サービスシステム２の動作について、図７〜図１０を参照（適宜図１〜図６参照）して説明する。
【０１０２】
［グループメンバーインデックス生成ステップ］
グループメンバーインデックス生成ステップ（ステップＳ２：図２参照）は、グループインデックス管理装置４０が実行する動作である。図７に示すように、グループメンバーインデックス生成ステップでは、グループインデックス管理装置４０は、グループメンバーインデックス生成手段４０２によって、ランダム置換πを選択し、グループメンバーインデックスＩＤiと会員情報識別値ｉとをランダム置換πによって対応付けた対応付け表Ｔ１を生成する（ステップＳ１０１）。
【０１０３】
なお、本実施形態では、ステップＳ１０１の処理の前に、グループインデックス管理装置４０は、会員情報識別値受信手段４０１によって、会員情報識別値リストＬ１を受信し、グループメンバーインデックス生成手段４０２によって、グループメンバーインデックスＩＤiをグループメンバー装置２０と同数生成しておくこととした（不図示）。
【０１０４】
［セットアップステップ］
セットアップステップ（ステップＳ３：図２参照）は、グループ管理装置１０が実行する動作である。図７に示すように、セットアップステップでは、グループ管理装置１０は、セットアップ初期値生成手段１０１によって、群Ｇ，ＧＴと、双線形写像ｅ：Ｇ×Ｇ→ＧＴとを選択し（ステップＳ１０２）、生成元ｇと、乱数αと、ｇ１＝ｇαとを選択する（ステップＳ１０３）。なお、ステップＳ１０２とステップＳ１０３の順序は任意である。
【０１０５】
また、グループ管理装置１０は、セットアップ初期値生成手段１０１によって、群Ｇの元ｇ２，ｕ’，ｘ’を群Ｇからランダムに選択する（ステップＳ１０４）。その後、グループ管理装置１０は、グループ公開鍵生成手段１１２によって、ベクトルＸ＝［ｘ１，ｘ２，・・・，ｘｎｍ］を生成する（ステップＳ１０５）。このとき、グループ公開鍵生成手段１１２は、ｘｉを群Ｇからランダムに選択する（但し、ｉ＜ｎｍ）。
【０１０６】
また、グループ管理装置１０は、マスタ鍵生成手段１０７によって、元ｇ２及び乱数αを用いて、ｇ２αをマスタ鍵ｍｓｋとして生成する（ステップＳ１０６）。そして、グループ管理装置１０は、グループ公開鍵生成手段１１２によって、前記した式（１）に示すグループ公開鍵（グループ公開情報）ｇｐｋを生成する（ステップＳ１０７）。その後、グループ管理装置１０は、公開情報送信手段１０３によって、グループ公開情報ｇｐｋを、各グループメンバー装置２０と、署名検証装置３０にネットワークＮを介して送信する（不図示）。
【０１０７】
［ジョインステップ］
ジョインステップ（ステップＳ４：図２参照）は、グループ管理装置１０が実行する動作である。図８に示すように、グループ管理装置１０は、秘密ライセンス情報生成手段１２２によって、乱数ｒｕをＺｐからランダムに選択し（ステップＳ２０１）、前記した式（２）に示すｓｋＩＤｉを算出する（ステップＳ２０２）。また、グループ管理装置１０は、秘密ライセンス情報生成手段１２２によって、前記した式（３）に示すグループメンバー毎に異なる秘密ライセンス情報ｇｓｋｉを生成する（ステップＳ２０３）。その後、グループ管理装置１０は、ライセンス送信手段１０６によって、秘密ライセンス情報ｇｓｋｉをライセンスとして該当するグループメンバー装置２０へ渡す（不図示）。
【０１０８】
なお、本実施形態では、ステップＳ２０１の処理の前に、グループメンバー装置２０は、ジョインリクエスト送信手段２０４によって、グループメンバーインデックスが含まれているジョインリクエストを送信することとした。また、同様に、グループ管理装置１０は、ジョインリクエスト受信手段１０４によって、ジョインリクエストを受信することとした（不図示）。
【０１０９】
［署名生成ステップ］
署名生成ステップ（ステップＳ５：図２参照）は、グループメンバー装置２０が実行する動作である。図９に示すように、サインステップでは、グループメンバー装置２０は、乱数選択手段２０７によって、乱数ｒｍをＺｐからランダムに選択する（ステップＳ３０１）。
【０１１０】
また、グループメンバー装置２０は、随時署名生成手段２０９によって、前記した式（５）を満たすｊの集合χを求め（ステップＳ３０２）、前記した式（６）に示すように、随時署名σＩＤｉを算出する（ステップＳ３０３）。そして、グループメンバー装置２０は、グループ署名生成手段２１０によって、前記した式（７）に示すグループ署名σＧＳを生成し（ステップＳ３０４）、サービスリクエスト送信手段２１１によって、グループ署名σとリクエストメッセージｍとを署名検証装置３０に送信する。
【０１１１】
［署名検証ステップ］
署名検証ステップ（ステップＳ７：図２参照）は、署名検証装置３０が実行する動作である。図９に示すように、署名検証ステップでは、署名検証装置３０は、グループ署名受信手段３０３によって、グループ署名σＧＳを受信しておく。また、署名検証装置３０は、有効メンバー判別手段３０４によって、有効グループメンバーインデックスリストＬ２に、受信したグループ署名σＧＳに含まれるグループメンバーインデックスＩＤiが存在するか否かを判別する（ステップＳ３０５）。
【０１１２】
有効グループメンバーインデックスリストＬ２にグループメンバーインデックスＩＤiが存在する場合（ステップＳ３０５：Ｙｅｓ）、署名検証装置３０は、検証用情報生成手段３０５によって、前記した式（８）に示す検証用情報（Ｖ，Ｒｕ，Ｒｍ）を生成する（ステップＳ３０６）。
【０１１３】
また、署名検証装置３０は、グループ署名検証手段３０６によって、グループ公開情報ｇｐｋとグループ署名σＧＳとが、条件式としての前記した式（９）を満たすか否かを判別する（ステップＳ３０７）。グループ公開情報ｇｐｋとグループ署名σＧＳとが条件式を満たす場合（ステップＳ３０７：Ｙｅｓ）、署名検証装置３０は、グループ署名検証手段３０６によって、グループ署名σＧＳの検証が成功したと判定し、検証結果送信手段３０７によって、署名検証成功メッセージを出力する（ステップＳ３０８）。
【０１１４】
有効グループメンバーインデックスリストＬ２にグループメンバーインデックスＩＤiが存在しない場合（ステップＳ３０５：Ｎｏ）、署名検証装置３０は、検証結果送信手段３０７によって、署名検証失敗メッセージを出力する（ステップＳ３０９）。また、グループ公開情報ｇｐｋとグループ署名σＧＳとが条件式を満たさない場合（ステップＳ３０７：Ｎｏ）、署名検証装置３０は、検証結果送信手段３０７によって、署名検証失敗メッセージを出力する。
【０１１５】
［オープンステップ］
署名検証ステップ（ステップＳ１０：図２参照）は、グループインデックス管理装置４０が実行する動作である。図９に示すように、オープンステップでは、グループインデックス管理装置４０は、オープン手段４０５によって、グループ署名σＧＳを受信し、グループ署名σＧＳをグループメンバーインデックスＩＤiと随時署名σＩＤｉとに分離する（ステップＳ４０１）。
【０１１６】
また、グループインデックス管理装置４０は、オープン手段４０５によって、随時署名σＩＤｉが正しい署名であるか否かを検証する（ステップＳ４０２）。随時署名σＩＤｉが正しい署名である場合（ステップＳ４０２：Ｙｅｓ）、グループインデックス管理装置４０は、オープン手段４０５によって、式（４）で、会員情報識別値ｉを求め、これを出力する（ステップＳ４０３）。一方、随時署名σＩＤｉが正しい署名でない場合（ステップＳ４０２：Ｎｏ）、グループインデックス管理装置４０は、オープン手段４０５によって、不正な署名であることを示すメッセージを出力する（ステップＳ４０４）。
【０１１７】
本実施形態によれば、ランダム置換πを用いると共に、会員情報識別値ｉと対応付けされたグループメンバーインデックスＩＤiをグループ署名σＧＳの一部とすることにより、Ｌｉｎｋａｂｌｅな性質、すなわち、異なる複数の署名が同一署名者により生成されたものであるか否かを判別できる。
【０１１８】
また、本実施形態によれば、前記した各式、特に、式（６）を用いることで、生成したグループ署名は、安全性の証明が可能なスタンダートモデルで、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、グループメンバー装置２０の実装に必要なコストを低減できる。また、グループ管理装置１０、グループメンバー装置２０及び署名検証装置３０によれば、Ｕｎｌｉｎｋａｂｉｌｉｔｙを満たさない（Ｌｉｎｋａｂｉｌｉｔｙを満たす）ことになるので、グループ内の所定のメンバーがそのグループを脱退する場合に、その所定のメンバーの署名のみを容易に無効化させることができる。また、新規メンバーの加入を容易に行うこともできる。さらに、Ｌｉｎｋａｂｉｌｉｔｙを満たすことから、グループメンバー装置２０を利用するグループメンバーが、コンテンツをネットワーク受信するときに、前回供給された状態の続きから受信することも可能となる。
【０１１９】
グループメンバー装置２０が生成するグループ署名として、随時署名σＩＤｉは、例えば、５１６ビット程度のビット長であり、グループメンバーインデックスＩＤiを含めてもグループ署名の署名長は５９６ビットであった。一方、非特許文献２に開示されたグループ署名方式では、２３，７０９ビットである。また、「Furukawa,Imai」（非特許文献３参照）の提案する従来公知の効率的なグループ署名方式の署名長は、１７１１ビットである。なお、署名を付加するリクエストメッセージの任意長は別である。したがって、グループメンバー装置２０が生成するグループ署名は、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、グループメンバー装置２０の実装に必要なコストを低減できる。
【０１２０】
ここで、グループメンバー装置２０は、一般的なコンピュータを、前記した各手段として機能させるプログラム（署名生成プログラム）により動作させることで実現することができる。このプログラムは、通信回線を介して配布することも可能であるし、ＣＤ−ＲＯＭ等の記録媒体に書き込んで配布することも可能である。このプログラムをインストールされたコンピュータは、ＣＰＵが、ＲＯＭ等に格納されたこのプログラムをＲＡＭに展開することにより、グループメンバー装置２０と同等の効果を奏することができる。また、同様に、署名検証装置３０は、一般的なコンピュータを、前記した各手段として機能させるプログラム（署名検証プログラム）により動作させることで実現することができる。そして、同様に、グループインデックス管理装置４０は、一般的なコンピュータを、前記した各手段として機能させるプログラム（グループインデックス管理プログラム）により動作させることで実現することができる。さらに、同様に、グループ管理装置１０は、一般的なコンピュータを、前記した各手段として機能させるプログラム（グループ管理プログラム）により動作させることで実現することができる。
【符号の説明】
【０１２１】
１      グループ署名システム
２      会員向けコンテンツ提供サービスシステム
１０    グループ管理装置
１００  記憶手段
１０１  セットアップ初期値生成手段
１０２  グループ鍵生成手段
１０３  グループ公開情報送信手段
１０４  ジョインリクエスト受信手段
１０５  メンバー鍵生成手段
１０６  ライセンス送信手段
１０７  マスタ鍵生成手段
１１２  グループ公開鍵生成手段
１２２  秘密ライセンス情報生成手段
２０    グループメンバー装置（署名生成装置）
２００  記憶手段
２０１  公開情報受信手段
２０２  グループメンバーインデックス受信手段
２０３  ジョインリクエスト生成手段
２０４  ジョインリクエスト送信手段
２０５  ライセンス受信手段
２０６  ライセンス検証手段
２０７  乱数選択手段
２０９  随時署名生成手段
２１０  グループ署名生成手段
２１１  サービスリクエスト送信手段（グループ署名送信手段）
２１２  サービス受信手段
２１３  コンテンツ再生手段
３０    署名検証装置
３００  記憶手段
３０１  公開情報受信手段
３０２  インデックスリスト受信手段
３０３  グループ署名受信手段
３０４  有効メンバー判別手段
３０５  検証用情報生成手段
３０６  グループ署名検証手段
３０７  検証結果送信手段
４０    グループインデックス管理装置
４００  記憶手段
４０１  会員情報識別値受信手段（グループメンバー情報識別値受信手段）
４０２  グループメンバーインデックス生成手段
４０３  グループメンバーインデックス送信手段
４０４  グループ秘密鍵生成手段
４０５  オープン手段
５０    会員情報管理サーバ
６０    コンテンツサーバ
６００  コンテンツ記憶手段
６０１  サービスリクエスト受信手段
６０２  検証リクエスト送信手段
６０３  サービス提供手段
【図１】
2010161517.tif 000012
【図２】
2010161517.tif 000013
【図３】
2010161517.tif 000014
【図４】
2010161517.tif 000015
【図５】
2010161517.tif 000016
【図６】
2010161517.tif 000017
【図７】
2010161517.tif 000018
【図８】
2010161517.tif 000019
【図９】
2010161517.tif 000020
【図１０】
2010161517.tif 000021
【図１１】
2010161517.tif 000022