祁正華,楊紅塵,黃 海
(南京郵電大學 計算機學院、軟件學院,江蘇 南京 210003)
一種基于身份的廣義簽密方案
祁正華,楊紅塵,黃 海
(南京郵電大學 計算機學院、軟件學院,江蘇 南京 210003)
為了解決安全性需求不確定網絡環境的安全性問題,廣義簽密方案被提出,其具有靈活多變的特點,能在一個密碼模塊內實現簽密、加密和簽名三種功能。以提高計算效率和實現更高的安全性為目標,研究分析了以往高效安全的廣義簽密方案,給出了一種新的基于身份廣義簽密方案。從各方面對該方案進行了安全性的證明與分析,并將該方案與目前計算效率較高的廣義簽密方案進行了比較,還給出了一個該方案的應用實例,描述了該方案在郵件系統中的具體運用過程。結果表明,新方案的橢圓曲線點乘運算、雙線性對運算的次數都有所降低。
廣義簽密;基于身份密碼體制;雙線性對;簽密
根據加密算法和解密算法所用到的密鑰的不同情況,可將加密算法分為對稱加密和非對稱加密(又被稱為私鑰加密和公鑰加密)。私鑰加密中加密算法與解密算法所使用的密鑰是相同的,或者是兩個密鑰之間的推導比較簡單,即無論是加密密鑰還是解密密鑰泄露都會影響整個算法的安全性;公鑰密碼雖然具有許多優點,但是公鑰密碼的公鑰認證和證書管理相當復雜,且成本昂貴,其基本思想是讓加密算法和解密算法使用不同的密鑰,加密密鑰公開私鑰保密,且很難從用戶的公鑰推導出用戶的私鑰,這樣只要未授權者沒有合法用戶的私鑰信息就無法輕易地獲得明文。1984年,Shamir[1]為了簡化證書管理,建設性地提出了基于身份的公鑰密碼系統的思想,其公鑰直接為實體的身份信息,因此基于身份的公鑰密碼體制可以很自然地解決公鑰與實體的綁定問題。2001年,Boneh D等[2]在橢圓曲線雙線性對的基礎上提出了第一個基于身份的加密方案,但該方案在隨機預言機模型下才能證明其安全性。2002年,Malone-Lee[3]最先提出了完整的基于身份的簽密方案,但Libert等[4]指出該方案并不滿足語義安全性。此后,許多不同的簽密算法相繼提出[5-7]。
在現實中存在一些網絡環境,其安全性要求并非是確定的,系統中并不是只要存有簽名、加密或者簽密方案其中之一就能滿足所有網絡事務的需求,這樣一些網絡系統中就必須同時存有這三種方案,且系統要根據不同的安全性要求使用不同的方案,這種做法由于增加了算法存儲空間和方案之間的切換機制,故明顯增加了系統負擔。廣義簽密的提出解決了上述不足,其不僅具有普通簽密方案的特性,還可以只實現機密性或認證性一種功能,在時間和成本上能夠滿足不同需求的網絡環境。適用于用戶之間需要頻繁傳輸不同秘密級別消息的網絡環境。
廣義簽密(Generalized SignCryption,GSC)是韓益亮等[8-9]提出的密碼學概念。其將簽名、加密、簽密三種算法實現的功能集于一身,且將這三種方案作為可供選擇的不同模式根據輸入情況判斷具體實現中所用到的是哪一種功能。廣義簽密的出現解決了那些安全性需求不穩定的網絡環境需要存儲多種密碼方案且需要來回轉換不同方案的存儲空間和時間的高消耗問題。2007年,Wang X等[10]定義了GSC體制的安全模型。鑒于GSC方案的靈活多變性,許多學者將其與基于身份簽密相結合,形成了基于身份GSC方案。2008年,Lai S等[11]提出了基于身份GSC體制的形式化定義和安全模型,并提出了一種具體方案。此后,一些優秀的基于身份GSC方案相繼提出[12-14],其都從計算效率或安全性方面對前人提出的方案進行了改進。
文中提出了一種新的基于身份GSC算法,驗證了算法的正確性并分析了其安全性和性能。
2.1 雙線性對
設G1,G2分別是階數為q(大素數)的加法群和乘法群。P為G1的一個生成元,稱e:G1×G1→G2是一個雙線性映射,當其滿足以下性質時。
(1)雙線性。對所有的P,Q,R∈G1,都有:
e(aP,bQ)=e(P,Q)ab
e(P+Q,R)=e(P,R)e(Q,R)
e(P,Q+R)=e(P,Q)e(P,R)
(2)非退化性。存在P,Q∈G1,滿足e(P,Q)≠1,如果e(P,Q)=1,那么說明點P為無窮遠的點。
(3)可計算性。對所有的P,Q∈G1能夠找到可行的算法計算e(P,Q)的值,那么稱e為雙線性配對。
2.2 困難問題假設

2.3 基于身份廣義簽密算法定義
基于身份GSC算法由以下四個算法組成:
1)系統生成(Setup):系統選擇一個安全參數k,PKG經過選擇和計算得出系統公開的初始化參數列表params和系統的主密鑰s。
2)用戶私鑰生成(Extract):根據用戶的身份IDA,PKG利用系統的公開參數和主密鑰s計算出該身份信息對應的私鑰SA,并通過一個安全信道傳送給用戶。
3)廣義簽密(GSC):該算法有三種不同的工作方式,即簽密、加密和簽名,每次只有其中一個工作方式發生。
(1)簽密:若用戶IDA需要讓傳輸的消息m同時滿足機密性和可認證性之后再發送給接收者B,發送者A已知的信息有(SA,m,IDB),利用已知的信息執行GSC算法生成密文為σ=GSC(SA,m,IDB)。
(2)簽名:若用戶IDA僅需要簽名一個消息m而不用特別指定簽名的接收者時,這時接收者的身份信息是沒有的。發送者A已知的信息有(SA,m,ID?)。其中,ID?表示身份為空的情形。用戶A執行GSC算法生成密文σ=GSC(SA,m,ID?),這種情況下的GSC算法發揮的作用就相當于一個簽名算法。
(3)加密:若某用戶僅僅是需要傳輸的信息m滿足數據的機密性而對數據的可認證性沒有要求,即沒有發送者的身份信息,只是加密一個消息,此時的已知信息是(S?,m,IDB),其中S?表示身份信息為空時的私鑰。利用已知信息執行GSC算法生成σ=GSC(S?,m,IDB),在這種情況下的GSC算法的作用就相當于一個加密算法。
4)解廣義簽密(UGSC):GSC算法無論工作在何種方式下,在進行解廣義簽密時都進行相同的操作。經過判斷,若σ是一個有效密文,則接收者B運行解簽密算法解密密文信息返回m,若廣義簽密運行的是簽密或者簽名功能的話還要返回A對消息m的簽名信息;否則返回Г表示密文無效。


GSC:(用戶A想要安全地發送消息m給B)首先計算f(IDA)、f(IDB)的值,若都為0,則無意義,終止。否則進行如下計算:
(2)計算R=kP,R1=xAPpub,S=k-1(f(IDA)SA+H2(R)P);
(3)計算w=e(Ppub,QB)k·f(IDB),C=H3(w)⊕(m‖S);
(4)發送密文σ=(C,R,R1,S)給B。
UGSC:接收者B接收到密文σ后,進行如下計算:
(1)計算w=e(R,DB)f(IDB);
(2)計算m‖S=H3(w)⊕C。
在接收到密文之后,首先要判斷等式e(R,S)=e(R1,QA)f(IDA)·e(P,P)H2(R)是否成立,成立則B接收此密文消息,否則將此密文視為無效。
正確性驗證:
e(R,S)=e(kP,k-1(f(IDA)SA+H2(R)P))=e(P,SA)f(IDA)·e(P,P)H2(R)=e(P,xAsQA)f(IDA)·e(P,P)H2(R)=e(xAsP,QA)f(IDA)·e(P,P)H2(R)=e(R1,QA)f(IDA)·e(P,P)H2(R)
4.1 安全性分析
下面從5個方面來分析新算法的安全性。
(1)機密性:假設存在一個接收者F能在多項式的時間t內解密消息。其中,F通過截取區域內的廣播消息可以得到σ=(C,R,R1),已知R=kP,Ppub=sP,令QB=bP(F并不知道k,b,s)。如果F想解密消息的話,其必須能在多項式時間t內解出e(Ppub,QB)k=e(P,P)kbs的值。即F能在多項式時間t內根據R,QB和Ppub計算出e(Ppub,QRi)k,即其能夠在多項式時間內解決DBDH問題。由于DBDH問題在多項式時間內是不可解的,這與假設的結論矛盾。因此,假設不成立,該算法具有機密性。
(2)不可偽造性:因為攻擊者F無法獲得發送者Alice的加密私鑰SA和隨機數xA,所以其不能正確計算出S=k-1(f(IDA)SA+H2(R)P)和R1=xAPpub,即不能偽造發送者的簽密消息,因此該算法滿足不可偽造性。
(3)公開驗證性:由于驗證密文是通過判斷等式e(R,S)=e(R1,QA)f(IDA)·e(P,P)H2(R)是否成立,該等式中用到的信息都是可計算的或者是可以公開獲得并不涉及發送者、接收者的私鑰信息,因此該算法滿足公開驗證性。
(4)不可否認性:因為該方案滿足公開驗證性,所以也滿足不可否認性。
(5)前向安全性:即便攻擊者F獲得了發送者Alice的私鑰SA,但攻擊者F并不知道隨機數k和接收者Bob的私密鑰DB,所以其無法求得e(Ppub,QB)k·f(IDB)或者e(R,DB)f(IDB),進而無法解出m,因此F無法解簽密消息。所以,該算法具備前向安全性。
綜上所述,該算法能夠滿足機密性、不可偽造性、公開驗證性、不可否認性和前向安全性,是一種安全的基于身份廣義簽密方案。
4.2 計算量分析
計算開銷和密文長度是影響算法效率的兩個主要因素。影響算法計算效率的主要運算是橢圓曲線點乘運算、雙線性對運算和指數運算,分別用字母M,P和E表示。表1給出了新方案與當前效率較高的其他廣義簽密方案的比較情況。

表1 基于身份廣義簽密方案的比較
利用文中提出的廣義簽密方案,設計一個安全的電子郵件傳送機制,提供發送私人郵件、公告郵件的發送模式。該郵件發送機制的整體構架如圖1所示。

圖1 郵件發送機制的整體構架
首先,用戶計算自己的公鑰,向認證中心提出身份認證請求,通過后認證中心向PKG申請用戶的解密私鑰,PKG根據用戶的公鑰信息,計算出用戶的解密密鑰并通過安全信道傳送給用戶,當用戶獲取該解密密鑰之后,計算出其加密密鑰。與E-mail服務器進行郵件傳輸,當E-mail服務器收到用戶郵件傳輸請求后,要向認證中心確認用戶身份信息,如果用戶身份正確,則進行信息交換,否則,拒絕郵件發送請求。接收者接收到加密郵件后若不能正確解密郵件信息,則視為無效郵件,不做處理。
5.1 身份認證
用戶的客戶端根據電子郵件系統的要求,將自己的身份信息IDU和自己的公鑰信息QU發送給認證中心,認證中心檢測IDU是用戶的真實身份信息且能保證使用的唯一性,則通過身份認證。
5.2 用戶私鑰對生成
當用戶的身份信息通過認證后,認證中心將用戶的公鑰信息QU發送給PKG,PKG計算出用戶的解密密鑰DU,并通過安全的信道傳送給用戶U,用戶U再根據該解密密鑰計算出加密密鑰SU,并將
5.3 郵件的發送和接收過程
郵件的發送過程為發送者Alice簽密明文后,通過E-mail服務器將郵件發送給接收者Bob的過程,具體如下:判斷f(IDB)。若等于0,則發送者發送的是公開郵件,等于1則為私人郵件。然后發送者Alice執行第3節GSC算法計算出密文σ=(C,R,R1),通過E-mail服務器發送給接收者Bob。當Bob接收到郵件后,判斷w的值是否為0,為0則接收到的是公開郵件,否則是私人郵件。根據判斷UGSC算法中正確性驗證等式是否成立,判定接收到的密文是否有效,有效則Bob執行解密算法解密密文郵件,否則視為垃圾郵件不做處理。
文中提出了一種新的基于身份廣義簽密方案。從機密性、不可偽造性、公開驗證性、不可否認性和前向安全性這五個方面進行了安全性分析,并將該方案與目前計算效率較高的廣義簽密方案進行了比較,結果表明該方案是一個安全高效的基于身份廣義簽密方案。同時給出了一個應用實例,講述了將該算法應用于郵件系統的具體工作流程。
[1]ShamirA.Identity-basedcryptosystemsandsignatureschemes[C]//Proceedingsofadvancesincryptology-CRYPTO’1984.Berlin:Springer-Verlag,1985:47-53.
[2]BonehD,FrankklinM.IdentitybasedencryptionfromtheWeilPairing[C]//ProceedingofCrypto’01.Berlin:Springer-Verlag,2001:213-229.
[3]Malone-LeeJ.Identitybasedsigncryption[R/OL].2011-10-01.http://eprint.iacr.org/2002/098.pdf.
[4]LibertB,QuisquaterJJ.Newidentitybasedsigncryptionschemesfrompairings[EB/OL].2003-02-03.http://eprint.iacr.org.
[5]QiZhenghua,RenXunyi,YangGeng.Provablysecuregeneralaggregatesigncryptionschemeintherandomoraclemodel[J].ChinaCommunications,2012,9(11):107-116.
[6]RenXunyi,QiZhenghua,YangGeng.Provablysecureaggregatesigncryptionscheme[J].ETRIJournal,2012,34(3):421-428.
[7] 明 洋,馮 杰,胡齊俊.標準模型下安全基于身份代理簽密方案[J].計算機應用,2014,34(10):2834-2839.
[8] 韓益亮,楊曉元.ECDSA可公開驗證廣義簽密[J].計算機學報,2006,29(11):2003-2012.
[9]HanYiliang.Generalizationofsigncryptionforresources-constrainedenvironments[J].WirelessCommunicationandMobileComputing,2007,7(7):919-931.
[10]WangX,YangX,HanY.Provablesecuregeneralizedsigncryption[EB/OL].2007.http://eprint.iacr.org/2007/173.
[11]LaiS,KushwahP.ID-basedgeneralizedsigncryption[EB/OL].2008-02-26.http://eprint.iacr.org/2008/084.
[12] 張洪禮,趙 靜,劉文遠.高效的基于雙線性對和身份的廣義簽密方案[J].計算機應用研究,2010,27(2):678-681.
[13] 項順伯.可證安全的基于身份的廣義簽密方案[J].信息網絡安全,2013(1):58-60.
[14] 周才學.無可信中心的基于身份的廣義簽密[J].計算機科學,2013,40(4):142-146.
An Identity-based Generalized Signcryption Scheme
QI Zheng-hua,YANG Hong-chen,HUANG Hai
(School of Computer Science and Technology,School of Software,Nanjing University of Posts and Telecommunications,Nanjing 210003,China)
For meeting the requirements of security in unstable network environment,generalized signcryption is proposed.It has flexible features,and can achieve signcryption,encryption and signature within one cryptographic module.In order to improve the computational efficiency and security,analysis of the proposed schemes,a new identity-based generalized signcryption program is put forward.The security of this scheme is proved from all aspects,then it is in contrast with the proposed schemes which has high computational efficiency.An application example of the scheme is given and the process of applying the program is described in mail system.The results show that the new scheme reduces the numbers of computation of the pairing and scalar multiplication.
generalized signcryption;identity-based cryptography;bilinear pairing;signcryption
2015-09-10
2016-02-25
時間:2016-09-18
國家自然科學基金資助項目(61073188)
祁正華(1975-),女,副教授,博士,研究方向為網絡與信息安全;楊紅塵(1991-),女,碩士研究生,研究方向為網絡與信息安全。
http://www.cnki.net/kcms/detail/61.1450.TP.20160918.1707.016.html
TP309
A
1673-629X(2016)10-0083-04
10.3969/j.issn.1673-629X.2016.10.018