郭 宇 劉 新 杜永興
(內(nèi)蒙古科技大學(xué)信息工程學(xué)院 內(nèi)蒙古 包頭 014010)
?
基于雙線性對的高效代理重簽密方案
郭宇劉新杜永興
(內(nèi)蒙古科技大學(xué)信息工程學(xué)院內(nèi)蒙古 包頭 014010)
摘要在公鑰密碼體制中,通常涉及到三方通信,如何高效地加密與簽名成為主要問題。結(jié)合代理與簽密的思想,設(shè)計一種新的代理重簽密方案。該方案基于雙線性對的性質(zhì)和離散對數(shù)的困難性問題,通過對明文的二次加密與簽名,解決了傳統(tǒng)簽名和加密分時進行的缺陷,并將代理方的簽名與普通的簽名區(qū)分開來,同時可以進行公開驗證簽名。經(jīng)過證明分析并與現(xiàn)有其他方案比較,該方案正確,且滿足保密性和不可偽造性,高效安全。
關(guān)鍵詞代理重簽密雙線性對離散對數(shù)保密性不可偽造性
0引言
代理計算[1]作為一種新型計算,它將個人的操作遷移至代理方,用戶將自己的任務(wù)委托至第三方完成,這種方式極大程度地降低了用戶自己的成本,同時又提高了資源的利用率,所以有關(guān)代理方面的計算形式得到了廣泛的認可和應(yīng)用。與此同時,加入代理方的計算后,消息是否安全的問題成為用戶擔(dān)心的熱點,如自己交給代理方的信息是否被其他人看到,是否已經(jīng)被更改,是否已經(jīng)損壞等。為了使用戶能夠放心享受代理計算帶來的服務(wù),可以應(yīng)用密碼學(xué)[2-4],通過加密解密等對數(shù)據(jù)進行處理,實現(xiàn)數(shù)據(jù)的保密性,通過數(shù)字簽名實現(xiàn)數(shù)據(jù)的可認證性,所以在此基礎(chǔ)上產(chǎn)生簽密的概念。另外,代理方作為第三方,理論上是不能知道用戶數(shù)據(jù)的具體內(nèi)容,它只能按照授權(quán)人提供的要求,將所需資源提供給被授權(quán)人,所以用戶將數(shù)據(jù)給予代理方之前,需要對數(shù)據(jù)進行加密處理,防止代理方看到數(shù)據(jù),造成消息的泄露。針對這一問題,提出利用代理重加密[5]方案解決。
Blaze[6]在1998年首次提出代理重加密的概念,指出它是一種具有隱私以及認證的數(shù)據(jù)訪問控制體系,并提出了具體的方案。2006年Ateniese[7]提出一種改進的代理重加密方案并解決了其中分布式存儲中的安全問題,推進了代理重加密的應(yīng)用。 2007年Green等人[8]設(shè)計了一種基于身份的代理重加密方案,極大簡化了公鑰部分的處理與設(shè)計。近年來,為了進一步提高代理重加密對數(shù)據(jù)的安全性要求、擴大它的應(yīng)用領(lǐng)域,Liang[9]在沒有隨機預(yù)言機模型下,設(shè)計了CCA安全的代理重加密方案、Kawai[10]設(shè)計了一種完全匿名的代理重加密方案,這些方案都從不同的角度提高了數(shù)據(jù)的安全性。為了實現(xiàn)消息的可認證功能,1999年Gamage[11]提出了代理簽密的概念,在代理加密中結(jié)合了數(shù)字簽名,同時實現(xiàn)了保密和認證的功能。在此基礎(chǔ)上,zhang[12]提出一種基于短簽名的高效代理簽密方案,但其密鑰管理較復(fù)雜。近年來,陳、王等人[13,14]分別設(shè)計了一種基于身份的代理重簽密,這些方案中雖然簽密無需明文參與、也無證書,但效率并非有明顯的提高。本文利用加密與簽名給出一種具體的代理重簽密方案,并分析證明了其正確性、保密性,可區(qū)分性、可驗證性以及不可偽造性,通過與其他現(xiàn)有的方案進行對比分析,本方案效率較高,對于提高代理簽密的效率和可用性具有重要的意義。
1預(yù)備知識
1.1雙線性對
設(shè)G1是由P生成,且階為素數(shù)q的循環(huán)加法群,G2是一個循環(huán)乘法群,階仍為q。映射e:G1×G1→G2是一個雙線性映射,且滿足以下3個條件:
2) 非退化性:存在P,Q∈G1,使得e(P,Q)≠1;
3) 可計算性:對于所有的P,Q∈G1,存在有效的算法計算e(P,Q)。
1.2相關(guān)數(shù)學(xué)問題的困難性描述
4)GDHP(GapDiffie-Hellman問題):在多項式時間內(nèi),對于群G1上的DDHP容易解決而CDHP難解決,則稱群G1為GDH群。
假設(shè)DLP問題和CDHP問題是困難的,即在多項式時間內(nèi)DLP問題、CDHP問題均無法被解決。
2代理重簽密的具體過程
本文提出的方案包括6個步驟:初始化、公私鑰對生成、轉(zhuǎn)換密鑰生成、加密、代理重的簽密過程及解密驗證階段,具體過程如下:
1) 系統(tǒng)初始化
{G1,G2,e,q,P,Ppub,H1,H2}
公開。
2) 公私鑰對生成
3) 轉(zhuǎn)換密鑰生成
(a) 用戶按照需要建立一個授權(quán)許可證,稱之為mw,明確雙方的身份信息、授權(quán)關(guān)系及使用限制等,該用戶便成為授權(quán)用戶A;
4) 簽密過程
V=s1H1(mw)
R=nP
w=e(P,P2)n
c=wmmodq
將(R,V,c)發(fā)送至代理方;
5) 代理過程
(a) 代理方接收到(R,V,c), 驗證等式:
e(V,P)=e(H1(mw),P1)
是否成立,如果不成立,則拒絕來自此用戶的請求;如果成立,那么接受。
c′=e(P,P0)cmodq
V′=k-1(H2(c′)P+P0)
U′=kP
(c) 發(fā)送加密消息至被授權(quán)人:
(V′,U′,c′,R,mw)
6) 解密驗證階段
(a) 驗證等式:
e(V′,U′)=e(P2-P1,P)·e(P,P)H2(c′)
是否正確,如果成立,則消息有效;否則,消息無效,拒絕接收。
(b) 驗證等式正確后,進行解密運算,得到明文:
w′=e(P,s2)n,m=(w′)-1c′modq
3方案分析
3.1正確性
1) 授權(quán)者發(fā)送消息至代理方后,代理方驗證e(V,P)=e(H1(mw),P1)的正確性:
e(V,P)=e(s1H1(mw),P)
=e(H1(mw),P)s1
=e(H1(mw),s1P)
=e(H1(mw),P1)
2) 被授權(quán)者收到來自代理方的信息后,驗證e(V′,U′)=e(P2-P1,P)·e(P,P)H2(c′)的正確性:
e(V′,U′)=e(k-1(H2(c′)P+P0),kP)
=e(H2(c′)P+P0P,P)
=e(P0P,P)·e(P,P)H2(c′)
=e((s2-s1)P,P)
=e(P2-P1,P)
所以:
e(V,P)=e(sH1(mw),P)
e(V′,U′)=e(P2-P1,P)·e(P,P)H2(c′)
3.2保密性
本方案的保密性主要體現(xiàn)在數(shù)據(jù)的透明性和單向傳遞性兩個方面。數(shù)據(jù)經(jīng)過加密至代理方后,進行重加密,他并不知道數(shù)據(jù)的具體內(nèi)容,只有需要數(shù)據(jù)的人通過解密才能得知,所以數(shù)據(jù)對于代理方是透明的。另外,由于授權(quán)許可證mw的限制,授權(quán)只能從一個用戶到另一個用戶,而同時不能反向執(zhí)行,實現(xiàn)了數(shù)據(jù)的單向傳遞性,更好地保證了數(shù)據(jù)的安全性。
3.3可區(qū)分性與可驗證性
由于簽密密文中包含了授權(quán)許可證mw,而最終解密驗證時需要用到授權(quán)用戶A的公鑰,因此,該代理簽密方案與代理人自行簽密可以區(qū)分。另外,代理方產(chǎn)生代理簽密(V′,U′,c′,R,mw)后,發(fā)送至被授權(quán)用戶B,該用戶從授權(quán)證書mw中可得知授權(quán)用戶和代理簽名者,同時驗證e(V′,U′)=e(P2-P1,P)·e(P,P)H2(c′)時,用到P1,所以可知該簽名經(jīng)過A同意,可驗證性成立。
3.4不可偽造性
本文方案中的關(guān)鍵數(shù)據(jù)(如密文c,c′,簽名等)的不可偽造性是通過加密、hash函數(shù)H(*)和基于雙線性對的數(shù)字簽名來保證的。
若偽造者想要偽造c=wmmodq,他必須知道w,而w=e(P,P2)n,R=nP,根據(jù)解離散對數(shù)的困難性,已知R,無法得到n,故無法得到w, 因此無法偽造密文信息。對于c′=e(P,P0)cmodq,其中P0的值只有代理方知道,而且c滿足保密性,偽造者無法得到任何相關(guān)信息。最后,簽名的過程中包含了授權(quán)者的私鑰、密文信息,對于密文,該方案滿足保密性,所以攻擊者是無法進行偽造的。
3.5效率
在本文的效率分析中,假設(shè)G1、G2分別表示加法和乘法運算的成本,雙線性對的計算成本為e,哈希函數(shù)的計算成本為H, 指數(shù)運算的成本為exp。則通過與其它現(xiàn)有方案的效率比較,得出如表1所示。
表1 本文方案與其他方案的效率比較
由表可知,本文在G1、G2和雙線性對計算方面的成本相對其它方案均有所減少,雖然其它計算成本并非最低,但相對而言已達到很好的效果。另外,轉(zhuǎn)換密鑰P0的計算由代理方完成,極大程度簡化用戶方的運算復(fù)雜性。代理方面計算(U′,c′)快速簡單,哈希過程與雙線性計算成本大大減少。最后階段通過驗證等式e(V′,U′)=e(P2-P1,P)·e(P,P)H2(c′)的正確與否,計算簡便快捷,減少了通信量和系統(tǒng)開銷。
4結(jié)語
簽密是將簽名與加密有效結(jié)合。本文在傳統(tǒng)計算的基礎(chǔ)上,通過加密、確認、代理重加密及解密等階段,對數(shù)據(jù)作一系列處理,在確保消息正確、安全的前提下,利用代理重加密能夠轉(zhuǎn)換密鑰、二次加密的優(yōu)勢,將信息再次加密,被授權(quán)用戶需要時可以用自己的私鑰解密。增加用戶向代理方確認階段,確保數(shù)據(jù)來源清楚,使得消息發(fā)送者對于自己發(fā)出的消息不能抵賴。
代理重簽密方面的相關(guān)方案日益成熟,目前更多的應(yīng)用于電子郵件轉(zhuǎn)發(fā)、代理服務(wù)器等的使用中,而安全問題作為信息傳遞中的主要障礙和制約因素,關(guān)系到使用代理計算的相關(guān)企業(yè)的生存和發(fā)展,因此還需要做更多的嘗試與深入的研究。
參考文獻
[1] 雷萬云.云計算[M].北京:清華大學(xué)出版社,2011.
[2] 張煥國,王張宣.密碼學(xué)引論[M].武漢:武漢大學(xué)出版社,2009.
[3]RivestRL,ShamirA,TaumanY.Howtoleakasecret[M].AdvancesinCryptology-ASIACRYPT2001.SpringerBerlinHeidelberg,2001:552-565.
[4]RivestRL,ShamirA,AdlemanL.Amethodforobtainingdigitalsignaturesandpublic-keycryptosystems[J].CommunicationsoftheACM,1978,21(2):120-126.
[5]BruceSchneier.AppliedCryptography:Protocols,AlgorithmsandSourceCodeinC[M].2nded.Wiley,1995.
[6]BlazeM,BleumerG,StraussM.Divertibleprotocolsandatomicproxycryptography[C]//AdvancesinCryptology-EUROCRYPT’98.SpringerBerlinHeidelberg,1998:127-144.
[7]AtenieseG,FuK,GreenM,etal.Improvedproxyre-encryptionschemeswithapplicationstosecuredistributedstorage[J].ACMTransactionsonInformationandSystemSecurity(TISSEC),2006,9(1):1-30.
[8]GreenM,AtenieseG.Identity-basedproxyre-encryption[C]//AppliedCryptographyandNetworkSecurity.SpringerBerlinHeidelberg,2007:288-306.
[9]LiangK,LiuZ,TanX,etal.ACCA-Secureidentity-basedconditionalproxyre-encryptionwithoutrandomoracles[C]//InformationSecurityandCryptology-ICISC2012.SpringerBerlinHeidelberg,2013:231-246.
[10]KawaiY,TakashimaK.Fully-AnonymousFunctionalProxy-Re-Encryption[J].IACRCryptologyE-PrintArchive,2013:318-391.
[11]GamageC,LeiwoJ,ZhengU.AnEfficientSchemeforSecureMessageTransmissionUsingProxy-signcryption[C]//Procofthe22ndAustralasianComputerScience.Auckland:Springer-Verlag,1999:420-431.
[12]ZhangXuejun,WangYumin.EfficientIdentity-basedProxySigncryption[J].ComputerEngineeringandApplications,2007:43(3):109-111.
[13] 陳善學(xué),周淑賢,姚小鳳,等.高效的基于身份的代理簽密方案[J].計算機應(yīng)用研究,2011,28(7):2694-2696.
[14] 王會歌,王彩芬,曹浩,等.新的基于身份的代理重簽密[J].計算機應(yīng)用,2011,31(11):2986-2989.
AN EFFICIENT PROXY RE-SIGNCRYPTION SCHEME BASED ON BILINEAR PAIRING
Guo YuLiu XinDu Yongxing
(School of Information and Engineering,Inner Mongolia University of Science and Technology,Baotou 014010,Inner Mongolia,China)
AbstractIn public key cryptography, usually it involves three parties communication, the way of efficient encryption and signature becomes the major problem. Combining the agent and signcryption ideas, we designed a new proxy re-signcryption scheme. The scheme is based on the property of bilinear pairing and the difficulty of discrete logarithm, by encrypting and signing on plaintext twice, it solves the defect of traditional way in separating the signature and encryption time, while distinguishes the agent signature from ordinary signature. At the same time the signature can be publicly verified. Through provable analysis and comparing it with other existing schemes, this one is correct and satisfies the confidentiality and unforgeability, it is efficient and safe.
KeywordsRe-signcryptionBilinear pairingDiscrete logarithmConfidentialityUnforgeablility
收稿日期:2014-12-27。國家自然科學(xué)基金項目(61301073)。郭宇,講師,主研領(lǐng)域:物聯(lián)網(wǎng)技術(shù)。劉新,講師。杜永興,副教授。
中圖分類號TP309
文獻標識碼A
DOI:10.3969/j.issn.1000-386x.2016.06.072