一种群签名方案的设计与分析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一种群签名方案的设计与分析
白永祥
【摘要】基于椭圆曲线密码系统的优势,设计了一种群签名方案.方案从群签名的初始化、签名过程和验证进行了详细的研究和设计,并且使用了目前最新的杂凑函数SHA-3,增强了签名的安全性.最后分析了该方案的特性,与以基于RSA等通用签名算法进行比较,该方案在效率和安全性方面具有较好的性能.
【期刊名称】《智能计算机与应用》
【年(卷),期】2015(005)001
【总页数】4页(P14-17)
【关键词】椭圆曲线密码体制;数字签名;群签名;安全性
【作者】白永祥
【作者单位】渭南职业技术学院机电工程学院,陕西渭南714000
【正文语种】中文
【中图分类】TP309.7
0 引言
在全球电子商务快速发展的今天,数字签名有着广泛的应用前景。

数字签名一般包括普通数字签名和特殊数字签名两类,而特殊数字签名则有多重签名、代理签名、盲签名、门限签名、具有消息恢复功能的签名和群签名等的区分[1],而且与具体的应用环境密切相关。

其中的群签名在签名中涉及的用户数量较大,同时设计上
也较为复杂,目前的方案整体而言都是基于离散对数或者知识签名的,最终签名均显冗长,这就使得运算量大,效率降低,各种算法只是理论上可行,但却很难应用到实际当中,因此,只有提高群签名的效率,才能使其得到现实的有效应用。

在安全性等同的情况下,基于ECC的数字签名密钥长度明显减短,例如:密钥长度为160bit的安全性即等同于1 024bit的RSA安全性。

短密钥所需要的网络带宽
和存储容量都非常小,而这些因素却将直接影响群签名的高效性和安全性,而且与基于大整数因子分解的RSA密码体系和离散对数问题密码体系相比较,椭圆曲线
密码系统可供选择的曲线资源也更为丰富,就是在同一个有限域上呈现有大量不同的椭圆曲线,这种多样性增加了选择曲线的随机性,从而增强了密码系统的安全性,同时也使得软、硬件设计与实现更加灵活便捷。

综合以上分析,ECC已经成为公
钥密码学未来的发展标准。

本文正是基于椭圆曲线密码体制的以上优势,并使用全新的SHA-3杂凑函数,设计完成了一种群签名方案。

1 相关知识
1.1 数字签名
数字签名方案一般包括两个部分,分别是带有陷门的公开签名算法和验证算法。

具体地,公开签名算法使用由密钥控制的函数,对于消息m进行签名:y=sigk(m),
这里算法是公开的,密钥k是保密的,只有知道密钥k才能进行签名,由此实现
了防伪。

同时,验证算法Ver(m,y)也是公开的,通过Ver(m,y)=true(false)来进行验证签名[2]。

数字签名的定义是:对明文空间P,签名空间S,密钥空间K则有映射:
验证算法也是映射:
综上可知,相应的数字签名方案其实就是一个五元组{P,S,K,sig(),Ver},常
见的签名算法有:RSA、ElGamal、DSS和ECDSA等。

1.2 群签名
群签名是1991年由 Chanum和Heyst提出来的[3],所谓群签名就是群中的每位成员都可以代表该群组进行签名,而签名者的身份将受到匿名保护,如果发生意外纠纷,签名者的身份通过管理员或者第三者就可以恢复出来。

分析可见,群签名即具有如下特性[4]:
(1)只有群中成员才能够代表群体签名;
(2)签名接收者可以验证该签名是否属于某群体;
(3)签名接收者虽然可以验证签名的真假,却无法确认签名者的具体身份;
(4)出现争议,可由群中成员或者第三方进行签名者身份识别。

1.3 椭圆曲线签名算法
1985年,Koblitz[5]和Miller提出将椭圆曲线用于密码算法,分别利用有限域上椭圆曲线上的点构成的群实现了离散对数密码算法。

相对于RSA等其它公钥密码体制,椭圆曲线密码体制有着独特的优势,椭圆曲线数字签名算法(Elliptic Curve Digital Signature Algorithm,ECDSA)比 RSA、DSA 等数字签名的产生与认证速度更快。

在此,给出椭圆曲线数字签名过程如下[4]。

椭圆曲线参数为 :D={q,F,a,b,G,n,h},签名者的公钥和私钥(Q,d)。

假设Alice对消息m进行签名,然后发送给Bob,Alice需要完成以下步骤:
(1)随机选择 k,k∈[1,n-1];
(2)计算 kG=(x1,y1);
(3)计算 r=x1mod n,r≠0,否则返回步骤(1);(4)计算 k-1mod n;
(5)计算e=SHA3(m);
(6)计算 s=k-1(e+dr)mod n,且s≠0,否则返回(1);(7)签名为(r,s)。

当Bob收到消息m和签名后,进行验证,则需要以下操作过程:
(1)检查 r,s∈[1,n -1];(2)计算e=SHA3(m);(3)计算 w=s-1mod n;
(4)计算 u1=ew mod n,u2=rw mod n;
(5)计算X=u1G+u2Q;
(6)如果X=O,则签名无效,否则X=(x1,y1),计算v=x1mod n;
(7)如果v=r,则签名有效,否则无效。

1.4 SHA -3
Hash函数在密码学领域占据极其重要的位置,可是,近年来对传统Hash函数如MD4、MD5、SHA0、SHA1和SHA2等的成功攻击,使得人们开始质疑这些在密码学上发挥着主要作用的算法安全性。

为此,NIST分别举行了两届密码Hash 研讨会,并于2007年正式宣布在全球范围内征集新的下一代Hash算法,新的Hash算法即可命名为SHA-3,并且将其作为新的安全Hash标准,进而增强现有的FIPS 180-2标准。

2012年10月2日,Keccak成为NIST竞赛的最终胜利者,随即将其定名为SHA-3。

Keccak与SHA-2在设计上存在极大差别,所有适于SHA-2的攻击方法均将不能作用于 Keccak[6]。

2 研究现状
群签名的概念最先由 Chaum 和 Van.Heyst[3]在1991年欧密会议上提出。

迄今为止,群签名的发展历经了四个重要阶段,现给出概略分析如下:
第一阶段为1999年之前,主要是对群签名方案初步探索,推动方案的数学实现,J.Camenisch等人在文献[7-8]即对群签名进行了深入的研究,取得了重大的进展,其中注重利用知识证明构造实际有效的群签名方案,有效地推广了群签名在电子商务中的实用型应用。

第二阶段为1999年-2002年,Ateniese等人在文献[9]中提出了著名的能够抵抗联合攻击的ACJT群签名方案,这也是一种符合非形式化安全要求的体制。

第三阶段为2002年-2005年,Bellare等人在文献[10]和[11]中针对群签
名的形式化安全定义进行了研究,并为群签名方案安全性研究和分析指明了方
向;Boneh等人则在文献[12]中提出了短群签名方案的形式化安全证明,这种方案效率极高。

第四阶段为2006年之后,在标准模型下可证明安全性的群签名方案相继获得提出[13-15]。

可以说,群签名的发展与公钥密码学技术的研究是密切相关的,随着群签名成员数量的增多,使得群签名的复杂性和可证安全性变得非常困难,迫使密码学研究者们必需去寻求更为高效、合理的数学算法,椭圆曲线密码算法正好适应这种要求。

3 签名方案设计
3.1 初始化
选择一条安全性较高的椭圆曲线y=x2+ax+b,a,b∈RZp且满足4a3+27b2≠0。

#E(Zp)代表椭圆曲线上的点数,这里#E(Zp)|n(n≥160),G是一个素基点,
|#G|=n。

群管理者(Group manager,GM)随机选择数xG为私钥xG∈RZp,且
计算得到公钥:yG=xG·G,其后将公开参数{a,b,p,n,G,yG}。

3.2 群成员添加
如果用户Ui要加入签名群组中,那么就必需随机地选择私钥xi∈RZ*n,并计算出自已的公钥:PKUi=xi·G,同时用GM公钥yG加密EG(PKUi),再发送给群成员管
理者,GM则用自身私钥解密,且随机选择xi∈RZ*n,进一步执行如下计算:
使用Ui的公钥对上述结果进行EPKUi(Ri,Si)加密运算,并发送给群签名加入者,GM即对(Ri,Si,ri)保存记录,如果后面发生争执,则可进行验证。

用户Ui收到发送的消息M后,将使用私钥解密,再验证下面等式是否成立:Si·G-xRi·PKUi+Ri·mod n=xi·(Si·G+xRi·yG)mod(n)。

如果成立,则(Ri,Si)为Ui群签
名的证明书,即用户Ui加入群成员。

3.3 签名过程
假设Alice为群中成员,且要对消息M进行签名,即需要对自己的签名证书进行盲化,因为群签名具有匿名性,也就是不希望由外界探知。

有鉴于此,若要对消息M签名,具体实现步骤可作如下递推:
(1)Alice随机选择两个数R1,R2∈RZ*n;
(2)计算
(3)群签名
签名者Alice再随机选择,并计算
则 Alice 对消息 M 的群签名为:(r,s,A,B,C,D,M)。

3.4 签名验证
消息接收者Bob收到来自Alice的群签名信息后,首先计算:
如果上式成立,则Alice群签名有效。

3.5 争执裁决
假如发生争执,需要裁决,群管理者就要打开群签名信息(r,s,A,B,C,D,M),由于 GM 先前保存了群中每位签名者的证书(Ri,Si,ri),因此,只要找出满足Si·xG·D=xRi·E的(Ri,Si,ri)即能找出签名者。

4 方案分析
由于椭圆曲线密码体制建立在离散对数难解问题(Elliptic Curve Discrete Logarithm Problem ,ECDLP)之上,且椭圆曲线种类丰富多样,为此,这种基于ECC的群签名方案是非常安全的,详细过程分析如下。

4.1 具有不可伪造性
假如群中其它成员想伪造Alice对消息M进行群签名,那么就必须获取Alice的用户证明书(Ri,Si),由于Alice的证明书是群管理者前期使用Alice的公钥加密后再发送给Alice本人的,这就使得群中其它成员无由获得。

即便伪造者掌握了Alice的证明书,但签名却必须符合等式Si·G+xRi·yG+Ri=xi·(Si·G+xRi·yG),且由于 Ri= -ri·G+ri·PKUi=(xRi,yRi),其中的 ri则是 Alice随机选择的,因而伪造者势将无法猜测。

攻击者即或想从上面的运算式推导出相应参数,也就是求解椭圆曲线上的离散对数问题,而这几乎是不可能的数学难题。

4.2 具有不可链接性
群中签名成员每次签名时,都要选择两个随机数R1,R2,因此,相同群签名成员重复签名亦不具有可链接性。

攻击者想通过求解如上A,B,C,D,E几个方程而得到R1,R2,也是不可能的,因为要取得(Ri,Si),并且还需解答椭圆曲线离散对数问题才具实现可能,但就目前的技术水平而言,却根本不可能达到。

4.3 具有匿名性
群中任一成员群签名时,都要随机选择R1,R2,而由上述方程可知,A,B,C,D,E均为经过这两个随机数盲化产生的,而外界对于(Ri,Si)却无从得知,因此本签名方案具有匿名性。

4.4 具有可跟踪性
如果发生争执,需要打开群签名,揭示签名者的真实身份,由上面证书生成过程可知,在生成群成员证明书时,已经保存了签名者的身份信息(Ri,Si,ri),也就是具有了可跟踪功能。

4.5 具有更高指标性能
目前,在计算复杂度上,ECC离散对数问题计算是完全指数级的,而RSA却是亚指数级的,所以ECC比RSA每一位安全性都要更高。

而且ECC计算量小,处理速度快,比RSA、DSA要快上许多,同时密钥生成速度比RSA更要迅捷百倍,因
此在相同条件下,ECC表现了更高的加密性能。

在其它方面,ECC占用存储空间小,对带宽要求也非常低。

这里,即给出ECC与常见签名算法的性能比较,具体则如表1所示。

表1 RSA和ECDSA密钥长度与抗攻击性比较Tab.1 Comparison of key length and robustness with RSA and ECDSAECC密钥(比特长度)RSA密钥(比特长度)破解时间MIPS 年/次存储空间160 1 024 1 012 4GB 320 5 120 1 036 170GB 600 21 000 1 078 360TB 1 200 120 000 10 168 720TB
5 结束语
群签名具有可追踪性、匿名性、复杂性和多样性等多重特点,近年来,虽然在电子拍卖、电子现金等商业活动中发挥了一定的现实作用,但要进行全面的普及推广使用,却仍有待进一步的研究和应用探索。

比如:对群中成员的动态管理,使群中成员的添加和删除快速、高效、灵活。

而且,在群成员数量不断增加的情况下,群签名的复杂性也随之激增,因此,下一步的研究重点即在于提高算法效率上,这时就应充分发挥椭圆曲线密码体制的深层研发优势。

同时,随着电子商务活动的多样性和广泛性,传统的群签名方案已经难于适应匹配网络时代的快速变化,为此还需结合其它签名方案,开发获得适用于现代电子商务活动的多样化群签名方案。

参考文献:
[1]李洪心.电子商务安全[M].大连:东北财经大学出版社,2012:68-86. [2]胡向东,魏琴芳,胡蓉.应用密码学(第2版)[M].北京:电子工业出版社,2011:201-211.
[3]CHAUM,HEYST.Groupsignatures[J].EUROCRYPT,1991:257 –265. [4]张先红.数字签名原理及技术[M].北京:机械工业出版社,2004:170-175. [5]KBOLITZ.Elliptic curve cryptosystems[J].Mathematics of Computation,1987,48(177):203 -209.
[6]William Stallings.Cryptography and Network Security - Principles and Practice,Fifth Edition[M].Beijing:Publishing House of Electronics Industry,2011:329 -353.
[7]CAMENISCH.Efi cient and generalized group signatures
[A].EUROCRYPT 1997.LNCS[C].Heidelberg:Springer Press,1997:465–479.
[8]CAMENISCH,STADLER.Efficient group signature schemes for large groups(extended abstract)[A].CRYPTO’97:Proceedings of the
17thAnnual International Cryptology Conference on Advances in Cryptology,LNCS[C].London:Springer-Verlag,1997:410 –424.
[9]ATENIESE,CAMENISCH,MARCJOYE,et al.A practical and provably secure coalition - resistant group signature scheme[A].BELLARE
M.(ed.)CRYPTO 2000,LNCS CRYPTO[C].Heidelberg:Springer,
2000:255–270.
[10]BELLARE,MICCIANCIO,WARINSCHI.Foundations of group signatures:Formal definitions,simplified requirements,and aconstruction based on general assumptions[A].Proc.of EUROCRYPTO,LNCS [C].Heidelberg:Springer Press,2003:614–629.
[11]BELLARE,HAIXIASHI,ZHANG Chong.Foundations of group signatures:The case of dynamic groups[A].MENEZES A.(ed.).CT-RSA 2005,LNCS[C].Heidelberg:Springer-Verlag,2005:136–153.
[12]BONEH,BOYEN,SHACHAM.Short group signatures[A ].CACHIN C,CAMENISCH J L(eds.)EUROCRYPT 2004,LNCS
[C].Heidelberg:Springer,2004:41 –55.
[13]BOYEN,pact group signatures without random oracles[A].Proc.Eurocrypt’06,LNCS 4004[C].Saint
Petersburg:Springer-Verlag,2006:427–444.
[14]GROTH.Simulation-sound nizk proofs for a practical language and constant size group signatures[A].LAI X,CHEN K(eds.)ASIACRYPT’06,LNCS[C] .Heidelberg:Springer,2006:444 –459.,
[15]BOYEN,WATERS.Full- domain subgroup hiding and constantsize group signatures[A].Public Key Cryptography 2007,LNCS
[C].Heidelberg:Springer,2007:1 –15.。

相关文档
最新文档