徐清泉 史寶明 賀元香
摘 要: 基于身份的密碼系統(tǒng)簡化了公鑰鑰證書的管理,目前基于身份的數(shù)字簽名已成為公鑰加密的的一個研究熱點,而安全性是構(gòu)建基于身份的數(shù)字簽名方案的重要因素。介紹了基于身份的數(shù)字簽名技術(shù),并給出了方案模型和安全模型。應(yīng)用該模型可構(gòu)建安全而又高效的基于身份的數(shù)字簽名方案。
關(guān)鍵詞: 基于身份的數(shù)字簽名; 雙線性對; Diffie-Hellman問題; 可證明安全
中圖分類號:TP393 文獻標志碼:A 文章編號:1006-8228(2014)06-25-02
0 引言
數(shù)字簽名是社會信息化的必然產(chǎn)物。在傳統(tǒng)的現(xiàn)實社會里,政治、軍事、外交等領(lǐng)域的文件,命令、條約、商業(yè)契約,以及個人之間的書信等都需要手寫簽名或加蓋印鑒,以便在法律上能認證、核準,生效。隨著社會的信息化發(fā)展,越來越多的文件信息需要以數(shù)據(jù)串的形式通過網(wǎng)絡(luò)快速傳遞,這些數(shù)據(jù)串的來源和完整性都需要認證,而且這些認證常常需要在以后的一段時期內(nèi)多次重復,這就需要手寫簽名的電子替代物——數(shù)字簽名(digital signature)。一般來說,網(wǎng)絡(luò)世界的真實性要比現(xiàn)實世界的真實性更難于保證。因此對數(shù)字簽名的需求就顯得更加迫切。
數(shù)字簽名技術(shù)是提供認證性,完整性和不可否認性的重要技術(shù),因而是信息安全的核心技術(shù)之一。數(shù)字簽名具有認證性、完整性和不可否認性的特點,使其在電子商務(wù)和電子政務(wù)系統(tǒng)中起著重要作用,反過來,電子商務(wù)和電子政務(wù)系統(tǒng)的快速發(fā)展又有力推動著數(shù)字簽名的發(fā)展。目前,數(shù)字簽名技術(shù)已開始應(yīng)用于商業(yè)、金融和辦公自動化等系統(tǒng)中,數(shù)字簽名同時作為一種密碼學原語,被廣泛用于設(shè)計電子支付、電子投標、電子拍賣,電子彩票、電子投票等應(yīng)用協(xié)議,是安全電子商務(wù)和安全電子政務(wù)的關(guān)鍵技術(shù)之一。在這些具體環(huán)境的刺激下,具有特殊性質(zhì)的數(shù)字簽名,如盲簽名、門限簽名、基于身份簽名、環(huán)簽名、變色龍簽名等,逐漸發(fā)展成為應(yīng)用密碼學領(lǐng)域的重要分支。
1 基于身份的數(shù)字簽名技術(shù)的發(fā)展
Shamir提出了基于身份的密碼系統(tǒng)(ID. Based Cryptosystem)的概念[1],并同時提出了基于身份的簽名(ID—Based Signature)。所謂基于身份的密碼系統(tǒng),是指該密碼系統(tǒng)的公鑰是與其私鑰的持有人身份緊密相關(guān)的字符串,如電子郵件地址、姓名、職務(wù)等。一方面,在基于身份的密碼體制下,公鑰的認證性問題迎刃而解,從而不必要象PKI體制那樣花費大量的時間來管理公鑰證書;另一方面,對于基于身份密碼體制下的用戶(如加密方,簽名驗證方)而言,則不必要花費額外的時間來驗證公鑰證書的真?zhèn)?。在基于身份的密碼體制下,有一個稱作PKG(Private Key Generator)的可信中心負責給每個用戶分發(fā)與其身份對應(yīng)的私鑰。雖然基于身份的密碼學具有非常多的優(yōu)勢,但是一直沒有得到全面的解決方案。
在2000年,Joux做出了其突破性的工作,在文獻[2]中第一次把本來用于密碼攻擊的雙線性對(Bilinear Pairing)成功地用于密碼系統(tǒng)構(gòu)造。在其影響下,Boneh和Franklin[3]首次將雙線性對應(yīng)用于基于身份加密系統(tǒng)的構(gòu)造,提出了第一個基于身份的加密系統(tǒng)。隨之,Cha和Cheon[4]利用雙線性對構(gòu)造了第一個可證明安全的基于身份的簽名方案。從而,基于身份的公鑰密碼體制在新的數(shù)論工具的刺激下獲得了完整的解決方案。此后,隨著越來越多的基于身份簽名方案的提出,Bellare,Namprempre,Gregory Neven[5]對以往的所有基于身份的數(shù)字簽名作了詳細的分析,提出了構(gòu)造可證明安全的基于身份的數(shù)字簽名方案的模塊化方法,并利用該范例構(gòu)造了一批新的基于身份的數(shù)字簽名方案。另外,大部分簽名類型都可以做成基于身份的或基于雙線性對的版本,這形成了數(shù)字簽名的一個較大的研究方向。
2 相關(guān)的預(yù)備知識
2.1 雙線性對(Bilinear Pairing)
這里簡要介紹雙線性配對的基本定義和它需滿足的性質(zhì),更詳細的介紹請參考文獻[6]。令G、GT是兩個p階循環(huán)群,其中p為素數(shù),g是G的生成元。定義兩個群上的雙線性映射為e:G×G→GT,且滿足下面的性質(zhì)。
⑴ 雙線性性。e(ga,gb)=e(g,g)ab,對所有的a,b∈均成立。
⑵ 非退化性。e(g,g)≠,其中是GT的幺元。
⑶ 可計算性。存在有效算法來計算e。
可以注意到:e運算是可交換的,因為e(ga,gb)=e(g,g)ab=e(gb,ga)。
2.2 Diffie-Hellman問題和假定
這里簡要介紹方案證明中所使用的計算Diffie-Hellman問題和假定,更詳細的介紹請參考文獻[6-7]。
定義1 CDH問題。給定p階循環(huán)群G,其中p為素數(shù),g是G的生成元,則群G上的CDH問題是:已知ga,gb∈G,其中a,b是從Zp隨機選擇的,計算gab。
定義2 (ε,t)-CDH假定。如果不存在任何一種概率多項式算法在時間t內(nèi),以至少ε的概率解決群G上的CDH問題,則稱群G上的(ε,t)-CDH假定成立。
3 基于身份的簽名方案模型
基于身份的簽名方案由以下四個算法構(gòu)成。
⑴ 系統(tǒng)參數(shù)設(shè)置(Setup)。輸入一個安全參數(shù),PKG(Private Key Generation)以此來產(chǎn)生它的系統(tǒng)參數(shù)params和主密鑰,然后PKG將系統(tǒng)參數(shù)params予以公開,主密鑰保密。
⑵ 用戶密鑰的產(chǎn)生(Extract)。給定身份u,PKG利用系統(tǒng)參數(shù)params和主密鑰,產(chǎn)生身份u的密鑰du,且PKG能夠為所有用戶產(chǎn)生密鑰,并通過安全信道發(fā)送給用戶。
⑶ 簽名(Sign)。用戶得到密鑰,先對密鑰驗證,驗證密鑰是否由PKG產(chǎn)生。若驗證通過,則用戶利用其身份u、密鑰du、PKG的系統(tǒng)參數(shù)params來產(chǎn)生消息m的簽名σ。
⑷ 驗證(Verify)。驗證者利用PKG的系統(tǒng)參數(shù)params和用戶身份u對消息m的簽名σ驗證。
4 基于身份的安全模型
基于身份簽名的安全模型是自適應(yīng)選擇消息攻擊下存在不可偽造性安全模型的一種自然擴展。這個模型是通過挑戰(zhàn)者與攻擊者之間的攻擊游戲來進行定義的[7],攻擊游戲分為以下三個步驟:
⑴ 系統(tǒng)參數(shù)設(shè)置(Setup)。挑戰(zhàn)者(Challenger)運行系統(tǒng)參數(shù)設(shè)置算法,得到系統(tǒng)參數(shù)params和主密鑰。攻擊者得到系統(tǒng)參數(shù)params,但不能獲取主密鑰,挑戰(zhàn)者(Challenger)保密主密鑰。
⑵ 詢問(Queries)。攻擊者向挑戰(zhàn)者(Challenger)自適應(yīng)做一系列不同的詢問,詢問方式如下。
① 密鑰詢問(ExtractQueries)。攻擊者能夠獲取任何身份u對應(yīng)的密鑰。挑戰(zhàn)者(Challenger)通過運行Extract(params,u)來進行響應(yīng),并將du發(fā)送給攻擊者。
② 簽名詢問(SignQueries)。攻擊者能夠獲取任意身份u對消息m的簽名。挑戰(zhàn)者(Challenger)首先通過運行Extract(params,u)獲取身份u的私鑰du來進行響應(yīng),然后通過運行Sign(params,du,u,m)來獲取簽名σ,并將其發(fā)送給攻擊者。
⑶ 偽造(Forgery)。攻擊者輸出消息m*、身份u*、簽名σ。
若以下三個條件成立,則攻擊成功。
① Verify(params,u*,m*,σ*)=accept;
② 攻擊者未對身份u*做密鑰詢問;
③ 攻擊者未對(u*,m*)做簽名詢問。
定義3 如果攻擊者A最多運行t時間,最多做qE次密鑰詢問和qs次簽名詢問,以不小于ε的概率贏得上述游戲,則稱攻擊者A是基于身份簽名方案的(ε,t,qE,qs)偽造者。如果在基于身份的簽名方案中不存在(ε,t,qE,qs)偽造者,則稱方案是(ε,t,qE,qs)安全的。
5 結(jié)束語
數(shù)字簽名技術(shù)在目前的電子商務(wù)系統(tǒng)、電子政務(wù)系統(tǒng)中應(yīng)用非常廣泛,高效而又安全的數(shù)字簽名方案極為重要,本文對目前的研究熱點——在標準模型下可證明安全的基于身份的數(shù)字簽名方案進行研究,給出了基于身份的數(shù)字簽名方案研究所需的數(shù)學模型以及可證明性安全模型,實際應(yīng)用中能夠據(jù)此構(gòu)建安全而又高效的數(shù)字簽名方案。
參考文獻:
[1] Shamir A.Identity-based cryptosystems and signature schemes[C]//
Proceedings of the CRYPTO'1984, Santa Barbara, CA,1984:47-53
[2] A.Joux,A one-round protocol for tripartite Diffie-Hellman.
Algorithm Number Theory Symposium-ANTS IV,LNCS 1838,Springer-Verlag,Berlin,2000:385-394
[3] D.Boneh,M.Franklin.1dentity-based encryption from the Weil
pairing.Advances in Cryptology-Crypto'01,LNCS 2139.Berlin:Springer-Verlag,2001:213-229
[4] J.C.Cha, J.H.Cheon. An identity-based signature from gap
Diffie-Hellman groups. In Y Desmedt, editor, Public Key Cryptography-PKC 2003, LNCS 2567,Berlin:Springer-Verlag,2003:18-30
[5] Mihir Bellare,Chanathip Namprempre,Gregory Neven. Security
Proofs For Identity-based Identification And Signature Schemes. Extended abstract in Advances in Cryptology-Asiacrypt.
[6] WatersB. Efficient identity-based encryption without random
oracles//Cramer R ed.EUROCRYPT'2005.LNCS
[7] Paterson K G,Schuldt J C N.Efficient identity-based signatures
secire on the stamdard model// Proceedings of the ACISP'2006.LNCS 4058.Springer-Verlag,2006:207-222