專利名稱:群簽名系統、裝置以及程序的制作方法
技術領域:
本發明涉及群簽名系統、裝置以及程序,例如涉及能夠減少計算量來提高計算速 度的群簽名系統、裝置以及程序。
背景技術:
群簽名方式,作為具有匿名性的電子簽名,在1991年由Chaum等提出。在通常的 電子簽名方式中,用于驗證簽名的公開密鑰和用于生成簽名的私密密鑰一一對應,因此不 具有簽名生成者的匿名性。與此相對,在群簽名方式中,用于驗證簽名的群公開密鑰和用于生成簽名的成員 私密密鑰以1對η的方式對應,因此具有簽名生成者的匿名性。即,群簽名方式中,1個群公 開密鑰和η個成員私密密鑰對應,因此具有當驗證簽名時無法確定簽名生成者的性質。另 外,群簽名方式具有僅作為特權者的群管理者可以確定簽名者的性質。但是,最初的群簽名方式,簽名長度或簽名生成計算量與成員數量成比例,因此具 有大量成員的群中的效率非常低,不適合運用。與此相對,1997年由Camenisch等人提出了效率不取決于成員數量的群簽名方 式。在該方式中,把與成員私密密鑰對應的群管理者的簽名用作成員證書(membership certificate)。在群簽名中包含通過群管理者的公開密鑰被加密的成員證書(或其一部 分);和表示成員證書被正確地加密、以及保持成員私密密鑰以及成員證書的非對話的知 識證明。簽名驗證者通過非對話的知識證明的驗證,可以驗證是成員的簽名。而且,群管理 者通過成員證書的解密,可以確定簽名者。使用這樣的成員證書的概念,是成為此后的群簽 名方式的基礎的重要概念。但是,該Camenisch等人的方式,盡管效率不取決于成員數量,但從實用的觀點來 看是低效率的方式。高效的(practical)的最初的群簽名方式,是2000年由Ateniese等人提出的方 式(以下稱為[ACJT00]方式)。Ateniese的群簽名方式大幅度地被高效化,故此就能夠研 究實用化。Ateniese的群簽名方式,當生成簽名時需要RSA簽名生成的200倍左右的計算 量,因此繼續研究改良。Ateniese的方式的安全性基于強RSA問題(strong-RSA problem)。現在已知的高速群簽名方式為以下三種方式。一個是2004年由Camenisch等人提 出的方式(例如參照 J. Camenisch and J. Groth, "Group Signatures :BetterEfficiency and New Theoretical Aspects,,Forth Int. Conf. on Security inCommunication Networks-SCN2004, LNCS3352, pp. 120-133,2005.。以下稱為[CG04]方式。全文能夠 從以下URL取得(2008年3月當前)http //www. brics. dk/ jg)。[CG04]方式的簽 名生成計算量減少到RSA簽名生成的8倍左右。[CG04]方式的安全性也基于強RSA問 題。第二個是2005年由古川等人提出的方式(例如參照J. Furukawa and H. Imai, "An Efficient GroupSignature Scheme from Bilinear Maps, "ACISP 2005, LUCS3574, PP. 455-467,2005.。以下稱為[FI05]方式。)。第三個是由Delerablee等人提出的方式(例如參照 C. Delerablee and D. Pointcheval, "Dynamic Fully AnonymousShort Group Signatures” VIETCRYPT,LNCS 4341,ppl93_210,2006.。以下稱為[DP06]方式)。[FI05] 方式和[DP06]方式利用雙線性映射,其安全性基于雙線性群中的假設。群簽名在高速化方面取得進步,另一方面,高功能化也取得進步。重要的功能之 一考慮到撤銷功能。在開展利用了群簽名的服務的方面,作為用于實現成員從服務的退會 或強制排除不正當的成員的功能,插銷是非常重要的。上述[CG04]方式、[FI05]方式和 [DG06]方式都具有撤銷功能。作為用于實現更高安全性和靈活的群管理的方法,也研究了可以針對每種群管理 功能改變進行處理的秘密信息來分割權限的方式。具體來說,以往考慮了分割給擔當全部 由群管理者進行的成員私密密鑰生成、簽名者確定、撤銷的各個功能的成員密鑰生成者、簽 名者確定者、撤銷管理者的方式。另外,也考慮到驗證者可以確認由群管理者和簽名者確定者恰當地進行了簽名者 確定的、被稱為不可陷害性(Νοη-Frameability)的性質。而且,也提出了僅在簽名者希望的情況下可以向驗證者證明某簽名由該簽名者生 成的、被稱為自身追蹤性(Self-Traceability)的性質。
發明內容
根據本發明人的研究,在具有撤銷功能的同時,具有比[CG04]方式、[FI05]方式 和[DP06]方式減少計算量來使計算速度提高的余地。本發明的目的是提供可以在實現撤銷功能的同時減少計算量來提高計算速度的 群簽名系統、裝置以及程序。本發明的一個方面,是一種群簽名系統,其具備互相可以通信的群管理者裝置、簽 名者裝置以及驗證者裝置,各裝置使用群簽名方式。其中,所述群管理者裝置具備參數存 儲單元,其存儲包含在所述群簽名方式中使用的素數位數q、以及所述q的乘法循環群gG的 生成源G1的公開參數;群密鑰生成單元,其根據所述參數存儲單元內的公開參數,生成包含 值a、b e Ζ;的群私密密鑰、和包含滿足第一關系式G2 = G13以及第二關系式F = G113的值 G2, F以及所述生成源G1的群公開密鑰;成員私密密鑰生成單元,其根據所述群私密密鑰、 所述群公開密鑰以及第三關系式kn = b_aki2 mod q,計算由滿足第四關系式F = G1^kiJ G2" {ki2}的代表kn、ki2組成的成員私密密鑰,其中,是表示冪運算的記號;簽名者確 定信息計算單元,其根據所述成員私密密鑰以及所述生成源gl,計算簽名者確定信息Ti = GrikilI ;撤銷列表生成單元,其生成包含與被撤銷的成員對應的代表的一部分kn的撤銷 列表;以及將所述撤銷列表發送給所述驗證者裝置的單元。所述簽名者裝置具備簽名者 用存儲單元,其存儲包含在所述群簽名方式中使用的素數位數q以及所述q的乘法循環群G 的生成源^的公開參數、和所述群公開密鑰、所述成員私密密鑰、所述簽名者確定信息Ti以 及消息;加密文生成單元,其根據所述簽名者用存儲單元內的公開參數以及群公開密鑰,將 所述簽名者確定信息Ti加密,生成該簽名者確定信息Ti的加密文數據;零知識證明生成單 元,其根據所述簽名者用存儲單元內的公開參數、所述群公開密鑰、所述成員私密密鑰以及 所述消息和所述簽名者確定信息Ti的加密文數據,生成零知識證明,該零知識證明表示已 知該成員私密密鑰,并且根據該簽名者確定信息Ti正確地生成了所述加密文數據以及將由所述加密文數據以及所述零知識證明構成的群簽名和所述消息發送到所述驗證者裝置的 單元。所述驗證者裝置具備驗證者用存儲單元,其存儲包含在所述群簽名方式中使用的素 數位數q、以及所述q的乘法循環群G的生成源gl的公開參數和所述群公開密鑰;分別從所 述群管理者裝置接收所述撤銷列表,從所述簽名者裝置接收所述群簽名以及消息的單元; 驗證單元,其根據所述接收到的撤銷列表和群簽名以及消息和所述驗證者用存儲單元內的 公開參數以及群公開密鑰,驗證該群簽名的正當性;將所述驗證的結果發送到所述簽名者 裝置的單元;以及根據需要,為了確定簽名者而向群管理者裝置發送消息和群簽名的單元。根據第一方面,使用素數位數q的乘法循環群gG作為完全的基于離散對數的群簽 名方式,并且把代表kn、ki2作為成員私密密鑰,實現了把被撤銷的成員的代表的一部分kn 包含在撤銷列表中的群簽名方式,由此,與現有的[CG04]方式、[FI05]方式和[DP06]方 式相比,可以減少計算量來提高計算速度。而且,在本發明的群簽名中,可以把群管理者功 能分割給成員私密密鑰生成者、簽名者確定者、撤銷管理者,可以同時實現比現有的不可陷 害性(Non-Frameability)稍弱的弱不可陷害性(WeakNon-Frameability)和自身追蹤性 (Self-Traceability)。此外,以上的方面作為由各裝置構成的“系統”而表現出來,但不限于此,也可以作 為各裝置的集合和每個裝置的“裝置”、“程序”、“計算機可讀取存儲介質”或“方法”表現出來。
圖1是表示本發明的一個實施方式的群簽名系統的結構的示意圖。圖2是表示該實施方式中的群管理者裝置的結構的示意圖。圖3是表示該實施方式中的群管理者用存儲部的結構的示意圖。圖4是表示該實施方式中的簽名者裝置的結構的示意圖。圖5是表示該實施方式中的簽名者用存儲部的結構的示意圖。圖6是表示該實施方式中的驗證者裝置的結構的示意圖。圖7是表示該實施方式中的驗證者用存儲部的結構的示意圖。圖8是用于說明該實施方式中的密鑰對的生成處理的流程圖。圖9是用于說明該實施方式中的成員私密密鑰的生成處理的流程圖。圖10是用于說明該實施方式中的簽名者確定信息的計算處理的流程圖。圖11是用于說明該實施方式中的加密處理的流程圖。圖12是用于說明該實施方式中的零知識證明的計算處理的流程圖。圖13是用于說明該實施方式中的簽名驗證處理的流程圖。圖14是用于說明該實施方式中的撤銷驗證處理的流程圖。圖15是用于說明該實施方式中的簽名者同一性證明·驗證處理的順序圖。圖16是用于說明該實施方式中的簽名驗證處理的流程圖。圖17是用于說明該實施方式中的簽名者確定處理的流程圖。圖18是用于說明該實施方式中的簽名者信息正當性證明生成處理的流程圖。圖19是用于說明該實施方式中的簽名者信息正當性證明驗證處理的流程圖。圖20是用于說明該實施方式中的撤銷列表生成處理的流程圖。
圖21是將該實施方式的效果與現有技術進行比較來表示的圖。圖22是表示該實施方式中的成員私密密鑰生成者的結構的示意圖。圖23是表示該實施方式中的成員私密密鑰生成者用存儲部的結構的示意圖。圖24是表示該實施方式中的簽名者確定裝置的結構的示意圖。圖25是表示該實施方式中的簽名者確定裝置用存儲部的結構的示意圖。圖26是表示該實施方式中的撤銷管理者裝置的結構的示意圖。圖27是表示該實施方式中的撤銷管理者用存儲部的結構的示意圖。圖28是表示該實施方式中的簽名者同一性證明裝置的結構的示意圖。圖29是表示該實施方式中的簽名者同一性證明用秘密信息存儲部的結構的示意 圖。
具體實施例方式以下,參照附圖詳細說明本發明的一個實施例,但是,在此之前對本發明的一個實 施例所涉及的群簽名方式(以下稱為實施例方式)的概要進行說明。實施例方式最大的優點是效率極高。在使用了作為高速地進行冪剩余運算的方法 的指數同時乘算(Simultaneous Multiple Exponentiation)法的情況下,[CG04]方式是 RSA簽名生成的8倍以上的計算量,與之相對,在實施例方式中,能夠以RSA簽名生成的僅4 倍左右的計算量進行簽名生成。另外,在指數同時乘算中,需要根據底的值進行表的事前計 算,但是在實施例方式中,冪剩余運算的底始終固定,因此沒必要每次進行表的事前計算, 通過保存表可以進一步減少一些計算量。此外,利用雙線性映射的[FI05]方式和[DP06] 方式,根據雙線性映射的實施,計算速度有很大不同,因此無法簡單地進行比較,但這些方 式即使考慮當前最快的雙線性映射實施技術,也是與[CG04]方式相同程度的速度,因此實 施例方式足夠高速。而且,實施例方式在簽名生成中利用的成員私密密鑰非常短,其比特長僅為 [CG04]方式的1/10,RSA方式的1/9。[ACJT00]方式或[CG04]方式的安全性基于強RSA問題,[FI05]方式和[DP06] 方式基于雙線性群中的假設,與之相對,實施例方式的安全性基于DDH(Decisional Diffie-Hellman)問題。與此相伴,實施例方式即使在橢圓曲線上也可以高效率地實施,可 以大幅度縮短簽名長度以及密鑰長度,高速化成為可能。實施例方式作為僅基于DDH問題 的高效率的群簽名,是最初的方式。而且,實施例方式可以通過簡單的運算的組合來實施, 因此可以期待在大范圍的平臺上的應用。在實施例方式中,可以將群管理者功能分割給成員私密密鑰生成者、簽名者確定 者、撤銷管理者,可以同時實現稍微減弱現有的不可陷害性(Non-Frameability)而得到的 弱不可陷害性(Weak Νοη-Frameability)和自身追蹤性(Self-Traceability)。<群簽名>以下,對成為實施例方式的前提的群簽名的功能和安全性進行定義。[群簽名的功能]高效率的現有方式幾乎全部把與成員私密密鑰對應的群管理者的簽名用作成員 證書。在實施例方式中不利用群管理者的簽名,因此,為了與現有方式的成員證書進行區別,而使用簽名者確定信息(tracing information)這樣的用語。在群簽名中包含被加密 的簽名者確定信息、表示簽名者確定信息被正確加密的非對話的知識證明、表示具有成員 私密密鑰以及簽名者確定信息的非對話的知識證明,這點與利用了成員證書的方式相同。群簽名方式GS由以下8個多項式時間算法GKg、MKg、GSig、GVf、Claim、Open、 Judge、Revoke 構成。[群密鑰組生產算法GKg]群密鑰組生成算法GKg,是把安全參數k作為輸入,用于生成群公開密鑰gpk、成員 私密密鑰生成用私密密鑰ik和簽名者確定用私密密鑰ok然后輸出的、由群管理者執行的 概率的多項式時間算法。[成員私密密鑰生成算法MKg]把群的最大成員數設為n,把成員的ID設為l,...n。成員私密密鑰生成算法MKg 是把群公開密鑰gpk、成員私密密鑰生成用私密密鑰ik、成員的ID = i e {Ι,.,.η}作為輸 入,用于生成成員私密密鑰gsk[i]、與之對應的簽名者確定信息Ti和撤銷令牌grt [i]然后 輸出的,由群管理者或者成員私密密鑰生成者執行的概率的多項式時間算法。[簽名生成算法GSig]簽名生成算法GSig,是把群公開密鑰gpk、成員私密密鑰gsk[i]、簽名者確定信息 Ti、消息msg作為輸入,用于生成群簽名σ并輸出的、由簽名者執行的概率的多項式時間算法。[簽名驗證算法GVf]簽名驗證算法GVf,是把群公開密鑰gpk、消息msg、群簽名σ和撤銷列表RL作為 輸入,用于當簽名正確時輸出有效(valid)、當不正確時輸出無效(invalid)的、由驗證者 執行的確定的多項式時間算法。[簽名生成證明算法Claim]簽名生成證明算法Claim,是用于實現自身追蹤性(Self-Traceability)的、簽名 者和驗證者之間的二者間對話的協議。群公開密鑰gpk、消息msg、群簽名σ是對二者的共 同輸入,將成員私密密鑰gsk[i]作為秘密信息提供給簽名者。在協議的最后,驗證者輸出 表示該群簽名ο是否由執行了對話的協議的簽名者生成的真(true)或偽(false)。[簽名者確定算法Open]簽名者確定算法Open,是把群公開密鑰gpk、群私密密鑰gmsk、消息msg、群簽名ο 作為輸入,用于當簽名正確時輸出生成了該簽名的用戶的ID = i和簽名者信息正當性證明 τ,當不正確時輸出無效(invalid)的、由群管理者或簽名確定者執行的概率的多項式時 間算法。此外,群私密密鑰gmsk由成員私密密鑰生成用私密密鑰ik(a、b)以及簽名者確定 用私密密鑰Ok(XrXyy^yyZ)構成。[簽名者確定結果驗證算法Judge]簽名者確定結果驗證算法Judge,是把群公開密鑰gpk、群簽名ο、根據該簽名確 定的用戶的ID= i和簽名者信息正當性證明τ作為輸入,用于輸出表示是否正確進行了 簽名者確定的真(true)或偽(false)的、由驗證者執行的確定的多項式時間算法。[成員撤銷算法Revoke]成員撤銷算法Revoke,是把撤銷令牌的集合grt_Set和被撤銷的用戶的ID的集合RU作為輸入,用于生成撤銷列表RL并輸出的、由群管理者或撤銷管理者執行的確定的多項 式時間算法。[群簽名的安全性]關于群簽名的安全性,最初定義了大量要件。此后,Bellare等人整理了靜態群 (static group)、以及動態群(dynamic group)的群簽名的安全性的要件。此外,所謂靜態 群,是指不具有成員的追加、刪除功能,一旦一次生成群沒有成員的變更的群,所謂動態群 是指有該變更的群。在此,Bellare的要件非常嚴格,考慮到了針對群成員全體的串通的安 全性。因此,一般弱化Bellare的要件來定義安全性。在此,根據Bellare的要件,對沒有 群管理者或成員的串通的情況下的安全性進行再定義。當具有以下的正當性(correctness)、匿名性(anonymity)、可追蹤性 (traceability)、弱不可陷害性(Weak Νοη-Frameability)四種性質時,稱群簽名方式GS 是安全的。[1.正當性(correctness)]GVf (gpk, msg, GSig(gsk[i], msg)) = valid,并且,Open(gmsk, msg, GSig(gsk[i], msg)) =i,[l|]正確地生成的簽名,通過簽名驗證算法GVf在驗證中成功,通過簽名者確定算法 Open可以確定簽名者。[2.匿名性(anonymity)]考慮以下的攻擊。(1)啟動執行密鑰生成算法GKg (l~k),而且,對i e {Ι,.,.,η}執行成員私密密 鑰生成算法MKg,生成群公開密鑰gpk、成員私密密鑰生成用私密密鑰ik和簽名者確定用私 密密鑰ok、成員私密密鑰的集合gsk_set、簽名者確定信息的集合T_set、撤銷令牌的集合 grt_set,向舌夂手(adversary) A 提供 gpk、T_set、gsk[u]。(2)質問(queries)敵手A可以進行針對GSig、0pen、Revoke、Claim的任意質問。(3)挑戰(Challenge)敵手A輸出消息msg和用戶ID i0、il。此時,并非u =i0或者U= il。挑戰者(Challenger)隨機地選擇用戶ID b — {0,1},計算群簽名 σ * — GSig (gpk, gsk[ib],msg)然后返回給敵手 A。(4)被限定的質問(restricted queries)敵手A除以下兩個制約(a) (b)以夕卜, 可以進行針對GSig、0pen、Revoke、Claim的任意的質問。(a)關于i0或il,不能對Revoke 進行質問。(b)關于σ,不能對Open或Claim進行質問。(5)輸出(output)敵手 A 輸出 b,。當對于全部多項式時間算法A可以忽略概率|Pr[b = b’]_l/2|時,稱群簽名方式 具有匿名性(anonymity)。[3.可追蹤性(traceability)]考慮以下的攻擊。(1)啟動(setup)執行密鑰生成算法GKg (l~k),而且對i e {1,···,n}執行成員 私密密鑰生成算法MKg,生成群公開密鑰gpk、成員私密密鑰生成用私密密鑰ik和簽名者確 定用私密密鑰ok、成員私密密鑰的集合gsk_set、簽名者確定信息的集合T_set、撤銷令牌 的集合 grt_set,向舌夂手(adversary) A 提供 gpk、ok、grt_set、T_set、gsk[u]。
(2)質問(queries)敵手A可以進行針對GSig、Claim的任意的質問。(3)應答(response)敵手A輸出消息msg*和群簽名σ *。簽名者確定算法Open 的結果為0pen(gmsk, msg*, σ *) = i興u,當i、msg*未在簽名質問(signingquery)中指 定時,稱“敵手A在攻擊中成功”。當全部多項式時間算法A的成功概率可以忽視時,稱群簽 名方式具有可追蹤性(traceability)。[4.弱不可陷害性(Weak Non-Frameability)]在Bellare的不可陷害性的定義中,考慮到群管理者或成員私密密鑰生成者的不 正當行為,但本發明中不考慮該不正當行為,如以下所示,作為弱不可陷害性來弱化定義。考慮以下的攻擊。(1)啟動(setup)執行密鑰生成算法GKg (l~k),而且對i e {1,···,n}執行成員 私密密鑰生成算法MKg,生成群公開密鑰gpk、成員私密密鑰生成用私密密鑰ik和簽名者確 定用私密密鑰ok、成員私密密鑰的集合gsk_set、簽名者確定信息的集合T_set、撤銷令牌 的集合 grt_set,向舌夂手(adversary) A 提供 gpk、ok、grt_set、T_set、gsk[u]。(2)質問(queries)敵手A可以進行針對GSig、Claim的任意的質問。(3)應答(response)敵手A輸出消息msg*、群簽名σ *、用戶ID = i*和簽名者 信息正當性證明τ*。簽名驗證算法GVf的結果為GVf(gpk,msg*,σ *) = valid,并且i*乒u,并且 Judge (gpk, i氺,msg氺,σ Φ, τ Φ) = ture,當 i氺、msg氺名MfnI (signing query)中U 指定時,稱“敵手A在攻擊中成功”。當全部多項式時間算法A的成功概率可以忽視時,稱群 簽名方式具有弱不可陷害性(Weak Non-Frameability)。〈準備〉以下,在理解實施例方式的基礎上對重要的DDH(decisionalDiffie-Hellman)問 題、代表(representation)、Cramer-Shoup 力口密進行說明。[DDH 問題]將素數位數q的乘法循環群設為G。將隨機的4個組(quadruples) (G1, G2, U1, U2) e gG4的分布設為R。隨機地選擇G1, G2 e gG和r e Zq*,將U1 = Gr, U2 = Glr的4個組 (G1, G2, U1, U2) e gG4的分布設為D0此時,把區分任意提供的4個組(G1, G2, U1, U2)屬于分 布R、D的哪個的問題稱為DDH問題。實施例方式的安全性歸結于DDH問題的困難性。另外,若可以解決離散對數問題(discrete logarithm problem),則可以解決DH 問題(Diffie-Hellman problem),若可以解決DH問題則可以解決DDH問題。DH問題是根 據所提供的G、G\ Gy計算Gxy的問題。離散對數問題是根據所提供的G、Gx計算χ的問題。 上述DDH問題、DH問題以及離散對數問題被認為都難以解決。[代表(representation)]在乘法循環群G上的運算中,把滿足H = G1-IeJG2-Ie2L^Gk-Ie1J的(ei,e2,..., ek)稱為以G1, G2, ...,Gk為底的H的代表。此外,是表示冪運算的記號。在加密理論的領域中,從前作為緩和離散對數(relaxed discrete Iog(RDL))使 用代表,此后也經常使用。在1997年的Camenisch的方式中使用應用了 Schnorr簽名的代 表的非對話的知識證明。在實施例方式中把成員私密密鑰設為代表,在群簽名中包含關于 代表的非對話的知識證明。
[Cramer-Shoup 力口密]在實施例方式中,在簽名者確定信息的加密中利用Cramer-Shoup加密。但是實施 例方式不限定于Cramer-Shoup加密。以下,對Cramer-Shoup加密進行說明。[生成公開密鑰(publickey) ·私密密鑰(private key)對]作為公開參數,把素數位數q的乘法循環群gG和其生成源G1和通用單向散列 (universal one-way hash) Ι —Ι^ Ι Λ, ^Τ"^! 。(1)隨機地選擇 G1, G2 e gG。(2)隨機地選擇 Xl,x2,y” y2,ζ G Ζ:。(3)計算 C = G1-IxJG2-Ix2ID = G廠{yj G2" {y2}、H = G,。(4)從通用單向散列函數的集合中選擇散列函數Hash。(5)輸出公開密鑰 pk = (G1, G2, C,D,H,Hash),私密密鑰 sk = (x1; x2, y1 y2, ζ)。[加密]把公開密鑰pk = (G1, G2, C,D,H,Hash)、消息m e G作為輸入,進行以下處理。(1)隨機地選擇r e Zt;。(2)計算 U1 = G,,U2 = G2r,E = Hrm。(3)計算 α = Hash (U1, U2,Ε)。(4)計算 V = C1TT(5)輸出加密文(U1, U2, Ε, V) ο[解密]把加密文(U1, U2, Ε,V)作為輸入,進行以下處理。(1)計算 α = Hash (U1, U2, Ε)。(2)驗證U1-Ix^y1CUU2-Ixdy2 α} = V是否成立,在不成立的情況下,作為無效的 加密文進行拒絕,然后結束處理。(3)計算Hi = EzUz,作為明文來輸出。以上是Cramer-Shoup加密的處理。
〈實施例方式的概要〉接著,對實施例方式的概要進行說明。本實施例,通過基于離散對數的方式實現了群簽名方式的高速化。理由是,在基于 RSA的方式中冪指數長,因此不知道位數的群中的非對話的知識證明的效率低,因此整體的 效率也低。此外,[ACJT00]方式或[CG04]方式也是基于RSA的方式,所以與實施例方式相 比,效率低。補充一點,[ACJT00]方式是基于RSA的方式,與此相對,[CG04]方式一部分基于離 散對數,大幅度改善了效率,但也保留有基于RSA的部分。與之相對,實施例方式中全部作 為基于離散對數的方式,實現了高速化。實施例方式還把代表作為成員私密密鑰。在離散對數為私密密鑰時,對于1個公 開密鑰僅具有1個私密密鑰。與之相對,當代表為私密密鑰時,對于1個公開密鑰制作了多 個私密密鑰,因此,適用于具有大量成員的群。在Kiayias等人的方式中也使用代表,但由 于作為簽名者確定信息來使用代表自身,因此效率低。
與之相對,在實施例方式中不使用代表自身,而使用根據代表而唯一計算出的值 作為簽名者確定信息,因此效率高。(第1實施例)圖1是表示本發明的一個實施例的群簽名系統的結構的示意圖。該群簽名系統具 備能夠互相通信的1臺群管理者裝置10、n臺簽名者裝置20:,...,20,,..., 20j,. . .,20n以 及1臺驗證者裝置30。各裝置10,20:,.. .,20n,30,對于每個裝置可以通過硬件結構或硬件 資源和軟件的組合結構的任何一種結構來實施。作為組合結構的軟件,使用預先從網絡或 存儲介質M安裝在對應的裝置的計算機中,用于實現對應的裝置的功能的程序。另外,各簽 名者裝置20i,. . .,20n為互相相同的硬件結構,因此在以下的說明中以第i個簽名者裝置 20,為代表來敘述。另外,本實施例的群簽名方式,如后述的圖8至圖15中舉例表示那樣, 在加密方式中使用Cramer-Shoup加密,在零知識證明方式中使用應用了 Schnorr簽名的方 式,但是不限于這些加密方式以及零知識證明方式。即,本實施例的群簽名方式不限于圖8 至圖15所示的方式,即使使用其它加密方式以及零知識證明方式也能夠實現。在此,群簽名管理者裝置10如圖2所示,具備群管理者用存儲部11、輸入部12、 通信部13、群密鑰生成部14、成員私密密鑰生成部15、簽名驗證部16、簽名者確定部17、撤 銷列表生成部18以及輸出部19。群管理者用存儲部11是能夠從各部12 18存取的存儲裝置,如圖3所示,存儲 公開參數、群公開密鑰gpk、成員私密密鑰生成用私密密鑰ik、簽名者確定用私密密鑰ok、 成員信息、用戶管理信息、計算表、消息、群簽名以及簽名者信息。公開參數至少包含在群簽名方式中使用的素數位數q、和q的乘法循環群gG的生 成源在此還包含散列函數Hash。成員私密密鑰生成用私密密鑰ik至少包含根據公開參數所選擇的值a,b G Zq*0簽名者確定用私密密鑰ok至少包含加密方式的解密用私密密鑰,在此包含值Xl, x2,yi7 y2,z g Zq*0群公開密鑰gpk至少包含滿足第一關系式G2 = G:a以及第二關系式F = Gib的值 G2、F以及生成源Gi,在此,還包含值C、D、H以及散列函數Hash。此外,C = G廠{xjG2~ {x2}、 D = G廠{yjG2~{y2}、H = G,。成員信息是針對每個用戶識別信息ID(i),將成員私密密鑰gsk[i]、撤銷令牌 grt[i]以及簽名者確定信息1\互相關聯而構成的信息(1<1<11)。在此,撤銷令牌§汁[土] 是成員的成員私密密鑰gsk[i]內的代表的一部分kn,是當該成員被撤銷(無效化)時,在 撤銷列表中登錄的信息。撤銷列表(未圖示)是與被撤銷的成員對應的撤銷令牌grt[i] 的列表。用戶管理信息是針對每個用戶識別ID(i)將用戶信息關聯起來而構成的信息 (1 < i < n)。用戶信息,例如包含用戶的名稱以及聯絡地址信息(電話號碼、電子郵件地 址等),當群簽名的目的是電子商務交易時,還包含結算信息。計算表是各部14 16使用指數同時乘算(simultaneous multipleexponentiation)法時所參照的信息。指數同時乘算法是高速執行G廠{ej G2" {e2}. . . Gk" {ej的形態的計算的方法,需要預先執行最大2k次的乘法運算,生成最大2k 的大小的計算表。因此,計算表所需要的存儲器量,根據底&,...Gk的個數k而增大。但是,若底固定則不需要每次生成計算表,可以通過事先計算,以1次冪程度的計算量進行計 算。即,即使是例如G廠{ejG2" {e2}這樣的2次冪的計算,通過參照計算表也可以以1次冪的 計算量執行。因此,若群管理者以及驗證者裝置把‘1,、‘G/、‘G2,、‘hXG/、‘F,、‘FXG/、 ‘FXG2,、‘FXW和‘1,、‘H,、‘G/、‘HXG/作為計算表來保存,簽名者裝置把‘ 1,、‘H,、 ‘G/、‘HXG/和‘1’、‘C’、‘D’、‘CXD’作為計算表來保存,則能夠通過1次冪的計算量,執 行后述的步驟 ST4、ST5、ST34、ST36、ST42、ST44、ST52、ST54、ST62、ST64 中的 2 次或 3 次的 冪運算。消息msg是通過簽名者裝置20i生成的任意信息。群簽名o由后述的加密文(仏,U2,E,V,R)和零知識證明(日,Sl,s2, sr)組成,是 通過簽名者裝置20i生成的信息。輸入部12是群管理者裝置10內部和外部之間的輸入接口,使用鍵盤以及鼠標等 輸入設備。通信部13是群管理者裝置10內部和外部之間的通信接口。通信部13例如具有 通過加密通信等安全方法,將用于生成群簽名方式中的群簽名的公開參數、群公開密鑰、成 員私密密鑰以及簽名者確定信息發送到簽名者裝置20i 20n的功能。另外,通信部13 例如具有將用于驗證群簽名方式中的群簽名的公開參數、群公開密鑰以及撤銷列表發送到 驗證者裝置30的功能。群密鑰生成部14根據安全參數生成公開參數,存儲在群管理者用存儲部11內,根 據該公開參數生成包含值a、b G Z;的群私密密鑰、和包含滿足第一關系式G2 = G:a以及第 二關系式F = 的值G2、F以及生成源&的群公開密鑰。在此,群密鑰生成部14具有執 行圖8所示的處理的功能。此外,群密鑰生成部14可以參照計算表來通過指數同時乘算法 執行冪運算,這在成員私密密鑰生成部15以及簽名驗證部16中也相同。成員私密密鑰生成部15根據群私密密鑰、群公開密鑰以及第三關系式kn = b_aki2 mod q,計算由滿足第四關系式F = G廠{kn}G2~{ki2}的代表kn、ki2組成的成員私密密鑰,同 時根據成員私密密鑰以及生成源&計算簽名者確定信息= Gr {kn}。在此,成員私密密 鑰生成部15具有執行圖9以及圖10所示的處理的功能。另外,假定grt[i] = kn。簽名驗證部16根據群管理者用存儲部11內的群簽名、消息、公開參數以及群公 開密鑰,驗證該群簽名內的零知識證明的正當性,同時根據群管理者用存儲部11內的群簽 名、群私密密鑰以及群公開密鑰,驗證該群簽名內的加密文數據的正當性。在此,簽名驗證 部16具有執行后述的圖16所示的處理的功能。簽名者確定部17根據群管理者用存儲部11內的群簽名以及群私密密鑰,計算用 戶ID = i。在此,簽名者確定部17具有執行后述的圖17所示的處理的功能。撤銷列表生成部18具有生成包含被撤銷的成員的代表的一部分kn的撤銷列表的 功能。具體來說,撤銷列表生成部18具有以下功能亦即,根據作為群管理者用存儲部11 內的成員信息的一部分而存儲的撤銷令牌的集合、和預先存儲在群管理者用存儲部11中 的表示被撤銷的成員的用戶ID的集合RU (未圖示),從成員信息中提取與該集合RU內的用 戶ID(i)對應的撤銷令牌grt[i]來進行列表化,由此生成撤銷列表。輸出部19是群管理者裝置10內部和外部之間的輸出接口,使用顯示器裝置以及 打印機等輸出設備。
簽名者裝置20i如圖4所示,具備簽名者用存儲部21、輸入部22、通信部23、消息 生成部24、群簽名生成部25、簽名者同一性證明部26以及輸出部27。簽名者用存儲部21是能夠從各部22 26存取的存儲裝置,如圖5所示,存儲公 開參數、群公開密鑰gpk、計算表、成員私密密鑰、簽名者確定信息、消息以及群簽名。輸入部22是簽名者裝置20i內部和外部之間的輸入接口,使用了鍵盤以及鼠標等 輸入設備。通信部23是簽名者裝置20i內部和外部之間的通信接口。通信部23例如具有 通過加密通信等安全的方法從群管理者裝置10接收用于生成群簽名方式中的群簽名的公 開參數、群公開密鑰、成員私密密鑰以及簽名者確定信息1\的功能。另外,通信部23例如 具有通過簽名者的輸入部22的操作,把簽名者用存儲部21內的由加密文數據以及零知識 證明組成的群簽名和消息發送到驗證者裝置30的功能。消息生成部24具有通過簽名者的輸入部22的操作,生成消息msg并寫入簽名者 用存儲部21的功能。群簽名生成部25具有根據簽名者用存儲部21內的公開參數以及群公開密鑰,將 簽名者確定信息加密,并生成該簽名者確定信息的加密文數據,然后寫入簽名者用存 儲部21的功能。另外,群簽名生成部25具有根據簽名者用存儲部21內的公開參數、群公 開密鑰、成員私密密鑰以及消息、和簽名者確定信息1\的加密文數據,生成表示得知該成員 私密密鑰以及該簽名者確定信息的零知識證明,并將零知識證明與加密文數據相關聯地 寫入簽名者用存儲部21的功能。此外,加密文數據和零知識證明構成群簽名。另外,在此, 群簽名生成部25具有執行圖11以及圖12所示的處理的功能。另外,在圖12所示的零知 識證明中,成為基于已知被加密的簽名者確定信息T”已知代表之一、簽名者確定信息凡被 正確加密的消息msg的零知識證明。另外,群簽名生成部25可以參照計算表,通過指數同 時乘算法執行冪運算。簽名者同一性證明部26具有執行圖15所示的處理中的簽名者同一性證明處理的 功能。輸出部27是簽名者裝置20i內部和外部之間的輸出接口,使用顯示器裝置以及打 印機等輸出設備。驗證者裝置30如圖6所示,具備驗證者用存儲部31、輸入部32、通信部33、簽名驗 證部34、簽名者同一性驗證部35、簽名者信息正當性證明驗證部36以及輸出部37。驗證者用存儲部31是各部32 35能夠存取的存儲裝置,如圖7所示,存儲公開 參數、群公開密鑰gpk、撤銷列表RL、計算表、消息以及群簽名。輸入部32是驗證者裝置30內部和外部之間的輸入接口,使用鍵盤以及鼠標等輸 入設備。通信部33是驗證者裝置30內部和外部之間的通信接口。通信部33例如具有通 過加密通信等安全的方法,從群管理者裝置10接收用于生成群簽名方式中的群簽名的公 開參數、群公開密鑰以及撤銷列表的功能。另外,通信部33例如具有從簽名者裝置20i接 收由加密文數據以及零知識證明組成的群簽名、和消息的功能;把接收到的群簽名和消息 寫入驗證者用存儲部31的功能;把簽名驗證部34的驗證結果發送到簽名者裝置20i的功 能;以及根據需要,為了確定簽名者而把消息和群簽名發送到群管理者裝置10的功能。
簽名驗證部34根據驗證者用存儲部31內的群簽名、消息、公開參數以及群公開密 鑰驗證該群簽名的正當性,把驗證結果送出到通信部33以及輸出部37。在此,簽名驗證部 34具有執行圖13以及圖14所示的處理的功能。另外,簽名驗證部34可以參照計算表,通 過指數同時乘算法執行冪運算。簽名者同一性驗證部35具有執行圖15所示的處理中的簽名者同一性驗證處理的 功能。輸出部37是驗證者裝置30內部和外部之間的輸出接口,使用顯示器裝置以及打 印機等輸出設備。輸出部35例如顯示從簽名驗證部34取得的驗證結果。群管理者裝置10可以針對每個功能分割為成員私密密鑰生成者裝置101、簽名者 確定者裝置102以及撤銷管理者裝置103。各個裝置和存儲部在圖22和圖23、圖24和圖 25、以及圖26和圖27中表示。無論哪種裝置,與群管理者裝置相比,處理部和存儲的信息 (特別是秘密信息)都少,因此可知,與作為群管理者裝置處理全部功能的情況相比可以實 現高安全性和靈活的運用。此外,關于分割該群管理者裝置10而得的結構,在第二實施例 中具體描述。也可以從簽名者裝置20i僅分離簽名者同一性證明功能,來形成簽名者同一性證 明功能201”圖28和圖29表示該裝置和存儲部。在這種情況下,與簽名者裝置相比,處理 部和存儲的信息(特別是秘密信息)也較少,可知能夠實現高安全性和靈活的運用。此外, 關于分離該簽名者同一性證明功能而得的結構,在第三實施例中具體描述。接著,使用圖8至圖20的流程圖說明以上那樣構成的群簽名系統的動作。(群密鑰組生成圖8)在群管理者裝置10中,假定通過群管理者的輸入部12的操作輸入了安全參數k 后,啟動了群密鑰生成部14。群密鑰生成部14生成或選擇k比特的素數q、位數q的乘法循環群gG、gG的生成 源通用單向性散列函數Hash,作為公開參數,把(c^gjjpHash)存儲在群管理者用存 儲部11中(ST1)。群密鑰生成部14參照群管理者用存儲部11內的素數位數q,隨機地選擇構成群私 密密鑰gmsk的7個組(a,b,Xl,x2, y2, z) G Z:(ST2)。此夕卜,Zq*是1以上不到q的整 數的集合{1,. . .,q-1}。另外,a、b是為了高效率地計算多個代表而需要的值。接著,群密鑰生成部14根據群管理者用存儲部11內的生成源&和在步驟ST2中 得到的 7 個組,計算& =吖,F = Gib,C = G廠{Xi}G2~{X2}、D = G廠{71}62~{72},11 =吖餅3 ST7)。61、62是?的代表的底。另外,群密鑰生成部14從群管理者用存儲部11內的公開參數中讀出通用單向性 散列函數Hash。此后,群密鑰生成部14把成員私密密鑰生成用私密密鑰ik = (a,b)、簽名者確定 用私密密鑰ok = (Xl,x2, y2,z)、群公開密鑰gpk = G2,F,C,D,H,Hash)保存在群管 理者用存儲部11中(ST8)。成員私密密鑰生成用私密密鑰ik以及簽名者確定用私密密鑰 ok構成群私密密鑰gmsk。由此,群密鑰生成部14把群公開密鑰gpk、成員私密密鑰生成用私密密鑰ik以及 簽名者確定用私密密鑰ok的生成完成消息發送到輸出部19,結束處理。輸出部19對該生成完成消息進行顯示輸出。(成員私密密鑰生成圖9)在群管理者裝置10中,假定預先通過群管理者的輸入部12的操作,把與成員數量 n對應的n人份的用戶識別信息ID(1),. . .,ID(i),. . .,ID(j),. . .,ID(n)保存在群管理 者用存儲部11中。此外,用戶識別信息ID (1),...,ID (n)也可以通過被輸入了成員數量n 的成員私密密鑰生成部15生成,從成員私密密鑰生成部15被寫入群管理者用存儲部11。成員私密密鑰生成部15參照群管理者用存儲部11內的素數位數q,隨機地選擇成 員私密密鑰的一部分ki2 G Zq*(STll)。此時,成員私密密鑰生成部15參照群管理者用存儲部11,當存在具有ki2 = kJ2的 成員私密密鑰gS、= (k^, kJ2)的成員時,重新選擇ki2。BP, ki2需要針對每個用戶完全不 同。接著,成員私密密鑰生成部15根據群管理者用存儲部11內的素數位數q以及群 私密密鑰gmsk內的成員私密密鑰生成用私密密鑰ik(a,b),計算成員私密密鑰的另一部分 kn = b_aki2mod q (ST12)。此后,成員私密密鑰生成部15把由得到的kn、ki2組成的成員私密密鑰(kn,ki2 = gsk[i])與用戶識別信息ID(i)相關聯地保存在群管理者用存儲部11中(ST13)。在此,成員私密密鑰(kn,ki2)是以(G”G2)為底的F的代表。即,根據所述的F = G,、G2 = G,以及kn = b-aki2mod q的式子,表示為F = G; {kn}G2" {ki2}。另外,通過使用 在群私密密鑰gmsk中包含的a、b,可以高效率地計算多個成員私密密鑰。可以計算該代表 kn、ki2的僅是群管理者。已知代表kn、ki2,意味著是被群管理者許可的群成員。成員私密密鑰生成部15以與成員數量n相同的次數n重復以上步驟ST11 ST13 的處理,將n人份的成員私密密鑰gsk[l] gsk[n]與用戶識別信息ID9(1) ID(n)分別 關聯地保存在群管理者用存儲部11中,然后結束處理。(簽名者確定信息計算處理圖10)接著,成員私密密鑰生成部15根據群管理者用存儲部11內的生成源Gi以及成員 私密密鑰gsk[i]( = kn,、),計算簽名者確定信息凡=61~{、}(5121)。即,簽名者確定 信息不是把代表自身,而是把代表的一部分作為冪指數的值。此后,成員私密密鑰生成部15把得到的簽名者確定信息1\與用戶識別信息ID(i) 關聯地保存在群管理者用存儲部11中(ST22)。成員私密密鑰生成部15以與成員數量n相同的次數n重復以上步驟ST21 ST22 的處理,把n人份的成員私密密鑰gsk[l] gsk[n]與用戶識別信息ID(1) ID(n)分別 關聯地保存在群管理者用存儲部11中,然后結束處理。(簽名生成的準備)用戶i通過在線或離線方式將用戶信息登錄在群管理者裝置10中。由此,用戶i 通過加密通信或存儲介質的郵寄等安全的方法從群管理者取得公開參數、群公開密鑰gpk =機,G2,F,C,D,H,Hash)、成員私密密鑰gsk[i] (kn,ki2)以及簽名者確定信息T”此后,簽名者裝置20i通過用戶i進行的輸入部22的操作,把這些公開參數、群公 開密鑰gpk、成員私密密鑰gsk[i]以及簽名者確定信息保存在簽名者用存儲部21中,由 此,簽名者裝置20i能夠進行簽名生成處理。
另外,簽名者裝置20i通過用戶i進行的輸入部22的操作,在消息生成部24使顯 示部26顯示消息msg G {0,1} *的同時把生成、得到的消息msg保存在簽名者用存儲部21 中。此外,消息msg不限于使用由消息生成部24生成的消息的情況,也可以使用從群管理 者或簽名驗證者取得的消息。例如在電子商務交易的情況下,可以使用由消息生成部24生 成的消息msg,在20歲以上等的資格證明的情況下,可以使用從群管理者取得的消息msg, 在認證中利用的情況下,可以使用從簽名驗證者取得的消息msg。(加密處理圖11)在簽名者裝置20i中,假定通過用戶i的輸入部22的操作,啟動了群簽名生成部 25。群簽名生成部25參照簽名者用存儲部21內的素數位數q,隨機地選擇秘密的隨機 數 r G Z:(ST31)。接著,群簽名生成部25根據簽名者用存儲部21內的群公開密鑰gpk= (Gi,G2,F, C,D,H,Hash)以及簽名者確定信息凡、和在步驟ST31中得到的隨機數r,計算= G,,U2 =G2r,E =印(ST32 ST34)。此外,簽名者確定信息( = G; {kn})可以每次根據成員 私密密鑰gmsk[i]( = kn,ki2)來計算。在這種情況下,簽名者確定信息1\也可以從簽名者 用存儲部21省略。另外,群簽名生成部25根據簽名者用存儲部21內的群公開密鑰gpk和步驟 ST32 ST34 中得到的值 U” U2、E 計算散列值 a = Hash (U^ U2,E) (ST35)。進而,群簽名生存部25根據該散列值a、和步驟S31中得到的隨機數r、和群公開 密鑰 gpk,計算值 V = CrDra (ST36)。進而,群簽名生成部25計算R = TJ (ST37)。由此,群簽名生成部25將對于簽名者確定信息而得到的加密文(UpUyEJ, 保存在簽名者用存儲部21中(ST38)。(零知識證明(zero-knowledge proof)計算處理圖 12)接著,群簽名生成部25參照簽名者用存儲部21內的素數位數q,隨機地選 擇用于隱藏成員私密密鑰(kn,ki2)以及步驟ST31中得到的隨機數r的隨機數ri、r2、 rr G Zq*(ST41)。接著,群簽名生成部25根據簽名者用存儲部21內的群公開密鑰gpk = (Gi,G2,F, C,D,H,Hash)、和步驟ST41中得到的隨機數!^巧、!^,計算成為零知識證明的一部分的參數 隊=G廠{rjG2" {r2}、R2 = G廠{rr}、R3 = H" {rr}G廠{rj、R4 = U廠{rj (ST42 ST45)。另外,群簽名生成部25根據簽名者用存儲部21內的群公開密鑰gpk = (Gi,G2,F, C,D,H,Hash)、加密文(U” U2,E,V,R)以及消息msg、步驟ST42 ST45中得到的成為零知 識證明的一部分的參數禮、R2、R3、R4,計算散列值3 = Hash G2,H,U” U2,E,V,R,R” R2, R3,R4,msg) (ST46)。進而,群簽名生成部25根據該散列值3和步驟ST41中得到的隨機數!^巧、!^和 簽名者用存儲部21內的成員私密密鑰kn ki2以及素數位數q,計算其它成為零知識證明的 一部分的參數 Si = 1^+3、mod q、s2 = r2+3ki2 mod q、sr = rr+3 rmod q (ST47 ST49)。由此,群簽名生成部25將最終得到的零知識證明(0,Sl,S2,、)與加密文(U”U2, E,V,R)關聯地保存在簽名者用存儲部21中(ST50),結束處理。以后,把這些加密文(仏,U2, E,V,R)以及零知識證明(3,Sl,s2,sr)作為群簽名 o =(仏,U2,E,V,R,3,Sl, s2,sr) 來使用。該群簽名o由簽名者確定信息凡的加密文(仏,U2,E,V,R)和零知識證明(3, Sl,s2, sr)構成,該零知識證明(3,Sl,s2, sr)表示是已知以Gi、G2為底的F的代表kn、ki2 的正確的用戶、以及與其對應的簽名者確定信息被正確地加密。以后,簽名者裝置20i通過簽名者對輸入部22的操作,使輸出部27顯示簽名者用 存儲部21內的群簽名o以及消息msg,從通信部23發送到驗證裝置30。由此,可以不表 示成員私密密鑰kn、ki2地證明是屬于群的正確的成員,并且群管理者可以確定簽名者。(簽名驗證處理圖13)驗證者裝置30,假定預先通過驗證者對輸入部32的操作,從群管理者裝置10取 得公開參數(q,gG,G” Hash)以及群公開密鑰gpk = (G” G2,F,C,D,H,Hash),然后保存在 驗證者用存儲部31中。由此,驗證者裝置30能夠進行簽名驗證處理。驗證者裝置30中,通信部33接收從簽名者裝置20i發送來的消息msg、群簽名o =(U^U^E^,^ ^ , Sl, s2, sr)以及驗證請求,然后保存在驗證者用存儲部31中,同時,通 信部33將該驗證請求發送到簽名驗證部34。簽名驗證部34,當取得驗證請求時,根據驗證者用存儲部31內的群公開密鑰以 及群簽名 o,計算 R,丄=FH } G廠{sj G2" {s2}、R,2 =} G廠{sr}、R,3 = E~ {- 3 } H'IsJG^ISJ.R' 4 = R~ {H{sr} (ST51 ST54)。接著,簽名驗證部34根據群公開密鑰gpk、消息msg、群簽名o以及上述RVRV R,3,R,4 計算散列值 3,= Hash(G1,G2,H,U1,U2,E,V, R, R' ” R,2,R,3,R,4,msg) (ST55)。 此外,簽名驗證部34可以根據預定的基準范圍確認群簽名o的值的范圍。根據步驟ST55的結果,若驗證式3 = 3,成立,則判定為有效(valid),將判 定結果0K輸出到通信部33以及輸出部37(ST57-0K),若驗證式不成立,則判定為無效 (invalid),將判定結果NG輸出到通信部33以及輸出部37 (ST57-NG)。通信部33將判定結果0K/NG發送到簽名者裝置,然后結束處理。輸出部37對 判定結果0K/NG進行顯示輸出。(撤銷驗證處理圖14)驗證者裝置30,假定預先通過驗證者對輸入部32的操作,從群管理者裝置10取 得公開參數(q,gG, Hash)、群公開密鑰gpk = (G” G2,F,C,D,H,Hash)以及撤銷列表RL, 保存在驗證者用存儲部31中。由此,驗證者裝置30能夠進行撤銷驗證處理。簽名驗證部34,確認是否已檢查完在撤銷列表RL中包含的全部grt( = k:) (ST61),若已檢查完,則判定為有效(valid),將判定結果0K輸出到通信部33以及輸出部 37 (ST64-0K) 0否則繼續進行處理。接著,簽名驗證部34選擇在撤銷列表RL中包含的未檢查的grt ( = k:) (ST62),確 認是否1 =仏~{1^} (ST63)。若上述式子的等號成立,則判定為無效(invalid),將判定結果 NG輸出到通信部33以及輸出部37(ST64-NG)。否則返回到檢查下一 grt(ST61)。(簽名者同一性證明、驗證處理圖15)簽名者裝置20i,假定預先通過簽名者對輸入部22的操作,從群管理者裝置10取 得公開參數(q,gG, G” Hash)、群公開密鑰gpk = (G” G2,F,C,D,H,Hash)、成員私密密鑰gsk[i]以及簽名者確定信息1\,保存在驗證者用存儲部21中。另外,假定成為進行簽名 者同一性驗證的對象的群簽名o =(仏,U2,E,V,R,3,Sl,s2, sr)也保存在驗證者用存儲 部21中。由此,簽名者裝置20i能夠進行簽名者同一性證明處理。驗證者裝置30,假定預先通過驗證者對輸入部32的操作,從群管理者裝置10取 得公開參數(q,gG,Hash)以及群公開密鑰gpk =機,G2,F,C,D,H,Hash),保存在驗證 用存儲部31中。另外,假定以在線或離線方式取得成為進行簽名者同一性驗證的對象的 群簽名o = (Ui,U2,E,V,R,3,Sl,s2,、),保存在驗證者用存儲部31中。由此,驗證者裝 置30能夠進行簽名者同一性驗證處理。簽名者裝置和驗證者裝置之間的數據通信,分別通過簽名者裝置的通信部23和 驗證者裝置的通信部33來進行。在簽名者裝置20i中,假定通過用戶i對輸入部22的操作啟動了簽名者同一性 證明部26。簽名者同一性證明部26參照簽名者用存儲部21內的素數位數q,隨機地選擇用于 隱藏成員私密密鑰(kn)的隨機數巧G Zq*(ST71)。接著,簽名者同一性證明部26根據簽名者用存儲部21內的群簽名o =(仏,U2, E,V,R,3,Sl,s2, sr)和步驟ST71中得到的隨機數巧,計算成為零知識證明的承諾的參數 R,= Ur {rj (ST72),發送到驗證者裝置30。驗證者裝置30把接收到的承諾R’發送給簽名者同一性驗證部35,啟動簽名者同 一性驗證處理。簽名者同一性驗證部35隨機地選擇成為零知識證明的挑戰的隨機數 6 e Z/(ST73),發送給簽名者裝置20it)簽名者同一性證明部26根據從驗證者裝置30接收到的挑戰5、在步驟ST71中得 到的隨機數巧、在簽名者用存儲部21中保存的代表的一部分kn以及素數位數q,計算成為 零知識證明的應答的參數s’ : = 6 kn mod q (ST74),發送給驗證者裝置30。簽名者同一性驗證部35根據驗證者用存儲部31內的群簽名o、在步驟ST3中接 收到的承諾R’、在步驟ST73中生成的挑戰5以及接收到的應答s’工,驗證R’ = R" {- 8 } U廠Is,J是否成立(ST75)。根據步驟ST75的結果,若驗證式R’ = R" {- 8 {s'J成立,則判定為真(ture), 將判定結果0K輸出到通信部33以及輸出部37,然后結束(ST76-0K),若驗證式不成立,則 判定為偽(false),將判定結果NG輸出到通信部33以及輸出部37,然后結束(ST76-NG)。(簽名者驗證處理以及簽名者確定處理圖16至圖17)對于發覺不正當行為、或為了征收服務費用等由于某種事情而需要確定簽名者的 情況進行說明。群管理者裝置10由通信部13接收從驗證者裝置30發送的消息msg、群簽名o以 及簽名者確定請求,然后保存在群管理者用存儲部11中,同時通信部13將該簽名者確定請 求發送到簽名驗證部16。簽名者驗證部16,當取得簽名者確定請求時如圖16所示,根據群管理者用存儲部 11內的群公開密鑰gpk、消息msg以及群簽名o,計算R’ : =F"{-^}Gr{Sl}G2"{s2},R' 2 =Ur{-^}Gr{sr},R' 3 = E-l-^irisjGrisJ.R' 4 = R"{-^}ur{sr} (ST81 ST84)。
接著,簽名驗證部16,根據群管理者用存儲部11內的群公開密鑰gpk、消息msg、群 簽名 o 以及上述 R,” R,2,R,3,R,4 計算散列值 3 = H(Gi,G2,H,U” U2,E,V,R,R,R,2, R’ 3,R’ 4,msg) (ST85)。此外,簽名驗證部16也可以根據預定的基準范圍確認群簽名o的 值的范圍。根據步驟ST85的結果,若驗證式0 = 0 ’不成立,則判定為無效(invalid),將NG 輸出到通信部13 (ST89-NG)。通信部13將判定結果NG發送到驗證者裝置30,結束處理。另一方面,根據步驟ST85的結果,若驗證式0 = 0’成立,則判定為有效 (valid),簽名驗證部16根據群公開密鑰gpk以及群簽名o計算散列值a = H^, U2, E) (ST87)。此后,簽名驗證部16根據群管理者用存儲部11內的群簽名o = (U” U2,E,V,R, 3,Sl,s2, sr)、簽名者確定用私密密鑰ok = (Xl,x2, y2, z)以及散列值a,驗證驗證式 U廠{Xl+yia}U2~{X2+y2a} = V是否成立(ST88),若不成立則判定為無效(invalid),將NG 輸出到通信部13 (ST89-NG)。通信部13將判定結果NG發送到驗證者裝置30,結束處理。另一方面,根據步驟ST88的結果,若驗證式成立則判定為有效(valid),簽名驗證 部16將判定結果0K以及簽名者確定請求發送到簽名者確定部17,結束處理(ST89-0K)。簽名者確定部17,當取得判定結果0K以及簽名者確定請求時,如圖15所示,根據 群管理者用存儲部11內的群簽名o以及簽名者確定用私密密鑰ok,計算簽名者確定信息 T = E/U^STgi),獲得簽名者確定信息T(ST92)。接著,簽名者確定部17根據簽名者確定信息T檢索群管理者用存儲部11,確定與 簽名者確定信息T對應的用戶識別信息ID(),作為群管理者用存儲部11的簽名者信息的 一部分來保存,同時輸出到輸出部19(ST93),進行圖18所示的簽名者信息正當性證明生成 處理。而且,簽名者確定部17也可以根據用戶識別信息ID()檢索群管理者用存儲部11, 把與用戶識別信息ID()對應的用戶信息輸出到輸出部19。輸出部19顯示這些用戶識別信息ID()以及用戶信息。(簽名者信息正當性證明生成處理圖18)簽名者確定部17選擇決定與所輸入的用戶識別信息ID = i對應的代表的一部分 kn(ST101)。接著,簽名者確定部17參照群管理者用存儲部11內的素數位數q,隨機地選擇用 于隱藏成員私密密鑰(kn)的隨機數巧G Zq*(ST102)o接著,簽名者確定部17根據群管理者用存儲部11內的群公開密鑰gpk = (GnG2, F,C,D,H,Hash)以及群簽名 o = (U” U2,E,V,R,3,Sl,s2,sr)和在步驟 ST102 中得到的隨 機數A,計算成為零知識證明的一部分的參數Si = G廠{rj、S2 = Ur {rj (ST103 ST104)。另外,簽名者確定部17根據群管理者用存儲部11內的群公開密鑰gpk = (GnG2, F,C,D,H,Hash)、簽名者確定信息凡、步驟ST103 ST104中得到的成為零知識證明的一部 分的參數Sp S2、和群簽名o,計算散列值y = Hash^, S^ S2, o ) (ST105)。進而,簽名者確定部17根據該散列值Y、步驟ST102中得到的隨機數巧、步驟 ST101中得到的代表的一部分kn以及素數位數q,計算其它成為零知識證明的一部分的參 數、=y kn mod q (ST106)。由此,簽名者確定部17把最終得到的零知識證明t = (Y,tl)作為群管理者用存儲部11的簽名者信息的一部分來保存,同時輸出到輸出部19(ST107),結束處理。該零知識證明t成為表示在群簽名o中包含的加密文(UpUyEJ, 是簽名者 確定信息1\的正確加密文的零知識證明。以后,群管理者裝置10根據需要,通過群管理者對輸入部12的操作,從群管理者 用存儲部11讀出群簽名0、由該簽名確定的用戶的ID = i和簽名者信息正當性證明t并 顯示在輸出部19,從通信部13發送到驗證者裝置30。由此,可以不表示代表的一部分kn 地證明正確地進行了簽名者確定。(簽名者信息正當性證明驗證處理圖19)驗證者裝置30,假定預先通過驗證者對輸入部32的操作,從群管理者裝置10取 得公開參數(q,gG,G” Hash)以及群公開密鑰gpk = (G” G2,F,C,D,H,Hash)并保存在驗 證者用存儲部31中。由此,驗證者裝置30能夠進行簽名驗證處理。在驗證者裝置30中,通信部33接收從群管理者裝置10發送來的群簽名o、根據 該簽名確定的用戶的ID = i和與之對應的簽名者確定信息T”簽名者信息正當性證明t 以及驗證請求并保存在驗證者用存儲部31中,同時通信部33將該驗證請求發送到簽名者 信息正當性證明驗證部36。簽名者信息正當性證明驗證部36根據驗證者用存儲部31內的群公開密鑰gpk、群 簽名o、簽名者信息正當性證明t以及簽名者確定信息1\,計算S’1 = T廠{-YlGjItJ、 S,2 = R'l-yjUi'ltJ (ST111 ST112)。接著,簽名驗證部34根據群公開密鑰gpk、群簽名o、簽名者確定信息以及上 述S’i、S’2,計算散列值Y,二他吐⑴^’^^,o)(ST113)。此外,簽名者信息正當性 證明驗證部36可以根據預定的基準范圍確認簽名者信息正當性證明t的值的范圍。根據步驟ST113的結果,若驗證式Y = Y ’成立則判定為有效(Valid),將判 定結果0K輸出到通信部33以及輸出部37(ST115-0K),若驗證式不成立則判定為無效 (invalid),將判定結果NG輸出到通信部33以及輸出部37(ST115_NG)。通信部33將判定結果0K/NG發送到群管理者裝置10,然后結束處理。輸出部37 對判定結果0K/NG進行顯示輸出。(撤銷列表生成處理圖20)群管理者裝置10,假定預先通過驗證者對輸入部12的操作輸入了被撤銷的用戶 的ID的集合RU,寫入群管理者用存儲部11。由此,群管理者裝置10能夠進行撤銷列表生 成處理。撤銷列表生成部18,針對被撤銷的用戶的ID的集合RU中包含的全部ID,確認是 否已進行了撤銷列表的生成處理(ST121)。若已處理完,則把處理結果的撤銷列表RL保存 在群管理者用存儲部11中(ST124)。否則繼續進行處理。接著,撤銷列表生成部18選擇在被撤銷的用戶的ID的集合RU中包含的未處理 的ID = i(ST122),從成員信息中選擇決定與所選擇的用戶ID(i)對應的撤銷令牌grt[i] (ST123),將該grt[i]追加到撤銷列表RL中(ST124),返回步驟ST121以確認下一用戶 ID⑴。〈實施例方式的安全性〉在此,表示實施例方式的安全性。
[定理1]提案群簽名方式,在隨機預言模型(randomoracle model)中在DDH問 題是困難的假設下是安全的。[補題1]實施例方式具有正當性(correctness)。[補題2]實施例方式,在隨機預言模型中在DDH問題是困難的假設下具有匿名性 (anonymity)0[補題3]實施例方式,在隨機預言模型中在離散對數問題是困難的假設下具有可 追蹤性(traceability)。[補題4]實施例方式,在隨機預言模型中在離散對數問題是困難的假設下具有弱 不可陷害性(Weak Non-Frameability)。<實施例方式的效率>(與基于RSA的方式的效率比較)為了評價實施例方式的效率,考慮以作為通常的電子簽名的RSA簽名方式的簽名 生成的計算量為基準時的現有的群簽名方式以及實施例方式的計算量和數據長度。作為現有的群簽名方式,與非常高速的[CG04]方式進行比較。[CG04]方式,即使 與[ACJT00]方式比較,也是26倍以上的高速。[CG04]方式中具有3種方式,與其中不具有 撤銷功能的基本(Basic)方式和具有撤銷功能的VLR(原文中為Full-Revocation)方式的 兩種進行比較。首先,把計算量的比較方式的思路總結如下。比較的方式的計算量的大部分花費在冪剩余運算中。因此,忽視冪剩余運算以外 的計算量,關注冪剩余運算的計算量。冪剩余運算的計算量與(標準的比特長)2X冪指數的比特長成比例,因此,當標 準的比特長相同時,全體的計算量與冪指數的比特長的總和成比例。另外,在已知法的素因數分解的情況下,可以利用中國人剩余定理(Chinese remainder theorem :CRT),因此,計算量與不知道素因數分解的情況相比,在RSA系數(系 數(n = pq, p、q 素數(prime)、[數學式1]p ^ q))的情況下從1/4變為1/3左右。在此,設計算量成為1/4來估計計算量。而且,通過利用作為冪運算的高速處理方法的指數同時乘算 (simultaneousmultiple exponentiation) IT fi^ {ej 的形式的計算可以與 maXi ({ej) =ej的G/ {ej}的計算相同程度地進行處理。進行比較時的安全參數,以利用[CG04]方式的推薦參數的情況作為基準。推薦參 數利用了 2048比特的RSA系數,因此,在RSA方式中,同樣地利用2048比特的RSA系數。 關于在實施例方式中利用的乘法循環群G,利用Zq*和橢圓曲線這兩種。在2<;中,利用將p 設為2048比特的素數、把除得盡p-1的q設為224比特的素數時的位數q的Z<;的部分群。 P、q 的值是在 FIPS(federalinformation processing standard) 186-3 的草案(draft)中 也利用的值,視為與2048比特的RSA系數相同程度的安全參數。在橢圓曲線中,利用由作 為與此同等的安全參數的224比特的素數生成的橢圓曲線。在考慮以上內容的基礎上,圖21表示RSA簽名方式、[CG04]方式、本實施例方式 的主要的處理的計算量和數據長度。此外,簽名生成計算量以及簽名驗證計算量表示了冪指數的比特長的總和,在可以利用CRT的情況下以1/4進行計算。RSA方式的簽名驗證計算 量取決于公開密鑰d的長度,一般較小。RSA方式的簽名密鑰長度是具有素數p、q和私密 密鑰e的情況下的值。RSA方式的驗證密鑰長度是減小了公開密鑰d的情況下的值。本實施例方式的簽名生成計算量是RSA方式的4倍,因此,與RSA方式的約8倍的 [CG04]方式相比,被抑制得較低。因此,本實施例方式的簽名生成可以高速地執行。本實施例方式的簽名密鑰長度(成員私密密鑰長度)是RSA方式的1/9,因此,與 RSA方式的約1. 1倍的[CG04]方式相比變短了。本實施例方式的群私密密鑰長度比[CG04]方式長。但是,群私密密鑰長度的增加 對群管理者裝置10以外的裝置ZOiNZOnJO的計算量沒有影響,一般地,多數情況下,群管 理者裝置是高性能、高可靠的計算機,與簽名者裝置或驗證者裝置相比,計算量的制約少, 實用上沒有問題。另外,本實施例方式,在通過橢圓曲線加密方式實施時,簽名長度與RSA方式大致 相同,因此與[CG04]方式相比可以大幅度縮短簽名長度。即,本實施例方式與[CG04]方式相比,簽名密鑰長度以及驗證密鑰長度縮短,可 以高速地執行簽名生成以及簽名驗證。理由是,本實施例方式是把素數位數q作為標準的 基于完全離散對數的方式,與此相對,[CG04]方式是把合成數n = pq作為標準的基于RSA 的方式。例如,在基于離散對數的方式中,在Y = Gx mod q的運算中,在標準q為2048比 特的情況下,離散對數x達到224比特左右。另一方面,在基于RSA的方式中,在C = me mod n的運算中,在標準n為2048比 特的情況下,公開密鑰e也達到2048比特左右。因此,在基于RSA的[CG04]方式中,像本 實施例方式那樣的密鑰長度的縮短化以及運算的高速化是不可能的。(與基于雙線性的方式的效率比較)利用雙線性映射的[FI05]方式和[DP06]方式,根據雙線性映射的實施,計算速度 大不相同,因此無法簡單地進行比較,但這些方式即使考慮當前最快的雙線性映射實施技 術,也是與[CG04]方式相同程度的速度。因此,根據與上述[CG04]方式的比較結果可知, 即使與這些方式相比,本實施例方式也是高速的。如上所述,根據本實施例,使用素數位數q的乘法循環群gG形成完全的基于離 散對數的群簽名方式,并且實現了把代表kn、ki2作為成員私密密鑰,把被撤銷的成員的代 表的一部分kn包含在撤銷類別中的群簽名方式,由此能夠實現撤銷功能,同時與現有的 [CG04]方式相比,能夠減少計算量來提高計算速度。例如,根據本實施例,由于是完全的基于離散對數的方式,因此如圖12所示,在基 于RSA的[CG04]方式中不可能的位可以非常高速地實現數據長度短的群簽名方式。補充一點,在群管理者裝置10中,通過在群公開密鑰中包含值&、G2、F可以高效 率地生成群簽名。另外,通過在群私密密鑰中包含值a、b可以高效率地生成成員數量n個 的成員密鑰。在簽名者裝置20i中,通過使用基于代表的一部分kn的簽名確定信息1\,可以高 效率地生成零知識證明。即,不使用代表自身,而把根據代表唯一計算出的值作為簽名者確 定信息來使用,因此可以提高零知識證明的生成以及驗證效率。
在驗證者裝置30中,根據在撤銷列表中包含的代表的一部分kn,可以高效地進行 撤銷驗證處理。在驗證者裝置30以及群管理者裝置10中,通過包含零知識證明的群簽名o,可以 高效率地驗證零知識證明,從而可以高效率地驗證群簽名o。而且,在群管理者裝置10中,通過群簽名o包含簽名者確定信息的加密文數 據,僅通過對加密文數據進行解密來得到簽名者確定信息1\,因此可以高效率地確定簽名
者o另外,根據本實施例,可以實現基于DDH問題的最初的實用的群簽名方式。另外,根據本實施例,固定了簽名生成中的冪運算的底,因此,通過事前計算指數 同時乘算法的計算表,可以高效率地執行冪運算。另外,根據本實施例,也實現了弱不可陷害性(Weak Non-Frameability)和自身追 蹤性。(第二實施例)圖22以及圖23是表示本發明的第二實施例的成員私密密鑰生成者裝置及其存儲 部的結構的示意圖。圖24以及圖25是表示簽名者確定裝置及其存儲部的結構的示意圖。 圖26以及圖27是表示撤銷管理者裝置及其存儲部的結構的示意圖。在上述圖22至圖27 中,對于與前文所述附圖相同的功能賦予相同的符號,省略其詳細的說明,在此,主要敘述 不同的部分。以下的各實施例也同樣地省略重復的說明。首先,第一實施例中的群管理者裝置10如圖2所示,除了作為通用地被利用的功 能的輸入部12、輸出部19以及通信部13以外,如群密鑰生成部14、成員私密密鑰生成部 15、簽名驗證部16、簽名者確定部17以及撤銷列表生成部18那樣具有多個不同的功能。與 此相對,第二實施例成為從圖2所示的群管理者裝置10中,如圖22、圖24以及圖26所示 分離出成員私密密鑰生成裝置101、簽名者確定裝置102、以及撤銷管理者裝置103的結構。 此外,雖未圖示,但分離了各裝置101 103后的群管理者裝置10’成為具備群管理者用存 儲部11、輸入部12、通信部13、群密鑰生成部14以及輸出部19的結構。在此,成員私密密鑰生成者裝置101如圖22所示,具備成員私密密鑰生成者用存 儲部111、輸入部12、通信部13、成員私密密鑰生成部15以及輸出部19。補充一點,成員私 密密鑰生成者裝置101是專用于成員私密密鑰生成的裝置,不具有群密鑰生成部14、簽名 驗證部16、簽名者確定部17以及撤銷列表生成部18。另外,成員私密密鑰生成者用存儲部111如圖23所示,保存了公開參數、群公開密 鑰、成員私密密鑰生成用私密密鑰ik、成員信息(用戶識別信息、成員私密密鑰、撤銷令牌、 簽名者確定信息)、用戶管理信息。補充一點,成員私密密鑰生成者用存儲部111不保存簽 名者確定用私密密鑰、消息、群簽名、簽名者信息以及計算表。這樣的成員私密密鑰生成者裝置101能夠與使用群簽名方式的簽名者確定裝置 102、撤銷管理者裝置103、簽名者裝置20i以及驗證者裝置30通信。另外,成員私密密鑰生成者用存儲部111,例如存儲包含在群簽名方式中使用的素 數位數q、以及q的乘法循環群gG的生成源Gi的公開參數,存儲包含值a、b G Z;的群私密 密鑰、和包含值G2、F以及生成源&的群公開密鑰(其中,G2 = Gia,F = Gib),與用戶識別信 息ID(i)相關聯地存儲私密密鑰(kn,ki2)、該成員私密密鑰的代表的一部分kn以及簽名者確定信息T”另外,當成員私密密鑰生成者裝置101從撤銷管理者裝置103接收到包含與 被撤銷的成員對應的代表的一部分kn的撤銷列表時,成員私密密鑰生成者用存儲部111存 儲該撤銷列表。此外,當任何成員都未被撤銷時,未生成撤銷列表,因此在任何裝置101 103,30中都不存儲撤銷列表。成員私密密鑰生成者裝置101的成員私密密鑰生成部15例如具有針對每個用戶 識別信息ID (i),根據群私密密鑰、群公開密鑰以及關系式kn = b-aki2mod q,計算由滿足關 系式F = Gr {kn}G2" {ki2}的代表kn、ki2組成的成員密鑰的功能;根據成員私密密鑰以及生 成源A計算簽名者確定信息=G廠{kn}的功能;將計算出的成員私密密鑰以及簽名者確 定信息t與用戶識別信息ID(i)相關聯地寫入成員私密密鑰生成者存儲部111的功能。成員私密密鑰生成者裝置101的通信部13例如具有把用于生成群簽名方式中的 群簽名的公開參數、群公開密鑰、成員私密密鑰以及簽名者確定信息1\發送到簽名者裝置 20,的功能;把用于確定群簽名方式中的簽名者的公開參數、群公開密鑰以及簽名者確定信 息凡發送到簽名者確定裝置102的功能;把成員私密密鑰生成者用存儲部101內的用戶識 別信息ID (i)以及代表的一部分kn發送到撤銷管理者裝置103的功能;把用于驗證群簽名 方式中的群簽名的公開參數以及群公開密鑰發送到驗證者裝置30的功能。簽名者確定裝置102如圖24所示,具備簽名者確定裝置用存儲部112、輸入部12、 通信部13、簽名驗證部16、簽名者確定部17以及輸出部19。補充一點,簽名者確定裝置102 是專用于確定簽名者的裝置,不具有成員私密密鑰生成部15以及撤銷列表生成部18。另外,簽名者確定裝置用存儲部112如圖25所示,保存了公開參數、群公開密鑰、 簽名者確定用私密密鑰ok、成員信息(用戶識別信息、撤銷令牌、簽名者確定信息)、消息、 群簽名o、計算表、簽名者信息。補充一點,簽名者確定裝置用存儲部112不保存成員私密 密鑰生成用私密密鑰、成員信息的成員私密密鑰以及用戶管理信息。這樣的簽名者確定裝置102能夠與使用群簽名方式的成員私密密鑰生成者裝置 101、撤銷管理者裝置103以及驗證者裝置30通信。簽名者確定裝置用存儲部112例如存儲包含在群簽名方式中使用的素數位數q、 以及q的乘法循環群gG的生成源&的公開參數,存儲包含值Xl、x2、yi、y2、z G Z;的簽名 者確定用私密密鑰、和值G2、F、C、D、H、生成源&以及散列函數Hash的群公開密鑰(其中, G2 = GJ,F = ,a、b G Z;, C = G廠{xj G2" {x2},D = G廠{yj G2" {y2},H = G^),把通信部 13 接收到的用戶識別信息ID(i)、代表的一部分kn以及簽名者確定信息凡互相關聯地存儲。另外,當簽名者確定裝置102從撤銷列表管理者裝置103接收到包含與被撤銷的 成員對應的代表的一部分kn的撤銷列表時,簽名者確定裝置用存儲部112存儲該撤銷列 表。簽名者確定裝置102的通信部13例如具有針對每個用戶識別信息ID(i),從成 員私密密鑰生成者裝置101接收根據由代表kn、ki2組成的成員私密密鑰以及生成源&計 算出的簽名者確定信息凡=Gr {kn}、和代表的一部分kn、用戶識別信息ID⑴的功能,所 述代表kn、ki2根據包含值a、b的成員私密密鑰生成用私密密鑰、群公開密鑰以及關系式kn =b-aki2mod q而生成,并且滿足關系式F = G「{kn}G2" {ki2}。簽名者確定裝置102的簽名驗證部16具有當通過通信部13從驗證者裝置30取 得消息、包含值E、的群簽名(其中,E =硭凡、= G:r, r為隨機數)和簽名者確定請求時,根據公開參數以及群公開密鑰驗證該群簽名的正當性的功能。簽名者確定裝置102的簽名者確定部17具有當簽名驗證部16的驗證的結果為 群簽名表示正當性時,根據該群簽名以及簽名者確定用私密密鑰計算簽名者確定信息凡= E/U^的功能;和根據計算出的簽名者確定信息檢索簽名者確定裝置用存儲部112,并確 定與簽名者確定信息對應的用戶識別信息ID(i)的功能。簽名者確定裝置102的輸出部19具有輸出通過簽名者確定部17確定的用戶識別 信息ID(i)的功能。撤銷管理者裝置103如圖26所示,具備撤銷管理者用存儲部113、輸入部12、通信 部13、撤銷列表生成部18以及輸出部19。補充來說,撤銷管理者裝置103是專門用于撤銷 管理的裝置,不具有成員私密密鑰生成部15、簽名驗證部16以及簽名者確定部17。另外,撤銷管理者用存儲部113如圖27所示,保存了成員信息(用戶識別信息、撤 銷令牌)。補充來說,撤銷管理者用存儲部113不保存公開參數、群公開密鑰、成員私密密鑰 生成用私密密鑰、簽名者確定用私密密鑰、成員信息的成員私密密鑰和簽名者確定信息、用 戶管理信息、消息、群簽名、簽名者信息以及計算表。這樣的撤銷管理者裝置103能夠與使用群簽名方式的成員私密密鑰生成者裝置 101、簽名者確定裝置102、簽名者裝置20i以及驗證者裝置30通信。撤銷管理者用存儲部113把通過通信部13接收的用戶識別信息ID(i)以及代表 的一部分kn互相關聯地存儲。撤銷管理者裝置103的撤銷列表生成部18具有,例如當從輸入部12輸入了表示 被撤銷的成員的用戶識別信息ID(i)時,根據該輸入的用戶識別信息ID(i)生成包含撤銷 管理者用存儲部113內的對應的代表的一部分kn的撤銷列表的功能。撤銷管理者裝置103的通信部13具有例如根據包含使用群簽名方式的素數位數 q以及q的乘法循環群gG的生成源&的公開參數、和包含值a、b G Z;的成員私密密鑰生 成用私密密鑰、和包含值G2、F以及生成源&的群公開密鑰(其中,G2 = Gia,F = Gib),針對 每個用戶識別信息ID(i),根據關系式kn = b-aki2mod q,當通過成員密鑰生成者裝置102 生成了由滿足關系式F = GJ {kn}G2" {ki2}的代表kn、ki2組成的成員密鑰時,從成員密鑰生 成者裝置102接收互相關聯的該代表的一部分kn和用戶識別信息ID (i)的功能;和把通過 撤銷列表生成部18生成的撤銷列表發送到驗證者裝置30的功能。根據以上結構,可以按照群管理者具有的每種功能來分割裝置。第一實施例中的 群管理者裝置10,如群密鑰生成部14、成員私密密鑰生成部15、簽名驗證部16、簽名者確定 部17以及撤銷列表生成部18那樣具有多個不同功能,但除了簽名驗證和簽名者確定以外, 一般利用這些功能的時刻、頻率、負荷各種各樣。因此,從負荷分散或系統的運用、管理的觀 點來看,有時希望按照每個功能分割裝置。另外,也期待通過使這些功能管理必要的最低限 度的信息,實現更高的安全性的效果。例如,即使利用撤銷管理者裝置103或簽名者確定裝 置102也無法生成成員私密密鑰,無法進行不正當的簽名的偽造。另外,可以把群管理者功能分割給成員私密密鑰生成者、簽名者確定者、撤銷管理 者,可以同時實現比現有的不可陷害性(Non-Frameability)稍弱的弱不可陷害性(Weak Non-Frameability)和自身追蹤性(Self-Traceability),由此可以實現更高安全性和靈 活的系統運用、管理。
(第三實施例)圖28以及圖29是表示本發明的第三實施例的簽名者同一性證明裝置及其存儲部 的結構的示意圖。首先,第一實施例中的簽名者裝置20i如圖4所示,作為通用地被利用的功能的輸 入部22、輸出部27以及通信部23以外,如消息生成部24、群簽名生成部25、簽名者同一性 證明部26那樣具有多個不同的功能。與此相對,第三實施例成為從圖4所示的簽名者裝置 20,中如圖28以及圖29所示那樣提取出簽名者同一性證明裝置201的結構。簽名者同一性證明裝置201i如圖28所示,具備簽名者同一性證明用秘密信息存 儲部211、通信部23以及簽名者同一性證明部26。補充來說,簽名者同一性證明裝置20込 是專門用于簽名者同一性證明的裝置,不具備輸入部22、輸出部27、消息生成部24以及群 簽名生成部25。另外,簽名者同一性證明用秘密信息存儲部211如圖29所示,保存作為成員私密 密鑰的一部分的kn。補充來說,簽名者同一性證明用秘密信息存儲部211不保存公開參數、 群公開密鑰、計算表、成員私密密鑰的另一部分ki2、簽名者確定信息、消息以及群簽名。這樣的簽名者同一性證明裝置201i能夠與使用群簽名方式的群管理者裝置10、簽 名者裝置20i以及驗證者裝置30通信。簽名者同一性證明用秘密信息存儲部211,針對每個用戶識別信息ID(i)存儲通 過群管理者裝置10生成的成員私密密鑰內的代表的一部分kn。簽名者同一性證明裝置201i的簽名者同一性證明部26例如具有根據包含群簽 名方式中使用的素數位數q、以及q的乘法循環群gG的生成源&的公開參數,選擇隨機數 r1ez(;的功能;當通信部23從簽名者裝置20i接收包含值R、U的群簽名0時(其中R = 17,^ = 61、凡=61、1~為隨機數),根據該群簽名o內的值仏以及所選擇的隨機數巧計 算零知識證明的承諾!?’二仏-!^}的功能;根據稱為挑戰的隨機數S、隨機數ri、代表的一 部分kn以及素數位數q,計算成為零知識證明的應答的參數s/zr^S、mod q的功能。簽名者同一性證明裝置201i的通信部23具有把通過簽名者同一性證明部26計 算出的承諾R’發送到驗證者裝置30的功能;從驗證者裝置30接收成為零知識證明的挑戰 的隨機數5 G Z;的功能;對能夠驗證驗證式R’ = R" {- 8 }urs/的驗證者裝置30發送 通過簽名者同一性證明部26計算出的參數s/的功能。根據以上的結構,可以使簽名者同一性證明裝置201從簽名者裝置20i獨立。在 簽名者同一性證明用秘密信息存儲部211中不保存作為成員私密密鑰的一部分的kn,僅通 過成員私密密鑰的一部分kn無法生成簽名,因此,即使假定簽名者同一性證明裝置20込丟 失、被盜并被不正當地分析,也可以把用戶的被害抑制到最低限度。由此也能實現把自家中 安全地進行管理的PC(PerS0nalC0mputer)用作簽名者裝置來進行簽名生成,把容易搬 運的便攜電話或IC卡用作簽名者同一性證明裝置201i來進行簽名者同一性證明處理的系 統運用。另外,可以把簽名生成者功能分割給簽名生成者、簽名者同一性證明者,可 以同時實現比現有的不可陷害性(Non-Frameabi 1 ity)稍弱的弱不可陷害性(Weak Non-Frameability)和自身追蹤性(Self-Traceability),由此可以實現更高安全性和靈 活的系統運用、管理。
此外,上述實施例中記載的方法也可以作為可以使計算機執行的程序而存儲在磁 盤(Floppy 1盤、硬盤等)、光盤(⑶_R0M、DVD等)、光磁盤(M0)、半導體存儲器等存儲介質 中來分發。另外,作為該存儲介質,只要是能夠存儲程序并且由計算機讀取的存儲介質,則其 存儲形式可以是任何形態。另外,根據從存儲介質向計算機安裝的程序的指示,在計算機上運行的OS(操作 系統)、或數據庫管理軟件、網絡軟件等MW(中間件)等也可以執行用于實現上述實施例的 各處理的一部分。而且,本發明中的存儲介質不限于獨立于計算機的介質,也包含下載通過LAN或 因特網等傳送的程序來存儲或臨時存儲的存儲介質。另外,存儲介質不限于一個,從多個介質執行上述實施例中的處理的情況,也包含 在本發明的存儲介質中,介質結構可以是任意結構。此外,本發明中的計算機根據在存儲介質上存儲的程序執行上述實施例中的各處 理,可以是由個人計算機等一個所構成的裝置、將多個裝置進行網絡連接的系統等任意結 構。另外,本發明中的計算機不限于個人計算機,也包括在信息處理設備中包含的運 算處理裝置、微型計算機等,是能夠通過程序來實現本發明的功能的設備、裝置的總稱。此外,本申請的發明并不限定于上述實施例本身,在實施階段在不脫離其主旨的 范圍內可以改變結構要素來具體化。另外,可以通過上述實施例中公開的多個結構要素的 適當的組合來形成各種發明。例如也可以從實施例所示的全部結構要素中刪除若干結構要 素。而且,也可以將跨越不同的實施方式的結構要素進行適當組合。產業上的可利用性如上所述,根據本發明,可以在實現撤銷功能的同時減少計算量來提高計算速度。
權利要求
一種群簽名系統,其具備互相可以通信的群管理者裝置(10)、簽名者裝置(20i)以及驗證者裝置(30),各裝置使用群簽名方式,其特征在于,所述群管理者裝置具備參數存儲單元(11),其存儲包含在所述群簽名方式中使用的素數位數q、以及所述q的乘法循環群gG的生成源G1的公開參數;群密鑰生成單元(14),其根據所述參數存儲單元內的公開參數,生成包含值a、b∈Zq*的群私密密鑰、和包含滿足第一關系式G2=G1a以及第二關系式G=G1b的值G2、F以及所述生成源G1的群公開密鑰;成員私密密鑰生成單元(15),其根據所述群私密密鑰、所述群公開密鑰以及第三關系式ki1=b aki2 mod q,計算由滿足第四關系式F=G1^{ki1}G2^{ki2}的代表ki1、ki2組成的成員私密密鑰,其中,“^”是表示冪運算的記號;簽名者確定信息計算單元(15),其根據所述成員私密密鑰以及所述生成源g1,計算簽名者確定信息Ti=G1^{ki1};撤銷列表生成單元(18),其生成包含與被撤銷的成員對應的代表的一部分ki1的撤銷列表;以及將所述撤銷列表發送給所述驗證者裝置的單元(13),所述簽名者裝置具備簽名者用存儲單元(21),其存儲包含在所述群簽名方式中使用的素數位數q以及所述q的乘法循環群G的生成源g1的公開參數、和所述群公開密鑰、所述成員私密密鑰、所述簽名者確定信息Ti以及消息;加密文生成單元(25),其根據所述簽名者用存儲單元內的公開參數以及群公開密鑰,將所述簽名者確定信息Ti加密,生成該簽名者確定信息Ti的加密文數據;零知識證明生成單元(25),其根據所述簽名者用存儲單元內的公開參數、所述群公開密鑰、所述成員私密密鑰以及所述消息和所述簽名者確定信息Ti的加密文數據,生成零知識證明,該零知識證明表示已知該成員私密密鑰,并且根據該簽名者確定信息Ti正確地生成了所述加密文數據;以及將由所述加密文數據以及所述零知識證明組成的群簽名和所述消息發送到所述驗證者裝置的單元(23),所述驗證者裝置具備驗證者用存儲單元(31),其存儲包含在所述群簽名方式中使用的素數位數q、以及所述q的乘法循環群G的生成源g1的公開參數和所述群公開密鑰;分別從所述群管理者裝置接收所述撤銷列表,從所述簽名者裝置接收所述群簽名以及消息的單元(33);驗證單元(34),其根據所述接收到的撤銷列表和群簽名以及消息和所述驗證者用存儲單元內的公開參數以及群公開密鑰,驗證該群簽名的正當性;以及將所述驗證的結果發送到所述簽名者裝置的單元(33)。
2.一種群管理者裝置(10),其能夠與使用群簽名方式的簽名者裝置(20D以及驗證者 裝置(30)通信,其特征在于,具備參數存儲單元(11),其存儲包含在所述群簽名方式中使用的素數位數q、以及所述q的 乘法循環群gG的生成源G1的公開參數;群密鑰生成單元(14),其根據所述參數存儲單元內的公開參數,生成包含值a、b e Ζ; 的群私密密鑰、和包含滿足第一關系式G2 = G13以及第二關系式F = G113的值G2、F以及所 述生成源G1的群公開密鑰;成員私密密鑰生成單元(15),其根據所述群私密密鑰、所述群公開密鑰以及第三關系 式kn = b_aki2 mod q,計算由滿足第四關系式F = G1^kiJG2Jki2I的代表kn、ki2組成的 成員私密密鑰,其中,是表示冪運算的記號;簽名者確定信息計算單元(15),其根據所述成員私密密鑰以及所述生成源G1,計算簽 名者確定信息Ti = G1^kiJ ;把用于生成所述群簽名方式中的群簽名的所述公開參數、所述群公開密鑰、所述成員 私密密鑰以及所述簽名者確定信息Ti發送到所述簽名者裝置的單元(13);撤銷列表生成單元(18),其生成包含與被撤銷的成員對應的所述代表的一部分kn的 撤銷列表;以及把用于驗證所述群簽名方式中的群簽名的所述公開參數、所述群公開密鑰以及所述撤 銷列表發送到所述驗證者裝置的單元(13)。
3.—種簽名者裝置(20》,其能夠與使用群簽名方式的群管理者裝置(10)以及驗證者 裝置(30)通信,其特征在于,具備從所述群管理裝置接收下述信息的單元(23),這些信息是包含在所述群簽名方式中 使用的素數位數q、以及所述q的乘法循環群gG的生成源G1的公開參數;包含根據所述公 開參數,滿足值a、b e Ζ;和第一關系式G2 = G13以及第二關系式F = G113地生成的值G2、F 以及所述生成源G1的群公開密鑰;根據所述值a、b e Z/、所述群公開密鑰以及第三關系式 kn = b-aki2 mod q,由滿足第四關系式F = G1IkiJG2]!^地生成的代表kn、ki2組成的成 員私密密鑰;以及根據所述成員私密密鑰以及所述生成源G1而生成的簽名者確定信息Ti = G1" {kn},其中,“ ~ ”是表示冪運算的記號;簽名者用存儲單元(21),用于存儲所述接收到的公開參數、所述群公開密鑰、所述成員 私密密鑰以及所述簽名者確定信息Ti和消息;生成所述消息,并寫入所述簽名者用存儲單元的單元(24);加密文生成單元(25),其根據所述簽名者用存儲單元內的公開參數以及群公開密鑰, 加密所述簽名者確定信息Ti,生成該簽名者確定信息Ti的加密文數據;零知識證明生成單元(25),其根據所述簽名者用存儲單元內的公開參數、所述群公開 密鑰、所述成員私密密鑰以及所述消息、所述簽名者確定信息Ti的加密文數據,生成表示 已知該成員私密密鑰,并且根據該簽名者確定信息Ti正確地生成了所述加密文數據的零 知識證明;以及將由所述加密文數據以及所述零知識證明組成的群簽名與所述消息發送到所述驗證 者裝置的單元(23)。
4.一種驗證者裝置(30),能夠與使用群簽名方式的群管理者裝置(10)以及簽名者裝 置OOi)通信,其特征在于,具備從所述群管理者裝置接收下述信息的單元(33),這些信息是包含所述群簽名方式中 使用的素數位數q以及所述q的乘法循環群gG的生成源G1的公開參數;包含根據所述公 開參數,滿足值a、b e Ζ;和第一關系式G2 = G13以及第二關系式F = G113地生成的值G2、F 以及所述生成源G1的群公開密鑰;和包含與被撤銷的成員對應的代表的一部分kn的撤銷 列表;存儲所述接收到的公開參數和所述群公開密鑰的驗證者用存儲單元(31); 從所述簽名者裝置接收由零知識證明和所述簽名者確定信息Ti的加密文數據組成的 群簽名以及消息的單元(33),所述零知識證明表示關于根據所述值a、b e Ζ:、所述群公 開密鑰以及第三關系式kn = b_aki2 mod q,由滿足第四關系式F = G廠{kn}G2~{ki2}地生成 的代表kn、ki2組成的成員私密密鑰、和根據所述成員私密密鑰以及所述生成源G1而生成的 簽名者確定信息Ti = G1" {kn},已知所述成員私密密鑰并且根據所述簽名者確定信息Ti正 確地生成了所述加密文數據,其中,“ ~ ”是表示冪運算的記號;驗證單元(34),其根據所述接收到的撤銷列表和群簽名以及消息和所述驗證者用存儲 單元內的公開參數以及群公開密鑰,驗證該群簽名的正當性;以及 將所述驗證的結果發送到所述簽名者裝置的單元(33),所述加密文數據,是根據所述公開參數以及群公開密鑰,通過所述簽名者裝置加密所 述簽名者確定信息Ti而得到的數據,所述零知識證明,是根據所述公開參數、所述群公開密鑰、所述成員私密密鑰以及消 息、和所述簽名者確定信息Ti的加密文數據,通過所述簽名者裝置生成的數據。
5. 一種程序,在作為能夠與使用群簽名方式的簽名者裝置OOi)以及驗證者裝置(30) 通信的群管理裝置(10)的計算機中使用,被存儲在計算機可讀取的存儲介質(M)中,其特 征在于,具備以下程序代碼用于使該計算機執行把包含在所述群簽名方式中使用的素數位數q、以及所述q的乘 法循環群gG的生成源G1的公開參數寫入所述計算機的存儲器(11)的處理(13)的程序代 碼;用于使所述計算機執行根據所述存儲器內的公開參數生成包含群私密密鑰和群公開 密鑰的群密鑰生成處理(14)的程序代碼,所述群私密密鑰包含值a、b e Zt;,所述群公開密 鑰包含滿足第一關系式G2 = G13以及第二關系式F = G113的值G2、F以及所述生成源G1 ;用于使所述計算機執行根據所述群私密密鑰、所述群公開密鑰以及第三關系式kn = b-aki2 mod q,計算由滿足第四關系式F = G1IkiJG2^ki2I的代表kn、ki2組成的成員私密 密鑰的成員私密密鑰生成處理(15)的程序代碼,其中,是表示冪運算的記號;用于使所述計算機執行根據所述成員私密密鑰以及所述生成源G1計算簽名者確定信 ETi = G1-IkiJ的簽名者確定信息計算處理(15)的程序代碼;用于使所述計算機執行將用于生成所述群簽名方式中的群簽名的所述公開參數、所述 群公開密鑰、所述成員私密密鑰以及所述簽名者確定信息Ti發送到所述簽名者裝置的處 理(13)的程序代碼;用于使所述計算機執行生成包含與被撤銷的成員對應的所述代表的一部分Icil的撤銷列表的撤銷列表生成處理(18)的程序代碼;以及用于使所述計算機執行將用于驗證所述群簽名方式中的群簽名的所述公開參數、所述 群公開密鑰以及所述撤銷列表發送到所述驗證者裝置的處理(13)的程序代碼。
6.一種程序,在作為能夠與使用群簽名方式的群管理者裝置(10)以及驗證者裝置 (30)通信的簽名者裝置(20i)的計算機中使用,被存儲在計算機可讀取的存儲介質(M)中, 其特征在于,具備以下程序代碼用于使所述計算機執行從所述群管理者裝置接收以下信息的處理(23)的程序代碼, 這些信息是包含在所述群簽名方式中使用的素數位數q、以及所述q的乘法循環群gG的 生成源G1的公開參數;包含根據所述公開參數,滿足值a、b e Ζ;和第一關系式G2 = G13 以及第二關系式F = G113地生成的值G2、F以及所述生成源G1的群公開密鑰;根據所述值 a、b e Zj、所述群公開密鑰以及第三關系式kn = b_aki2 mod q,由滿足第四關系式F = G1-IkiJ G2" {ki2}地生成的代表kn、ki2組成的成員私密密鑰;以及根據所述成員私密密鑰以 及所述生成源G1而生成的簽名者確定信息Ti = G1" {kn},其中,是表示冪運算的記號;用于使該計算機執行將所述接收到的公開參數、所述群公開密鑰、所述成員私密密鑰 以及所述簽名者確定信息Ti和消息寫入所述計算機的存儲器(21)的處理(23)的程序代 碼;用于使所述計算機執行生成所述消息然后寫入所述存儲器的處理(24)的程序代碼;用于使所述計算機執行根據所述存儲器內的公開參數以及群公開密鑰加密所述簽名 者確定信息Ti,并生成該簽名者確定信息Ti的加密文數據的加密文生成處理(25)的程序 代碼;用于使所述計算機執行根據所述存儲器內的公開參數、所述群公開密鑰、所述成員私 密密鑰以及所述消息、所述簽名者確定信息Ti的加密文數據,生成表示已知該成員私密密 鑰并且根據該簽名者確定信息Ti正確地生成了所述加密文數據的零知識證明的零知識證 明生成處理(25)的程序代碼;以及用于使所述計算機執行將由所述加密文數據以及所述零知識證明組成的群簽名和所 述消息發送到所述驗證者裝置的處理(23)的程序代碼。
7.一種程序,在作為能夠與使用群簽名方式的群管理者裝置(10)以及簽名者裝置 (20,)通信的驗證者裝置(30)的計算機中使用,被存儲在計算機可讀取的存儲介質(M)中, 其特征在于,具備以下程序代碼用于使所述計算機執行從所述群管理者裝置接收以下信息的處理(33)的程序代碼, 這些信息是包含所述群簽名方式中使用的素數位數q以及所述q的乘法循環群gG的生成 源61的公開參數;包含根據所述公開參數,滿足值a、b e Z(;和第一關系式G2 = Gla以及第 二關系式F = G113地生成的值G2、F以及所述生成源G1的群公開密鑰;和包含與被撤銷的成 員對應的代表的一部分Icil的撤銷列表;用于使該計算機執行將所述接收到的公開參數和所述群公開密鑰寫入所述計算機的 存儲器(31)的處理(33)的程序代碼;用于使所述計算機執行從所述簽名者裝置接收由零知識證明和所述簽名者確定信息Ti的加密文數據組成的群簽名以及消息的處理(33)的程序代碼,所述零知識證明表示關 于根據所述值a、b e Ζ:、所述群公開密鑰以及第三關系式kn = b-aki2 mod q,由滿足第四 關系式F = G1- {kn}G2" {ki2}地生成的代表kn、ki2組成的成員私密密鑰、和根據所述成員私 密密鑰以及所述生成源G1而生成的簽名者確定信息Ti =G廠{kn},已知所述成員私密密鑰, 并且根據所述簽名者確定信息Ti正確地生成了所述加密文數據,其中,“ ~ ”是表示冪運算的 記號;用于使所述計算機執行根據所述接收到的撤銷列表和群簽名以及消息和所述存儲器 內的公開參數以及群公開密鑰,驗證該群簽名的正當性的驗證處理(34)的程序代碼;以及 用于使所述計算機執行將所述驗證的結果發送到所述簽名者裝置的處理(33)的程序 代碼,所述加密文數據,是根據所述公開參數以及群公開密鑰,通過所述簽名者裝置加密所 述簽名者確定信息Ti而得到的數據,所述零知識證明,是根據所述公開參數、所述群公開密鑰、所述成員私密密鑰以及消息 和所述簽名者確定信息Ti的加密文數據,通過所述簽名者裝置生成的數據。
8. 一種成員私密密鑰生成者裝置(101),能夠與使用群簽名方式的簽名者確定裝置 (102)、撤銷管理者裝置(103)、簽名者裝置(20D以及驗證者裝置(30)通信,其特征在于,參數存儲單元(111),其存儲包含所述群簽名方式中使用的素數位數q、以及所述q的 乘法循環群gG的生成源G1的公開參數;群密鑰存儲單元(111),其存儲包含值a、b e Ζ:的群私密密鑰、和包含值G2、F以及所 述生成源G1的群公開密鑰,其中,G2 = G13, F = G113 ;成員私密密鑰生成單元(15),其針對每個用戶識別信息ID(i),根據所述群私密密鑰、 所述群公開密鑰以及關系式kn = b_aki2 mod q,計算由滿足關系式F = G1^kiJG2Jki2I的 代表kn、ki2組成的成員私密密鑰,其中,““,,是表示冪運算的記號;簽名者確定信息計算單元(15),其根據所述成員私密密鑰以及所述生成源G1計算簽名 者確定信息Ti = GrikiJ ;成員信息存儲單元(111),其與所述用戶識別信息ID(i)相關聯地存儲所述成員私密 密鑰(kn,ki2)、該成員私密密鑰的代表的一部分kn以及所述簽名者確定信息Ti ;將用于生成所述群簽名方式中的群簽名的所述公開參數、所述群公開密鑰、所述成員 私密密鑰以及所述簽名者確定信息Ti發送到所述簽名者裝置的單元(13);將用于確定所述群簽名方式中的簽名者的所述公開參數、所述群公開密鑰以及所述簽 名者確定信息Ti發送到所述簽名者確定裝置的單元(13);將所述成員信息存儲單元內的用戶識別信息ID(i)以及代表的一部分kn發送到所述 撤銷管理者裝置的單元(13);撤銷列表存儲單元(111),其從所述撤銷管理者裝置接收包含與被撤銷的成員對應的 所述代表的一部分kn的撤銷列表,并存儲該撤銷列表;以及將用于驗證所述群簽名方式中的群簽名的所述公開參數以及所述群公開密鑰發送到 所述驗證者裝置的單元(13)。
9. 一種簽名者確定裝置(102),能夠與使用群簽名方式的成員私密密鑰生成者裝置(101)、撤銷管理者裝置(103)以及驗證者裝置(30)通信,其特征在于,參數存儲單元(112),其存儲包含在所述群簽名方式中使用的素數位數q以及所述q的 乘法循環群gG的生成源G1 ;密鑰存儲單元(112),其存儲包含值\、&、71、72、2 e Z:的簽名者確定用私密密鑰;和 包含G2、F、C、D、H、所述生成源G1以及散列函數Hash的群公開密鑰,其中,G2 = G1a^F = G11^ a、b e Zt;、C = G1" IxJ G2" {x2} ,D = G1" {yj G2" {y2},H = G12, “ “,,是表示冪運算的記號;從所述成員私密密鑰生成者裝置接收根據由代表kn、ki2組成的成員私密密鑰以及所 述生成源G1計算出的簽名者確定信息Ti = G1" {kn}、所述代表的一部分kn、和用戶識別信 息ID⑴的單元(13),其中,所述代表kn、ki2針對每個用戶識別信息ID(i),根據包含值a、 b的成員私密密鑰生成用私密密鑰、所述群公開密鑰以及關系式kn = b_aki2 mod q而生成, 并且滿足關系式F = G1^kiJG2Iki2I ;成員信息存儲單元(112),其將所述接收到的用戶識別信息ID(i)、所述代表的一部分 kn以及所述簽名者確定信息Ti互相關聯地存儲;撤銷列表存儲單元(112),其從所述撤銷管理者裝置接收包含與被撤銷的成員對應的 所述代表的一部分kn的撤銷列表,并存儲該撤銷列表;簽名驗證單元(16),當從所述驗證者裝置取得消息、包含值E、U1的群簽名和簽名者 確定請求時,根據所述公開參數以及所述群公開密鑰,驗證該群簽名的正當性,其中,E = HrTi, U1 = G,,r 是隨機數;簽名者確定信息單元(17),其在所述驗證的結果為群簽名表示正當性時,根據該群簽 名以及所述簽名者確定用私密密鑰計算簽名者確定信息Ti = EzUz ;根據所述計算出的簽名者確定信息Ti檢索所述成員信息存儲單元,確定與簽名者確定 信息Ti對應的用戶識別信息ID(i)的單元(17);以及輸出所述確定的用戶識別信息ID(i)的輸出單元(19)。
10. 一種撤銷管理者裝置(10),能夠與使用群簽名方式的成員私密密鑰生成者裝置 (101)、簽名者確定裝置(102)、簽名者裝置(20i)以及驗證者裝置(30)通信,其特征在于,當根據包含在所述群簽名方式中使用的素數位數q以及所述q的乘法循環群gG的生 成源G1的公開參數、和包含值a、b e Ζ;的成員私密密鑰生成用私密密鑰、和包含值G2、F 以及所述生成源G1的群公開密鑰,針對每個用戶識別信息ID(i),根據關系式kn = b-aki2 mod q,通過所述成員私密密鑰生成者裝置生成了由滿足關系式F = G1^kiJG2Ikj的代表 kn、ki2組成的成員私密密鑰時,從所述成員私密密鑰生成者裝置接收互相關聯的該代表的 一部分kn和所述用戶識別信息ID(i)的單元(13),其中,G2 = G1a^F = G113 ;撤銷管理者用存儲單元(113),其將所述接收到的用戶識別信息ID(i)以及代表的一 部分kn互相關聯地存儲;撤銷列表生成單元(18),其當被輸入了表示被撤銷的成員的用戶識別信息ID(i)時, 根據該輸入的用戶識別信息ID(i)生成包含所述撤銷管理者用存儲單元內的對應的代表 的一部分kn的撤銷列表;以及將所述撤銷列表發送到所述驗證者裝置的單元(13)。
11. 一種簽名者同一性證明裝置(201》,能夠與使用群簽名方式的群管理者裝置(10)、 簽名者裝置OOi)以及驗證者裝置(30)通信,其特征在于, 具備存儲單元(211),其針對每個用戶識別信息ID (i),存儲通過所述群管理者裝置生成的 成員私密密鑰內的代表的一部分kn ;根據包含在所述群簽名方式中使用的素數位數q以及所述q的乘法循環群gG的生成 源G1的公開參數,選擇隨機數巧e Z;的單元(26);當從所述簽名者裝置取得包含! 、仏的群簽名ο時,根據該群簽名ο內的值U1以及所 述選擇的隨機數巧計算零知識證明的承諾R’ =UrirJ的單元(26),其中,R = I7,U1 = G,,T1 = G,,r是隨機數,是表示冪運算的記號;將所述計算出的承諾R’發送到所述驗證者裝置的單元(23); 從所述驗證者裝置接收成為所述零知識證明的挑戰的隨機數δ e Ζ:的單元(23); 根據所述成為挑戰的隨機數δ、所述隨機數Γι、所述代表的一部分kn以及所述素數位 數q,計算成為所述零知識證明的應答的參數s/ = T1+ δ kn mod q的單元(26);以及對能夠驗證驗證式R’ = R" {" δ IU1-S1'的所述驗證者裝置發送所述計算出的參數s/ 的單元(23)。
全文摘要
本發明的一個實施方式的群簽名系統,具備能夠互相通信的群管理者裝置(10)、簽名者裝置(201~20n)以及驗證者裝置(30)。在此,各裝置(10、201~20n、30)使用的群簽名方式,是完全不使用像RSA那樣位數未知的乘法循環群或雙線性群,而僅使用素數位數q的乘法循環群gG的方式,并且把代表ki1、ki2作為成員私密密鑰。另外,作為用于確定簽名者的信息,利用Ti=G1^{ki1},在撤銷驗證中利用了ki1。因此,與現有的[CG04]方式、[FI05]方式以及[DP06]方式相比,可以減少計算量來提高計算速度。
文檔編號H04L9/32GK101978651SQ20098010936
公開日2011年2月16日 申請日期2009年3月10日 優先權日2008年3月19日
發明者岡田光司, 吉田琢也 申請人:株式會社東芝;東芝解決方案株式會社