计算机应用   2016, Vol. 36 Issue (10): 2758-2761  DOI: 10.11772/j.issn.1001-9081.2016.10.2758
0

引用本文 

左黎明, 郭红丽, 张婷婷, 陈祚松. 改进的基于证书的聚合代理签名方案[J]. 计算机应用, 2016, 36(10): 2758-2761.DOI: 10.11772/j.issn.1001-9081.2016.10.2758.
ZUO Liming, GUO Hongli, ZHANG Tingting, CHEN Zuosong. Improved certificate-based aggregate proxy signature scheme[J]. JOURNAL OF COMPUTER APPLICATIONS, 2016, 36(10): 2758-2761. DOI: 10.11772/j.issn.1001-9081.2016.10.2758.

基金项目

国家自然科学基金资助项目(11361024,11261019);江西省自然科学基金资助项目(20151BAB201002)

通信作者

左黎明(1981—),男,江西鹰潭人,副教授,硕士,CCF会员,主要研究方向:信息安全、非线性系统;E-mail:limingzuo@126.com

作者简介

郭红丽(1988—),女,河南登封人,硕士研究生,主要研究方向:信息安全;
张婷婷(1991—),女,河南濮阳人,硕士研究生,主要研究方向:信息安全;
陈祚松(1993—),男,江西赣州人,硕士研究生,主要研究方向:信息安全

文章历史

收稿日期:2016-03-14
修回日期:2016-06-17
改进的基于证书的聚合代理签名方案
左黎明1,2, 郭红丽1,2, 张婷婷1,2, 陈祚松1,2    
1. 华东交通大学 理学院, 南昌 330013; ;
2. 华东交通大学 系统工程与密码学研究所, 南昌 330013
摘要: 针对喻琇瑛等(喻琇瑛,何大可.基于双线性对的聚合代理签名.中南大学学报(自然科学版),2015,46(12):4535-4541.)提出的聚合代理签名方案进行分析,指出该方案存在已知一个有效签名的情况下可伪造任意消息的有效签名漏洞,在此基础上提出了一个改进的基于证书的聚合代理签名方案,给出了一种新的攻击模型,并在随机预言机模型下证明了新方案针对新的攻击者是存在性不可伪造的。改进后的新方案能够抵抗合谋攻击和伪造签名攻击,适用于计算受限以及实时要求高的应用场合。
关键词: 基于证书    聚合代理签名    随机预言机    计算Diffie-Hellman难题    存在性不可伪造    
Improved certificate-based aggregate proxy signature scheme
ZUO Liming1,2, GUO Hongli1,2, ZHANG Tingting1,2, CHEN Zuosong1,2     
1. School of Basic Science, East China Jiaotong University, Nanchang Jiangxi 330013, China; ;
2. Systems Engineering and Cryptography Institute, East China Jiaotong University, Nanchang Jiangxi 330013, China
Abstract: The analysis of aggregate proxy signature scheme proposed by Yu et al. (YU X Y, HE D K. A certificate-based aggregate proxy signature scheme. Journal of Central South University (Science and Technology), 2015, 46(12): 4535-4541.) showed that a valid signatures could be forged for any messages while knowing a valid signature. Therefore, an improved certificate-based aggregate proxy signature scheme was proposed and a new attack model was given. The new scheme was proved to be existentially unforgeable for the new attacker in random oracle model. The results show that the proposed scheme can resist conspiracy attacks and forgery attacks, and it is more suitable for the computation-constrained and real-time tasks.
Key words: certificate-based    aggregate proxy signature    random oracle model    Computational Diffie-Hellman (CDH) problem    existentially unforgeable    
0 引言

2003年,Boneh等[1]首次提出了聚合签名的概念,其原理是将多个用户对不同消息的签名聚合成一个签名,验证者只需验证聚合后的签名就可实现对一批签名的验证。这大大减少了签名验证阶段的计算量,特别适用于需要高效实时批量验证签名数据的场合(比如高铁网络售票系统)。1996年,Mambo等[2]提出了代理签名的概念,原始签名者可以将自己的签名权限授予其他的代理签名人。2012年Boldyreva等[3]对代理签名的形式化安全模型进行了总结与分析。结合聚合签名、证书管理[4]和代理签名的特点,2007年Li等[5]提出了聚合代理签名的概念,多个代理签名人可以对不同的消息代表原始签名人进行聚合签名。2009年,Zhang等[6]指出Li[5]方案是存在漏洞的,并提出一个安全高效的无证书聚合签名方案。2010年,Kyung等[7] 提出一个效率较高的基于身份的聚合签名方案。近年来国内外也有学者[8-11]提出了一些聚合签名方案。2015年,喻琇瑛等[12]提出了一种基于双线性对的聚合代理签名方案(以下简称喻方案),但本文通过分析发现该方案的安全性值得商榷,攻击者通过公开信道窃取一次有效的签名便可以伪造任意消息的聚合签名。在此基础上本文给出了可证安全的改进方案。

1 对喻方案的攻击

喻方案的具体描述和形式化证明可参考文献[12]。文献[12]指出喻方案满足存在性不可伪造,但事实上任意的攻击者获得用户的一个有效签名后,可以伪造用户对任意消息的签名。假设攻击者Attacker获取用户IDi的有效签名(mi,σi),其中σi=(Ui,Vi),σi为相应的mi的签名,以下根据文献[12]签名方案中的签名算法列出签名必要的参数和公式:

CA为认证中心(Certification Authority),IDAi为原始签名人,IDBi为代理签名人。

1) 系统建立阶段。sR Zq* 作为系统主密钥,系统公钥为P0=sP

2) 用户密钥生成阶段。用户IDAi随机选择xAiR Zq*,计算其公钥为PAi=xAiP,用户IDAi随机选择xBiR Zq*,其公钥为PBi=xBiP

3) 证书生成阶段。CA计算QAi=H1(IDAi,PAi),certAi=sQAi,发送certAi给用户IDAi;计算QBi=H1(IDBi,PBi),certBi=sQBi,发送certBi给用户IDBi

4) IDAi生成委托证书mw。代理签名人IDBi计算U′=H2(mw,P0),部分代理私钥KAiBi=certAi+xAiU′。

5) 设置代理私钥。PAiBi=KAiBi+certBi+xBiU′。

6) 代理签名。代理签名者IDBi计算T=H2(P0),W=H2(P,P0),hi=H3(mi,IDBi,PBi),随机选择riR Zq*,计算Vi=riT+hi(PAiBi+xBiW),Ui=riP

攻击者Attacker通过以下方法伪造用户IDi的签名,具体做法为:给定消息mi,Attacker计算:hi=H3(mi,IDBi,PBi),${{\bar{h}}_{i}}={{H}_{3}}({{\bar{m}}_{i}},I{{D}_{Bi}},{{P}_{Bi}})$${{\bar{U}}_{i}}=\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}{{U}_{i}}$${{\bar{V}}_{i}}=\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}{{V}_{i}}$,输出消息mi的伪造签名${{\bar{\sigma }}_{i}}=({{\bar{U}}_{i}},{{\bar{V}}_{i}})$,下面证明伪造的签名能够通过验证。

$\begin{align} & e(P,{{{\bar{V}}}_{i}})=e(P,\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}({{r}_{i}}T+{{h}_{i}}({{P}_{AiBi}}+{{x}_{Bi}}W)))= \\ & e(P,\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}{{r}_{i}}T)e(P,{{{\bar{h}}}_{i}}{{P}_{AiBi}})e(P,{{{\bar{h}}}_{i}}{{x}_{Bi}}W)= \\ & e(T,\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}{{r}_{i}}P)e(P,{{{\bar{h}}}_{i}}({{K}_{AiBi}}+cer{{t}_{Bi}}+{{x}_{Bi}}{U}'))e(P,{{{\bar{h}}}_{i}}{{x}_{Bi}}W)= \\ & e(T,{{{\bar{U}}}_{i}})e(P,{{{\bar{h}}}_{i}}(cer{{t}_{Ai}}+{{x}_{Ai}}{U}'+cer{{t}_{Bi}}+{{x}_{Bi}}{U}'))e(W,{{{\bar{h}}}_{i}}{{x}_{Bi}}P)= \\ & e(T,{{{\bar{U}}}_{i}})e(P,{{{\bar{h}}}_{i}}(cer{{t}_{Ai}}+cer{{t}_{Bi}}))e(P,{{{\bar{h}}}_{i}}({{x}_{Ai}}{U}'+{{x}_{Bi}}{U}'))e(W,{{{\bar{h}}}_{i}}{{x}_{Bi}}P)= \\ & e(T,{{{\bar{U}}}_{i}})e(P,{{{\bar{h}}}_{i}}(s{{Q}_{Ai}}+s{{Q}_{Bi}}))e(P,{{{\bar{h}}}_{i}}({{x}_{Ai}}{U}'+{{x}_{Bi}}{U}'))e(W,{{{\bar{h}}}_{i}}{{x}_{Bi}}P)= \\ & e(T,{{{\bar{U}}}_{i}})e(sP,{{{\bar{h}}}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}}))e(P,{{{\bar{h}}}_{i}}({{x}_{Ai}}{U}'+{{x}_{Bi}}{U}'))e(W,{{{\bar{h}}}_{i}}{{x}_{Bi}}P)= \\ & e(T,{{{\bar{U}}}_{i}})e({{P}_{0}},{{{\bar{h}}}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}}))e({U}',{{{\bar{h}}}_{i}}({{P}_{Ai}}+{{P}_{Bi}}))e(W,{{{\bar{h}}}_{i}}{{P}_{Bi}})= \\ & e(T,{{{\bar{U}}}_{i}})e(W,{{{\bar{h}}}_{i}}{{P}_{Bi}})e({{P}_{0}},{{{\bar{h}}}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}}))e({U}',{{{\bar{h}}}_{i}}({{P}_{Ai}}+{{P}_{Bi}})) \\ \end{align}$

因此,σi=(Ui,Vi)是IDi对消息mi的签名。

2 本文改进的聚合代理签名方案

喻方案存在这种漏洞的主要原因有在于对于哈希函数的输入缺少新鲜值,采用固定值输入。针对以上缺点,本文从两方面改进:1)引入聚合签名的状态信息值θ,只有具有相同θ的代理签名才能聚合。状态信息θ由CA认证中心随机产生,在一轮签名验证过程中θ是相同的,但不同轮的状态信息θ是不同的,且只有具有相同θ的代理签名才能聚合。一轮验证结束后,CA将状态信息θ保存在对应的表中,在下一轮询问时产生新的状态信息θ′。2)在利用哈希函数产生签名验证有关的hi时,引入动态的新鲜值,取hi=H3(mi,IDBi,PBi,θ,Ui),由于(θ,Ui)是新鲜的,这样每次产生的hi不同,攻击者无法构造一个hi替换hi通过${{\bar{U}}_{i}}=\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}{{U}_{i}}$${{\bar{V}}_{i}}=\frac{{{{\bar{h}}}_{i}}}{{{h}_{i}}}{{V}_{i}}$来伪造签名,从而可以防止上述攻击。在改进方案中,系统建立、用户密钥生成、证书生成、部分代理私钥生成、部分代理私钥验证和设置代理私钥验证均与喻方案相同,不同部分如下:

1) 代理签名。身份为IDBi的代理签名者Bi用其公私钥对(PBi,xBi,certBi)对消息mi∈{0,1}*进行签名,过程如下:Bi随机选择ri,依次计算:Ui=riP,T=H2(P0,θ),W=H2(P,P0,θ),hi=H3(mi,IDBi,PBi,θ,Ui),Vi=riT+hi(PAiBi+xBiW),则Bi对消息mi的签名为σi=(Ui,Vi)。

2) 签名聚合。聚合签名人收到n个用户发送的具有相同θ的签名σi=(Ui,Vi,θ)(1≤in),计算:U′=H2(mw,P0),hi=H3(mi,IDBi,PBi,θ,Ui),T=H2(P0,θ),W=H2(P,P0,θ),并验证下列等式:

$\begin{align} & e(P,{{V}_{i}})=e(T,{{U}_{i}})e(W,{{h}_{i}}{{P}_{Bi}})\centerdot \\ & e({{P}_{0}},{{h}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}}))e({U}',{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})) \\ \end{align}$

若等式成立,则σi=(Ui,Vi,θ)为合法签名,接受σi。若n个签名σi都有效,计算:$U=\sum\limits_{i=1}^{n}{{{U}_{i}}}$,$V=\sum\limits_{i=1}^{n}{{{V}_{i}}}$,则σ=(U,V,θ)为这n个身份公钥对(PBi,IDBi)(1≤in)的签名者对消息mi(1≤i≤n)的聚合代理签名。

3) 聚合签名验证。任意的验证者都可以对签名进行验证。对于给定的(mi,IDAi,PAi,IDBi,PBi)(1≤in),聚合签名σ=(U,V,θ),验证人执行下列操作:

① 计算Qi=H1(IDi,Pi),U′=H2(mw,P0),hi=H3(mi,IDBi,PBi,θ,Ui)(1≤in),W=H2(P,P0,θ),T=H2(P0,θ)。

② 验证等式:

$\begin{align} & e(P,V)=e(T,U)\centerdot e(W,\sum\limits_{i=1}^{n}{{{h}_{i}}{{P}_{Bi}}})\centerdot \\ & e({{P}_{0}},\sum\limits_{i=1}^{n}{{{h}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}}}))\centerdot e({U}',\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})}) \\ \end{align}$

若等式成立,则接受聚合签名σ=(U,V,θ),输出“1”;否则拒绝此聚合签名,输出“0”。

3 方案分析 3.1 正确性分析

1) 原始签名者发出的代理授权信息(mw,KAiBi)后,代理签名者对授权信息进行验证,其验证式的正确性推导如下:

$\begin{align} & e({{K}_{AiBi}},P)=e(cer{{t}_{Ai}}+{{x}_{Ai}}{U}',P) \\ & =e(s{{Q}_{Ai}},P)e({{x}_{Ai}}{{H}_{2}}({{m}_{w}},{{P}_{0}}),P) \\ & =e({{Q}_{Ai}},{{P}_{0}})e({{H}_{2}}({{m}_{w}},{{P}_{0}}),{{P}_{Ai}}) \\ \end{align}$

2) 签名接收者收到聚合签名后,签名等式的正确性验证推导如下:

$\begin{align} & e(P,V)=e(P,\sum\limits_{i=1}^{n}{({{r}_{i}}T+{{h}_{i}}(s{{Q}_{Ai}}+{{x}_{Ai}}{U}'+s{{Q}_{Bi}}+{{x}_{Bi}}{U}'+{{x}_{Bi}}W))}) \\ & =e(U,T)\centerdot e({{P}_{0}},\sum\limits_{i=1}^{n}{{{h}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}})})\centerdot e(\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}}),{U}'}) \\ & \cdot e(\sum\limits_{i=1}^{n}{{{h}_{i}}{{P}_{Bi}},W})=e(U,T)\centerdot e(W,\sum\limits_{i=1}^{n}{{{h}_{i}}{{P}_{Bi}}})\centerdot e({{P}_{0}},\sum\limits_{i=1}^{n}{{{h}_{i}}({{Q}_{Ai}}+{{Q}_{Bi}})}) \\ & \cdot e({U}',\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})}) \\ \end{align}$
3.2 安全模型

针对本文所提的攻击方法,本文提出一种新的攻击者类型,能力与文献[12]中第Ⅰ类攻击者和第Ⅱ类攻击者有所不同。第Ⅰ类攻击者在不知道系统主密钥的情况下,对用户公钥进行任意替换的操作,最终得到非目标签名者的证书以及替换公钥后的证书[12]。第Ⅱ类攻击者拥有系统主密钥,能够生成任意用户的证书,但不能替换用户公钥[12]。第Ⅲ类攻击者可以获得除目标用户以外的任意用户证书和除目标用户以外的用户私钥,但不知道系统主密钥,也不能替换用户公钥,最终伪造合法的目标代理签名者的代理签名并最终生成聚合签名。本文中的攻击方法属于第Ⅲ类攻击者,其攻击能力描述如下:

攻击者可以截获目标用户的代理授权信息,获得除目标用户以外的任意用户证书和除目标用户以外的用户私钥,不能替换用户公钥。

下面通过定义攻击者A1和挑战者C之间一个游戏来描述基于证书聚合代理签名安全模型。游戏开始时,挑战者C输入安全参数k,运行系统生成算法完成初始化,得到系统参数params和主密钥s

游戏G

挑战者C将参数params发送给攻击者A1。攻击者A1可以适应性地进行多项式界询问,包括以下询问:

1) Hash询问:攻击者A1可以对任何Hash预言机进行Hash值询问。

2) 私钥询问:输入非目标用户身份IDi,C返回IDi对应私钥xiA1。输入目标身份ID*,终止游戏。

3) 公钥询问:输入IDi,C运行公钥生成算法,计算得到IDi的公钥Pi并返回。

4) 证书生成询问:输入非目标用户身份IDi和对应公钥Pi,C运行证书生成算法,计算得到IDi的证书certIDi并返回给A1。输入目标身份ID*,终止游戏。

5) 签名询问:A1输入用户身份对(IDAi,IDBi),对应公钥(PAi,PBi)、消息mi,状态θ,C运行代理签名算法,计算得到签名并返回给A1

签名伪造:A1输出一个包含n个身份、公钥、消息和状态的有效聚合代理签名,若其中至少有一个身份(不妨设为第j个)为目标用户ID*,且A1没有对其进行过私钥询问和证书提取询问,也没有询问过身份为ID*的代理签名者对第j个消息m*的签名,并且输出签名使得签名验证等式成立,则A1赢得游戏。

3.3 方案的正确性和安全性分析

只需在文献q[12]基础上用同样方法类似可证明本文方案对第Ⅰ类攻击者和第Ⅱ类攻击者的自适应选择消息下是存在性不可伪造的,并将其安全性归约为求解计算Diffie-Hellman(Computational Diffie-Hellman,CDH)问题(给定aP,bPG1(a,bZq*),计算abP),本文不再另行证明。

定理1 在随机预言机模型下,基于CDH困难假设,本文方案在本文所述第Ⅲ类攻击者攻击下是存在性不可伪造的。

证明 即要证明若攻击者A1能够在时间t内以一个不可忽略的概率ε成功伪造一个有效签名,则存在挑战者C1能够在多项式时间t′内以不可忽略的优势ε′解决CDH困难问题。CDH困难问题实例为:给定(aP,bP),计算abP。假定目标用户ID*公钥为bP

按游戏G,C1运行系统建立算法并获得系统参数params和主密钥s,系统公钥为P0=sPC1维护和更新列表LH1,LH2,LH3,LD,LS,Lpk,各列表初始状态下为空,A1询问并获得相应的应答如下。

1) H1询问。C1维持列表LH1记录并接受A1关于(IDi,Pi)的H1询问。输入(IDi,Pi),C1先查表LH1,若(IDi,Pi,Qi)在LH1中,则返回QiA1;否则,任选tiZq*,计算Qi=tiP,记录(IDi,Pi,Qi)到LH1,返回QiA1

2) H2询问。C1维持列表LH2记录并接受A1关于(P0,θ)的H2询问。输入(P0,θ),C1先查询列表LH2,若(P0,θ,W,T,U′)在LH2中,返回(W,T,U′)给A1;否则,随机选取d,k,lZq*,计算W=daP,T=kP,U′=lP,添加记录(P0,θ,d,k,l,m,W,T,U′)到LH2,并返回(W,T,U′)给A1

3) H3询问。C1维持列表LH3记录并接受A1关于(mi,IDi,Pi,θ,Ui)的H3询问。输入(mi,IDi,Pi,θ,Ui),C1先查表LH3,若(mi,IDi,Pi,θ,Ui,hi)在LH3中,则将hi返回给A1;否则,任选hiZq*,添加记录(mi,IDi,Pi,θ,Ui,hi)到LH3,并返回hiA1

4) 私钥询问。C1维持列表Lpk记录并接受A1关于给定IDi的私钥询问。C1先查表Lpk,若(mi,IDi,xi,Pi)在Lpk中,则将xi返回给A1。否则:①若IDiIDq*,任选xiZq*,计算Pi=xiP,添加记录(mi,IDi,xi,Pi)到Lpk,并返回xiA1;②若IDi=ID*,游戏终止。

5) 公钥询问。C1维持列表Lpk记录并接受A1关于给定IDi的公钥询问。C1先查表Lpk,若(mi,IDi,xi,Pi)在Lpk中,则将Pi返回给A1。否则:①若IDiIDq*,任选xiZq*,计算Pi=xiP,添加记录(mi,IDi,xi,Pi)到Lpk,并返回PiA1;②若IDi=ID*,Pi=bP,添加记录(mi,IDi,⊥,Pi)到Lpk,并返回PiA1

6) 证书提取询问。C1维持列表LD记录并接受A1关于(IDi,Qi)的证书提取询问。C1先查表LD,若(IDi,Qi,certIDi)在LD中,则将certIDi返回给A1;否则:①若IDi≠ID*,则按系统证书生成算法生成certIDi,添加记录(IDi,Qi,certIDi)到LD,并返回certIDiA1;②若IDi=ID*,游戏终止。

7) 签名询问。A1输入(mi,IDi,θ),假设已做前述询问,C1在各相应列表中查找记录,若IDiID*,则随机选择ri,计算: PAiBi=KAiBi+certBi+xBiU′,Ui=riP,Vi=riT+hi(PAiBi+xBiW),将(Ui,Vi,θ)返回给A2,并将(mi,IDi,θ,Ui,Vi)添加到列表LS中;若IDi=ID*,游戏终止。

如果算法C1没有停止,则A1在没有进行过IDi*的私钥询问和证书询问以及关于(m*,ID*)的签名询问情况下,其中(m*,ID*)∉{(mi,IDi)}(i=1,2,…,qS),以一个不可忽略的概率输出一个关于(m*,IDAi,PAi,IDBi,PBi)(1≤in)的聚合签名σj*=(U*,V*,θ),不妨设(m*,IDAj,PAj,IDBj,PBj)中mj*=mj*,ID*=ID*。则由验证等式并注意到W=daP,T=kP,U′=lP可得:

$\begin{align} & e(P,{{V}^{*}})=e(T,{{U}^{*}})\centerdot e(W,\sum\limits_{i=1}^{n}{{{h}_{i}}{{P}_{Bi}}})\centerdot \\ & e({{P}_{0}},\sum\limits_{i=1}^{n}{{{h}_{i}}(}{{Q}_{Ai}}+{{Q}_{Bi}}))\centerdot e({U}',\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})})= \\ & e\left( kP,{{U}^{*}} \right)\centerdot e(daP,\sum\limits_{i=1}^{n}{{{h}_{i}}{{P}_{Bi}}})\centerdot \\ & e(sP,\sum\limits_{i=1}^{n}{{{h}_{i}}(}{{Q}_{Ai}}+{{Q}_{Bi}}))\centerdot e(lP,\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})})= \\ & e\left( P,k{{U}^{*}} \right)\centerdot e(daP,\sum\limits_{i=1,i\ne j}^{n}{{{h}_{i}}{{P}_{Bi}}})\centerdot e(daP,{{h}_{j}}{{P}_{Bj}}) \\ & \centerdot e(P,s\sum\limits_{i=1}^{n}{{{h}_{i}}(}{{Q}_{Ai}}+{{Q}_{Bi}}))\centerdot e(P,l\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})})= \\ & e\left( P,k{{U}^{*}} \right)\centerdot e(P,d\sum\limits_{i=1,i\ne j}^{n}{{{h}_{i}}{{x}_{Bi}}aP})\centerdot e(P,d{{h}_{j}}abP)\centerdot \\ & e(P,s\sum\limits_{i=1}^{n}{{{h}_{i}}(}{{Q}_{Ai}}+{{Q}_{Bi}}))\centerdot e(P,l\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})}) \\ \end{align}$

因此C1可计算得到:

$\begin{align} & abP={{(d{{h}_{j}})}^{-1}}({{V}^{*}}-k{{U}^{*}}-d\sum\limits_{i=1,i\ne j}^{n}{{{h}_{i}}{{x}_{Bi}}aP} \\ & -s\sum\limits_{i=1}^{n}{{{h}_{i}}(}{{Q}_{Ai}}+{{Q}_{Bi}})-l\sum\limits_{i=1}^{n}{{{h}_{i}}({{P}_{Ai}}+{{P}_{Bi}})} \\ \end{align}$

此即为目标CDH问题的解,下面计算算法C1求解CDH问题的概率,用qHqXqPqS分别表示A1对预言机询问、私钥询问、证书提取询问和签名询问的次数,用tHtXtPtS分别表示A1对预言机询问、私钥询问、证书提取询问和签名询问的时间。定义如下3个事件:

E1:C1成功回应A1的私钥询问、证书提取询问和签名询问,没有返回失败;

E2:A1成功伪造了至少包含一条目标用户(m*,ID*)的聚合签名σ=(U*,V*);

E3:在n条记录(mi*,IDAi,PAi,IDBi,PBi)(1≤in)中,至少存在1条记录是IDiID*

因为需要3个事件都发生,挑战者才能解决目标CDH问题。要给出方案的一个概率估计界,即要求Pr[E1E2E3]。注意到:

$\begin{align} & \Pr [{{E}_{1}}\wedge {{E}_{2}}\wedge {{E}_{3}}]= \\ & \Pr [{{E}_{1}}]\Pr [{{E}_{2}}|{{E}_{1}}]\Pr [{{E}_{3}}|{{E}_{1}}\wedge {{E}_{2}}] \\ \end{align}$

为了降低计算的复杂度,只需分别给出三个概率的一个下界(只需保证是多项式界即可)。

因为E1,私钥询问至少要成功一次的概率为1/qX,证书提取询问至少要成功一次的概率为1/qP,签名询问为1/qS。由乘法原理,连续尝试三次询问至少有一次成功的概率至少为1/qXqPqS,因此Pr[E1]≥1/qXqPqS。由假设可知Pr[E2|E1]≥ε,E1E2事件发生后,在n条记录中至少有一条记录不属于IDiID*的概率为1/n,所以Pr[E3|E1E2]≥1/n。由Pr[E1]≥1/qXqPqS,Pr[E2|E1]≥ε,Pr[E3|E1E2]≥1/n,可得:

Pr[E1E2E3]=

Pr[E1]Pr[E2|E1]Pr[E3|E1E2]≥ε/nqXqPqS

因此C成功解决CDH问题从而获胜的优势为ε′≥ε/nqXqPqS,而所需时间代价满足t′≤(t+tH+tX+tP+tS)/ε′,估计都是多项式界限的。

通过上述分析可知,C2可以在多项式时间t′内,以一个不可忽略的概率ε′解决CDH困难问题,但这与CDH的困难性矛盾。所以在随机预言机模型下,基于CDH困难假设,针对第Ⅲ类攻击者本文方案是存在性不可伪造的。

3.4 效率分析

列举两种主要运算:双线性对运算P和群的标量乘运算M。相对于这两种运算,Hash运算和群的加法运算计算量可以忽略不计。

表 1 几种聚合代理签名方案比较

表 1可知,本文方案和文献[12]方案的效率一样,但是本文满足存在性不可伪造,安全性更高。

4 结语

通过对喻琇瑛等[12]提出的基于双线性对的聚合代理签名方案的分析,发现其方案是不安全的,支持任意有意义消息的签名伪造。攻击者只需获得用户的一个合法签名就可任意伪造任何消息的合法的签名,即不满足存在性不可伪造。事实上,这种攻击对很多聚合签名方案是广泛存在的。本文在原方案基础上通过在哈希函数中引入可变值和聚合签名状态值提出了一个改进的基于证书的聚合代理签名方案,能够抵抗本文所述签名伪造攻击,并在随机预言机下证明本文方案的安全性可归约于CDH困难问题,是存在性不可伪造的。

参考文献
[1] BONEH D, GENTRY C, LYNN B, et al. Aggregate and verifiably encrypted signatures from bilinear maps[C]//Proceedings of EUROCRYPT 2003 on Advances in Cryptology. Berlin: Springer, 2003: 416-432. (0)
[2] MAMBO M, USUDA K, OKAMOTO E. Proxy signatures for delegating signing operation[C]//Proceedings of the 3rd ACM Conference on Computer and Communications Security. New York: ACM, 1996:48-57. http://cn.bing.com/academic/profile?id=2167179301&encoded=0&v=paper_preview&mkt=zh-cn (0)
[3] BOLDYREVA A, PALACIO A, WARINSCHI B. Secure proxy signature schemes for delegation of signing rights[J]. Journal of Cryptology, 2012, 25 (1) : 57-115. doi: 10.1007/s00145-010-9082-x (0)
[4] GENTRY C. Certificate-based encryption and the certificate revocation problem[C]//Proceedings of EUROCRYPT 2003: Proceedings of the 22nd International Conference on Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2003: 272-293. http://cn.bing.com/academic/profile?id=1542057243&encoded=0&v=paper_preview&mkt=zh-cn (0)
[5] LI J, KIM K, ZHANG F, et al. Aggregate proxy signature and verifiably encrypted proxy signature[C]//Proceedings of the First International Conference on Provable Security, LNCS 4784. Berlin: Springer, 2007: 208-217. (0)
[6] ZHANG J. On the security of a certificate-based signature scheme and its improvement with pairings[C]//ISPEC 2009: Proceedings of the 5th International Conference on Information Security Practice and Experience, LNCS 5451. Berlin: Springer, 2009: 47-58. http://cn.bing.com/academic/profile?id=1583791113&encoded=0&v=paper_preview&mkt=zh-cn (0)
[7] KYUNG A H S. An ID-based aggregate signature scheme with constant pairing computations[J]. Journal of Systems and Software, 2010, 83 (10) : 1873-1880. doi: 10.1016/j.jss.2010.05.071 (0)
[8] 陈建能, 岳昊, 黄振杰. 一个可证安全的基于证书聚合签名方案[J]. 计算机工程与应用, 2013, 49 (21) : 60-64. ( CHEN N J, YUE H, HUANG Z J. Secure certificate-based aggregate signature scheme[J]. Computer Engineering and Applications, 2013, 49 (21) : 60-64. ) (0)
[9] 陈群山, 黄振杰, 郝艳华, 等. 基于身份的代理聚合签名方案的分析与改进[J]. 济南大学学报, 2014, 28 (3) : 204-208. ( CHEN Q S, HUANG Z J, HAO Y H, et al. Analysis and modification of identity-based proxy aggregate signature scheme[J]. Journal of University of Jinan, 2014, 28 (3) : 204-208. ) (0)
[10] LIN Y, WU Z, CAI J. ID-based aggregate proxy signature scheme realizing warrant-based delegation[J]. Journal of Information Science and Engineering, 2013, 29 (3) : 441-457. (0)
[11] 陈群山, 黄振杰, 黄茹芬. 一个新的基于身份的代理聚合签名方案[J]. 闽南师范大学学报(自然科学版), 2015 (4) : 34-40. ( CHEN Q S, HUANG Z J, HUANG R F. A new ID-based proxy aggregate signature scheme[J]. Journal of Minnan Normal University (Natural Science), 2015 (4) : 34-40. ) (0)
[12] 喻琇瑛, 何大可. 基于双线性对的聚合代理签名[J]. 中南大学学报(自然科学版), 2015, 46 (12) : 4534-4541. ( YU X Y, HE D K. A certificate-based aggregate proxy signature scheme[J]. Journal of Central South University (Scienece and Technology), 2015, 46 (12) : 4534-4541. ) (0)