周克元
(宿遷學(xué)院二系,江蘇宿遷 223800)
公開(kāi)驗(yàn)證和前向安全數(shù)字簽密方案的分析與改進(jìn)
周克元
(宿遷學(xué)院二系,江蘇宿遷223800)
摘要:指出張建航等提出的數(shù)字簽密方案無(wú)前向安全性,提出了一個(gè)新的可公開(kāi)驗(yàn)證和前向安全的數(shù)字簽密方案,并進(jìn)行了正確性和安全性分析,與已有方案比較,降低了算法復(fù)雜度.同時(shí),指出張建航等提出的橢圓曲線數(shù)字簽密方案復(fù)雜度過(guò)高,給出了一個(gè)新的簽密方案,方案具有前向安全性和公開(kāi)驗(yàn)證性,模乘運(yùn)算達(dá)到最小值4次,模逆運(yùn)算達(dá)到最小值0次,復(fù)雜度達(dá)到理論最小值.
關(guān)鍵詞:數(shù)字簽密;前向安全;公開(kāi)驗(yàn)證;橢圓曲線;改進(jìn)
收稿日期:2014-12-20;修改稿收到日期:2015-04-20
E-mail:zhoukeyuan2001@163.com
基金項(xiàng)目:宿遷市科研項(xiàng)目(Z201450)
作者簡(jiǎn)介:周克元(1978—),男,江蘇淮安人,講師,碩士.主要研究方向?yàn)槊艽a學(xué).
中圖分類(lèi)號(hào):TN 918.1
文獻(xiàn)標(biāo)志碼:標(biāo)志碼:A
文章編號(hào):章編號(hào):1001-988Ⅹ(2015)06-0050-04
Abstract:The signcryption scheme proposed by Zhang Jian-hang et al is analyzed,and the scheme don’t have the forward security.An improvement scheme is proposed with public verifiability and forward security,the correctness and security are proved.The efficiency of the scheme is increased significantly compared with two existing schemes.Moreover,a new signcryption scheme based on elliptic curves is proposed with public verifiability and forward security.In the algorithm,both the numbers of model multiplication and model inverse are reached the minimum four times and zero times,the efficiency of the algorithm is increased significantly compared with the existing signcryption scheme.
Attackanalysisandimprovementonthesigncryptionscheme
withpublicverifiabilityandforwardsecurity
ZHOUKe-yuan
(TheSecondDepartment,SuqianCollege,Suqian223800,Jiangsu,China)
Keywords:signcryptionscheme;forwardsecurity;publicverifiability;ellipticcurves;improvement
基于離散對(duì)數(shù)數(shù)學(xué)難題的數(shù)字簽密方案的原理為:利用離散對(duì)數(shù)數(shù)字簽名方法得到加密密鑰,使用加密密鑰加密明文為密文,之后將簽密發(fā)送給接收者;接收者接到簽密后,首先驗(yàn)證其正確性,然后使用自己的私鑰及簽密得到解密密鑰,從而解密密文得到明文消息[1].相繼有Zheng[1-2]、李發(fā)根等[3]、陳偉東等[4]、李艷平等[5]、張串絨等[6]、喻琇瑛等[7]、于永等[8]、張建航等[9]、戚明平等[10]對(duì)離散對(duì)數(shù)數(shù)字簽密進(jìn)行了研究.
張建航等[9]對(duì)Zheng提出的簽密方案[1]進(jìn)行了分析,指出Zheng方案無(wú)前向安全性,且不具有公開(kāi)驗(yàn)證性,并對(duì)其進(jìn)行了改進(jìn).筆者研究發(fā)現(xiàn),張建航等改進(jìn)方案仍無(wú)前向安全,并給出了新的簽密方案.新方案具有前向安全性,且運(yùn)算復(fù)雜度更低.
1Zheng數(shù)字簽密方案
1.1參數(shù)
1.2簽密階段
對(duì)消息明文m進(jìn)行加密c=Ek1(m),得簽密密文對(duì)(c,r,s),將密文發(fā)送給Bob[1].
1.3解簽密階段
r=H(k2,m)?Bob接受m為Alice所發(fā)送的明文信息[1].
2張建航等簽密方案
2.1簽密階段
2.2解簽密階段
Bob收到簽密(c,r,s)后,計(jì)算
進(jìn)行解密m=Dk2(c).
當(dāng)且僅當(dāng)r=H(k1,c)時(shí),Bob接受m為Alice發(fā)送的消息.
2.3相關(guān)攻擊分析
3新的簽密方案
下面給出一個(gè)新的簽密方案,方案增加了一個(gè)簽名者私鑰以增加安全性,具有前向安全性和可公開(kāi)驗(yàn)證性,且復(fù)雜度比已有的簽密方案低.
3.1參數(shù)
在Zheng方案參數(shù)的基礎(chǔ)上,將Alice私鑰更改為選取xa1,xa2∈Zp,并計(jì)算公鑰ya1=gxa1modp,ya2=gxa2modp,其余不變.
3.2簽密階段
Alice選取2個(gè)隨機(jī)數(shù)x1,x2∈Zp,計(jì)算
最后Alice將簽密消息對(duì)(c,k1,k3,s1,s2)發(fā)送給Bob.
3.3解簽密階段
3.4正確性證明
說(shuō)明該方案的驗(yàn)證過(guò)程是正確的.
4安全性和效率分析
4.1不可偽造性
簽密方程為
Bob收到簽密后,可知道簽密方程中參數(shù)s1,s2,c,H(m),但參數(shù)x1,x2,xa1,xa2仍未知,2個(gè)方程有4個(gè)未知量,故包括Bob在內(nèi)的任何人都無(wú)法求出私鑰xa1,xa2.簽密過(guò)程需要Alice的私鑰xa1,xa2參與,所以包括Bob在內(nèi)的任何人都無(wú)法偽造消息m的簽密.
4.2前向安全性
4.3公開(kāi)驗(yàn)證性
由于驗(yàn)證中不需要Bob的私鑰,所以第三方可公開(kāi)驗(yàn)證,簽名者Alice不能否認(rèn).
4.4效率分析
對(duì)基于離散對(duì)數(shù)的同時(shí)具有前向安全性和可公開(kāi)驗(yàn)證性的簽密方案,其復(fù)雜度的改進(jìn)有兩個(gè)方面:① 減少模逆運(yùn)算,最新方案為喻琇瑛等方案[7],模逆為0次,但模指數(shù)高達(dá)8次;② 減少模指數(shù)運(yùn)算,最新方案為戚明平等方案[10],模指數(shù)為6次,模逆為1次.文中方案復(fù)雜度為模指數(shù)6次,模逆0次,比已有方案均低(表1,簽密長(zhǎng)度中不計(jì)每個(gè)方案中均需傳輸?shù)拿芪腸).
表1 3種方案效率比較
5基于身份的橢圓曲線數(shù)字簽密方案的分析與改進(jìn)
由于橢圓曲線具有較好的密碼學(xué)特征,基于橢圓曲線的密碼算法能夠提供更好的加解密強(qiáng)度、更快的執(zhí)行速度和更小的密鑰長(zhǎng)度,使得橢圓曲線在公鑰密碼學(xué)中有著廣泛的應(yīng)用[11].Hwang等[12]、于剛等[13]、李發(fā)根等[14]對(duì)基于身份的橢圓曲線數(shù)字簽密進(jìn)行了研究;張建航等[9]也給出了一個(gè)基于身份的橢圓曲線數(shù)字簽密方案,具有前向安全性和可公開(kāi)驗(yàn)證性,但方案中模乘運(yùn)算達(dá)5次,復(fù)雜度較高.文中給出一個(gè)新的基于身份的橢圓曲線數(shù)字簽密方案,仍具有前向安全性和可公開(kāi)驗(yàn)證性,且比張建航等方案少1次模乘運(yùn)算,運(yùn)算復(fù)雜度達(dá)到理論最小值.
5.1參數(shù)
設(shè)GF(q)為有限域,E是有限域GF(q)上的橢圓曲線,選擇E上一點(diǎn)G,G的階為滿(mǎn)足安全要求的素?cái)?shù)n.發(fā)送方Alice選取私鑰xA∈Z*n,并計(jì)算公鑰YA=xAG;接收方Bob同理選取私鑰xB∈Z*n,并計(jì)算公鑰YB=xBG.(D,E)為安全加解密方案.
5.2簽密階段
發(fā)送方Alice對(duì)明文消息m的簽密過(guò)程如下:
1)Alice任取r∈Z*n,計(jì)算R=rG=(r1,r2),KA B=rYB=(k,l);
2)加密c=Ek(m),計(jì)算Hash函數(shù)值e=h(m,r1),計(jì)算漢明重w=ham(e);
3)任取整數(shù)α,β(0<α,β 簽密為(c,R,s,β,u),將其發(fā)送給接收者Bob. 5.3解簽密階段 Bob收到簽密后,進(jìn)行如下解簽密過(guò)程: 1)計(jì)算KA B=xBR=(k,l); 2)解密計(jì)算明文信息m=Dk(c),計(jì)算Hash函數(shù)值e=h(m,r1),計(jì)算漢明重w=ham(e); 3)計(jì)算γ=(s-w+βm+u) modn; 4)驗(yàn)證γG-YA=R,若正確,則接受簽密. 5.4正確性證明 說(shuō)明該方案的驗(yàn)證過(guò)程是正確的. 6安全性和效率分析 6.1不可偽造性 由簽密方程u=(r-αr1-β m)modn, s=(w+α r1+xA) mod n,接收者Bob知道m(xù),s,u,w,r1,β,2個(gè)方程含有3個(gè)未知變量r,α,xA,無(wú)法求出,簽密方程需要xA參與,故包括Bob在內(nèi)的任何人都無(wú)法偽造簽密. 6.2前向安全性 即使Alice的私鑰xA泄露,除Bob外的任何人都無(wú)法恢復(fù)消息明文m,因?yàn)榛謴?fù)m=Dk(c)需要解密密鑰k.有兩種方法可得到k:① 攻擊者知道r,計(jì)算KA B=rYB=(k,l),從而可恢復(fù)消息明文m=Dk(c);② 攻擊者知道xB,計(jì)算KA B=xBR=(k,l),從而可恢復(fù)消息明文m=Dk(c).參數(shù)r和xB攻擊者均無(wú)法知道,無(wú)法恢復(fù)消息明文m,故方案具有前向安全性. 6.3公開(kāi)驗(yàn)證性 若發(fā)送方Alice否認(rèn)簽密,接收者Bob將簽密(c,R,s,β,u)發(fā)送給第三方可信中心可進(jìn)行解簽密驗(yàn)證. 注1:若接收方Bob不想將消息明文m交給第三方公開(kāi)驗(yàn)證,只希望對(duì)密文c進(jìn)行公開(kāi)驗(yàn)證,則可將上述方案簽密過(guò)程中的e=h(m,r1)改為e=h(c,r1),u=(r-αr1-β m)modn改為u=(r-αr1-β c)modn,解簽密過(guò)程中的γ=(s-w+β m+u)modn改為γ=(s-w+β c+u)modn即可,其他均不變. 6.4效率分析 最新的同時(shí)具有前向安全性和公開(kāi)可驗(yàn)證性的橢圓曲線數(shù)字簽名方案為張建航等方案[9],相關(guān)的效率分析結(jié)果見(jiàn)表2. 表2 效率比較 對(duì)于基于身份的橢圓曲線數(shù)字簽密方案,簽密和解簽密中至少需要4個(gè)模乘運(yùn)算,2個(gè)用于簽密和解簽密,另2個(gè)用于加密和解密.文中方案模乘運(yùn)算達(dá)到最小值4次,模逆運(yùn)算達(dá)到最小值0次,與張建航等方案相比,文中方案減少了1次模乘運(yùn)算,點(diǎn)積運(yùn)算與Hash函數(shù)運(yùn)算相對(duì)于模乘運(yùn)算和模逆運(yùn)算來(lái)說(shuō)可忽略不計(jì),故文中方案復(fù)雜度達(dá)到了理論最小值.另外,文中方案簽密長(zhǎng)度有所增加,用于短簽名效果更好(簽密長(zhǎng)度中不計(jì)每個(gè)方案中均需傳輸?shù)拿芪腸). 參考文獻(xiàn): [1]ZHENGYu-lang.Digitalsigncryptionorhowtoachievecost(signatureandencryption)[C]//Advancesin Cryptography:Proceedings of CRYPTO ’97.London:Springer,1997:165. [2]ZHENGYu-lang.Signcryptionanditsapplicationsinefficientpublickeysolution[C]//Proceedings of Information Security Workshop(ISW ’97).Berlin:Springer,1998:291. [3]李發(fā)根,胡予濮,李剛.一個(gè)高效的基于身份的簽密方案[J].計(jì)算機(jī)學(xué)報(bào),2006,29(9):1641. [4]陳偉東,馮登國(guó).簽密方案在公布式協(xié)議中的應(yīng)用[J].計(jì)算機(jī)學(xué)報(bào),2005,28(9):1421. [5]李艷平,譚示崇,王育民.一個(gè)公開(kāi)可驗(yàn)證和前向安全的簽密方案[J].計(jì)算機(jī)應(yīng)用研究,2006,23(9):98. [6]張串絨,肖國(guó)鎮(zhèn).一個(gè)可公開(kāi)驗(yàn)證簽密方案的密碼分析和改進(jìn)[J].電子學(xué)報(bào),2006,34(1):177. [7]喻琇瑛,賴(lài)欣,何大可.一個(gè)可公開(kāi)驗(yàn)證且前向安全的簽密方案[J].計(jì)算機(jī)應(yīng)用研究,2009,26(1):359. [8]于永,綦朝暉.一種基于前向安全的可公開(kāi)驗(yàn)證簽密方案[J].計(jì)算機(jī)應(yīng)用與軟件,2010,27(1):283. [9]張建航,胡予璞,齊新社.具有前向安全性和公開(kāi)可驗(yàn)證性的簽密方案[J].計(jì)算機(jī)應(yīng)用研究,2011,28(2):733. [10]戚明平,陳建華,何德彪.具有前向安全性的可公開(kāi)驗(yàn)證的簽密方案[J].計(jì)算機(jī)應(yīng)用研究,2014,31(10):3093. [11]王天芹.一個(gè)基于橢圓曲線的可證明安全簽密方案[J].計(jì)算機(jī)應(yīng)用研究,2010,27(3):1055. [12]HWANGRJ,LAICH,SUFF.Anefficientsigncryptionschemewithforwardsecrecybasedonellipticcurve[J].Applied Mathematics and Computation,2005,167(2):870. [13]于剛,黃根勛,王旭,等.基于橢圓曲線的可公開(kāi)驗(yàn)證和前向安全的簽密方案[J].信息工程大學(xué)學(xué)報(bào),2008,9(3):21. [14]李發(fā)根,鐘笛.數(shù)字簽密綜述[J].信息網(wǎng)絡(luò)安全,2011(12):1. (責(zé)任編輯惠松騏)