説明

グループインデックス管理装置、グループ管理装置、署名生成装置、及び、署名検証装置

【課題】本発明は、グループ署名において、スタンダートモデルで安全性の証明が可能であり、署名長を短縮することが可能なデジタル署名技術を提供することを目的とする。
【解決手段】会員向けコンテンツ提供サービスシステム(グループ署名システム)2は、グループメンバーインデックス生成ステップ(S1)を実行するグループインデックス管理装置40と、セットアップステップ(S3)及びジョインステップ(S4)を実行するグループ管理装置10と、署名生成ステップ(S5)を実行するグループメンバー装置(署名生成装置)20と、署名検証ステップ(S7)を実行する署名検証装置30とを備え、グループインデックス管理装置40がオープンステップ(S10)を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、インターネットや専用IP回線等のネットワークを介して提供されるサービスを利用するユーザの認証技術に関し、特に、ユーザが匿名性を有しながら、正規のサービス受給権利者のグループに属していることを証明することができるユーザの個人情報保護を目的としたデジタル署名技術に関する。
【背景技術】
【0002】
通信技術の発展、普及に伴って、インターネットや専用IP回線等のネットワーク利用者(ユーザ)が、ネットワークを介して電子データを送受信することで各種のサービスを享受する形態のコミュニケーションが増加してきている。しかしながら、電子データを改変することは容易である。従って、ネットワークを介したコミュニケーションにおいては、サービスを供給されるべき正しい権利のあるユーザ(以下、正当なユーザという)とは異なる第三者が、電子データを偽造、複製、改ざんなどをすることによって、正当なユーザに成りすますという問題がある。そのため、ネットワークを介したコミュニケーションにおいては、正当なユーザであることを示すために、ユーザ認証の技術が利用される。
【0003】
認証技術の代表的なものとして、ID・パスワード方式と、デジタル署名とが挙げられる。このうち、ID・パスワード方式では、ユーザは、事前に個人情報と関連付けたID(ユーザID)とパスワードとを登録する。ここで、ユーザIDは、例えば、氏名・住所または必要に応じて決済情報といった個人情報と関連付けられているため個人情報と同等な扱いが必要なものである。そして、ユーザがサービスを受けるためにサービス提供者へアクセスするときに、サービス提供者は、ユーザにユーザIDとパスワードとを入力させる。そして、入力されたパスワードと事前に登録されたパスワードとが一致したときに、サービス提供者は、アクセスしたユーザが正当なユーザであることを確認することでユーザ認証を行っている。
【0004】
また、デジタル署名による認証方式では、PKI(Public Key Infrastructure)に基づいて、各ユーザがそれぞれ自らのユーザIDと公開鍵とをサービス提供者へ登録しておき、登録した公開鍵に対応する秘密鍵を自ら安全に所有しておく。そして、ユーザがサービス提供者へアクセスするときには、自分の秘密鍵でデジタル署名情報を生成しユーザIDとあわせて発行する。そして、サービス提供者は、この署名が、ユーザIDと関連付けて予め登録されている公開鍵で検証可能であるときに正当なユーザであることを確認することでユーザ認証を行っている。
【0005】
これらの既存の認証技術は、いずれも、ユーザIDをサービス提供者側(ユーザがアクセスしたサーバ側)に明示しなければならない。一般に、サービス提供者に登録されたユーザの個人情報は本来の目的以外に使用されるものではないが、何らかの原因で漏洩する可能性は否定できない。ユーザIDは、複数のユーザを単に区別する識別番号という意味を持つだけではなく、そのユーザの氏名・住所(あるいは決済情報)と関連付けられているために、いわゆる個人情報と同等な情報となり得る可能性がある。そのため、さまざまなサービスが電子化・オンライン化される中で、ユーザのあらゆる行動がユーザIDに紐付けて蓄積され、消費活動や趣味嗜好などといったプライバシ情報がユーザの意思とは無関係に管理されることになりかねないことが指摘されているのが現状である。そのため、ユーザIDをサービス提供者側(ユーザがアクセスしたサーバ側)に明示しなければならない認証方式に対する不安を払拭して、ネットワークを介したコミュニケーションを発展させることが要望されている。
【0006】
また、ネットワーク上のサービスは、多様化してきており、デジタル署名を用いた認証方式においてもサービスに応じて様々な機能が求められてきている。例えば、電子投票やアンケート、電子決済などのサービスで利用することを目的としたデジタル署名において、署名者の匿名性を有するデジタル署名が開発されている。匿名性を有するデジタル署名には、グループ署名と呼ばれるものがある。
【0007】
グループ署名は、Chaumとvan Heystにより初めて提案された(非特許文献1参照)。その後、多くの研究者によって、改良された方式が提案されてきており、改良された代表的な方式として、例えば、Ateniese、Camenisch、Joye、Tsudikらによるグループ署名が知られている(非特許文献2参照)。また、FurukawaとImaiによる効率的なグループ署名方式も知られている(非特許文献3参照)。これらのグループ署名方式は、「ランダムオラクルモデル」と呼ばれる理想的なランダム関数の存在を仮定することにより、安全性の証明が可能となる。しかし、このようなランダム関数は、実在しないことから、「スタンダードモデル」と呼ばれる、実在する関数のみを用いて、安全性の証明が可能なグループ署名方式も提案されている(例えば、非特許文献4参照)。近年、グループ署名方式では、「ランダムオラクルモデル」よりも「スタンダードモデル」によって、安全性の証明が行われている。
【0008】
グループ署名では、あるサービスを受ける権利を持つユーザを予めグループ化しておき、検証者は、署名を作成したユーザが、グループに属しているか否かで認証を行う。検証者は、署名を作成したユーザが、グループに属しているということは分かったとしても、そのユーザが誰であるのかを特定することは不可能である。一般的なグループ署名では、グループを管理するグループ管理者が存在する。このグループ管理者は、グループ独自の公開鍵と秘密鍵のペアを生成して、公開鍵を公開する。ユーザがグループに所属することを希望するときには、そのユーザは、グループ管理者と交信を行い、グループ管理者は、該当するユーザの署名鍵を生成し、ユーザに渡す。ユーザは、自らの署名鍵で署名を作成し、検証者はグループの公開鍵で署名を検証する。また、一般的なグループ署名では、グループ内で不正が起きた場合に、その不正を起こした不正者を特定するため、グループ管理者には、非常手段として署名の匿名性を破棄して、署名者を特定できる権限がある。
【0009】
図11は、従来のグループ署名システムの概要を模式的に示す構成図である。グループ署名システム901は、グループ管理装置910と、グループメンバー装置(署名生成装置)920と、署名検証装置930とを備えている。グループ管理装置910は、はじめにセットアップと呼ばれる準備ルーチンを行い、グループ署名に必要なグループ秘密鍵および検証鍵(グループ公開情報)等の基本パラメータを生成する。グループ管理装置910は、次に、ジョインルーチンをグループメンバー装置920と交信しながら行う。グループ管理装置910は、基本パラメータとメンバーのIDとを用いて、ライセンス(ID,メンバー秘密鍵)を発行し、検証鍵(グループ公開情報)とライセンスとをグループメンバー装置920に渡す。ライセンスを受け取ったグループメンバー装置920(の操作者)は、グループのメンバーと見做される。グループメンバー装置920は、受け取ったライセンスを用いて署名を生成し、生成した署名を署名検証装置930に渡す。署名検証装置930は、グループ管理装置910から取得した検証鍵(グループ公開情報)を用いて、グループメンバー装置920から受け取った署名の正当性を検証するものである。署名検証装置930は、受け取った署名が、正規のグループメンバー装置920が正しいライセンスを用いて作成した署名であるか否かを検証し、署名の正当性を出力する。このグループ署名システム901において、グループメンバー装置920以外の装置は署名を生成することができない。また、グループメンバー装置920や署名検証装置930は、どの装置が署名を生成したのかを特定することはできない。
【0010】
また、グループ署名の従来の方式では、異なる2つの署名が同一署名者によるものであるのか否かについて分からないという性質(Unlinkabilityと呼ばれる性質)を持っているものが多い。なお、Unlinkableなグループ署名において、グループ管理者は、署名の匿名性を破棄すれば、異なる二つの署名が同一署名者によるものであるのか否かについて分かる。
【先行技術文献】
【非特許文献】
【0011】
【非特許文献1】D.Chaum and E. van Heyst :“ Group signatures, ”Eurocrypt ’91, Lecture Notes in Computer Science 547, p.257-265 , Springer-Verlag (1991)
【非特許文献2】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)
【非特許文献3】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)
【非特許文献4】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)
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、グループ署名の従来の方式では、Unlinkabilityと呼ばれる性質を満足させるために、署名を生成する際に複雑な計算が必要であり、原理的に、署名の長さ(署名長)の長大化を招いていた。このため、グループ管理装置910およびグループメンバー装置920の実装に大きなコストがかかっていた。
【0013】
また、グループ署名がUnlinkabilityを満たしている場合には、グループ内の所定のメンバーがそのグループを脱退する場合に、その所定のメンバーの署名のみを無効化させるという運用を行うことが困難であった。この場合には、それまで使用していたグループ独自の公開鍵と秘密鍵のペアを破棄してグループに対応する新たな公開鍵と秘密鍵を生成しなければならなかった。このため、グループを構成するメンバーの数が巨大である場合には、新たな公開鍵と秘密鍵を更新する度に、残りのメンバーにライセンス(グループ秘密鍵)を安全に再配布するために多大な手間と時間とコストとを要することとなっていた。例えば、ライセンスの再配布を郵送で行うとメンバーが脱退してからグループ署名の機能が再開する日にちまで他のメンバーがサービスを享受できなくなってしまう。
【0014】
さらに、グループ署名がUnlinkabilityを満たしている場合には、例えば、コンテンツ配信サービスを受けることのできるグループに属するグループメンバーが、ドラマ等のコンテンツを複数回に分けてネットワーク受信するときに、前回供給された状態の続きから受信することを要望したとしても、異なる2つの署名が同一署名者によるものであるのか分からないので、前回の履歴が分からず、このような要望に応えることができない。
【0015】
本発明は、以上のような問題点に鑑みてなされたものであり、グループ署名において、スタンダートモデルで安全性の証明が可能であり、署名長を短縮できるLinkableなデジタル署名技術を提供することを目的とする。
【課題を解決するための手段】
【0016】
前記した課題を解決するため、請求項1に係るグループインデックス管理装置は、サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーの個人情報と分離されたグループ内識別子を示すグループメンバーインデックスを生成するグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループインデックス管理装置であって、グループメンバー情報識別値受信手段と、グループメンバーインデックス生成手段と、グループメンバーインデックス送信手段と、を備えることを特徴とする。
【0017】
かかる構成によれば、グループインデックス管理装置は、グループメンバー情報識別値受信手段によって、複数のグループメンバーを一意に識別するグループメンバー情報識別値のリストであるグループメンバー情報識別値リストを受信する。また、グループインデックス管理装置は、グループメンバーインデックス生成手段によって、グループメンバーインデックスを署名生成装置と同数生成し、生成したグループメンバーインデックスとグループメンバー情報識別値とをランダム置換によって対応付けた対応付け表を生成する。さらに、グループインデックス管理装置は、グループメンバーインデックス送信手段によって、グループメンバーインデックスを署名生成装置に送信する。
【0018】
このように、グループインデックス管理装置で、グループメンバーインデックスとグループメンバーの個人情報とを秘密裡に紐付けして管理することで、グループ管理装置、署名生成装置および署名検証装置では、署名者のサービス利用状況を、氏名・住所等の個人情報に紐付けられることはない。従って、匿名性を保持してネットワークを介したサービスをグループメンバーに提供することが可能となる。なお、「Linkability」とは、署名者の匿名性を維持しながら、異なる複数の署名が同一署名者により生成されたものであるか否かが分かる性質である。
【0019】
請求項2に係るグループインデックス管理装置は、請求項1に記載のグループインデックス管理装置において、グループメンバー情報識別値受信手段は、更新されたグループメンバー情報識別値リストを受信し、グループメンバーインデックス生成手段は、更新されたグループメンバー情報識別値リストに含まれなくなったグループメンバー情報識別値に対応するグループメンバーインデックスを対応付け表から削除すると共に、グループメンバー資格が有効なグループメンバーのグループメンバー情報識別値のリストである有効グループメンバーインデックスリストを生成することを特徴とする。
【0020】
かかる構成によれば、グループインデックス管理装置は、例えば、署名検証装置が有効グループメンバーインデックスリストを確認することで、グループメンバー資格を失効したグループメンバーからグループ署名を受信した場合、以降の署名を検証する計算を署名検証装置に省略させることができる。
【0021】
請求項3に係るグループインデックス管理装置は、請求項1又は請求項2に記載のグループインデックス管理装置において、ランダム置換の逆変換であるグループ秘密鍵を生成するグループ秘密鍵生成手段と、グループ署名を受信すると共に、グループ秘密鍵を用いて、受信したグループ署名に含まれるグループメンバーインデックスから、グループ署名を生成したグループメンバーのグループメンバー情報識別値を求めるオープン手段と、をさらに備えることを特徴とする。
【0022】
かかる構成によれば、グループインデックス管理装置は、オープン手段によって、例えば、不正アクセス等の事態が生じた場合、その不正アクセスをおこなったグループメンバーのグループメンバー情報識別値を求めることができる。一方、グループインデックス管理装置以外の装置によってグループメンバーのグループメンバー情報識別値を求めることはできない。これによって、グループ署名システムの安全性を高くすることができる。
【0023】
前記した課題を解決するため、請求項4に係るグループ管理装置は、請求項1に記載のグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループ管理装置であって、グループ公開鍵生成手段と、公開情報送信手段と、マスタ鍵生成手段と、メンバー鍵生成手段と、を備えることを特徴とする。
【0024】
かかる構成によれば、グループ管理装置は、グループ公開鍵生成手段によって、グループ公開鍵を生成する。また、グループ管理装置は、公開情報送信手段によって、グループ公開鍵をグループ公開情報として署名検証装置に送信する。ここで、グループメンバーは、グループメンバーインデックスを用いて管理することが可能なので、グループ内の所定のメンバーがそのグループを脱退する場合に、グループ管理装置は、グループ公開鍵を変更する必要がない。つまり、その所定のメンバーの署名のみを容易に無効化させることができる。さらに、新規メンバーの加入を容易に行うこともできる。これによって、グループ署名システムの設計や運用を適宜柔軟に変更することができる。
【0025】
そして、グループ管理装置は、マスタ鍵生成手段によって、グループ管理装置が保管するマスタ鍵を生成する。さらに、グループ管理装置は、メンバー鍵生成手段によって、グループメンバーインデックスとマスタ鍵とを用いて、グループメンバー毎の秘密にされるメンバー鍵として、グループメンバー固有の秘密ライセンス情報を生成する。このようにグループ管理装置の外部で、グループメンバーインデックスとグループメンバーの個人情報とを秘密裡に紐付けして管理することで、グループ管理装置、署名生成装置および署名検証装置では、署名者のサービス利用状況を、氏名・住所等の個人情報に紐付けられることはない。従って、匿名性を保持してネットワークを介したサービスをグループメンバーに提供することが可能となる。
【0026】
前記した課題を解決するため、請求項5に係る署名生成装置は、請求項1に記載のグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名生成装置であって、随時署名生成手段と、グループ署名生成手段と、グループ署名送信手段と、を備えることを特徴とする。
【0027】
かかる構成によれば、署名生成装置は、随時署名生成手段によって、グループメンバー固有の秘密ライセンス情報と署名対象のリクエストメッセージとを用いて、随時署名を生成する。ここで、随時署名は、署名検証装置に最終的に出力するグループ署名に含めるものである。本発明はグループ署名がUnlinkabilityを満たさない(Linkabilityを満たす)ことを前提としているので、随時署名の段階においても従来よりも署名長を短縮した構成とすることができる。
【0028】
また、署名生成装置は、グループ署名生成手段によって、随時署名とグループメンバーインデックスとを含むグループ署名を生成する。ここで、グループ署名には、例えば、グループメンバーインデックスが含まれている。このグループメンバーインデックスは、これによりグループ署名の署名者が誰であるかを特定することはできないが他の署名者と区別することができるものである。それは、グループメンバーインデックスは、グループ内において各グループメンバーを区別できるインデックスであるからである。しかも、グループメンバーインデックスは、グループメンバーの個人情報とは分離されているので、個人情報と紐付けされた通常のユーザIDとは異なる。一方、Unlinkabilityを満たす従来の方式では、グループ署名中に、グループメンバーを識別する情報は含まれていない。また、署名生成装置が生成する随時署名、および、グループメンバーインデックスは、それぞれ、例えば、516ビットおよび80ビット程度のビット長とすることが可能なので、リクエストに、随時署名およびグループメンバーインデックスは、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、署名生成装置の実装に必要なコストを低減できる。
【0029】
さらに、署名生成装置は、グループ署名送信手段によって、グループ署名とリクエストメッセージとを署名検証装置に送信する。従って、グループ署名を受信した署名検証装置では、同一署名者により生成された異なる2つの署名が同一人物によるものであることが分かる。これにより、署名生成装置が生成するグループ署名は、Unlinkabilityを満たさない(Linkabilityを満たす)ことになる。そのため、グループ内の所定のメンバーがそのグループを脱退する場合に、その所定のメンバーの署名のみを容易に無効化させることができる。また、新規メンバーの加入を容易に行うこともできる。さらに、Linkabilityを満たすことから、署名生成装置を利用するグループメンバーが、サービスをネットワーク受信するときに、前回供給された状態の続きから受信することも可能となる。
【0030】
前記した課題を解決するため、請求項6に係る署名検証装置は、請求項1に記載のグループインデックス管理装置と、グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、生成されたグループ署名をグループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名検証装置であって、グループ署名受信手段と、公開情報受信手段と、グループ署名検証手段と、を備えることを特徴とする。
【0031】
かかる構成によれば、署名検証装置は、グループ署名受信手段によって、署名生成装置で生成されたグループ署名を受信する。また、署名検証装置は、公開情報受信手段によって、グループ管理装置で生成されたグループ公開鍵をグループ公開情報として受信する。そして、署名検証装置は、グループ署名検証手段によって、グループ公開情報とグループ署名とが、予め設定された条件式を満たすか否かを判別し、条件式を満たす場合にグループ署名の検証が成功したと判定する。これによって、署名検証装置は、グループ署名を生成した署名生成装置と同程度の計算を実行するだけでグループ署名を検証することができる。言い換えると、本発明は、Linkabilityを満たすグループ署名を可能とすることで、署名生成と署名検証との計算量を、従来のUnlinkabilityを満たすグループ署名よりも少なくできる。
【0032】
請求項7に係る署名検証装置は、請求項6に記載の署名検証装置において、グループインデックス管理装置が生成した有効グループメンバーインデックスリストの中に、受信したグループ署名に含まれるグループメンバーインデックスが存在するか否かを判別し、グループメンバーインデックスが存在する場合、グループメンバー資格が有効であると判定する有効メンバー判別手段、をさらに備え、グループ署名検証手段は、有効メンバー判別手段によってグループメンバー資格が有効であると判定された場合、条件式を満たすか否かの判定を行うことを特徴とする。
【0033】
かかる構成によれば、署名検証装置は、メンバー資格が失効したグループメンバーからグループ署名を受信した場合には、グループ署名に含まれるグループメンバーインデックスを確認しさえすればよく、以降の署名を検証する計算を省略することができる。
【発明の効果】
【0034】
本発明によれば、以下のような優れた効果を奏する。
請求項1,4,5,6に係る発明によれば、安全性の証明が可能なスタンダートモデルで、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、Linkableなグループ署名システムの実装に必要なコストを低減できる。
【0035】
請求項2,7に係る発明によれば、署名検証装置が、メンバー資格が失効したグループメンバーからグループ署名を受信した場合に、署名を検証する計算を省略することができる。
【0036】
請求項3に係る発明によれば、Linkableな性質を維持しつつ、不正アクセス等の事態に対応することができるため、グループ署名システムの安全性を高くすることができる。
【図面の簡単な説明】
【0037】
【図1】グループ署名システムの概要を模式的に示す構成図である。
【図2】会員向けコンテンツ提供サービスシステムの概要を模式的に示す構成図である。
【図3】本発明の実施形態に係るグループ管理装置の構成を模式的に示すブロック図である。
【図4】本発明の実施形態に係るグループインデックス管理装置の構成を模式的に示すブロック図である。
【図5】本発明の実施形態に係るグループメンバー装置の構成を模式的に示すブロック図である。
【図6】本発明の実施形態に係る署名検証装置の構成を模式的に示すブロック図である。
【図7】セットアップステップを示すフローチャートである。
【図8】ジョインステップを示すフローチャートである。
【図9】署名生成ステップ及び署名検証ステップを示すフローチャートである。
【図10】オープンステップを示すフローチャートである。
【図11】従来のグループ署名システムの概要を模式的に示す構成図である。
【発明を実施するための形態】
【0038】
以下、図面を参照して本発明を実施するための最良の形態(以下「実施形態」という)について詳細に説明する。
【0039】
[グループ署名システムの構成]
グループ署名システム1は、図1に示すように、グループ管理装置10と、グループメンバー装置(署名生成装置)20と、署名検証装置30と、グループインデックス管理装置40と、会員情報管理サーバ50とを備えている。このグループ署名システム1では、会員向けサービスの運営者(運営主体)により利用される、グループインデックス管理装置40と、会員情報管理サーバ50とを備えている点が、図11に示したグループ署名システム901と大きく異なっている。なお、グループインデックス管理装置40の管理者をインデックス管理者という。また、各装置10〜50は、例えば、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、ROM(Read Only Memory)と、HDD(Hard Disk Drive)と、通信を行うためのNIC(Network Interface Card)等を備えている。
【0040】
(グループ管理装置)
グループ管理装置10は、グループメンバー装置20においてサービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーによる署名であることを示すグループ署名を生成及び検証する際に利用されるグループ公開鍵を生成するものである。グループ公開鍵は、予め選択された生成元を用いて生成される値と、生成元と、セキュリティーパラメータとを含む。グループ管理装置10は、例えば、会員向けサービスの運営主体(運営者)により使用される。会員向けサービスの運営主体(運営者)は、サービス提供者からサービスの提供を受けるグループの管理者であるグループ管理者と兼務してもよいし、別であってもよい。
【0041】
(グループメンバー装置)
グループメンバー装置(署名生成装置)20は、サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーによる署名であることを示すグループ署名を生成するものである。グループメンバー装置20は、サービス提供者からサービスの提供を受けるグループメンバーとなる会員(ユーザ)により使用される。なお、グループメンバー装置20が、請求項に記載の署名生成装置に相当する。
【0042】
(署名検証装置)
署名検証装置30は、生成されたグループ署名をグループ公開鍵に基づいて検証するものである。本実施形態では、署名検証装置30は、グループ署名が、サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーによる署名であることを示すグループ署名であるか否かを検証する。署名検証装置30は、サービス提供者により使用される。
【0043】
(会員向けサービスの運営者)
会員向けサービスの運営者(運営主体)は、グループメンバー(会員)の個人情報、例えば住所・氏名といった個人を特定する情報を管理する。なお、有料サービスであれば課金徴収に関する情報も管理する必要がある。ただし、グループメンバー資格(会員資格)を有するユーザのサービス利用状況についてその匿名性を保つことが望まれる場合には、ユーザからのサービス要求時に行うユーザ認証方式はグループ署名が適している。その理由は、ユーザ側ではサービス利用状況についてのプライバシを保護するためであり、また、運営者側では危機管理のためである。このような理由から、会員向けサービスの運営主体は、自ら管理する個人情報を識別するために、会員情報識別値(グループメンバー情報識別値)をつけて管理している。なお、会員情報識別値が請求項に記載のグループメンバー情報識別値に相当する。
【0044】
(グループインデックス管理装置)
グループインデックス管理装置40は、複数の会員情報識別値(例えば、一般的な会員番号やユーザID)のリストである会員情報識別値リスト(グループメンバー情報識別値リスト)L1を入力として、個々のグループメンバーに対応するグループメンバーインデックスIDiを生成し、会員情報識別値とIDiとの対応付け表Tを秘密裡に保管するものである。ここで、グループメンバーインデックスIDiは、グループメンバーの個人情報と分離されたグループ内識別子を示す。また、グループインデックス管理装置40は、現時点におけるグループ参加資格者(グループ資格が有効なユーザ)のグループメンバーインデックスIDiのリストである有効グループメンバーインデックスリストLを生成発行する。グループ資格が失効したユーザのグループメンバーインデックスIDiは、有効グループメンバーインデックスリストLから削除される。このグループメンバーインデックスIDiは、グループ署名を行う各個人を互いに区別するグループ署名用のインデックスである。言い換えると、グループメンバーインデックスIDiは、異なる複数の署名が同一署名者により生成されたものであるか否かが分かるという性質(Linkabilityと呼ばれる性質)を持っている。なお、会員情報識別値リストLが請求項に記載のグループメンバー情報識別値リストに相当する。
【0045】
また、グループインデックス管理装置40は、個々のグループメンバーインデックス(IDi)を安全な方法で各グループメンバー装置20に配布する。配布方法としては、例えば対面方式などのようにオフラインな手法を使用することも可能である。ここで、グループ管理装置10、グループメンバー装置20、署名検証装置30およびグループインデックス管理装置40のそれぞれは、インターネットまたは専用IP回線等の外部ネットワークに必ずしも常時接続されている必要性はない。ただし、会員向けサービスを適正に運営するために、グループインデックス管理装置40が、最新の有効グループメンバーインデックスリストLを常時更新することが望ましく、署名検証装置30が有効グループメンバーインデックスリストLの最新の情報を常時閲覧可能な運用とする必要がある。
【0046】
(会員情報管理サーバ)
会員情報管理サーバ50は、会員情報(個人情報)と共に会員情報識別値を管理するものであり、会員情報識別値リストLを保有している。会員情報識別値は、各個人を直接特定する個人情報に紐付けられた個人情報インデックスとなり得るものである。会員情報管理サーバ50は、例えば、会員向けサービスの運営主体(運営者)により使用される。
【0047】
(グループ署名システムの特徴)
グループ管理装置10、グループメンバー装置20および署名検証装置30の間において、グループ署名を生成および検証することにより、グループインデックス管理装置40以外の装置では、グループメンバーインデックスIDiから個人を特定する情報を得ることは不可能である。このような事業形態の一例としては、例えば、会員向けサービスの運営主体が、グループ管理者に対してサービスを委託する場合(アウトソ−シング)が想定される。つまり、グループインデックス管理装置40の運営者と、グループ管理装置10の運営者(グループ管理者)とが異なる場合には、グループ署名のグループ管理者ですら、グループ署名を作成したユーザが、グループに属しているということは分かったとしても、そのユーザが誰であるのかを特定することが不可能となる。なお、図11に示したグループ署名システム901と同様に、グループ署名システム1においても、グループメンバー装置20以外の装置はグループ署名を生成することができないことはもちろんである。また、検証者は、署名を作成したユーザが、グループに属しているということは分かったとしても、そのユーザが誰であるのかを特定することは不可能である。なお、グループインデックス管理装置40は、後記するオープンステップを実行することで、個人を特定する情報を得ることができる。
【0048】
[会員向けコンテンツ提供サービスシステムの概要]
図1に示したグループ署名システム1を会員向けコンテンツ提供サービスシステムに応用したときの構成とその全体動作の概要を図2に示す。この会員向けコンテンツ提供サービスシステム2では、コンテンツサーバ60を備えている点が、図1に示したグループ署名システム1と異なっている。
【0049】
会員向けコンテンツ提供サービスシステム2における動作の概要は、以下の通りである
。まず、会員向けサービスを運営する運営者(例えば、サービスプロバイダ)において、会員の個人情報から各個人を識別する会員番号を抽出して会員情報識別値リストLを作成しておき、会員情報管理サーバ50から、グループインデックス管理装置40に会員情報識別値リストLを入力する(ステップS1)。
【0050】
次に、グループインデックス管理装置40は、会員番号との関連性や規則性が無い値、または、推測不可能なランダムな値からなるグループメンバーインデックスIDiを生成し、グループメンバー装置20に渡す(ステップS2:グループメンバーインデックス生成ステップ)。そして、グループ管理装置10は、グループ署名に必要なグループ公開鍵を作成しておく(ステップS3:セットアップステップ)。次いで、グループメンバー装置20は、グループメンバーインデックスIDiを用いて、グループ管理装置10に対し、グループへの加入することを要求する。グループ管理装置10とグループメンバー装置20との間のジョインプロトコルの実行により、グループ管理装置10からグループメンバー装置20に秘密ライセンス情報とが渡される(ステップS4:ジョインステップ)。
【0051】
続いて、会員(ユーザ)は、会員向けサービスを提供している提供者(例えば、別のサービスプロバイダ)にサービスの提供を要求する。すなわち、グループメンバー装置20は、コンテンツサーバ60に対して、サービスの要求と会員資格を示すために、グループ署名を作成して送信する。リクエストを受けたコンテンツサーバ60は、受け取ったグループ署名を署名検証装置30に渡し、グループ署名の検証を依頼する(ステップS6)。そして、署名検証装置30は、グループ署名の有効性の検証を行い(ステップS7:検証ステップ)、検証結果を、コンテンツサーバ60に返す(ステップS8)。そして、コンテンツサーバ60は、検証成功メッセージを受信すれば(正当なユーザであれば)、要求されたコンテンツを、該当するグループメンバー装置20に提供し(ステップS9)、検証失敗メッセージを受信すれば(正当なユーザでなければ)、コンテンツに対するリクエストを拒否する。
【0052】
もし、不正なリクエストがあった場合、グループインデックス管理装置40は、このリクエストに添付されている会員の会員情報識別値を求め(ステップS10:オープンステップ)、この会員を特定する。そして、会員向けコンテンツ提供サービスシステム2では、この特定した会員に対するサービスを停止(拒絶)する。
【0053】
なお、会員向けコンテンツ提供サービスシステム2において、決済を行う場合に、会員向けサービスを提供している提供者(例えば、別のサービスプロバイダ)にとっては、会員の氏名やクレジット番号等が不明である。しかしながら、会員向けサービスを運営する運営者(例えば、サービスプロバイダ)は、会員の氏名やクレジット番号を知っているので、提供者(検証者)が運営者に対価を要求し、運営者と会員との間で決済をして、運営者と提供者(検証者)との間で決済をすることができる。この場合、運営者は、会員が具体的に何を購入したかを知らないことになり、また、提供者(検証者)は、商品/サービスを受けた会員が誰であるのか特定できないことになる。従って、匿名性を保持してネットワークを介したサービスをユーザに提供することが可能となる。
【0054】
[グループ管理装置の構成]
グループ管理装置10は、図3に示すように、記憶手段100と、セットアップ初期値生成手段101と、公開情報送信手段103と、ジョインリクエスト受信手段104と、メンバー鍵生成手段105と、ライセンス送信手段106と、マスタ鍵生成手段107と、グループ公開鍵生成手段112とを備えている。
【0055】
記憶手段100は、例えば、演算処理等に利用されると共にネットワークNを介して取得した情報等を記憶するRAMと、所定のプログラム等を記憶するROMと、グループメンバー毎のライセンスを格納するHDD等を備えている。記憶手段100は、耐タンパな領域を有している。耐タンパな領域は、例えば、耐タンパ性を有するスマートカード(IC(Integrated Circuit)カード)から構成される。なお、記憶手段100を一括で表示したが、適宜分割されていてもよいことはもちろんである。
【0056】
セットアップ初期値生成手段101は、素数や生成元などのセットアップステップに必要な基本的なパラメータを生成するものである。本実施形態では、セットアップ初期値生成手段101は、パラメータとして、セキュリティーパラメータと、素数pと、位数を素数pとする群G,Gと、双線形写像e:G×G→Gと、群Gの生成元gと、0以上p−1以下の乱数αと、乱数αを離散対数とするg=gαとを選択する。また、セットアップ初期値生成手段101は、パラメータとして、群Gの元g,u’,x’を群Gからランダムに選択する。また、これらのパラメータは、記憶手段100に格納される。
【0057】
グループ公開鍵生成手段112は、グループの公開鍵であるグループ公開鍵を生成するものである。本実施形態では、グループ公開鍵生成手段112は、ベクトルX=[x,x,・・・,xnm]を生成する。なお、iはベクトルXの各要素のインデックスであり、nmは、メッセージのビット長である。例えば、メッセージが160ビットであれば、ベクトルXは、各要素が160個の乱数で構成されることになる。
【0058】
また、このとき、グループ公開鍵生成手段112は、xを群Gからランダムに選択する(但し、i≦nm)。そして、グループ公開鍵生成手段112は、式(1)に示すグループ公開鍵(グループ公開情報)gpkを生成する。
【0059】
【数1】

【0060】
公開情報送信手段103は、グループ公開鍵をグループ公開情報gpkとして署名検証装置30に送信する(公開する)ものである。
【0061】
ジョインリクエスト受信手段104は、グループメンバー装置20からネットワークNを介してジョインリクエストを受信するものである。このジョインリクエストには、グループメンバー装置20を識別するためにグループメンバーインデックスIDiが含まれている。取得されたグループメンバーインデックスIDiは、記憶手段100に格納される。
【0062】
メンバー鍵生成手段105は、秘密ライセンス情報生成手段122を備えている。
秘密ライセンス情報生成手段122は、秘密ライセンス情報を算出するものである。本実施形態では、秘密ライセンス情報生成手段122は、乱数ruをZpからランダムに選択し、選択した乱数rと、マスタ鍵gαと、グループメンバーインデックスIDiとを用いて、式(2)に示すように、グループメンバーインデックスIDiに対応する秘密ライセンス情報skIDiを算出する。
【0063】
【数2】

【0064】
そして、秘密ライセンス情報生成手段122は、式(3)に示すように、グループメンバー毎に異なる秘密ライセンス情報gskを生成する。
【0065】
【数3】

【0066】
ライセンス送信手段106は、秘密ライセンス情報生成手段122が生成した秘密ライセンス情報gskをライセンスとしてグループメンバー装置20に送信するものである。ここで、秘密ライセンス情報gskの受け渡しには、秘匿な通信網またはセキュアなデバイス等を用いて安全にグループメンバー装置20に渡す。なお、グループメンバー装置20は、安全に秘密ライセンス情報gskを保管する。
【0067】
マスタ鍵生成手段107は、グループ管理装置10が秘密裏に保管するマスタ鍵を生成するものである。本実施形態では、マスタ鍵生成手段107は、セットアップ初期値生成手段101が選択した元g及び乱数αを用いて、gαをマスタ鍵として生成する。
【0068】
[グループインデックス管理装置]
図3は、本発明の実施形態に係るグループインデックス管理装置の構成を模式的に示すブロック図である。グループインデックス管理装置40は、図4に示すように、記憶手段400と、会員情報識別値受信手段(グループメンバー情報識別値受信手段)401と、グループメンバーインデックス生成手段402と、グループメンバーインデックス送信手段403と、グループ秘密鍵生成手段404と、オープン手段405とを備えている。
記憶手段400は、グループ管理装置10の記憶手段100と同様なものなので、説明を省略する。
【0069】
会員情報識別値受信手段(グループメンバー情報識別値受信手段)401は、会員情報管理サーバ50から会員情報識別値リストLを受信し、記憶手段400に格納するものである。また、会員情報識別値受信手段401は、会員情報識別値リストLが更新された場合、更新された会員情報識別値リストLを受信し、記憶手段400に格納する。なお、会員情報識別値受信手段401が、請求項に記載のグループメンバー情報識別値受信手段に相当する。
【0070】
グループメンバーインデックス生成手段402は、グループメンバーインデックスIDiをグループメンバー装置20と同数生成し、生成したグループメンバーインデックスIDiと会員情報識別値iとをランダム置換πによって対応付けた対応付け表Tを生成するものである。本実施形態では、グループメンバーインデックス生成手段402は、ランダム置換πを選択する。また、グループメンバーインデックス生成手段402は、更新された会員情報識別値リストLに含まれなくなった会員情報識別値iに対応するグループメンバーインデックスIDiを対応付け表Tから削除する。そして、グループメンバーインデックス生成手段402は、グループメンバー資格が有効なグループメンバーの会員情報識別値iのリストである有効グループメンバーインデックスリストLを生成する。さらに、グループメンバーインデックス生成手段402は、生成した対応付け表Tと、有効グループメンバーインデックスリストLとを記憶手段400に格納する。
【0071】
グループメンバーインデックス送信手段403は、有効グループメンバーインデックスリストLに記載されたグループメンバーインデックスを該当するグループメンバー装置20にネットワークNを介して送信するものである。また、グループメンバーインデックス送信手段403は、有効グループメンバーインデックスリストLを、ネットワークNを介して署名検証装置30に送信する。本実施形態では、グループメンバーインデックス送信手段403は、有効グループメンバーインデックスリストLが更新されるたびに有効グループメンバーインデックスリストLを署名検証装置30に送信する。なお、グループメンバーインデックス送信手段403は、更新されたかどうかに関わらず有効グループメンバーインデックスリストLを定期的に署名検証装置30に送信することもできる。また、署名検証装置30から、グループインデックス管理装置40に格納された有効グループメンバーインデックスリストLを定期的に参照することもできる。
【0072】
グループ秘密鍵生成手段404は、グループメンバーインデックス生成手段402が用いたランダム置換πの逆変換π−1を選択し、選択した逆変換π−1をグループ秘密鍵として記憶手段100の耐タンパな領域に秘密裡に保管する。
【0073】
オープン手段405は、グループ署名σGSを受信すると共に、グループ秘密鍵生成手段404が生成したグループ秘密鍵π−1を用いて、グループ署名σGSに含まれるグループメンバーインデックスIDiから、グループ署名σGSを生成したグループメンバーの会員情報識別値iを求めるものである。本実施形態では、オープン手段405は、グループ署名σGSをグループメンバーインデックスIDiと随時署名σIDiとに分離した後、随時署名σIDiが正しい署名であるか否かを検証する。そして、オープン手段405は、随時署名σIDiが正しい署名である場合、式(4)に示すように、グループ秘密鍵π−1とグループメンバーインデックスIDiとを用いて、会員情報識別値iを求める。
【0074】
【数4】

【0075】
[グループメンバー装置の構成]
グループメンバー装置(署名生成装置)20は、図5に示すように、記憶手段200と、公開情報受信手段201と、グループメンバーインデックス受信手段202と、ジョインリクエスト生成手段203と、ジョインリクエスト送信手段204と、ライセンス受信手段205と、ライセンス検証手段206と、乱数選択手段207と、随時署名生成手段209と、グループ署名生成手段210と、サービスリクエスト送信手段(グループ署名送信手段)211と、サービス受信手段212と、コンテンツ再生手段213とを備えている。
【0076】
記憶手段200は、グループ管理装置10の記憶手段100と同様なものなので、説明を省略する。
公開情報受信手段201は、グループ管理装置10からネットワークNを介してグループ公開情報(グループ公開鍵)gpkを受信するものである。受信されたグループ公開情報gpkは、記憶手段200に格納される。
グループメンバーインデックス受信手段202は、グループインデックス管理装置40からネットワークNを介してグループメンバーインデックスIDiを受信するものである。受信されたグループメンバーインデックスIDiは、記憶手段200のメモリに格納される。
【0077】
ジョインリクエスト生成手段203は、グループ管理装置10に対してジョイン処理を要求するジョインリクエストを生成するものである。このジョインリクエストには、グループメンバー装置20を識別するためにグループメンバーインデックスIDiが含まれている。
ジョインリクエスト送信手段204は、ジョインリクエスト生成手段203で生成されたジョインリクエストを、ネットワークNを介してグループ管理装置10に送信するものである。
【0078】
ライセンス受信手段205は、グループ管理装置10からネットワークNを介してライセンスを受信するものである。受信されたライセンスは、ライセンス検証手段206で正当なライセンスであることが検証された後に記憶手段200に格納される。正当なライセンスとは、正規のグループ管理者が生成したライセンスである。
【0079】
乱数選択手段207は、0からp−1までの整数Zから乱数rをランダムに選択するものである。
随時署名生成手段209は、秘密ライセンス情報gskと署名対象のリクエストメッセージmとを用いて、随時署名σIDiを生成するものである。本実施形態では、随時署名生成手段209は、下記式(5)を満たすjの集合χを算出する。なお、式(5)において、m[j]はリクエストメッセージmのj番目のビットを示す。
【0080】
【数5】

【0081】
そして、随時署名生成手段209は、式(6)に示すように、随時署名σIDiを算出する。
【0082】
【数6】

【0083】
なお、本実施形態では、リクエストメッセージmは、入力装置Mから入力されるサービスリクエストとする。サービスリクエストは、例えば、コンテンツのタイトルやコンテンツID等を含む。また、入力装置Mは、視聴者(ユーザ)から各種情報を入力することのできるデバイスであり、例えば、キーボード、マウス、押し釦スイッチ、リモコン等である。
【0084】
グループ署名生成手段210は、随時署名σIDiとグループメンバーインデックスIDiと含むグループ署名σGSを生成するものである。本実施形態では、グループ署名生成手段210は、式(7)に示すグループ署名σGSを生成する。
【0085】
【数7】

【0086】
サービスリクエスト送信手段(グループ署名送信手段)211は、グループ署名生成手段210で生成されたグループ署名σGSとリクエストメッセージmとを、ネットワークNを介して署名検証装置30に送信するものである。なお、サービスリクエスト送信手段211が、請求項に記載のグループ署名送信手段に相当する。
【0087】
サービス受信手段212は、例えば、リクエストメッセージm(入力装置Mから入力されるサービスリクエスト)に応じてコンテンツサーバ60からネットワークNを介して提供されるコンテンツ等のサービスを受信するものである。
【0088】
コンテンツ再生手段213は、サービス受信手段212で受信したコンテンツを出力装置Dに出力可能に再生するものである。ここで、出力装置Dは、コンテンツの映像を表示する表示手段と、音声を出力する音声出力手段(スピーカ)等を備える。表示手段は、例えば、CRT(Cathode Ray Tube)、液晶ディスプレイ(LCD:Liquid Crystal Display)、PDP(Plasma Display Panel)、EL(Electronic Luminescence)等から構成される。
【0089】
[署名検証装置の構成]
署名検証装置30は、図6に示すように、記憶手段300と、公開情報受信手段301と、インデックスリスト受信手段302と、グループ署名受信手段303と、有効メンバー判別手段304と、検証用情報生成手段305と、グループ署名検証手段306と、検証結果送信手段307とを備えている。
【0090】
記憶手段300は、例えば、演算処理等に利用されると共にネットワークNを介して取得した情報等を記憶するRAMと、所定のプログラム等を記憶するROMと、グループメ
ンバ毎のライセンスを格納するHDD等を備えている。
公開情報受信手段301は、グループ管理装置10からネットワークNを介して、グループ公開情報(グループ公開鍵)gpkを受信するものである。受信されたグループ公開情報gpkは、記憶手段300に格納される。
【0091】
インデックスリスト受信手段302は、グループインデックス管理装置40からネットワークNを介して有効グループメンバーインデックスリストLを受信するものである。受信された有効グループメンバーインデックスリストLは、記憶手段300に格納される。
グループ署名受信手段303は、グループメンバー装置20で生成されたグループ署名σGSを、ネットワークNを介して受信するものである。本実施形態では、グループ署名受信手段303は、グループメンバー装置20で生成されたグループ署名σGSを、コンテンツサーバ60との専用線70を経由して受信することとする。
【0092】
有効メンバー判別手段304は、記憶手段300に格納した有効グループメンバーインデックスリストLの中に、グループ署名受信手段303で受信したグループ署名σGSに含まれるグループメンバーインデックスIDiが存在するか否かを判別し、存在する場合にメンバー資格が有効であると判定するものである。
【0093】
検証用情報生成手段305は、検証用情報を生成するものである。本実施形態では、検証用情報生成手段305は、グループ署名σGSに含まれる随時署名σIDiを用いて、式(8)に示す検証用情報(V,Ru,Rm)を生成する。また、本実施形態では、検証用情報生成手段305は、有効メンバー判別手段304によってメンバー資格が有効であると判定された場合に検証用情報(V,Ru,Rm)を生成することとする。
【0094】
【数8】

【0095】
グループ署名検証手段306は、グループ公開情報gpkとグループ署名σGSとが、予め設定された条件式を満たすか否かを判別し、この条件式を満たす場合にグループ署名σGSの検証が成功したと判定するものである。ここで、グループ署名検証手段306は、有効メンバー判別手段304によってグループメンバー資格が有効であると判定された場合、条件式を満たすか否かの判定を行っても良い。本実施形態では、グループ署名検証手段306は、グループ公開情報gpkとグループ署名σGSとが、検証用情報(V,Ru,Rm)を用いた条件式としての式(9)を満たす場合、グループ署名σGSの検証が成功したと判定し、署名検証成功メッセージを生成する。一方、グループ署名検証手段306は、グループ公開情報gpkとグループ署名σGSとが、式(9)を満たさない場合、グループ署名σGSの検証が失敗したと判定し、署名検証失敗メッセージを生成する。
【0096】
【数9】

【0097】
検証結果送信手段307は、グループ署名検証手段306で生成された検証結果を示す検証成功メッセージまたは検証失敗メッセージを、ネットワークNを介してグループメンバー装置20に送信するものである。本実施形態では、検証結果送信手段307は、検証結果を、コンテンツサーバ60を経由して、グループメンバー装置20に送信することとする。
【0098】
[コンテンツサーバ]
コンテンツサーバ60は、例えば、CPUと、RAMと、ROMと、HDDと、NIC等を備えており、図6に示すように、コンテンツ記憶手段600と、サービスリクエスト受信手段601と、検証リクエスト送信手段602と、サービス提供手段603とを備えている。
コンテンツ記憶手段600は、コンテンツを蓄積記憶するものであり、例えば、一般的なハードディスク等から構成される。なお、コンテンツ記憶手段600は、外部記憶装置から構成されていてもよい。
【0099】
サービスリクエスト受信手段601は、ネットワークNを介してグループメンバー装置20からサービスリクエストを受信するものである。
検証リクエスト送信手段602は、サービスリクエスト受信手段601で受信したサービスリクエスト(グループ署名)を検証することを依頼する検証リクエストをグループ署名と共に署名検証装置30に専用線70を介して送信するものである。なお、検証リクエストとグループ署名とを専用線70を用いずにネットワークN経由で送信してもよいし、オフラインで渡してもよい。
【0100】
サービス提供手段603は、署名検証装置30から、検証成功メッセージを取得した場合に、受信したサービスリクエストに該当するグループメンバー装置20に対して、コンテンツ記憶手段600に蓄積記憶されたコンテンツを、ネットワークN経由で提供するものである。また、サービス提供手段603は、署名検証装置30から、検証失敗メッセージを取得した場合に、受信したサービスリクエストに該当するグループメンバー装置20に対して、コンテンツの提供が許可されていないことを示すメッセージをネットワークN経由で通知する。
【0101】
[会員向けコンテンツ提供サービスシステムの動作]
次に、図2に示した会員向けコンテンツ提供サービスシステム2の動作について、図7〜図10を参照(適宜図1〜図6参照)して説明する。
【0102】
[グループメンバーインデックス生成ステップ]
グループメンバーインデックス生成ステップ(ステップS2:図2参照)は、グループインデックス管理装置40が実行する動作である。図7に示すように、グループメンバーインデックス生成ステップでは、グループインデックス管理装置40は、グループメンバーインデックス生成手段402によって、ランダム置換πを選択し、グループメンバーインデックスIDiと会員情報識別値iとをランダム置換πによって対応付けた対応付け表Tを生成する(ステップS101)。
【0103】
なお、本実施形態では、ステップS101の処理の前に、グループインデックス管理装置40は、会員情報識別値受信手段401によって、会員情報識別値リストLを受信し、グループメンバーインデックス生成手段402によって、グループメンバーインデックスIDiをグループメンバー装置20と同数生成しておくこととした(不図示)。
【0104】
[セットアップステップ]
セットアップステップ(ステップS3:図2参照)は、グループ管理装置10が実行する動作である。図7に示すように、セットアップステップでは、グループ管理装置10は、セットアップ初期値生成手段101によって、群G,Gと、双線形写像e:G×G→Gとを選択し(ステップS102)、生成元gと、乱数αと、g=gαとを選択する(ステップS103)。なお、ステップS102とステップS103の順序は任意である。
【0105】
また、グループ管理装置10は、セットアップ初期値生成手段101によって、群Gの元g,u’,x’を群Gからランダムに選択する(ステップS104)。その後、グループ管理装置10は、グループ公開鍵生成手段112によって、ベクトルX=[x,x,・・・,xnm]を生成する(ステップS105)。このとき、グループ公開鍵生成手段112は、xを群Gからランダムに選択する(但し、i<nm)。
【0106】
また、グループ管理装置10は、マスタ鍵生成手段107によって、元g及び乱数αを用いて、gαをマスタ鍵mskとして生成する(ステップS106)。そして、グループ管理装置10は、グループ公開鍵生成手段112によって、前記した式(1)に示すグループ公開鍵(グループ公開情報)gpkを生成する(ステップS107)。その後、グループ管理装置10は、公開情報送信手段103によって、グループ公開情報gpkを、各グループメンバー装置20と、署名検証装置30にネットワークNを介して送信する(不図示)。
【0107】
[ジョインステップ]
ジョインステップ(ステップS4:図2参照)は、グループ管理装置10が実行する動作である。図8に示すように、グループ管理装置10は、秘密ライセンス情報生成手段122によって、乱数rをZからランダムに選択し(ステップS201)、前記した式(2)に示すskIDiを算出する(ステップS202)。また、グループ管理装置10は、秘密ライセンス情報生成手段122によって、前記した式(3)に示すグループメンバー毎に異なる秘密ライセンス情報gskを生成する(ステップS203)。その後、グループ管理装置10は、ライセンス送信手段106によって、秘密ライセンス情報gskをライセンスとして該当するグループメンバー装置20へ渡す(不図示)。
【0108】
なお、本実施形態では、ステップS201の処理の前に、グループメンバー装置20は、ジョインリクエスト送信手段204によって、グループメンバーインデックスが含まれているジョインリクエストを送信することとした。また、同様に、グループ管理装置10は、ジョインリクエスト受信手段104によって、ジョインリクエストを受信することとした(不図示)。
【0109】
[署名生成ステップ]
署名生成ステップ(ステップS5:図2参照)は、グループメンバー装置20が実行する動作である。図9に示すように、サインステップでは、グループメンバー装置20は、乱数選択手段207によって、乱数rをZからランダムに選択する(ステップS301)。
【0110】
また、グループメンバー装置20は、随時署名生成手段209によって、前記した式(5)を満たすjの集合χを求め(ステップS302)、前記した式(6)に示すように、随時署名σIDiを算出する(ステップS303)。そして、グループメンバー装置20は、グループ署名生成手段210によって、前記した式(7)に示すグループ署名σGSを生成し(ステップS304)、サービスリクエスト送信手段211によって、グループ署名σとリクエストメッセージmとを署名検証装置30に送信する。
【0111】
[署名検証ステップ]
署名検証ステップ(ステップS7:図2参照)は、署名検証装置30が実行する動作である。図9に示すように、署名検証ステップでは、署名検証装置30は、グループ署名受信手段303によって、グループ署名σGSを受信しておく。また、署名検証装置30は、有効メンバー判別手段304によって、有効グループメンバーインデックスリストLに、受信したグループ署名σGSに含まれるグループメンバーインデックスIDiが存在するか否かを判別する(ステップS305)。
【0112】
有効グループメンバーインデックスリストLにグループメンバーインデックスIDiが存在する場合(ステップS305:Yes)、署名検証装置30は、検証用情報生成手段305によって、前記した式(8)に示す検証用情報(V,Ru,Rm)を生成する(ステップS306)。
【0113】
また、署名検証装置30は、グループ署名検証手段306によって、グループ公開情報gpkとグループ署名σGSとが、条件式としての前記した式(9)を満たすか否かを判別する(ステップS307)。グループ公開情報gpkとグループ署名σGSとが条件式を満たす場合(ステップS307:Yes)、署名検証装置30は、グループ署名検証手段306によって、グループ署名σGSの検証が成功したと判定し、検証結果送信手段307によって、署名検証成功メッセージを出力する(ステップS308)。
【0114】
有効グループメンバーインデックスリストLにグループメンバーインデックスIDiが存在しない場合(ステップS305:No)、署名検証装置30は、検証結果送信手段307によって、署名検証失敗メッセージを出力する(ステップS309)。また、グループ公開情報gpkとグループ署名σGSとが条件式を満たさない場合(ステップS307:No)、署名検証装置30は、検証結果送信手段307によって、署名検証失敗メッセージを出力する。
【0115】
[オープンステップ]
署名検証ステップ(ステップS10:図2参照)は、グループインデックス管理装置40が実行する動作である。図9に示すように、オープンステップでは、グループインデックス管理装置40は、オープン手段405によって、グループ署名σGSを受信し、グループ署名σGSをグループメンバーインデックスIDiと随時署名σIDiとに分離する(ステップS401)。
【0116】
また、グループインデックス管理装置40は、オープン手段405によって、随時署名σIDiが正しい署名であるか否かを検証する(ステップS402)。随時署名σIDiが正しい署名である場合(ステップS402:Yes)、グループインデックス管理装置40は、オープン手段405によって、式(4)で、会員情報識別値iを求め、これを出力する(ステップS403)。一方、随時署名σIDiが正しい署名でない場合(ステップS402:No)、グループインデックス管理装置40は、オープン手段405によって、不正な署名であることを示すメッセージを出力する(ステップS404)。
【0117】
本実施形態によれば、ランダム置換πを用いると共に、会員情報識別値iと対応付けされたグループメンバーインデックスIDiをグループ署名σGSの一部とすることにより、Linkableな性質、すなわち、異なる複数の署名が同一署名者により生成されたものであるか否かを判別できる。
【0118】
また、本実施形態によれば、前記した各式、特に、式(6)を用いることで、生成したグループ署名は、安全性の証明が可能なスタンダートモデルで、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、グループメンバー装置20の実装に必要なコストを低減できる。また、グループ管理装置10、グループメンバー装置20及び署名検証装置30によれば、Unlinkabilityを満たさない(Linkabilityを満たす)ことになるので、グループ内の所定のメンバーがそのグループを脱退する場合に、その所定のメンバーの署名のみを容易に無効化させることができる。また、新規メンバーの加入を容易に行うこともできる。さらに、Linkabilityを満たすことから、グループメンバー装置20を利用するグループメンバーが、コンテンツをネットワーク受信するときに、前回供給された状態の続きから受信することも可能となる。
【0119】
グループメンバー装置20が生成するグループ署名として、随時署名σIDiは、例えば、516ビット程度のビット長であり、グループメンバーインデックスIDiを含めてもグループ署名の署名長は596ビットであった。一方、非特許文献2に開示されたグループ署名方式では、23,709ビットである。また、「Furukawa,Imai」(非特許文献3参照)の提案する従来公知の効率的なグループ署名方式の署名長は、1711ビットである。なお、署名を付加するリクエストメッセージの任意長は別である。したがって、グループメンバー装置20が生成するグループ署名は、従来の方式で生成される署名よりも署名長を短縮することができる。その結果、グループメンバー装置20の実装に必要なコストを低減できる。
【0120】
ここで、グループメンバー装置20は、一般的なコンピュータを、前記した各手段として機能させるプログラム(署名生成プログラム)により動作させることで実現することができる。このプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。このプログラムをインストールされたコンピュータは、CPUが、ROM等に格納されたこのプログラムをRAMに展開することにより、グループメンバー装置20と同等の効果を奏することができる。また、同様に、署名検証装置30は、一般的なコンピュータを、前記した各手段として機能させるプログラム(署名検証プログラム)により動作させることで実現することができる。そして、同様に、グループインデックス管理装置40は、一般的なコンピュータを、前記した各手段として機能させるプログラム(グループインデックス管理プログラム)により動作させることで実現することができる。さらに、同様に、グループ管理装置10は、一般的なコンピュータを、前記した各手段として機能させるプログラム(グループ管理プログラム)により動作させることで実現することができる。
【符号の説明】
【0121】
1 グループ署名システム
2 会員向けコンテンツ提供サービスシステム
10 グループ管理装置
100 記憶手段
101 セットアップ初期値生成手段
102 グループ鍵生成手段
103 グループ公開情報送信手段
104 ジョインリクエスト受信手段
105 メンバー鍵生成手段
106 ライセンス送信手段
107 マスタ鍵生成手段
112 グループ公開鍵生成手段
122 秘密ライセンス情報生成手段
20 グループメンバー装置(署名生成装置)
200 記憶手段
201 公開情報受信手段
202 グループメンバーインデックス受信手段
203 ジョインリクエスト生成手段
204 ジョインリクエスト送信手段
205 ライセンス受信手段
206 ライセンス検証手段
207 乱数選択手段
209 随時署名生成手段
210 グループ署名生成手段
211 サービスリクエスト送信手段(グループ署名送信手段)
212 サービス受信手段
213 コンテンツ再生手段
30 署名検証装置
300 記憶手段
301 公開情報受信手段
302 インデックスリスト受信手段
303 グループ署名受信手段
304 有効メンバー判別手段
305 検証用情報生成手段
306 グループ署名検証手段
307 検証結果送信手段
40 グループインデックス管理装置
400 記憶手段
401 会員情報識別値受信手段(グループメンバー情報識別値受信手段)
402 グループメンバーインデックス生成手段
403 グループメンバーインデックス送信手段
404 グループ秘密鍵生成手段
405 オープン手段
50 会員情報管理サーバ
60 コンテンツサーバ
600 コンテンツ記憶手段
601 サービスリクエスト受信手段
602 検証リクエスト送信手段
603 サービス提供手段

【特許請求の範囲】
【請求項1】
サービス提供者から所定のサービスを受けることを許可されたグループに属するグループメンバーの個人情報と分離されたグループ内識別子を示すグループメンバーインデックスを生成するグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループインデックス管理装置であって、
複数の前記グループメンバーを一意に識別するグループメンバー情報識別値のリストであるグループメンバー情報識別値リストを受信するグループメンバー情報識別値受信手段と、
前記グループメンバーインデックスを前記署名生成装置と同数生成し、生成した当該グループメンバーインデックスと前記グループメンバー情報識別値とをランダム置換によって対応付けた対応付け表を生成するグループメンバーインデックス生成手段と、
前記グループメンバーインデックスを前記署名生成装置に送信するグループメンバーインデックス送信手段と、
を備えることを特徴とするグループインデックス管理装置。
【請求項2】
前記グループメンバー情報識別値受信手段は、更新された前記グループメンバー情報識別値リストを受信し、
前記グループメンバーインデックス生成手段は、前記更新されたグループメンバー情報識別値リストに含まれなくなった前記グループメンバー情報識別値に対応する前記グループメンバーインデックスを前記対応付け表から削除すると共に、グループメンバー資格が有効な前記グループメンバーの前記グループメンバー情報識別値のリストである有効グループメンバーインデックスリストを生成することを特徴とする請求項1に記載のグループインデックス管理装置。
【請求項3】
前記ランダム置換の逆変換であるグループ秘密鍵を生成するグループ秘密鍵生成手段と、
前記グループ署名を受信すると共に、前記グループ秘密鍵を用いて、受信した当該グループ署名に含まれる前記グループメンバーインデックスから、当該グループ署名を生成したグループメンバーの前記グループメンバー情報識別値を求めるオープン手段と、
をさらに備えることを特徴とする請求項1又は請求項2に記載のグループインデックス管理装置。
【請求項4】
請求項1に記載のグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおけるグループ管理装置であって、
前記グループ公開鍵を生成するグループ公開鍵生成手段と、
前記グループ公開鍵をグループ公開情報として前記署名検証装置に送信する公開情報送信手段と、
当該グループ管理装置が保管するマスタ鍵を生成するマスタ鍵生成手段と、
前記グループメンバーインデックスと前記マスタ鍵とを用いて、前記グループメンバー毎の秘密にされるメンバー鍵として、前記グループメンバー固有の秘密ライセンス情報を生成するメンバー鍵生成手段と、
を備えることを特徴とするグループ管理装置。
【請求項5】
請求項1に記載のグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名生成装置であって、
前記グループメンバー固有の秘密ライセンス情報と署名対象のリクエストメッセージとを用いて、随時署名を生成する随時署名生成手段と、
前記随時署名と前記グループメンバーインデックスとを含む前記グループ署名を生成するグループ署名生成手段と、
前記グループ署名と前記リクエストメッセージとを前記署名検証装置に送信するグループ署名送信手段と、
を備えることを特徴とする署名生成装置。
【請求項6】
請求項1に記載のグループインデックス管理装置と、前記グループメンバーによる署名であることを示すグループ署名を生成する署名生成装置と、前記グループの公開鍵であるグループ公開鍵を生成するグループ管理装置と、前記生成されたグループ署名を前記グループ公開鍵に基づいて検証する署名検証装置とを備えるグループ署名システムにおける署名検証装置であって、
前記署名生成装置で生成されたグループ署名を受信するグループ署名受信手段と、
前記グループ管理装置で生成された前記グループ公開鍵をグループ公開情報として受信する公開情報受信手段と、
前記グループ公開情報と前記グループ署名とが、予め設定された条件式を満たすか否かを判別し、当該条件式を満たす場合に前記グループ署名の検証が成功したと判定するグループ署名検証手段と、
を備えることを特徴とする署名検証装置。
【請求項7】
前記グループインデックス管理装置が生成した有効グループメンバーインデックスリストの中に、前記受信したグループ署名に含まれるグループメンバーインデックスが存在するか否かを判別し、当該グループメンバーインデックスが存在する場合、グループメンバー資格が有効であると判定する有効メンバー判別手段、をさらに備え、
前記グループ署名検証手段は、前記有効メンバー判別手段によってグループメンバー資格が有効であると判定された場合、前記条件式を満たすか否かの判定を行うことを特徴とする請求項6に記載の署名検証装置。

【図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


【公開番号】特開2010−161517(P2010−161517A)
【公開日】平成22年7月22日(2010.7.22)
【国際特許分類】
【出願番号】特願2009−1229(P2009−1229)
【出願日】平成21年1月7日(2009.1.7)
【出願人】(000004352)日本放送協会 (2,206)
【Fターム(参考)】