一种无证书盲签名方案的分析与改进

2017-02-27 11:10刘二根周华静
计算机应用与软件 2017年2期
关键词:私钥公钥攻击者

刘二根 王 霞 周华静

(华东交通大学理学院 江西 南昌 330013) (华东交通大学系统工程与密码学研究所 江西 南昌 330013)

一种无证书盲签名方案的分析与改进

刘二根 王 霞*周华静

(华东交通大学理学院 江西 南昌 330013) (华东交通大学系统工程与密码学研究所 江西 南昌 330013)

通过对黄茹芬等提出的无证书盲签名方案进行安全性分析,发现该方案存在公钥替换攻击的漏洞。针对该问题,提出一个能够抵抗公钥替换这一攻击的无证书盲签名方案,而且最终证明了改进的方案在随机预言机模型和inv-CDH困难问题假设下对于适应性选择消息攻击是存在性不可伪造的。

盲签名 不可伪造性 随机预言机模型 盲性

0 引 言

1982年,Chaum[1]首先提出了盲签名这一概念。所谓盲签名,即是签名者虽然对消息签了名,但对他所签消息的内容是 未知的。正是由于这一特点,使得盲签名在电子支付和电子投票中得到广泛的应用。为了解决传统公钥密码体制中公钥证书的存储和管理问题,基于身份的密码体制被Shamir等[2]提出。在基于身份的密码体制中存在密钥托管这一问题,因为由可信中心KGC生成用户私钥。2003年,无证书公钥密码体制由Al-Riyami等[3]提出,也相继出现了许多签名和加密方案[4-6]。在无证书密码体制中,密钥生成中心只产生用户的部分私钥,但却无法知道长期私钥,解决了该体制中的密钥托管这一问题。将盲签名与无证书公钥密码体制相结合可以产生无证书盲签名,由此许多无证书盲签名方案[7-13]应运而生。2012年,黄茹芬等[14]提出了一个基于inv-CDH问题和q-SDH问题的无证书盲签名方案,但通过分析发现其存在公钥替换攻击这一漏洞。本文提出了一个改进的方案,新方案不仅具有盲性,而且证明了在随机预言机模型下是存在性不可伪造的。

1 预备知识

1.1 双线性映射

设G1、G2分别是由P生成的p阶加法群和乘法群,e:G1×G1→G2是满足下面3个性质的双线性映射:

(2) 非退化性:有P,Q∈G1,使得e(P,Q)≠1;

(3) 可计算性:∀P,Q∈G1,能够计算出e(P,Q)。

1.2 逆计算Diffie-Hellman困难(inv-CDH)问题

1.3 恶意攻击者模型

在无证书签名方案中,有2种类型的攻击者:

(1) 类型1的攻击者M1:无法知道系统主密钥,但可以替换用户公钥;

(2) 类型2的攻击者M2:能够知道系统主密钥,但不能替换用户的公钥。

2 文献[14]方案的分析

2.1 方案回顾

文献[14]方案包括下面7个具体算法:

1) 初始化

2) 生成部分私钥

3) 秘密值生成

4) 私钥生成

输入A的部分私钥DID和秘密值xID,A产生自己的私钥SKID=(xID,DID)。

5) 公钥生成

输入系统公开参数params、秘密值xID和部分私钥DID,输出A的公钥PKID=xID(Ppub+QIDP)。

6) 签名过程

输入系统公开参数params、消息m、A的身份ID和私钥SKID,具体如下:

(4) 解盲:B得到S=β-1S′,关于消息m的盲签名为σ=(S,h)。

7) 验证

对于给定的消息签名对(m,S,h)、签名者身份ID和公钥PKID,验证等式h=H2(m,e(S,PKID)g-h)是不是成立,若成立则接受,不成立则拒绝。

2.2 攻击方法

=H2(m,e(k-1S,kxID(Ppub+QIDP))g-h)

=H2(m,e(β-1(r+βh+α)P,P)g-h)

=H2(m,(Ugα)β-1)=H2(m,V)

那么,σ*=(S*,h)是一个有效的盲签名。

4) 解盲:B计算S*=β-1S′,消息m的盲签名为σ=(S*,h)。

事实上,σ*=(S*,h)是一个有效的盲签名。因为:

=H2(m,e(β-1S′,ωP-H1(ID)P)g-h)

=H2(m,e(β-1(r+βh+α)P,P)g-h)

=H2(m,(Ugα)β-1)=H2(m,V)

从以上的攻击方法得知,原方案之所以存在公钥替换攻击,是因为没有将用户公钥绑定到部分私钥上。如果用户公钥通过哈希函数绑定到部分私钥中,部分私钥DID是不可伪造的,则不存在公钥替换攻击。

3 文献[14]方案的改进

只需要修改文献[14]方案的部分私钥生成算法、公钥生成算法、签名过程和验证算法,其他三个算法保持不变。

1) 公钥生成

2) 部分私钥生成

3) 签名

承诺、盲化和解盲与原方案相同,只需修改签名这一步。

签名:签名者计算S′=(r+h′)xIDDID,把S′发给用户。

4) 验证

给定消息签名对(m,S,h)、签名者身份ID和公钥PKID=(XID,YID),验证等式h=H2(m,e(S,XID+QIDYID)g-h)是不是成立,若成立则接受,否则拒绝。

4 安全性分析与效率分析

4.1 方案的正确性

定理1 改进的无证书盲签名方案是正确的。

证明:

h=H2(m,e(S,XID+QIDYID)g-h)

=H2(m,e(β-1(r+h′)xIDDID,XID+QIDYID)g-h)

=H2(m,e(β-1(r+βh+α)P,P)g-h)

=H2(m,(Ugα)β-1)=H2(m,V)

4.2 具有盲性

定理2 新方案具有盲性。

证明:给一个正确的消息签名对(m,S,h)和任意一组盲签名发布过程中产生的视图(U,h′,S′),考虑下列等式:

S=β-1S′

(1)

h′=βh+αmodp

(2)

4.3 安全性分析

定理3 改进的无证书盲签名方案不存在公钥替换攻击。

由于类型2的攻击更有破坏力,如果攻击成功其影响将是任何用户。本文只证明对类型2攻击下是可证安全的,类型1的证明过程相似(只是询问过程有些不同)。

定理4 在随机预言机模型和inv-CDH困难问题假设下,新方案对攻击者M2在适应性选择消息攻击条件下是存在性不可伪造的。

证明:假设M2能以不可忽略的优势成功攻击该新方案,构造一个在概率多项式时间内能够解决inv-CDH问题的算法B。

1) 系统设置:算法B生成系统公开参数params={G1,G2,e,q,P,g,H1,H2},并发送系统公开参数和主密钥s给攻击者M2,系统公钥设置为Ppub=sP。列表L1、L2、LP、LPK、LSK、LS分别用于应对M2对预言机的H1询问、H2询问、部分密钥询问、公钥询问、私钥询问、签名询问。B通过维护表L1来响应M2的H1询问(M2至多可以做qH1次H1询问),表L1的表结构为(IDi,Xi,Yi,h1i)。B通过维护表L2来响应M2的H2询问(M2至多可以做qH2次H2询问),表L2的表结构为(m,V,h2i)。B通过维护表LP来响应M2的部分密钥询问(M2至多可以做qp次部分密钥询问),表LP的表结构为(IDi,DIDi)。B通过维护表LSK来响应M2的私钥询问(M2至多可以做qsk次私钥询问),表LSK的表结构为(IDi,xIDi,DIDi)。B通过维护表LPK来响应M2的公钥询问(M2至多可以做qpk次公钥询问),表LPK的表结构为(IDi,xIDi,XIDi,YIDi)。B通过维护列表LS来响应M2关于(m,IDi)的签名询问(M2至多可以做qs次签名询问),表LS的表结构为(m,IDi,S,h2i)。初始化所有表为空。假设攻击者M2攻击的目标ID为ID*,那么不能询问身份ID*的长期私钥,用a-1来模拟ID*的长期私钥,对应的公钥为XID*=aP、YID*=aPpub。

4) 公钥询问:当B收到关于IDi的公钥询问时:

(2) 如果IDi=ID*,用a-1来模拟ID*的长期私钥,公钥XID*=aP、YID*=aPpub,将(ID*,⊥,XID*,YID*)添加到表LPK中并返回(XID*,YID*)给M2。

6) 私钥询问:当B收到关于IDi的私钥询问时:

(2) 如果IDi=ID*,算法终止。

7) 签名询问:当B收到关于(m,IDi)的签名询问时:

若算法B没有停止,那么M2在没有询问ID*的私钥和(ID*,m*)的签名的情况下,能够以一个不可忽略的概率对消息m*输出一个有效的签名σ=(S,h)。根据分叉引理,对M2哈希重放,B可以得到关于m*的两个有效(ID*,m*,S,h)和(ID*,m*,S′,h′),h≠h′。有效的签名满足:e(S,XID*+h*YID*)g-h=V,e(S′,XID*+h*YID*)g-h′=V,其中h*=H1(ID*)。于是有:e(S,XID*+h*YID*)g-h=e(S′,XID*+h*YID*)g-h′。由h≠h′,可以得到:a-1P=(S-S′)(1+h*s)(h-h′)-1。

5 性能分析

表1 本方案与其他方案的性能比较

6 结 语

通过对黄茹芬等提出的无证书盲签名方案进行安全性分析,发现该方案不能抵抗公钥替换攻击。由此提出了一个改进的无证书盲签名方案,将签名者的公钥绑定到部分私钥中,有效地解决了原方案中存在的公钥替换攻击的问题,并证明了在随机预言机模型和inv-CDH困难问题假设下对于适应性选择消息攻击是存在性不可伪造的。同时该方案是基于无证书密码体制的,克服了证书管理和密钥托管问题。

[1]ChaumD.Blindsignaturesforuntraceablepayments[C]//AdvancesinCryptology:ProceedingsofCrypto’82,1983:199-203.

[2]ShamirA.Identity-basedcryptosystemsandsignaturesschemes[C]//ProceedingsofCrypto’84onAdvancesinCryptology.NewYork:Springer-Verlag,1985:47-53.

[3]Al-RiyamiSS,PatersonKG.Certificatelesspublickeycryptography[C]//Proceedingsofthe9thInternationalConferenceontheTheoryandApplicationofCryptologyandInformationSecurity,2003:452-473.

[4]ChoiKY,ParkJH,HwangJY,etal.Efficientcertificatelesssignatureschemes[C]//Proceedingsofthe5thInternationalConferenceonAppliedCryptographyandNetworkSecurity,2007:443-458.

[5] 王圣宝,刘文浩,谢琪.无双线性配对的无证书签名方案[J].通信学报,2012,33(4):93-98.

[6]ZhangL,ZhangF.Certificatelesssignatureandblindsignature[J].JournalofElectronics(China),2008,25(5):629-635.

[7] 魏萍,陈海滨,杨晓元.一个安全无证书的盲签名方案[J].计算机工程与应用,2011,47(5):96-97.

[8] 杨晓元,梁中银,郭耀,等.一个高效的无证书盲签名方案[J].南京邮电大学学报(自然科学版),2009,29(3):37-42.

[9] 周才学.三个无证书签名方案的密码学分析与改进[J].计算机工程,2012,38(19):114-118.

[10] 张玉磊,王彩芬,张永洁,等.基于双线性对的高效无证书签名方案[J].计算机应用,2009,29(5):1330-1333.

[11] 文佳骏,左黎明,李彪.一个高效的无证书代理盲签名方案[J].计算机工程与科学,2014,36(3):452-457.

[12] 梁红梅,黄振杰.高效无证书签名方案的安全性分析和改进[J].计算机应用,2010,30(3):685-687,698.

[13] 何俊杰,王娟,祁传达.对一个无证书盲签名方案的攻击与改进[J].数学的实践与认识,2014,44(4):123-128.

[14] 黄茹芬,农强,黄振杰.一个高效的无证书盲签名方案[J].计算机工程,2013,39(2):130-136.

ANALYSIS AND IMPROVEMENT OF A CERTIFICATELESS BLIND SIGNATURE SCHEME

Liu Ergen Wang Xia*Zhou Huajing

(SchoolofScience,EastChinaJiaotongUniversity,Nanchang330013,Jiangxi,China) (InstituteofSystemEngineeringandCryptography,EastChinaJiaotongUniversity,Nanchang330013,Jiangxi,China)

After analyzing the security of the blind signature scheme without certificates proposed by Huang Rufen et al, it is found that the scheme cannot resist public key replaced attack. Thus, a modified certificateless blind signature scheme which can resist public key attack is proposed, and the scheme is finally proved to be existentially unforgeable against adaptive chosen message in random oracle model and under inv-CDH complexity assumption.

Blind signature Unforgeability Random oracle model Blindness

2015-09-05。国家自然科学基金项目(11361024,11261019,61472138,61263032)。刘二根,教授,主研领域:图论及其优化。王霞,硕士生。周华静,硕士生。

TP309

A

10.3969/j.issn.1000-386x.2017.02.056

猜你喜欢
私钥公钥攻击者
清扫机器人避障系统区块链私钥分片存储方法
比特币的安全性到底有多高
案例教学法在公钥密码体制难点教学中的应用——以ssh服务中双向认证为例
Spatially defined single-cell transcriptional profiling characterizes diverse chondrocyte subtypes and nucleus pulposus progenitors in human intervertebral discs
神奇的公钥密码
正面迎接批判
正面迎接批判
一种基于虚拟私钥的OpenSSL与CSP交互方案
国密SM2密码算法的C语言实现
P2X7 receptor antagonism in amyotrophic lateral sclerosis