两种签密方案的密码学分析与改进

时间:2022-10-25 01:51:55

两种签密方案的密码学分析与改进

收稿日期:2011-02-25;修回日期:2011-04-18。

作者简介:范函(1963-),男,河南许昌人,工程师,硕士研究生,主要研究方向:密码学、数字签名; 张少武(1964-),男,河南洛阳人,教授,主要研究方向:密码学、信息安全。

文章编号:1001-9081(2011)08-02196-05doi:10.3724/SP.J.1087.2011.02196

(1.许昌许继昌南通信设备有限公司 质控部,河南 许昌461000; 2.信息工程大学 电子技术学院,郑州450004)

(.cn)

摘 要:对一种无证书签密方案和一种基于离散对数难题(DLP)的自认证签密方案进行了分析。发现在无证书签密方案中,除了Selvi等人(SELVI S S D, VIVEK S S, RANGAN C P. Security weaknesses in two certificateless signcryption schemes. /2010/092.pdf)提出的一种类型Ⅰ的攻击外,还存在着伪造攻击,该伪造攻击能够成功地伪造签密并使之通过签密验证,并且不具有公开可验证性。在基于DLP的自认证签密方案中,由于“孤悬因子”的存在,一个不诚实的接收者能够以任意发送者的身份伪造对消息的签密并通过验证。给出了攻击方法,并针对两种方案的缺陷,提出了改进方案。通过安全性分析,证明了改进方案是安全的,能有效克服原方案的缺陷。

关键词:签密;无证书;签密;双线性映射;离散对数问题;孤悬因子

中图分类号: TP309.7文献标志码:A

Cryptanalysis and improvement of two signcryption schemes

FAN Han1,2, ZHANG Shao-wu2

(1. Quality Control Department, Xuchang Xuji Changnan Communication Equipment Company Limited, Xuchang Henan 461000, China;

2. Institute of Electronic Technology, Information Engineering University, Zhengzhou Henan 450004, China)

Abstract: A certificateless signcryption scheme and a self-certified proxy signcryption scheme based on Discrete Logarithm Problem (DLP) were analyzed. It was pointed out that, in this certificateless signcryption scheme, besides the type Ⅰ attack proposed by Selvi et al. (SELVI S S D, VIVEK S S, RANGAN C P. Security weaknesses in two certificateless signcryption schemes. /2010/092.pdf), there was another forgery attack which could successfully forge a signcryption passing the verification procedure and did not have public verifiability. In the self-certified proxy signcryption scheme based on Discrete Logarithm Problem (DLP), because of the existence of suspending-factor, any dishonest receiver could forge a signcryption passing the verification procedure. The attack methods and the improvement methods were presented. The experimental results prove that the proposed scheme is secure and effective, and it overcomes the flaw in the original schemes.

Key words: signcryption; certificateless; proxy signcryption; bilinear mapping; Discrete Logarithm Problem (DLP); suspending-factor

0 引言

保密和认证是密码学中两个重要的安全目标,在许多密码应用中,需同时达到这两个安全目标。传统方法是利用带加密的数字签名,即对消息先签名后加密。但这种方法需要消耗特别大的计算量和通信带宽。为此,1997年Zheng[1]提出了称为签密(Signcryption)的密码原语,在一个逻辑步骤内同时完成数字签名和公钥加密,在计算量和通信代价上都要低于传统的“先签名后加密”。

Xie等人[2]提出了一个高效的可证安全的基于双线性对的无证书签密方案。本文对此方案在第Ⅰ种攻击类型下,给出了一种伪造攻击,通过这个攻击,一个不诚实的接收者可以用任意发送者的身份伪造出对消息的有效签密文。同时此方案还不具有公开可验证性。另外,Selvi等人[3]对此方案提出了另一种类型Ⅰ的攻击。针对文献[2]的不足,本文提出了与原方案相比不增加对运算的改进方案。俞惠芳等人[4]提出了一个基于离散对数问题(Discrete Logarithm Problem, DLP)的自认证签密方案,由于“孤悬因子”[5]的存在而造成伪造攻击,通过这个攻击,一个不诚实的接收者能够以任意发送者的身份伪造对消息的签密并通过验证。针对这个缺陷,提出了改进方案。

1 预备知识

1.1 双线性映射

设G1为循环加法群,G2为循环乘法群,G1,G2的阶均为素数q。假定在G1,G2中计算离散对数问题是困难的。e:G1×G1G2为一个双线性映射,它满足以下三个性质。

1)双线性性。对任意的P1,P2,Q1,Q2∈G1有:

e(P1+P2,Q1)e(P1,Q1)e(P2,Q1)

e(P1,Q1+Q2)e(P1,Q1)e(P1,Q2)

对于所有的P,Q∈G1和所有的a,b∈R Z*q,e(aP,bQ)e(P,Q)ab。

2)非退化性。存在P∈G1满足e(P,P)≠1。

3)可计算性。如果P,Q∈G1,则e(P,Q)可以在多项式时间内有效计算出来。

1.2 数学难题

1)离散对数难题。

a)在G1中的DLP。设G1是一个阶为素数q的循环加法群,P为G1中的生成元,对任意的Q∈G1,求a∈R Z*q,满足QaP。

b)在G2中的DLP。设G2是一个阶为素数q的循环乘法群,g为G2中的生成元,对于任意的y∈G2,求b∈R Z*q,满足ygb。

2)Diffie-Hellman难题。

a)计算性Diffie-Hellman难题(Computational Diffie-Hellman Problem, CDHP)。设G1是一个阶为素数q的循环加法群,P为G1中的生成元,对于任意的a,b∈R Z*q,给定aP,bP∈G1,计算abP是困难的。

b)判定性Diffie-Hellman难题(Decision Diffie-Hellman Problem, DDHP)。设G1是一个阶为素数q的循环加法群,p为G1中的生成元,对于任意的a,b,c∈R Z*q,aP,bP,cP∈G1,要判定cab mod q是否成立是困难的。

c)间隙Diffie-Hellman难题(Gap Diffie-Hellman Problem,GDHP)。如果在群G1中,判定Diffie-Hellman问题是可行的,而计算Diffie-Hellman问题是难解的,那么群G1称为GDH群。GDH群可由有限域上的椭圆曲线产生。

2 文献[2]中无证书签密方案与攻击分析

2.1 无证书签密及其安全模型

为了克服基于身份的公钥系统所固有的密钥托管问题,同时保持其不需要使用公钥证书的优点,Al-Riyami等人提出了无证书公钥密码系统的概念[6]。在此基础上,Barbosa等人[7]给出了第1个无证书签密方案,随后无证书签密体制得到了迅速发展,一些方案[8-9]相继提出。

无证书签密方案可定义为6个多项式时间算法[7]5:1)系统参数生成;2)部分私钥生成;3)用户公钥生成;4)用户私钥生成;5)签密;6)解签密。

无证书公钥密码系统的安全模型将攻击者定义为两种类型:第Ⅰ类攻击者AⅠ,不能获得系统主密钥,但可以任意替换用户的公钥,这种攻击者是指私钥产生中心(Private Key Generator, PKG)之外的攻击者;第Ⅱ类攻击者AⅡ,能够获得系统主密钥,但不能替换用户的公钥,这种攻击者是指恶意的PKG。

无证书签密方案必须在上述两种类型的攻击下都满足机密性和不可伪造性。

2.2 文献[2]的无证书签密方案原理

Xie等人的无证书签密方案[2]8如下。

1)系统初始化算法(Setup)。

给定安全参数k,算法步骤如下。

a)设(G1,G2,GT)为素数阶p>2k的双线性映射组。

b)任选Q为G2的生成元,设Pψ(Q)∈G1,ge(P,Q)∈GT。

c)随机选择s∈Z*p并计算PpubsQ,分别作为主密钥和系统公钥。

d)定义三个不同的密码哈希函数H1:{0,1}*Z*p,H2:{0,1}n×G2×GT×G32Z*q,H3:GT×G2{0,1}n,n是要进行签密的消息长度。

e)公开系统参数params:〈G1,G2,GT,e,p,P,Q,g,Ppub,e,ψ,H1,H2,H3〉。

2)部分私钥生成算法(Partial-Private-Key-Extract)。

给定参数params、身份ID∈{0,1}*,算法步骤为:计算QIDH1(ID)∈Z*p和dIDP,通过安全信道把dID发送给身份为ID的用户,作为他的部分私钥。用户通过验证等式:e(dID,Ppub+QIDQ)g是否成立来判断其正确性。为了方便起见,定义TIDPpub+H1(ID)Q。

3)设置秘密值算法(Set-Secret-Value)。

输入参数params和用户身份ID。选择随机值xID∈R Z*p,输出xID作为用户的秘密值。

4)设置公钥算法(Set-Public-Key)。

给定参数params、用户身份ID和用户的秘密值xID,该算法计算出用户的公钥pkIDxID(Ppub+H1(ID)Q)。

5)设置私钥算法(Set-Private-Key)。

给定参数params、用户的部分私钥dID、用户身份ID,输出对(dID、xID)作为用户的私钥skID。

6)签密算法(Signcrypt)。

为了把消息m∈{0,1}n发送给具有身份B和公钥pkB的Bob,Alice用私钥skA执行以下步骤:

a)随机选择r1∈R Z*p并计算ur1(Ppub+H1(B)Q)和cmH3(gr1,r1pkB);

b)计算h2H2(m,u,gr1,r1pkB,pkA,pkB),vdA和wxAh2+r1;

c)签密密文为σ(c,u,v,w)。

7)解签密算法(Unsigncrypt)。

为了解出具有身份A和公钥pkA的Alice的签密密文σ(c,u,v,w),具有私钥skB的Bob执行以下步骤:

a)计算gr′1e(dB,u)和mcH3(gr′1,xBu)。

b)计算h2H2(m,u,gr′1,xBu,pkA,pkB)和r′1TAwTA-h2pkA。

c)如果e(v,r′1TA)gr′1gh2成立,则接受m;否则输出无效符号。

2.3 对文献[2]方案的攻击分析

1)经分析发现,此无证书签密方案存在着伪造攻击,通过这个攻击,一个不诚实的接收者Bob作为类型Ⅰ的攻击者,可以用任意发送者Alice的身份伪造出对消息m的有效签密文。执行步骤如下:

a)设IDA为用户Alice的身份;

b)Bob随机选择x′A∈Z*q和λ∈Z*p,设置TAλQ并计算pkAx′ATAx′AλQ,随机选择r1∈R Z*p并计算ur1(Ppub+H1(B)Q),再任意选择一个消息m来计算cmH3(gr1,r1pkB);

c)Bob计算h2H2(m,u,gr1,r1pkB,pkA,pkB),vP和wx′Ah2+r1。

最终,Bob伪造出了签密文σ(c,u,v,w),他就可以声称身份为IDA的Alice向自己发出了消息m的签密文。

具有私钥skB的Bob声称他能够通过以下步骤来恢复消息m,并且该签密文满足验证式e(v,r′1TA)gr′1gh2。

a)计算gr′1e(dB,u)和mcH3(gr′1,xBu)。

b)计算h2H2(m,u,gr′1,xBu,pkA,pkB)和r′1TAwTA-h2pkA。

最后Bob可验证其伪造的签密文σ(c,u,v,w)满足验证式。

正确性证明如下:

gr′1e(dB,u)e(P,r1(sQ+QBQ))gr1;

xBuxBr1(sQ+QBQ)r1pkB;

e(v,wTA-h2pkA)e(v,r1TA)

e(P,r1λQ)gr′1gh2

这就证明了Bob的伪造是有效的。

2)文献[3]中对此方案提出了另一种类型Ⅰ的攻击。在不可伪造性游戏中,类型Ⅰ的攻击者可以知道接收者的完整私钥。在训练阶段,类型Ⅰ的伪造攻击者询问签密算法预言机并获得一个签密密文σ(c,u,v,w),把σ作为发送者IDA发送给接收者IDB的签密密文,这里攻击者知道接收者的私钥(dB,xB)。攻击者执行以下步骤计算发送者的部分私钥dA:

a)已知wxAh2+r1(已知类型Ⅰ的攻击者能够替换公钥,因此可以获得发送者的秘密值xA);

b)计算gr′1e(dB,u)和mcH3(gr′1,xBu);

c)计算h2H2(m,u,gr′1,xBu,pkA,pkB);

d)计算r1w-xAh2;

e)即可计算出dAv()。

这样,一个类型Ⅰ的攻击者可以找出系统里的任意合法用户的部分私钥,导致对系统的完全破解。但在文献[2]中,针对这个攻击,重新定义了一个比Barbosa等人[7]提出的原始模型要弱一些的安全模型,在这个安全模型中,假设从签密预言机返回的密文在发送者原公钥下是有效的。

3)此签密方案不具有公开可验证性。验证式e(v,r′1TA)gr′1gh2中,只有接收者Bob才能计算gr′1e(dB,u)及h2H2(m,u,gr′1,xBu,pkA,pkB),因此不满足公开可验证性。

2.4 对文献[2]方案的改进

为了克服原方案的缺陷,本文提出了与原方案相比不增加过多运算量的改进方案。具体如下。

1)系统初始化算法:与原方案基本相同,只是改为H2:{0,1}n×G2×G2TZ*q,H3:GT{0,1}n。

2)部分私钥生成算法:与原方案基本相同,只是取消对TID的设置。

3)设置秘密值算法:与原方案相同。

4)设置公钥算法:给定参数params、用户身份ID和用户的秘密值xID,该算法计算pkIDgxID∈GT作为用户的公钥。

5)设置私钥算法:与原方案相同。

6)签密算法:为了把消息m∈{0,1}n发送给具有身份B和公钥pkB的Bob,Alice用私钥skA执行以下步骤:

a)随机选择r1∈R Z*p并计算ur1(Ppub+H1(B)Q)和cmH3(pkr1B);

b)计算h2H2(c,u,pkA,pkB),把v改为v(h2+r1+xA)dA,把w改为wg-r1;

c)签密密文为σ(c,u,v,w)。

7)解签密算法。为了解出具有身份A和公钥pkA的Alice的签密密文σ(c,u,v,w),具有私钥skB的Bob执行以下步骤:

a)计算mcH3(e(dB,xBu))。

b)计算h2H2(c,u,pkA,pkB)。

c)把原方案的验证式e(v,r′1TA)gr′1gh2改为e(v,Ppub+QAQ)wpkAgh2,如果验证式成立,则接受m;否则输出无效符号。

以上算法的正确性可以按以下步骤验证:

e(dB,xBu)e(P,xBr1(sQ+QBQ))gxBr1pkr1B

e(v,Ppub+QAQ)we((h2+r1+xA)dA,Ppub+QAQ)g-r1

e((h2+r1+xA)P,(sQ+QAQ))g-r1e((h2+r1+xA)P,Q)g-r1pkAgh2

2.5 对改进方案的安全性分析

1)机密性。

显然,攻击者如果要解密得到消息,他必须要能计算pkr1B或e(dB,xBu)。而要计算pkr1B,攻击者必须要从ur1(Ppub+H1(B)Q)、v(h2+r1+xA)dA或wg-r1中解出r1来,这就要面临解DLP;如果攻击者要计算e(dB,xBu),他必须得到接收者Bob的私钥(dB,xB),这也是不可能的。因此改进方案具有机密性。

2)不可伪造性。

定理1 改进方案在CDHP和DLP困难性假设的前提下,不可被第Ⅰ类攻击者AⅠ伪造。

证明 按2.1节中描述,第Ⅰ类攻击者AⅠ能够替换用户的公钥,但是不知道系统的主密钥s。假设攻击者AⅠ能将Alice公钥中隐藏的秘密值xA替换为他自己选择的秘密值xAⅠ,但是他不能获得Alice的部分私钥dA。

攻击者AⅠ可以伪造出cAⅠ、uAⅠ和wAⅠ,但是在伪造v的时候,由于其不知道用户部分私钥dA以及系统主密钥s,故而敌手只能自己伪造一个系统主私钥sAⅠ,进而伪造出用户部分私钥dAⅠ,伪造出签名vAⅠ,并将(cAⅠ,uAⅠ,vAⅠ,wAⅠ)发送给接收者Bob解签密。在Bob解签密的时候,由于伪造签密vAⅠ所用到伪造部分私钥dA中的系统主私钥sAⅠ不是系统公钥Ppub中的s,因而不能通过验证式e(v,Ppub+QAQ)wpkAgh2验证。

因此改进方案,在CDHP和DLP困难性假设的前提下,不可被攻击者AⅠ伪造。

由此即不会出现原方案中接收者作为第Ⅰ类攻击者的伪造攻击。另外,把w改为wg-r1,使攻击者无法从中计算出r1,即可避免Selvi等人提出的类型Ⅰ攻击[3]3。这就不需要针对Selvi等人的攻击,重新定义一个比Barbosa等人[7]的原始模型要弱一些的安全模型。

定理2 改进方案在CDHP和DLP困难性假设的前提下,不可被攻击者AⅡ伪造。

证明 攻击者AⅡ拥有系统的主私钥s,但是没有替换用户公钥的能力。由于攻击者拥有系统的主密钥s,所以他就拥有了用户Alice的部分私钥dA。

要伪造出消息的合法签密,攻击者AⅡ需要获得Alice的秘密值xA。如果攻击者AⅡ从用户Alice的公钥pkAgxA中求解xA,则攻击者AⅡ面临在GT中求解DLP;如果攻击者AⅡ从v(h2+r1+xA)dA求解xA,因为密码哈希函数h2H2(c,u,gxA,pkB)的单向性和GT中的DLP,也是不可行的。

如果攻击者AⅡ伪造一个秘密值xAⅡ,并伪造出签密vxAⅡ,并将签密发送给Bob。Bob在解签密的时候,由于伪造签密vxAⅡ时用到的xAⅡ与用户Alice公钥pkA中隐含的秘密值xA不一致,所以不能通过验证式e(v,Ppub+QAQ)wpkAgh2的验证。

因此改进方案能抵抗攻击者AⅡ的攻击。

综上所述,改进方案能够抵抗2.1节中定义的两类攻击者的攻击,因此改进方案具有不可伪造性。

3)前向安全性。

假设攻击者获得了签密者Alice的私钥(xA,dA),但是如果他想从ur1(Ppub+H1(B)Q)、v(h2+r1+xA)dA或wg-r1中解出随机值r1来,就要面临解DLP,进而无法计算pkr1B,这样,攻击者就不能利用mcH3(pkr1B)来恢复出签密消息来。因此改进方案具有前向安全性。

4)公开可验证性。

当签密和解签密双方发生矛盾时候,就需要第三方来进行协调。第三方在得到签密方Alice发送给解签密方Bob的签密σ(c,u,v,w)后,可以计算出h2H2(c,u,pkA,pkB),通过验证e(v,Ppub+QAQ)wpkAgh2是否成立来验证签密的正确性。在这个过程中,不需要签密方和解签密方的任何帮助,也不需要恢复出签密的消息,第三方就可以确定签密是否由Alice所签发。因此改进方案具有公开可验证性。

2.6 对改进方案的效率分析

签密方案因为可预先完成除签密与解签密以外的过程,因此其效率主要与签密与解签密时的计算量有关。在一般情况下,衡量无证书签密方案效率优劣主要参照双线性对的运算量。尽管许多文献都在论述怎样提高对的运算速度,但对运算仍然是比较耗时的。改进方案的签密算法与原方案一样仍不需要双线性对,其解签密算法并没有增加对运算,所以改进后的方案仍可以保持原方案的高效率,仍然是只需要解签密时的两个对运算。

3 文献[4]中自认证签密方案及攻击分析

Gamage等人[11]提出了第一个签密方案,签密方案允许一个原始签密人将他的签密权力授权给一个签密人,签密人可以代表原始签密人对授权消息生成有效的签密。

3.1 文献[4]中方案原理

文献[4]中基于DLP的自认证签密方案如下。

1)系统初始化。

a)权威机构(System Authority, SA)选择两个大素数p1和q1,并满足p12p′+1,q12q′+1,其中p′和q′也是大素数。SA计算pp1q1,随机选取Z*p的一个阶为p′q′的生成元g。

b)选取密码学上安全的哈希函数:

h:{0,1}×Z*pZ*p;h1:{0,1}Z*p;h2:{0,1}n×Z*pZ*p;h3:Z*p{0,1}n;h4:Z*pZ*p。

c)SA选择一个秘密值s∈R Z*p, ygs mod p。

d)SA保密(p1, q1,p′,q′,s),公开(p,g,h,h1,h2,h3,h4,y),其中n是明文消息的比特长度。

2)用户密钥提取。

身份为du的用户u选择一个秘密值ru∈R Z*p,计算yugru mod p。然后用户u发送(du,yu)给SA。SA收到(du,yu)以后,计算Quh(du,yu)和xugsQu,并将(Qu, xu)发给用户u。用户u收到(Qu, xu)以后,通过yQuxu mod p验证xu的合法性。如果等式成立,则用户u就计算Suruh4(xu) mod p作为自己的私钥, yu作为自己的公钥。原始签密者A、签密者B和接收者C相应的公私钥对分别简记为(yA,SA),(yB,SB)和(yC,SC)。

3)密钥提取。

A建立一个授权许可证mw,用以明确A和B的身份信息、授权关系和授权关系的使用限制等内容。然后,A计算θAh1(mw)SA mod p,并将(mw,θA)发给B。B检查等式(yA)h1(mw)h4(yQA)gθA mod p是否成立。如果成立,则B计算签密密钥θpθA+h1(mw)SB mod p;否则,要求A重发。

4)签密。

B执行以下步骤:B随机选择k∈Z*p,计算Rgk mod p,计算Vykh4(yQC)C mod p,计算ch3(V)m,计算Sh2(m,R)g-kgθp mod p,最后输出密文σ(m,R,c,S)。

5)解签密。

C收到密文σ以后,计算VRSC mod p,恢复消息mch3(V),检查以下验证式是否成立:

RSh2(m,R)yh4(yQA)h1(mw)Ayh4(yQB)h1(mw)B mod p。

如果以上验证等式成立,密文(mW,R,S)和用户公钥(yA,yB)同时被认证,Bob接受(mW,R,S),否则,验证失败,认为(mW,R,S)是不合法的。

3.2 对文献[4]方案的攻击分析

经分析发现,此签密方案存在伪造攻击,通过这个攻击,一个不诚实的接收者C可以用任意签密人B的身份伪造出对消息m的有效签密文。执行步骤如下:

1)C计算Ryh4(yQA)h1(mw)A mod p和Sh2(m,R)yh4(yQB)h1(mw)B mod p;

2)然后计算VRSC mod p;

3)随机选择一个消息m来计算ch3(V)m。

最后伪造出的消息m的签密文为σ(mw,R,c,S)。C就可以声称B向自己发出了消息m的签密文。

C声称他能够通过以下步骤来恢复消息m,并且该签密文满足验证式。

C恢复消息mch3(V)。最后C验证签密文σ(mw,R,S)是否满足验证式RSh2(m,R)yh4(yQA)h1(mw)Ayh4(yQB)h1(mw)B mod p:

RS(yh4(yQA)h1(mw)A mod p)×(h2(m,R)yh4(yQB)h1(mw)B mod p)h2(m,R)yh4(yQA)h1(mw)Ayh4(yQB)h1(mw)B mod p

显然,伪造的签密文满足了验证式RSh2(m,R)yh4(yQA)h1(mw)Ayh4(yQB)h1(mw)B mod p,这就证明了C的伪造是有效的。

3.3 对文献[4]的改进

曹正军等人[5]指出,要设计一个签名方案,对签名数据在验证等式中出现的位置有一定要求,必须处于底数或指数位置,否则是不安全的。如果签名数据在验证等式中既不处于底数位置也不处于指数位置,则称为孤悬因子。由于文献[4]的方案验证式中R及S均为孤悬因子,因此为伪造者提供了可乘之机。为此,可考虑改进原方案,使签名数据R及S在验证式中处于底数和指数位置。改进方案如下。

在签密阶段,把签密人B计算的S修改为Sh2(m,R) mod p把验证式改为:

RSgh2(m,R)yh4(yQA)h1(mw)+1Ayh4(yQB)h1(mw)B mod p

正确性证明如下:

RSgkh2 (m,R)mod pgh2(m,R)gθp mod p

gh2(m,R)gθA+h1(mw)SB mod p

gh2(m,R)gh1(mw)SAgh1(mw)SB mod p

gh2(m,R)yh4(yQA)h1(mw)Ayh4(yQB)h1(mw)B mod p

其他部分保持原方案不变。

改进方案消除了原方案因为孤悬因子的存在而造成的缺陷,同时因为除上述改进部分以外,改进方案其他部分与原方案保持一致,因此改进方案的安全性分析与原方案的安全性分析完全一致,证明改进方案具有一个安全的签密方案所应有的安全特性,又保持了原方案的其他特点。

4 结语

对一种无证书签密方案和一种基于DLP的自认证签密方案进行了安全性分析,发现都存在着安全缺陷,并给出了攻击方法。在无证书签密方案中,除了文献[3]中对此方案提出的一种类型Ⅰ的攻击外,还存在不诚实的接收者作为类型Ⅰ的攻击者的伪造攻击,且不具有公开可验证性。由于孤悬因子的存在,此基于DLP的自认证签密方案存在伪造攻击,通过这个攻击,一个不诚实的接收者可以用任意签密人的身份伪造出对消息的有效签密文。对这两种签密方案提出了改进方案,对改进方案进行了安全性分析,证明了改进方案是安全的,能够有效地克服原方案的缺陷。

参考文献:

[1] ZHENG Y. Digital signcryption or how to achieve cost (signature & encryption)cost(signature)+cost(encryption)encryption) [C]// CRYPTO'97: Proceedings of the 17th Annual International Cryptology Conference on Advances in Cryptology, LNCS 1294. Berlin: Springer-Verlag, 1997: 165-179.

[2] XIE WENJIAN, ZHANG ZHANG. Efficient and provably secure certificateless signcryption from bilinear maps [C]// WCNIS 2010: 2010 IEEE International Conference on Wireless Communications, Networking and Information Security. Washington, DC: IEEE Computer Society, 2010: 558-562.

[3] SELVI S S D, VIVEK S S, RANGAN C P. Security weaknesses in two certificateless signcryption schemes [EB/OL]. [2011-01-11]. /2010/092.pdf.

[4] 俞惠芳,赵海兴,王之仓,等.基于DLP的自认证签密方案[J].计算机科学,2010,37(5):66-67.

[5] 曹正军,刘木兰.数字签名方案中的孤悬因子和冗余数据[J].计算机学报,2006,29(2):249-255.

[6] AL-RIYAMI S S, PATERSON K G. Certifieateless public key cryptography [C]// ASIACRYFF 2003: Proceedings of the 9th International Conference on the Theory and Application of Cryptology and Information Security, LNCS 2894. Berlin: Springer-Verlag, 2003: 452-473.

[7] BARBOSA M, FARSHIM P. Certificateless signcryption [C]// Pro-ceedings of the 2008 ACM Symposium on Information, Computer and Communications Security. New York: ACM Press, 2008: 369-372.

[8] WU CHENHUANG, CHEN ZHIXIONG. A new efficient certificateless signcryption scheme [C]// ISISE'08: Proceedings of the 2008 International Symposium on Information Science and Engieering. Washington, DC: IEEE Computer Society, 2008: 661-664.

[9] LIU ZHENHUA, HU YUPU, ZHANG XIANGSONG, et al. Certificateless signcryption scheme in the standard model [J]. Information Sciences, 2010, 180(3): 452-464.

[10] BARRETO P S L M, KIM H Y, LYNN B, et al. Efficient algorithms for pairing-based cryptosystems [C]// CRYPTO'02: Proceedings of the 22nd Annual International Cryptology Conference on Advances in Cryptology, LNCS 2442. Berlin: Springer-Verlag, 2002: 354-368.

[11] GAMAGE C, LEIWO J, ZHENG Y. An efficient scheme for secure message transmission using proxy signcryption [C]// Proceedings of the 22nd Australasian Computer Science Conference. Berlin: Springer-Verlag, 1999: 420-431.

上一篇:基于信息熵与动态区域分割的半脆弱数字水印算... 下一篇:基于迭代的部分传输序列备选信号相关性降低峰...