(57)【要約】【課題】正当性の検証が容易なグループ署名を得ること。【解決手段】メンバ証明書獲得装置１００はメンバ証明書発行装置２００と通信することで、メンバ証明書１１９とメンバ秘密鍵１１８を獲得する。メンバ証明書発行装置２００はこの通信により, メンバリスト２０３を得る。グループ署名装置３００は、メンバ証明書１１９とメンバ秘密鍵１１８と、メッセージ３０２と、グループ公開鍵１０１と、追跡用公開鍵３０１とが入力され、メッセージ３０２に対するグループ署名３１３を出力する。グループ署名検証装置４００は、グループ署名３１３がメッセージ３０２に対する正当なグループ署名であることの検証結果４０７を出力する一方、追跡装置５００は、追跡用公開鍵３０１と、グループ署名３１３と追跡用秘密鍵５０１が入力されて、グループ署名３１３を生成したものを表す、メンバの識別子１０５を出力する。【選択図】図１
2011233943.tif 000002
【特許請求の範囲】
【請求項１】
メンバ証明書獲得装置と、メンバ証明書発行装置と、グループ署名装置と、を有するグループ署名システムであって、
前記メンバ証明書獲得装置は、
署名者の識別子と、署名用の秘密鍵であるメンバ秘密鍵に基づく署名と、を含むメンバ証拠を生成するメンバ証拠生成手段と、
前記署名が正当なものであることが確認された場合に前記メンバ証拠を含むメンバ証明書を出力するメンバ証明書検証手段と、を備え、
前記メンバ証明書発行装置は、
前記メンバ秘密鍵に対応するメンバ公開鍵と前記識別子との組のリストである公開鍵リスト並びに前記メンバ証拠に基づいて、前記署名が正当なものであることを確認する署名検証手段を備え、
前記グループ署名装置は、
グループ公開鍵と、追跡用公開鍵と、前記メンバ秘密鍵と、前記メンバ証明書と、に基づいて、前記署名の暗号文を含むグループ署名を出力することを特徴とする、グループ署名システム。
【請求項２】
前記グループ署名システムは、さらに追跡装置を有し、
前記追跡装置は、
前記グループ署名と、前記追跡用公開鍵に対応する追跡用秘密鍵と、に基づいて、前記識別子を復号する復号手段を備えることを特徴とする、請求項１記載のグループ署名システム。
【請求項３】
前記グループ署名システムは、さらにグループ署名検証装置を有し、
前記グループ署名検証装置は、
前記グループ公開鍵と、前記追跡用公開鍵と、を用いて、前記グループ署名が正当なものであるか否かを検証することを特徴とする、請求項１又は２記載のグループ署名システム。
【請求項４】
署名者の識別子と、署名用の秘密鍵であるメンバ秘密鍵に基づく署名と、を含むメンバ証拠を生成するメンバ証拠生成ステップと、
前記メンバ秘密鍵に対応するメンバ公開鍵と前記識別子との組のリストである公開鍵リスト並びに前記メンバ証拠に基づいて、前記署名が正当なものであることを確認する署名検証ステップと、
前記署名が正当なものであることが確認された場合に前記メンバ証拠を含むメンバ証明書を出力するメンバ証明書検証ステップと、
グループ公開鍵と、追跡用公開鍵と、前記メンバ秘密鍵と、前記メンバ証明書と、に基づいて、前記署名の暗号文を含むグループ署名を出力するグループ署名ステップと、
を含むことを特徴とする、グループ署名方法。
【請求項５】
前記グループ署名と、前記追跡用公開鍵に対応する追跡用秘密鍵と、に基づいて、前記識別子を復号する復号ステップを含むことを特徴とする、請求項４記載のグループ署名方法。
【請求項６】
前記グループ公開鍵と、前記追跡用公開鍵と、を用いて、前記グループ署名が正当なものであるか否かを検証することを特徴とする、請求項４又は５記載のグループ署名方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グループ署名システム及び方法に関し、特に、署名者を特定する技術に関する。
【背景技術】
【０００２】
本発明に関連する双線形写像を用いたグループ署名の技術としては、非特許文献１に記されているグループ署名があげられる。当該グループ署名の概略を図７を参照して以下に説明する。図７には、グループ署名システム<1000>の全体構成を示す。
【０００３】
グループ秘密鍵<1007>は、p をある素数として、無作為に選ばれた体Z/pZ の元γとする。
グループ公開鍵<1001>は、素数p と、
位数p である群1と群2と群T と
群1と群2から群Tへの双線形写像eと
群2から群1への同型写像φと
文字列を体(Z/pZ) へと写像するハッシュ関数 Hash と
を記述する文字列と、
群2の生成子G2と、
φ(G2)=G1 なる群1の生成子G1と、
無作為に選ばれた群1 の元H と、
W = [γ]G2 とする。
但し、W はG2 のγ倍点である。
【０００４】
追跡用秘密鍵<1018>は、無作為に選ばれた体Z/pZ 上の2点、
ξ1,ξ2とする。
追跡用の公開鍵<1002>は、
[ξ1]U=[ξ2]V = H なる
群2 上の2点とする。
【０００５】
メンバ秘密鍵<1009>は、無作為に選ばれた体Z/pZ 上の点 x とする。
メンバ証明書<1008>は、無作為に選ばれた体Z/pZ 上の点 y と、
A =[1/(γ+y)]([1-x]G1) なるA とする。メンバ秘密鍵<1009>とメンバ証明書<1008>は、メンバ証明書、メンバ秘密鍵生成装置<1005>にて生成される。
【０００６】
以下、グループ署名装置<1013>を説明する。
グループ署名装置<1013>には、署名をするメッセージ<1012>と、グループ公開鍵<1001>と、追跡用公開鍵<1002>と、メンバ秘密鍵<1009>と、メンバ証明書<1008>と、乱数とが入力される。
【０００７】
グループ署名装置<1013>は、入力された乱数を用いて、無作為にZ/pZ 上の点αとβ
を選び、メンバ証拠の暗号文<1020>
T1 = [α]U
T2 = [β]V
T3 = [α+β]H +A
を生成する。
【０００８】
グループ署名装置<1013>は、さらに、入力された乱数を用いて、無作為にZ/pZ 上の点
α'とβ'とδ' 1とδ'2とy'
を選び、コミットメント
R1 = [α']U
R2 = [β']V
R3 = e(T3,G2)^(x') ・ e(H,W)^(-α'-β') ・ e(H,G2)^(-δ'1-δ'2) ・ e(H,G2)^(y')
R4 = [x']T1 -[\delta'1]U
R5 = [x']T2 -[\delta'2]V
を生成する。ここで記号「^」 は冪乗剰余算を意味する。
【０００９】
グループ署名装置<1013>は、グループ公開鍵<1001>と、追跡用公開鍵<1002>と、メッセージ<1012>と、U,V,T1,T2,T3,R1,R2,R3,R4,R5のハッシュ値を生成し、これを挑戦値 c とする。
【００１０】
グループ署名装置<1013>は、レスポンス
sα = α' + c α
sβ = β' + c β
sx = x' + c x 
sδ1 = δ'1 + c x α
sδ2 = δ'2 + c x β
sy = y' + x y
を生成する。
【００１１】
グループ署名装置<1013>は、
T1,T2,T3,c,sα,sβ,sx,sδ1,sδ2,sy
をメッセージm <1012>に対するグループ署名<1014>として出力する。
【００１２】
以下、グループ署名検証装置<1015>を説明する。
グループ署名検証装置<1015>には、署名がなされたメッセージ<1012>と、グループ公開鍵<1001>と、追跡用公開鍵<1002>と、が入力される。
【００１３】
グループ署名検証装置<1015>は、
R1 = [sα]U -[c]T1
R2 = [sβ]V -[c]T2
R3 = e(T3,G2)^(sx) ・ e(H,W)^(-sα-sβ) ・ e(H,G2)^(-sδ1- sδ2) ・ e(H,G2)^(sy) ( e(G1,G2) /e(T3,W) )^(-c)
R4 = [sx]T1 -[sδ1]U
R5 = [sx]T2 -[sδ2]U
を生成し、
グループ公開鍵<1001>と、追跡用公開鍵<1002>と、署名がなされたメッセージ<1012>と、U,V,T1,T2,T3,R1,R2,R3,R4,R5のハッシュ値を生成し、これが挑戦値 c と一致するかを確認する。一致すればグループ署名は正当、でなければ不当と判断する<1016>。
【００１４】
以下、追跡装置<1017>を説明する。
追跡装置<1017>には、メンバ証拠の暗号文<1020>を含むグループ署名<1014>と、追跡用の秘密鍵<1018>が入力される。
メンバ証拠<1019> A =T3 -[ξ1]T1-[ξ 2]T2 を計算する。
メンバ証明書に同一のA を持つ利用者を、不正者として同定する。
【非特許文献１】Dan Boneh, Xavier Boyen: Short Group Signature. Advances in Cryptology -- CRYPTO 2004, Lecture Notes in Computer Science 3152, pp. 41-55, 2004, Springer.
【発明の開示】
【発明が解決しようとする課題】
【００１５】
従来の技術が不正者を追跡する場合、追跡用の秘密鍵を用いて署名から値 A を復号し、これの対応する者を見つけなけらばならない。この対応はメンバ証明書を作成した者のみが知ることが出来る。よって、メンバ証明書を作成した者以外が追跡を行うには、メンバ証明書を作成した者に問い合わせるか、メンバの対応表を予め手にいれておく必要がある。前者の方法では、メンバ証明書を作成した者が全ての不正者追跡に関わる必要が生じ、大きなシステムでは負担となる。後者の方法では、グループに属するメンバが公開されてしまうが、これを好まぬグループメンバーが多いグループでは問題となる。
すなわち、メンバのリスト等を使わず、不正者追跡装置によりグループ署名から直接メンバの識別子が取り出せないことが問題である。
【００１６】
そこで本発明は、上記実情に鑑みて、正当性の検証が容易なグループ署名を得ることを目的とする。
【課題を解決するための手段】
【００１７】
上記目的を達成するために本発明は、以下の構成を備える。
【００１８】
本発明に係るグループ署名システムは、メンバ証明書獲得装置と、メンバ証明書発行装置と、グループ署名装置と、を有するグループ署名システムであって、前記メンバ証明書獲得装置は、署名者の識別子と、署名用の秘密鍵であるメンバ秘密鍵に基づく署名と、を含むメンバ証拠を生成するメンバ証拠生成手段と、前記署名が正当なものであることが確認された場合に前記メンバ証拠を含むメンバ証明書を出力するメンバ証明書検証手段と、を備え、前記メンバ証明書発行装置は、前記メンバ秘密鍵に対応するメンバ公開鍵と前記識別子との組のリストである公開鍵リスト並びに前記メンバ証拠に基づいて、前記署名が正当なものであることを確認する署名検証手段を備え、前記グループ署名装置は、グループ公開鍵と、追跡用公開鍵と、前記メンバ秘密鍵と、前記メンバ証明書と、に基づいて、前記署名の暗号文を含むグループ署名を出力することを特徴とする。
【００１９】
本発明に係るグループ署名方法は、署名者の識別子と、署名用の秘密鍵であるメンバ秘密鍵に基づく署名と、を含むメンバ証拠を生成するメンバ証拠生成ステップと、前記メンバ秘密鍵に対応するメンバ公開鍵と前記識別子との組のリストである公開鍵リスト並びに前記メンバ証拠に基づいて、前記署名が正当なものであることを確認する署名検証ステップと、前記署名が正当なものであることが確認された場合に前記メンバ証拠を含むメンバ証明書を出力するメンバ証明書検証ステップと、グループ公開鍵と、追跡用公開鍵と、前記メンバ秘密鍵と、前記メンバ証明書と、に基づいて、前記署名の暗号文を含むグループ署名を出力するグループ署名ステップと、を含むことを特徴とする。
【発明の効果】
【００２０】
本発明によれば、正当性の検証が容易なグループ署名を得ることが可能となる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の好適な実施の形態について図面を参照して説明する。
下記実施形態においては、グループ署名メンバの識別子の暗号文をグループ署名の一部となし、不正者追跡装置はこれを直接復号することにより不正者の識別子を抽出する。
【００２２】
図１に本実施形態の全体構成を示す。図１において、グループ署名システム<600>は、メンバ証明書獲得装置<100>と、メンバ証明書発行装置<200>と、グループ署名装置<300>と、グループ署名検証装置<400>と、追跡装置<500>とを有する構成である。図１中、長方形で囲ったブロックは、入力又は出力される情報等を示し、丸め長方形で囲ったブロックは、各装置又は手段を示す。次に、以下の説明で用いる記号等の定義を説明する。
【００２３】
p は素数とする。
群1と群2と群T をそれぞれ位数p の群とする。
群1と群2 の組から群T への双線形写像e が存在するとする。
群1, 群2, 群T は、ディフィヘルマン判別問題を解くことが困難な群とする。特に、群1, 群2 の上でこの問題が困難であるためには、群1から群2、及びその逆の同型写像が計算困難であることが必要である。
公開鍵リストには公開鍵の所有者の識別子とその公開鍵の組が並んでいるとする。
文字列を体(Z/pZ) へと写像するハッシュ関数 Hash とする。
g は群1の生成子、G は群2の生成子、Γ は群T の生成子とする。
φ, ψ をランダムに選ばれた Z/pZ の元、f,h をランダムに選ばれた群1 の生成元とする。
π をランダムに選ばれた暗号化関数、π-1 を復号関数、
Y =Gφ,Z=Gψ を生成し、グループ秘密鍵を(φ,ψ) グループ公開鍵を(群1,群2,群T,p,e,g,G,Hash,π,Y,Z,f,h) とする。
Z/pZ の元 ξ,ζ をランダムに選び、r = hξ, t = hζ を生成し、追跡秘密鍵を(ξ,ζ) と追跡公開鍵を(r,t) とする。
【００２４】
＜メンバ証明書獲得装置100＞
図２を参照するとメンバ証明書獲得装置<100>の機能構成が示されている。メンバ証明書獲得装置<100>は、メンバ証拠生成手段<103>と、署名手段<108>と、知識の証明手段<113>と、メンバ証明書検証手段<117>と、を備える。なお、メンバ証明書獲得装置<100>は、例えば、通信デバイス、入出力デバイス、演算デバイス（ＣＰＵ等）、記憶デバイス（メモリ等）を備えるコンピュータ等の情報処理装置を用いることができ、上記各手段は、これらハードウェアを利用するソフトウェアプログラムとハードウェアとの協働によって実現させることができる。
【００２５】
メンバ証明書獲得装置<100>にはグループ公開鍵<101>と識別子<105>ID と乱数<102>が入力される。
メンバ証拠作成手段<103>は入力された乱数<102>を用いて、(Z/pZ) よりメンバ秘密鍵<107> χ とω' をランダムに選ぶ。また、秘密鍵知識<104> q = fχ を生成する。署名手段<108>はq に対する識別子<105>ID を保持する者の署名<109>σ, z=q h ω' を生成する。これら (ID,q,σ)をメンバ証拠<112>と呼ぶ。メンバ証明書獲得装置<100>はメンバ証拠(ID,q,σ) をメンバ証明書発行装置<200>に送る。
【００２６】
知識の証明手段<113> は以下の様に、二式、
q = fχ, z/q= hω' を満す(χ,ω') の知識をメンバ証明書発行装置<200>に対して証明する。
[手続き始め]
入力された乱数より、χ',ω[1] (Z/pZ) よりランダムに選び、コミットメント q'= fχ', z'= h ω[2] を生成し、メンバ証明書発行装置<200>に送る。
メンバ証明書発行装置<200>より、Z/pZ の元である挑戦値 c が送られるのを待つ。
挑戦値 c を受信したならば、レスポンス
χ'' = c χ + χ', ω[3] = c ω[1] + ω[2] ,
を計算し、メンバ証明書発行装置に送る。
[手続き終わり] 
【００２７】
メンバ証明書検証手段<117>はメンバ証明書発行装置<200>より、メンバ証明書源<116> (a, α,β,ω'') が送られてくるのを待つ。
上の値を受信したならば、
ω = ω' + ω'' , b = π(ID,σ),
を計算し、
e(a,Y Gα) e(b,Z Gβ) e(fχ,G) e(hω,G)=e(g,G)
が成り立つことを確認した後に、
(a,α,b,β,χ,ω) をメンバ証明書<119>として、
χをメンバ秘密鍵<118>として、出力する。
ここで、b からπ-1(b) = (ID,σ), q=fχ とメンバ証明書から復元できる為、メンバ証明書<119> はメンバ証拠<112>を含んでいるといえる。
【００２８】
＜メンバ証明書発行装置200＞
図３を参照するとメンバ証明書発行装置<200>の機能構成が示されている。メンバ証明書発行装置<200>は、署名検証手段<208>と、知識検証手段<209>と、メンバ証明書源生成手段<211>と、を備える。なお、メンバ証明書発行装置<200>は、例えば、通信デバイス、入出力デバイス、演算デバイス（ＣＰＵ等）、記憶デバイス（メモリ等）を備えるコンピュータ等の情報処理装置を用いることができ、上記各手段は、これらハードウェアを利用するソフトウェアプログラムとハードウェアとの協働によって実現させることができる。
【００２９】
メンバ証明書発行装置<200>にはグループ公開鍵<101>、グループ秘密鍵<210>、乱数<201>、公開鍵リスト<202>、メンバリスト<203>が入力される。
署名検証手段<208>はメンバ証拠(ID,q,σ,z)<112> がメンバ証明書獲得装置<100>より送られるのを待つ。
署名検証手段<208>は署名<109>σ が秘密鍵知識<104> q に対する IDの正当な署名であることを、公開鍵リスト<202>を用いて確認する。
【００３０】
知識検証手段<209>は以下の手続きにより、二式、
q = fχ, z/q= hω' を満す(χ,ω') の知識をメンバ証明書獲得装置<100>が保持していることを検証する。
[手続き始め]
コミットメント(q',z') がメンバ証明書獲得装置<100>より送られてくるのを待つ。
送られてきたならば、入力された乱数より、挑戦値c を(Z/pZ) よりランダムに選びメンバ証明書獲得装置<100>に送付する。
レスポンス (χ'',ω[3])、がメンバ証明書獲得装置<100>より送られてくるのを待つ。
送られてきたならば、
gχ''= qc q', hω[3] = (z/q)c z'
が成り立つことを確認する。
[手続き終わり] 
【００３１】
メンバ証明書源生成手段<211>は、入力された乱数より、Z/pZ の元 α, β, ω'' を選び、
a = (g f-1 h-ω'' π(ID,σ) ψ+ β) φ+ α
を生成し、(a,α,β, ω'') をメンバ証明書源<212>として、メンバ証明書獲得装置<100>に送る。
また、メンバ証明書発行装置<200>は、識別子IDをメンバリストに追加して、メンバリスト<203>を出力する。
【００３２】
＜グループ署名装置300＞
図４を参照するとグループ署名装置<300>の機能構成が示されている。グループ署名装置<300>は、暗号化手段<303>と、知識の証明文生成手段<308>と、を備える。なお、グループ署名装置<300>は、例えば、通信デバイス、入出力デバイス、演算デバイス（ＣＰＵ等）、記憶デバイス（メモリ等）を備えるコンピュータ等の情報処理装置を用いることができ、上記各手段は、これらハードウェアを利用するソフトウェアプログラムとハードウェアとの協働によって実現させることができる。
【００３３】
グループ署名装置<300>にはグループ公開鍵<101>(群1,群2,群T,p,e,g,G,Hash,π,Y,Z,f,h)、追跡用公開鍵<301>(r,t)、メンバ証明書<119> (a,α,b,β,χ,ω)、メンバ秘密鍵<118> χ、メッセージ<302> m 、乱数<303>が入力される。
暗号化手段<303>は体 Z/pZ より ρ,τ,θ をランダムに選び、秘密鍵知識<104>に係る秘密鍵知識の暗号文<304> 
(v',m',n')=(fχ hτ,rτ,tτ )
と、秘密鍵知識<104>に対する署名<109>に係る署名の暗号文<305>
(v,m,n) =(b hρ,rρ,tρ)
とメンバ証明書の一部のコミットメント
u = a hθ
を生成する。
【００３４】
知識の証明文生成手段<308>で以下の処理を行う。
以下の処理は以下の式 (v,m,n) = (b hρ,rρ,tρ)
(v',m',n') = (fχ hτ,rτ,tτ)
e(g,G)e(u,Y)-1 e(v,Z) -1 = e(f,G)χ e(u,G)αe(v,G)β e(h,Y)-θ e(h,Z)-ρe(h,G)ω を満す
(χ,α,β,θ,ρ,τ,ω)
の知識の証明である。
[知識の証明文生成始め] 
コミットメント生成手段（不図示）を用いて、
体 Z/pZ より ρ',τ',θ',χ',α',β', ω' をランダムに選び、コミットメント
Δ = e(f,G)χ' e(u,G)α'e(v,G)β' e(h,Y)-θ' e(h,Z)-ρ'e(h,G)ω'
m* = rρ'
n* = tρ'
v'* =fχ' hτ'
m'* = rτ'
n'* = tτ'
を生成する。
(Δ,m*,n*,v'*,m'*,n'*) をコミットメントとする。
挑戦値生成手段（不図示）を用いて、挑戦値
c = Hash(p,g,G,π,Y,Z,f,h,r,t,v,m,n,v',m',n',u,Δ,m*,n*,v'*,m'*,n'*,m)
を生成する。
レスポンス生成手段（不図示）を用いて、
χ'' =χc +χ', α'' =αc +α', β'' =βc +β', θ'' =θc +θ', ρ''= ρc +ρ', τ''= τc +τ', ω''= ωc + ω'
を生成する。
( χ'',α'',β'',θ'',ρ'',τ'',ω'')をレスポンスとする。
上記コミットメントとレスポンスを知識の証明文<309> fsp とする。
[知識の証明文生成終わり] 
【００３５】
グループ署名装置<300>は、(v,m,n,v',m',n',u,fsp) をメッセージ<302>m に対するグループ署名<313>として出力する。
【００３６】
＜グループ署名検証装置400＞
図５を参照するとグループ署名検証装置<400>の機能構成が示されている。グループ署名検証装置<400>は、知識の検証手段<401>と、挑戦値生成手段<402>と、を備える。なお、グループ署名検証装置<400>は、例えば、通信デバイス、入出力デバイス、演算デバイス（ＣＰＵ等）、記憶デバイス（メモリ等）を備えるコンピュータ等の情報処理装置を用いることができ、上記各手段は、これらハードウェアを利用するソフトウェアプログラムとハードウェアとの協働によって実現させることができる。
【００３７】
グループ署名検証装置<400>にはグループ公開鍵<101>(群1,群2,群T,p,e,g,G,Hash,π,Y,Z,f,h)、追跡用公開鍵<301> (r,t)、メッセージ<302> m 、グループ署名<313> (v,m,n,v',m',n',u,fsp)が入力される。
但し、fsp =(Δ,m*,n*,v'*,m'*,n'*,χ'',α'',β'',θ'',ρ'',τ'',ω'')とする。
なお、グループ署名<313>には、秘密鍵知識の暗号文<304> (v',m',n')=(fχ hτ,rτ,tτ )と、秘密鍵知識に対する署名の暗号文<307>(v,m,n) =(b hρ,rρ,tρ)が含まれている。
【００３８】
知識の検証手段<401>は、挑戦値生成手段<402>を用いて、挑戦値
c = Hash(p,g,G,π,Y,Z,f,h,r,t,v,m,n,v',m',n',u,Δ,m*,n*,v'*,m'*,n'*,m)
を生成する。
また、知識の検証手段<401>は、以下の式、
(e(g,G)e(u,Y)-1 e(v,Z) -1)cΔ = e(f,G)χ'' e(u,G)α''e(v,G)β'' e(h,Y)-θ'' e(h,Z)-ρ''e(h,G)ω''
mc m* = rρ''
nc n* = tρ'
v'c v'* = fχ'' hτ''
m'c m'* = rτ''
n'* n'* = tτ''
が成り立つことを確認する。
これが成り立てば 「正当」 を、でなければ 「不当」を出力する<407>。
【００３９】
＜追跡装置500＞
図６を参照すると追跡装置<500>の機能構成が示されている。追跡装置<500>は、復号手段<503>と、復号正当性証明手段<510>と、署名検証手段<513>と、を備える。なお、追跡装置<500>は、例えば、通信デバイス、入出力デバイス、演算デバイス（ＣＰＵ等）、記憶デバイス（メモリ等）を備えるコンピュータ等の情報処理装置を用いることができ、上記各手段は、これらハードウェアを利用するソフトウェアプログラムとハードウェアとの協働によって実現させることができる。
【００４０】
追跡装置<500>には公開鍵リスト<202>、グループ公開鍵<101>(群1,群2,群T,p,e,g,G,Hash,π,Y,Z,f,h)、追跡用公開鍵<301> (r,t)、追跡秘密鍵<501>(ξ,ζ)、メッセージ<302> m、グループ署名<313> (v,m,n,v',m',n',u,fsp)が入力される。
但し、fsp =(Δ,m*,n*,v'*,m'*,n'*,χ'',α'',β'',θ'',ρ'',τ'',ω'')とする。
なお、グループ署名<313>には、秘密鍵知識の暗号文<304> (v',m',n')=(fχ hτ,rτ,tτ )と、秘密鍵知識に対する署名の暗号文<307>(v,m,n) =(b hρ,rρ,tρ)が含まれている。
【００４１】
復号手段<503>は追跡用の秘密鍵<501> を用いて、秘密鍵知識の暗号文<304> と秘密鍵知識に対する署名の暗号文<307> とから、メンバ証拠の一部である秘密鍵知識<504>と秘密鍵知識に対する署名<507>を以下のように復号する。すなわち、復号手段<503>は
q = v' m'-ξ, b = v m-ξ, (ID,σ)=π-1(b)
を生成する。
【００４２】
復号正当性証明手段<510>は(q,b) が暗号文(v',v',v,m) の復号結果であることの証明文を生成する。生成した証明文を復号の正当性証明文<511>と呼ぶ。署名検証手段<513>は公開鍵リスト<202>にある、ID に対応する公開鍵を用いて署名 σ が q に対する正当な署名であることを確認する。追跡装置<500>は復号の正当性証明<514>と、q,b, 署名者の識別子<105> ID とを出力する。
【００４３】
＜グループ署名システム600＞
再度、図１を参照する。図１において、メンバ証明書獲得装置<100>はメンバ証明書発行装置<200>と通信することで、メンバ証明書<119>とメンバ秘密鍵<118>を獲得する。メンバ証明書発行装置<200>はこの通信により、メンバリスト<203>を得る。
グループ署名装置<300>は、メンバ証明書獲得装置<100>が獲得したメンバ証明書<119>と、同じくメンバ証明書獲得装置<100>が獲得したメンバ秘密鍵<118>と、メッセージ<302>と、グループ公開鍵<101>と、追跡用公開鍵<301>とが入力され、メッセージ<302>に対するグループ署名<313>を出力する。
【００４４】
グループ署名検証装置<400>は、メッセージ<302>とグループ公開鍵<101>と追跡用公開鍵<301>と、グループ署名<313>とが入力され、グループ署名<313>がメッセージ<302>に対する正当なグループ署名であることの検証結果<407>を出力する。
追跡装置<500>は、追跡用公開鍵<301>と、グループ署名<313>と追跡用秘密鍵<501>が入力されて、グループ署名<313>を生成したものを表す、メンバの識別子<105>を出力する。
【００４５】
＜本実施形態の効果＞
本実施形態においては、メンバ証明書獲得装置１００がメンバ証明書発行装置２００と通信して獲得したメンバ証明書１１９とメンバ秘密鍵１１８を用いて、グループ署名装置３００がグループ署名３１３を生成する。生成されたグループ署名３１３は、グループ署名検証装置４００でその正当性を容易に検証できることに加え、追跡装置５００を用いれば署名者の識別子１０５が直接グループ署名３１３より抽出することができる。換言すれば、グループ署名メンバの識別子の暗号文をグループ署名の一部となしているため、不正者追跡装置はこれを直接復号することにより不正者の識別子を抽出することができる。
【００４６】
以上、本発明の好適な実施の形態について説明したが、本発明はこれに限定されるものではなく、要旨を逸脱しない範囲内で種々の変形実施が可能である。
【図面の簡単な説明】
【００４７】
【図１】本発明の実施形態の全体構成を示すブロック図である。
【図２】本発明の実施形態に係るメンバ証明書獲得装置の機能構成を示すブロック図である。
【図３】本発明の実施形態に係るメンバ証明書発行装置の機能構成を示すブロック図である。
【図４】本発明の実施形態に係るグループ署名装置の機能構成を示すブロック図である。
【図５】本発明の実施形態に係るグループ署名検証装置の機能構成を示すブロック図である。
【図６】本発明の実施形態に係る追跡装置の機能構成を示すブロック図である。
【図７】従来のグループ署名の技術を説明するための図である。
【符号の説明】
【００４８】
１００    メンバ証明書獲得装置
１０１    グループ公開鍵
１０２    乱数
１０３    メンバ証拠生成手段
１０４    秘密鍵知識
１０５    識別子
１０７    メンバ秘密鍵
１０８    署名手段
１０９    署名
１１２    メンバ証拠
１１３    知識の証明手段
１１７    メンバ証明書検証手段
１１８    メンバ秘密鍵
１１９    メンバ証明書
２００    メンバ証明書発行装置
２０１    乱数
２０２    公開鍵リスト
２０３    メンバリスト
２０８    署名検証手段
２０９    知識検証手段
２１１    メンバ証明書源生成手段
２１２    メンバ証明書源
３００    グループ署名装置
３０１    追跡用公開鍵
３０２    メッセージ
３０３    暗号化手段
３０４    秘密鍵知識の暗号文
３０５    署名の暗号文
３０８    知識の証明文生成手段
３０９    知識の証明文
３１３    グループ署名
４００    グループ署名検証装置
４０１    知識の検証手段
４０２    挑戦値生成手段
５００    追跡装置
５０３    復号手段
５０４    秘密鍵知識
５０７    秘密鍵知識に対する署名
５１０    復号正当性証明手段
５１１    復号の正当性証明文
５１３    署名検証手段
５１４    復号の正当性証明
【図１】
2011233943.tif 000003
【図２】
2011233943.tif 000004
【図３】
2011233943.tif 000005
【図４】
2011233943.tif 000006
【図５】
2011233943.tif 000007
【図６】
2011233943.tif 000008
【図７】
2011233943.tif 000009