徐 鵬 薛 偉
(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院 江蘇 無錫 214000)
可公開驗(yàn)證的無證書混合簽密方案
徐 鵬 薛 偉
(江南大學(xué)物聯(lián)網(wǎng)工程學(xué)院 江蘇 無錫 214000)
基于證書的簽密與基于身份的簽密對于不誠實(shí)KGC(Key Generation Center)抵抗力很差,而且基于公鑰的簽密對明文長度有所限制。無證書機(jī)制可以減少對KGC的信任,而混合加密可以加密任意長度明文。結(jié)合無證書機(jī)制和混合加密機(jī)制提出一種基于雙線性對的無證書混合簽密方案。在基于BDH難題和CDH難題上證明了方案在隨機(jī)預(yù)言模型中具有適應(yīng)性選擇密文攻擊的機(jī)密性和適應(yīng)性,以及選擇明文攻擊的不可偽造性,且方案具有可公開驗(yàn)證性。 通過效率分析,該方案計(jì)算效率高,適合應(yīng)用在帶寬有限制的情況下。
無證書 混合簽密 雙線性 可公開驗(yàn)證性
在通信過程中保密性和不可偽造性是基本的安全要求,消息傳輸時(shí)經(jīng)過加密、簽名來達(dá)到這兩個(gè)特性。1997年,Zheng[1]提出了簽密機(jī)制的概念,與傳統(tǒng)方法“先加密,后簽名”相比,簽密可以同時(shí)實(shí)現(xiàn)加密簽名,提高了計(jì)算效率并且降低了通信代價(jià)。傳統(tǒng)的公鑰簽密有證書管理復(fù)雜的問題,用戶增多,證書管理系統(tǒng)壓力也越大使得系統(tǒng)性能降低。隨后,根據(jù)Shamir[2]提出的基于身份的密碼系統(tǒng)產(chǎn)生了基于身份的簽密,其中公鑰來自用戶自己的公開信息,KGC只生成用戶私鑰,這樣就降低了證書管理系統(tǒng)的壓力。2003年AL-Riyami和Paterson[3]提出了無證書密碼學(xué),即完整私鑰由用戶自己的私鑰與KGC產(chǎn)生部分私鑰組成。
公鑰簽密的一個(gè)缺點(diǎn)是限制了單次明文輸入的長度。2005年Dent[4]提出了混合簽密的概念,其由公鑰加密與對稱加密兩部分組成,其中公鑰加密將對稱密鑰進(jìn)行封裝,而對稱密鑰則對需要傳送的任意長度明文進(jìn)行加密。由于這兩部分可以獨(dú)立進(jìn)行加密操作,所以其安全性也分別獨(dú)立。 2011年,劉文浩等[5]提出了一個(gè)高效的無證書簽密方案。隨后何德彪[7]舉出攻擊實(shí)例證明其安全性存在問題并提出了改進(jìn)方法。2012年,Singh[6]提出了一種基于身份的無證書簽密方案。 2013年,馮巧娟等[8]提出了一種高效的無證書混合簽密方案。同年,Swapna等[9]提出了一種多代理的基于橢圓曲線的身份驗(yàn)證簽密方案,能同時(shí)與多個(gè)目標(biāo)進(jìn)行簽密過程。2015年,張玉磊等[10]提出了一種可證安全的無證書聚合簽名方案??梢妼灻芊桨傅难芯恳恢睕]有間斷過。 本文首先介紹了無證書簽密的預(yù)備知識以及安全模型,隨后提出了一種基于雙線性對的可公開驗(yàn)證的無證書混合簽密方案。在隨機(jī)預(yù)言模型下,證明了方案具有機(jī)密性全性和不可偽造,并且比較了其他簽密方案,新方案安全性高,計(jì)算效率快。
1.1 無證書混合簽密
一個(gè)無證書混合簽密由密鑰封裝機(jī)制與數(shù)據(jù)封裝機(jī)制共同組成,其中對稱加密算法為符合安全性的算法可以由以下5個(gè)概率多項(xiàng)式算法組成[11]:
1) Setup:輸入為安全參數(shù)k,KGC產(chǎn)生主密鑰s和系統(tǒng)參數(shù)params。
2) Partial-Private-Key:由用戶身份ID,主密鑰s,系統(tǒng)參數(shù)params,產(chǎn)生該用戶部分私鑰DID。
3) Generate-User-Key:完整私鑰SID由兩部分組成,第一部分為KGC產(chǎn)生的部分私鑰DID,第二部分為用戶身份ID產(chǎn)生的用戶私鑰sID。
4) Signcrypt:(1) 輸入?yún)?shù)params、發(fā)送者身份IDA和密鑰對(PA,SA)、接受者的身份IDB和公鑰PB,輸出對稱密鑰K以及包含對稱密鑰與簽名狀態(tài)的封裝ω。(2) 輸入固定長度明文m,使用對稱密鑰K加密m產(chǎn)生密文c。(3) 輸出δ=(ω,c)。
5) Unsigncrypt:(1) 接收δ(ω,c)、參數(shù)params、接收者身份IDB和密鑰對(PB,SB)、發(fā)送者的身份IDA和公鑰PA,輸出對稱密鑰K。(2) 驗(yàn)證ω是否正確,是則使用對稱密鑰K解密密文c得到m;否則,輸出┴。
1.2 無證書混合簽密的安全模型
參照Huang等[12]定義的敵手模型,無證書混合簽密下有兩種類型的攻擊者A1、A2。其中不知道主密鑰s,但有將任意用戶的公鑰替換的能力,而A2知道主密鑰s,但沒有替換用戶的公鑰的能力。
定義1如果任何多項(xiàng)式有界的攻擊者A1和A2贏得以下游戲的概率可以忽略,則該方案滿足IND-CCA2安全。
以下為A1攻擊者與挑戰(zhàn)者C之間的交互游戲。
初始化:挑戰(zhàn)者C運(yùn)行Setup算法,產(chǎn)生系統(tǒng)參數(shù)params和主密鑰s;發(fā)送params給A1。
第一階段:A1可以發(fā)起以下詢問步驟。
部分私鑰詢問:A1詢問用戶的部分私鑰,C產(chǎn)生部分私鑰Di并返回給A1。
私鑰詢問:A1詢問任意用戶完整私鑰時(shí),C產(chǎn)生完整私鑰Si并返回給A1。不能詢問已被替換公鑰的用戶。
公鑰詢問:A1詢問任意用戶公鑰時(shí),C產(chǎn)生公鑰Pi并返回給A1。
公鑰替換:A1可以用指定范圍內(nèi)的值替換任意用戶的公鑰。
Signcrypt詢問:A1對(m,IDA,IDB)進(jìn)行簽密詢問時(shí),C產(chǎn)生密文δ并返回給A1。
Unsigncrypt詢問:A1對(δ,IDA,IDB)進(jìn)行解簽密詢問時(shí),C產(chǎn)生明文m或┴并返回給A1。
猜測:A1輸出猜測的α*,如果α*=α,則A1贏得了游戲,定義A1獲勝的優(yōu)勢為:
AdvIND-CCA2(A1)=|2Pr[α*-α]-1|
以下為A2攻擊者與挑戰(zhàn)者C的交互游戲。
初始化:挑戰(zhàn)者C運(yùn)行Setup算法,產(chǎn)生系統(tǒng)參數(shù)params和主密鑰s;發(fā)送params以及s給A2。
第一階段:A2除了不能進(jìn)行公鑰替換以外,進(jìn)行與定義1第一階段一樣的詢問。
猜測:A2輸出猜測的α*,如果α*=α,則A2贏得了游戲,定義A2獲勝的優(yōu)勢為:
AdvIND-CCA2(A2)=|2Pr[α*=α]-1|
定義2如果任何多項(xiàng)式有界的攻擊者A1和A2贏得以下游戲的概率可以忽略,則該方案滿足SUF-CMA安全。
以下為A1攻擊者與挑戰(zhàn)者C之間的交互游戲。
初始化:挑戰(zhàn)者C運(yùn)行Setup算法,產(chǎn)生系統(tǒng)參數(shù)params和主密鑰s;發(fā)送params給A1。
攻擊階段:A1進(jìn)行與定義1第一階段一樣的詢問。
以下為A2攻擊者與挑戰(zhàn)者C的交互游戲。
初始化:挑戰(zhàn)者C運(yùn)行Setup算法,產(chǎn)生系統(tǒng)參數(shù)params和主密鑰s;發(fā)送params以及s給A2。
攻擊階段:A2進(jìn)行與定義1中A2攻擊者與挑戰(zhàn)者C的交互游戲第一階段一樣的詢問,但不能進(jìn)行公鑰替換。
1.3 雙線性對與困難性問題
設(shè)有兩個(gè)循環(huán)群G1、G2,其中G1為階為素?cái)?shù)q的加法循環(huán)群,G2為同階的乘法循環(huán)群。P為G1的一個(gè)生成元。雙線性映射e:G1×G1→G2滿足以下性質(zhì):
2) 非退化性:e(P,P)≠1。
3) 可計(jì)算性:e(P,Q)在所有P,Q∈G1時(shí)都能計(jì)算。
本文提出的無證書混合簽密方案包括以下幾個(gè)步驟:
2) 部分私鑰產(chǎn)生:輸入用戶身份ID,由KGC計(jì)算TID=H1(ID),生成部分私鑰為DID=sTID,并通過秘密通道發(fā)送給用戶。
5) 解簽密:輸入系統(tǒng)參數(shù)params、接收者的身份IDB、私鑰(DB,sB)、發(fā)送者的身份IDA、公鑰PA和密文δ,接收者執(zhí)行以下步驟:計(jì)算U=e(TA,DB),V=e(sB,Pa,P);K=H2(R,U,V),m=Dec(K,c),g=H3(IDA,m,R)。如果等式e(P,F)=e(R,g)e(PA,R)成立,接受m;否則,輸出┴。
安全性證明分為在標(biāo)準(zhǔn)模型與隨機(jī)模型,本方案在隨機(jī)預(yù)言模型下進(jìn)行證明。
定理1如果有攻擊者A1能以不可忽略的概率攻破本方案的INC-CCA2機(jī)密性,則存在一個(gè)挑戰(zhàn)者C能破解BDH難題。
證明:假設(shè)C收到(aP,bP,cP),要計(jì)算e(P,P)abc。C將A1作為子程序并充當(dāng)上述游戲的挑戰(zhàn)者。
初始化:C運(yùn)行Setup算法,將系統(tǒng)參數(shù)params(G1,G2,e,P,P0=aP,n,H1,H2,H3)發(fā)送給A1。
第一階段:假設(shè)A1在進(jìn)行其他詢問時(shí),已經(jīng)進(jìn)行過H1詢問,且總共詢q1問次。
H2詢問:C保存一張表L2,內(nèi)容為(U,V,R,K)。收到詢問時(shí),若L2中有(U,V,R,K),則返回K;否則,返回任意K∈{0,1}n,并保存(U,V,R,K)到L2。
部分私鑰詢問:收到身份IDi的詢問時(shí),如果IDi=IDλ,IDμ,則C放棄游戲;否則,C調(diào)用H1,設(shè)置Di=liaP,返回Di并更新(IDi,Di,si,Pi)到L4。
私鑰詢問:收到身份IDi的詢問時(shí),如果IDi=IDλ,IDμ,則C放棄;否則,C從L4中獲得Si(Di,si)并返回。
挑戰(zhàn):A1選擇長度相同的兩個(gè)明文m0,m1,以及希望挑戰(zhàn)的兩個(gè)身份IDA,IDB,如果IDA≠IDλ,IDB≠IDμ,C放棄游戲;否則,選擇R∈G1,c∈{0,1}z,F(xiàn)∈G1,其中z為對稱加密算法輸出密文長度,返回δ=(c,R,F)。
猜測:可以進(jìn)行第一階段的詢問各種詢問,但不能詢問IDA,IDB的私鑰,不能對挑戰(zhàn)階段的δ進(jìn)行解簽密詢問。詢問結(jié)束后A1輸出ξ作為對mξ中ξ的猜測值。而C則從L2中隨機(jī)選擇U*作為BDH問題實(shí)例的解答,U*=e(DA,TB)=e(Dλ,Tu)=e(abP,cP)=e(P,P)abc。即如果A1能輸出對的猜測值,則C就能解決BDH難題。
定理2如果有攻擊者A1能以不可忽略的概率攻破本方案的SUF-CMA不可偽造性,則存在一個(gè)挑戰(zhàn)者C能破解BDH難題。
證明:假設(shè)C收到(aP,bP,cP),要計(jì)算e(P,P)abc。C將A1作為子程序并充當(dāng)上述游戲的挑戰(zhàn)者。
初始化:與定理1初始化相同。
第一階段:與定理1第一階段相同。
偽造:A1輸出一組偽造三元組(δ,IDA,IDB)。如果IDA≠IDλ,IDB≠IDμ,C放棄。
分析:如果A1偽造的三元組是有效的,即攻破本方案的不可偽造性,則生成對稱密鑰為K=H2(R,U*,V*),其中U*=e(DA,TB)=e(Dλ,Tμ)=e(abP,cP)=e(P,P)abc,C從L2中隨機(jī)選擇U*作為BDH問題實(shí)例的解答。
定理3如果有攻擊者A2能以不可忽略的概率攻破本方案的INC-CCA2機(jī)密性,則存在一個(gè)挑戰(zhàn)者C能破解CDH難題。
證明:假設(shè)C收到(aP,bP),要計(jì)算abP。C將A2作為子程序并充當(dāng)上述游戲的挑戰(zhàn)者。
初始化:C運(yùn)行Setup算法,將系統(tǒng)參數(shù)params(G1,G2,e,P,P0=sP,n,H1,H2,H3)和s發(fā)送給A2。
第一階段:假設(shè)A2在進(jìn)行其他詢問時(shí),已經(jīng)進(jìn)行過H1詢問,且總共詢問q1次。
H2詢問:C保存一張表L2,內(nèi)容為(U,V,R,K)。收到詢問時(shí),若L2中有(U,V,R,K),則返回K;否則,返回任意K∈{0,1}n,并保存(U,V,R,K)到L2。
私鑰詢問:收到查詢身份IDi私鑰的詢問時(shí),如果IDi=IDλ或IDμ,則C放棄游戲;否則,C從L4中獲得si并返回給A2,同時(shí)詢問L1獲得Ti,并用(IDi,sliP,si,Pi)更新L4。A2可以通過sTi得知部分私鑰。
挑戰(zhàn):A2選擇長度相同的兩個(gè)明文m0、m1,以及希望挑戰(zhàn)的兩個(gè)身份IDA、IDB,如果IDA≠IDλ,IDB≠IDμ,C放棄游戲;否則,選擇R∈G1,c∈{0,1}z,F(xiàn)∈G1,其中z為對稱加密算法輸出密文長度,返回δ=(c,R,F)。
猜測:可以進(jìn)行第一階段的詢問各種詢問,但不能詢問IDA、IDB的私鑰,不能對挑戰(zhàn)階段的δ進(jìn)行解簽密詢問。詢問結(jié)束后A2輸出ξ作為對mξ中ξ的猜測值。而C則從L2中隨機(jī)選擇V*的第一項(xiàng)作為CDH問題實(shí)例的解答,V*=e(PAsB,-)=e(abP,-)。
分析:如果A2猜測成功,則其肯定以R、U*、V*進(jìn)行過H2詢問得出IDA=IDλ,IDB=IDμ簽密時(shí)的正確密鑰K,其中V*=e(PAsB,P)。
定理4如果有攻擊者A2能以不可忽略的概率攻破本方案的SUF-CMA不可偽造性,則存在一個(gè)挑戰(zhàn)者C能破解CDH難題。
證明:假設(shè)C收到(aP,bP),要計(jì)算abP。C將A2作為子程序并充當(dāng)上述游戲的挑戰(zhàn)者。
初始化:與定理3初始化相同。
第一階段:與定理3第一階段相同。
偽造:A2輸出一組偽造三元組(δ,IDA,IDB)。如果IDA≠IDλ,IDB≠IDμ,C失??;否則,C從L2中隨機(jī)選擇V*。
猜測:如果A2在偽造階段偽造的三元組是有效的,即攻破本方案的不可偽造性。則生成對稱密鑰為K=H2(R,U*,V*),其中V*=e(PAsB,-)=e(abP,-),C從L2中隨機(jī)選擇V*的第一項(xiàng)作為CDH問題實(shí)例的解答。
可公開驗(yàn)證性:當(dāng)需要驗(yàn)證的時(shí)候,可以公開驗(yàn)證等式e(P,F)=e(R,g)e(PA,R)是否成立,其中驗(yàn)證信息不泄露任何明文和雙方私鑰,達(dá)到了公開驗(yàn)證的目的。
在運(yùn)算上,耗時(shí)時(shí)間由小到大依次為點(diǎn)乘(s),指數(shù)(e),雙線性對(p)[16]。從表1中能看出各種方案對相同長度明文簽密的密文長度大體相同。計(jì)算效率上文獻(xiàn)[13]雖然效率較高,但并沒有提供不可偽造性,在安全方面沒有得到滿足。本方案在簽密階段用了3次點(diǎn)乘運(yùn)算,2次雙線性對運(yùn)算,在解簽密階段用了2次雙線性對運(yùn)算,效率高于其他三個(gè)滿足不可偽造性的簽密方案,總體的效率較高。
表1 與其他簽密方案之間的效率比較
本文提出了一種基于混合簽密與無證書密鑰的可公開驗(yàn)證無證書混合簽密方案,可以簽密的明文長度也不受限制,并且在隨機(jī)預(yù)言模型下證明了方案具有IND-CCA2安全性與SUF-CMA不可偽造性。新方案還滿足可公開驗(yàn)證性,計(jì)算效率高,通信速度快,適合在移動支付、電子商務(wù)等需要安全,效率通信的應(yīng)用中。
[1] Zheng Y L.Digital signcryption or how to achieve cost(signature & encryption)cost(signature)+cost(encryption)[C]//Advances in 17thAnnual International Cryptology Conference(Cryptology CRYPTO’97),Berlin:Springer-Verlag,1997:165-179.
[2] Shamir A.Identity-Based Cryptosystems and Signature Schemes[J].Lecture Notes in Computer Science,1995,21(2):47-53.
[3] Al-Riyami S S,Paterson K G.Certificateless Public Key Cryptography[M]//Advances in Cryptology-ASIACRYPT 2003.Springer Berlin Heidelberg,2003:452-473.
[4] Dent A W.Hybrid Signcryption Schemes with Insider Security[C]//Information Security and Privacy,Australasian Conference,ACISP 2005,Brisbane,Australia,July 4-6,2005,Proceedings,2005:253-266.
[5] 劉文浩,許春香.無雙線性配對的無證書簽密方案[J].軟件學(xué)報(bào),2011,22(8):1918-1926.
[6] Singh K.Identity based hybrid signcryption revisited[C]//International Conference on Information Technology and E-Services,2012:1-7.
[7] 何德彪.無證書簽密機(jī)制的安全性分析[J].軟件學(xué)報(bào),2013,24(3):618-622.
[8] 馮巧娟,沙鋒.高效安全的無證書混合簽密方案[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(9):155-159.
[9] Swapna G,Reddy P V,Gowri T.Efficient identity based multi-proxy multi-signcryption scheme using bilinear pairings over elliptic curves[C]//International Conference on Advances in Computing,Communications and Informatics,2013:418-423.
[10] 張玉磊,周冬瑞,李臣意,等.高效的無證書廣義指定驗(yàn)證者聚合簽名方案[J].通信學(xué)報(bào),2015,36(2):48-55.
[11] Sun Y X,Li H.ID-based Signcryption KEM to Multiple,Recipients[J].Chinese Journal of Electronics,2011,20(2):317-322.
[12] Huang Q,Wong D S.Generic certificateless encryption in the standard model[C]//Advances in Information and Computer Security,Second International Workshop on Security,IWSEC 2007,Nara,Japan,October 29-31,2007,Proceedings,2007:278-291.
[13] 孫銀霞,李暉.高效無證書混合簽密[J].軟件學(xué)報(bào),2011,22(7):1690-1698.
[14] 盧萬誼,韓益亮,楊曉元,等.前向安全的可公開驗(yàn)證無證書混合簽密方案[J].小型微型計(jì)算機(jī)系統(tǒng),2013,34(12):2814-2817.
[15] Yin A,Liang H.On security of a Certificateless Hybrid Signcryption Scheme[J].Wireless Personal Communications,2015,85(4):1727-1739.
[16] Cao X,Kou W,Dang L,et al.IMBAS:Identity-based multi-user broadcast authentication in wireless sensor networks[J].Computer Communications,2008,31(4):659-667.
APUBLICVERIFIABLECERTIFICATELESSHYBRIDSIGNCRYPTIONSCHEME
Xu Peng Xue Wei
(CollegeofInternetofThings,JiangnanUniversity,Wuxi214000,Jiangsu,China)
Certificate-based signcryption and identity-based signcryption are poor resistance to dishonest KGC, and the public key-based signcryption limits the length of the plaintext. The certificateless mechanism can reduce rely on KGC, while hybrid encryption can encrypt any length of plaintext. Combining the certificateless mechanism and the hybrid encryption mechanism, this paper presents a certificateless hybrid signcryption scheme based on bilinear pairings. On the basis of BDH problem and CDH problem, it is proved that the scheme has the confidentiality and adaptability of adaptive chosen ciphertext attack in random oracle model, as well as the unforgeability of chosen plaintext attack, and the scheme is publicly verifiable. Through efficiency analysis, the proposed scheme is efficient and suitable for applications where the bandwidth is limited.
Certificateless Hybrid signcryption Bilinear Public verifiability
2016-12-03。國家自然科學(xué)基金項(xiàng)目(61374047)。徐鵬,碩士生,主研領(lǐng)域:信息安全。薛偉,副教授。
TP309
A
10.3969/j.issn.1000-386x.2017.11.051