陳 明
CHEN Ming
宜春學(xué)院 數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院,江西 宜春336000
College of Mathematics and Computer Science,Yichun University,Yichun,Jiangxi 336000,China
代理簽名[1](proxy signature)是原始簽名者將自己的簽名權(quán)限授予代理簽名者,然后由代理簽名者代表原始簽名者實(shí)施簽名的一種簽名算法,在電子商務(wù)、電子政務(wù)和電子投標(biāo)等領(lǐng)域有重要的研究和應(yīng)用價(jià)值。
盲簽名[2](blind signature)是一種特殊的數(shù)字簽名機(jī)制,簽名者不知道他所簽發(fā)文件的具體內(nèi)容,且不能跟蹤簽名結(jié)果。也就是說,盲簽名除了滿足不可偽造性外,還需要實(shí)現(xiàn)盲性(blindness)[3]。盲簽名被廣泛應(yīng)用于具有匿名性要求的領(lǐng)域(如電子支付和電子投票等)。結(jié)合代理簽名和盲簽名機(jī)制,Lin 等人[4]提出代理盲簽名(Proxy Blind Signature,PBS)方案。代理盲簽名方案在一些特定的場景下具有重要的應(yīng)用價(jià)值,例如,由于時(shí)空限制,簽名者不能親自履行簽名職責(zé),同時(shí)兼具匿名性要求。最近,PBS 方案得到廣泛的研究,主要分為基于證書的PBS[5]、基于身份的PBS[6-11]和基于無證書的PBS 方案[12-13]。
基于身份密碼學(xué)(Identity-Based Cryptography,IBC)[14]是一種將用戶身份標(biāo)識(shí)(ID)作為用戶公鑰的非對(duì)稱密碼體制。在IBC 系統(tǒng)中,一個(gè)可信的密鑰生成中心(Private-Key Generator,PKG)根據(jù)用戶ID 使用其主密鑰為用戶生成長期私鑰(不產(chǎn)生公鑰證書,用戶私鑰與ID 相關(guān))。IBC 算法中,系統(tǒng)直接將PKG 公鑰和用戶ID 作為算法輸入,無需使用公鑰證書,不僅降低了密碼算法的計(jì)算開銷和實(shí)現(xiàn)成本,而且去除了PKI 體制中的公鑰證書管理負(fù)擔(dān)。自Boneh 和Franklin 提出基于雙線性對(duì)理論的身份基加密方案(IBE)[15]以來,這一密碼體制得到廣泛而深入的研究。
最近,結(jié)合IBC 與PBS,研究人員提出(IBPBS)方案。部分IBPBS 方案[6-10]基于Boneh 和Franklin 的IBE 機(jī)制,采用雙線性對(duì)理論;其他IBPBS 方案[11]不采用雙線性映射理論,基于橢圓曲線的離散對(duì)數(shù)問題(Discrete Logarithm Problem,DLP),以降低方案的計(jì)算開銷。但是,上述研究成果要么沒有提出明確的形式化安全模型,要么采用隨機(jī)預(yù)言(Random Oracle,RO[16])的可證明安全模型[11]。隨機(jī)預(yù)言模型下可證明安全并不代表真實(shí)世界的安全,因?yàn)樗蕾囉诂F(xiàn)實(shí)世界無法實(shí)現(xiàn)的隨機(jī)預(yù)言假設(shè)?;跇?biāo)準(zhǔn)安全模型(無隨機(jī)預(yù)言)的IBPBS 方案還有待進(jìn)一步研究。
2006 年,Paterson 等人[17]在歐洲密碼會(huì)議上提出了一種基于身份簽名方案(PS-IBS)及其標(biāo)準(zhǔn)安全模型。就目前掌握的資料來看,PS-IBS 方案是唯一一種在標(biāo)準(zhǔn)模型下可證明安全的IBS 方案,并且被其他研究者廣泛研究,衍生出標(biāo)準(zhǔn)模型下的代理簽名[18]和(部分)盲簽名[19]等?;赑S-IBS 方案,本文構(gòu)建了一種新的IBPBS 方案,并且基于Paterson 的標(biāo)準(zhǔn)安全模型[17],結(jié)合代理簽名的敵手模型[20-21]和盲簽名的安全模型[22],形式化定義了IBPBS 方案的標(biāo)準(zhǔn)安全模型。新的IBPBS 方案在標(biāo)準(zhǔn)模型下被證明滿足不可偽造性和盲性。
這里簡要描述雙線性映射理論及困難數(shù)學(xué)問題和假設(shè),詳細(xì)內(nèi)容請(qǐng)參考文獻(xiàn)[17]。
雙線性映射:給定大素?cái)?shù)p,階為p的循環(huán)群G1和G2,g是G1的一個(gè)生成元,如果e:G1×G1→G2是從G1到G2上一個(gè)有效的雙線性映射,那么滿足:
(1)雙線性,給定u,v∈G1和任意的a,b∈?p,滿足e(ua,vb)=e(u,v)ab;
(2)非退化性,e(g,g)≠1;
(3)可計(jì)算性,任意的u,v∈G1,存在多項(xiàng)式時(shí)間算法能成功計(jì)算e(u,v)。
CDH(Computational Diffie-Hellman)問題:對(duì)于任意未知的整數(shù)a,b∈?p,給定,求解gab。
CDH 假設(shè):如果不存在多項(xiàng)式時(shí)間算法在時(shí)間t內(nèi)以至少?的概率求解CDH 問題,那么稱(?,t)-CDH 假設(shè)在G1上成立。
基于身份的代理盲簽名主要由6 個(gè)算法組成:系統(tǒng)建立(Setup)、用戶私鑰產(chǎn)生(KeyGen)、代理簽名授權(quán)(Delegate)、代理簽名密鑰產(chǎn)生(ProxyKeyGen)、代理盲簽名(ProxyBlindSign)和簽名驗(yàn)證(Verify)。簽名方案主要包含5 類用戶:私鑰生成中心PKG、原始簽名者uo、代理簽名者up和簽名請(qǐng)求者U、簽名驗(yàn)證者V。
Setup 算法由PKG 執(zhí)行,功能是產(chǎn)生和發(fā)布系統(tǒng)公開參數(shù)params,生成PKG 的主密鑰msk。
KeyGen 算法由PKG 執(zhí)行,輸入用戶ID,PKG 利用其主密鑰msk產(chǎn)生與用戶ID 相關(guān)的私鑰dID,并通過安全信道發(fā)送給用戶。
Delegate 算法由原始簽名者uo執(zhí)行,輸入代理授權(quán)書w,產(chǎn)生代理簽名授權(quán)δ。
ProxyKeyGen 算法由代理簽名者up執(zhí)行,首先驗(yàn)證所收到的代理簽名授權(quán)δ是否正確,如果正確則繼續(xù)執(zhí)行,產(chǎn)生代理簽名密鑰psk;若驗(yàn)證不正確,則重新請(qǐng)求代理授權(quán)。
ProxyBlindSign 算法是代理簽名者up和請(qǐng)求簽名用戶U之間的交互協(xié)議,分為3 個(gè)步驟:第一步是盲化(Blinding),由用戶U執(zhí)行,選擇隨機(jī)參數(shù)對(duì)待簽名消息m進(jìn)行盲化處理,產(chǎn)生盲消息m′并發(fā)送給up;第二步是盲簽名(BlindSign),由up執(zhí)行,利用psk對(duì)盲消息m′進(jìn)行簽名,并將簽名結(jié)果返回給U;第三步是去盲化(Unblinding),由用戶U執(zhí)行,產(chǎn)生最終的代理盲簽名結(jié)果σ。
Verify 算法由驗(yàn)證者V執(zhí)行,驗(yàn)證代理盲簽名的正確性,輸入,輸出“T”表示接受代理盲簽名,或者“⊥”表示拒絕。
代理盲簽名主要應(yīng)滿足:不可偽造性和盲性。
首先討論簽名不可偽造性(Existential Unforgeable against adaptively Chosen Message Attack,EUF-CMA[22])。
代理簽名方案主要包含3 類敵手[20,21]:第一類敵手AI只能訪問公開參數(shù);第二類敵手AII除可訪問公開參數(shù)外,還可訪問代理簽名者的私鑰;第三類敵手AIII除可訪問公開參數(shù)外,還可訪問原始簽名者的私鑰??梢?,AII(和AIII)蘊(yùn)含了AI敵手。也就是說,代理簽名方案應(yīng)該在AII和AIII敵手攻擊下可證明安全。
基于Paterson 的標(biāo)準(zhǔn)簽名模型[17],本文定義敵手A∈(AII,AIII)與挑戰(zhàn)者B之間的游戲(IBPBS-EUF-CMA Game)模擬IBPBS 方案的不可偽造性。
IBPBS-EUF-CMA Game
系統(tǒng)建立:B執(zhí)行系統(tǒng)建立算法,輸出系統(tǒng)公共參數(shù)params,并發(fā)送給A。
詢問:A自適應(yīng)地執(zhí)行多項(xiàng)式時(shí)間有界(次)的詢問。
-KeyGen 詢問,A提交一個(gè)用戶身份u,B返回其私鑰du;
-ProxyBlindSign 詢問,A提交原始簽名者身份uo、代理者身份up和授權(quán)書w給B,由B模擬代理者up,A模擬簽名請(qǐng)求者U,共同交互完成代理盲簽名σ。
偽造:詢問階段結(jié)束后,A輸出偽造代理盲簽名。
(1)對(duì)于AII敵手:要求AII在詢問階段從未請(qǐng)求對(duì)的KeyGen 詢問和對(duì)的ProxyBlindSign詢問。
(2)對(duì)于AIII敵手:要求AIII在詢問階段從未請(qǐng)求對(duì)的KeyGen 詢問以及對(duì)的Proxy-BlindSign 詢問。
定義1如果不存在概率多項(xiàng)式時(shí)間算法A,在時(shí)間t內(nèi)以至少?的概率贏得IBPBS-EUF-CMA 游戲,那么IBPBS 方 案 滿 足(?,t,qe,qs) -IBPBS-EUF-CMA 安 全。這里,A最多執(zhí)行了qe次KeyGen 詢問和qs次Proxy-BlindSign 詢問。
下面,討論盲性[3,22]。盲性是指簽名者不能將最終簽名結(jié)果與具體簽名實(shí)例相對(duì)應(yīng),不能實(shí)現(xiàn)對(duì)盲簽名消息的跟蹤。參考文獻(xiàn)[22],本文形式化地定義敵手A與挑戰(zhàn)者B之間的游戲(IBPBS-Blindness Game)模擬IBPBS 方案的盲性。
IBPBS-Blindness Game
系統(tǒng)建立:B執(zhí)行系統(tǒng)建立算法,輸出系統(tǒng)公共參數(shù)params,并發(fā)送給A。
準(zhǔn)備:A選擇兩個(gè)等長且可區(qū)分的消息m0和m1、原始簽名者與代理簽名者身份(uo,up)以及授權(quán)書w,提交給B。
挑戰(zhàn):B隨機(jī)選擇比特位b∈{0,1},請(qǐng)求A分別執(zhí)行對(duì)消息(mb,w)和(m1-b,w)的代理盲簽名。隨后,B執(zhí)行去盲算法,并返回對(duì)(mb,w)的最終代理盲簽名給A。
應(yīng)答:A輸出對(duì)b的猜測b′,如果等式b′=b成立,那么A贏得游戲。
A贏得IBPBS-Blindness游戲的優(yōu)勢定義為:
AdvIBPBS-Blindness(A)=|2Pr[b′=b]-1|
定義2如果不存在多項(xiàng)式時(shí)間敵手A以不可忽略的優(yōu)勢贏得IBPBS-Blindness游戲,則IBPBS機(jī)制滿足盲性。
Setup輸入安全參數(shù)k,輸出公共參數(shù)params={G1,G2,e,g,g1,g2,Q,u′,U,w′,W,m′,M,H1,H2}。其中,e:G1×G1→G2是滿足條件的雙線性映射;g是G1的生成元;α∈?q和g2∈G1由PKG 隨機(jī)選擇,g1=gα,Q=e(g1,g2)是PKG 的公鑰,是PKG 的主密鑰;PKG隨機(jī)選擇u′,w′,m′∈G1和長度分別為nu,nw和nm的向量U=(ui),W=(wi) 和M=(mi),向量中的元素ui,wi,mi∈G1;選擇抗碰撞的Hash函數(shù)H1:{0,1}*→{0,1}nw和H2:{0,1}*→{0,1}nm分別用于將授權(quán)書和待簽名消息映射到大小為nw和nm的消息空間。這里要求用戶的身份ID 統(tǒng)一為nu位二進(jìn)制串。
ProxyBlindSign用戶U請(qǐng)求代理簽名者up對(duì)消息m進(jìn)行代理盲簽名。
夏冰一邊往后門走,一邊回頭看,不想踢翻了一個(gè)花盆,花盆掉進(jìn)水池里,激起一股水花,一聲悶響在靜夜里格外刺耳。“誰?”夏冰聽得身后方向傳來一聲詢問,心里一驚,立即矮在樹影里,緊握手槍,渾身冒汗。過了好一會(huì)兒,并不見人,才小心地站起來,四處打量。
輸出對(duì)m的代理盲簽名s=(s1,s2,s3,s4,s5,s6)。
Verify驗(yàn)證者V驗(yàn)證等式:
其中,mo、mp、?、θ如前所述。若等式成立則接受簽名;否則拒絕。
本文方案的正確性由下列等式證明:
等式(1)表明用戶私鑰有效。
等式(2)表明代理簽名授權(quán)與驗(yàn)證有效。
證明假設(shè)存在(?,t,qe,qs)-forgerA,將構(gòu)造一個(gè)算法B利用A,在時(shí)間t′內(nèi)以至少?′的概率解決CDH問題。下面模擬B與A之間的游戲。
系統(tǒng)建立:B設(shè)置lu=2(qe+qs)和lm=2qs,隨機(jī)選擇整數(shù)ku,km和kw,滿足條件:0 ≤ku≤nu、0 ≤km≤nm、0 ≤kw≤nw。對(duì) 于 給 定 的(qe,qs,nu,nm,nw),假 設(shè) 有l(wèi)u(nu+1)<q、lm(nm+1)<q、lw(nw+1)<q。B隨機(jī)選擇整數(shù)x′←?lu,度為nu的向量X=(xi),其中,X的每個(gè)元素xi滿足xi←?lu。類似的,B構(gòu)造參數(shù)z′←?lm和Z=(zj),以及y′←?lw和Y=(yt)。隨后,B隨機(jī)選擇s′,v′,d′←?p以及度為nu,nm,nw的向量S=(si),V=(vj)和D=(dt),分別滿足si,vj,dt←?p。B定義三組函數(shù)如下:
這里,μ∈{1,2,…,nu}表示用戶標(biāo)識(shí)u中比特值等于1 的位置i的集合;θ∈{1,2,…,nm}表示H2(m) 中比特值等于1 的位置j的集合;??{1,2,…,nw}表示H1(w)中比特值等于1的位置t的集合。然后,B構(gòu)建公共參數(shù):
最后,B將公共參數(shù){G1,G2,e,g,g1,g2,u′,U,w′,W,m′,M,H1,H2}發(fā)給A。這里,U=(ui),M=(mj) 和W=(wt),與文獻(xiàn)[17]相同,存在下列等式:
從A的視角來看,所有公共參數(shù)在空間上均勻分布。這里存在CDH 問題:。
詢問:A自適應(yīng)地執(zhí)行多項(xiàng)式時(shí)間有界(次)的詢問。
用戶私鑰滿足下列等式:
-ProxyBlindSign 詢問,A提交原始簽名者身份uo、代理簽名者身份up和授權(quán)書w,自己持有m。
如果F(uo)=0 modp∧T(ω)=0 modp,或者F(up)=0 modp∧T(ω)=0 modp,B終止游戲(其中ω=H1(w));
如果F(uo)≠0 modlu∧F(up)≠0 modlu,B首先執(zhí)行KeyGen 詢問計(jì)算do和dp,然后按照Delegate 算法和ProxyKeyGen 算法計(jì)算代理簽名密鑰;
如果F(uo)=0 modp∧T(ω)≠0 modlw,B不能計(jì)算do,1,按如下方式計(jì)算代理簽名授權(quán),首先隨機(jī)選擇ro∈?p和rwo∈?p,然后計(jì)算:
如果F(up)=0 modp∧T(ω)≠0 modlw,B不能計(jì)算dp,1,首先執(zhí)行KeyGen 詢問計(jì)算do,按如下方式計(jì)算代理簽名密鑰:隨機(jī)選擇rp∈?p和rwo∈?p,計(jì)算:
可以驗(yàn)證,psk=(psk1,psk2,psk3,psk4,psk5)是一個(gè)有效的代理簽名密鑰;
然后,由B模擬代理簽名者up,A模擬簽名請(qǐng)求者U,按照第3 章中的ProxyBlindSign 算法計(jì)算代理盲簽名σ=(σ1,σ2,σ3,σ4,σ5,σ6)。
偽造:查詢階段結(jié)束以后,A輸出原始簽名者、代理簽名者、授權(quán)書w*和消息m*的代理盲簽名結(jié)果。這里,要求,并且,如果,那么A必然詢問過的私鑰。如果上述條件不滿足,B終止游戲(其中ζ*=H2(m*),ω*=H1(w*))。
作為對(duì)CDH問題的回答。
作為對(duì)CDH 問題的回答。
游戲模擬到此結(jié)束,如果游戲沒有終止,從以下幾個(gè)方面分析B利用A求解CDH問題的概率。如果游戲沒有終止,ProxyBlindSign 詢問分為:(1)F(uo)≠0 modlu∧F(up)≠0 modlu;(2)F(uo)=0 modp∧T(ω)≠0 modlw;(3)F(up)=0 modp∧T(ω)≠0 modlw,3 個(gè)部分。
Ai F(ui)≠0 modlu
A*F(u*)=0 modp
Bj T(wj)≠0 modlw
B*T(w*)=0 modp C*K(m*)=0 modp
B沒有終止游戲的概率為:
因此,如果游戲沒有被終止,那么:
從算法的時(shí)間復(fù)雜度來看,在KeyGen 詢問和ProxyBlindSign 詢問中分別執(zhí)行了O(nu)和O(2nu+nw)次乘法運(yùn)算以及O(1)和O(1)次指數(shù)運(yùn)算。令ρ和τ分別表示乘法運(yùn)算和指數(shù)運(yùn)算時(shí)間,那么算法B的時(shí)間復(fù)雜度為:
t′=t+O((qenu+qs(2nu+nw))ρ+(qe+qs)τ)
證畢。
定理2本文IBPBS 方案滿足盲性。
證明本文采用與文獻(xiàn)[22]類似的證明方案。設(shè)A是由代理簽名者up控制的概率多項(xiàng)式時(shí)間算法,對(duì)于給定的(uo,up,mb,m1-b,w)、有效的代理盲簽名(σ1,σ2,σ3,σ4,σ5,σ6)和簽名發(fā)布中產(chǎn)生的中間結(jié)果(這里,b,i∈{0,1}),根據(jù)ProxyBlindSign 算法,有??紤]如下等式:
可見,盲因子(x,y)在代理盲簽名的生成過程中總是存在且獨(dú)立于A的視角,因此,A贏得IBPBS-Blindness游戲的優(yōu)勢是可忽略的。證畢。
基于Paterson 等人提出的標(biāo)準(zhǔn)模型下的身份簽名方案,提出一種基于身份的代理盲簽名方案。在Paterson的標(biāo)準(zhǔn)安全模型基礎(chǔ)上,參考代理簽名的敵手模型和盲簽名的安全模型,本文形式化定義了基于身份代理盲簽名的標(biāo)準(zhǔn)安全模型。通過安全模型的規(guī)約,本文方案被證明滿足不可偽造性和盲性,具有可證明安全性。
[1] Mambo M,Usuda K,Okamoto E.Proxy signature for delegating signing operation[C]//Proc of the 3rd ACM Conf on Computer and Communications Security.New York:ACM Press,1996:48-57.
[2] Chaum D.Blind signatures for untraceable payments[C]//Proceeding of the Crypto’82,Plenum,NY,1982:199-203.
[3] Abe M,F(xiàn)ujisakI E.How to date blind signatures[C]//Proceeding of the Cryptology-Aisa Crypt’96.Berlin Heidelberg:Springer-Verlag,1996:244-251.
[4] Lin W D,Jan J K.A security personal learning tools using a proxy blind signature scheme[C]//Proceedings of International Conference on Chinese Language Computing,Illinois,USA,2000:273-277.
[5] Lal S,Awasthi A K.Proxy blind signature scheme[J].Journal of Information Science and Engineering,2003,72.
[6] Dong Z,Zheng H,Chen K,et al.ID-based proxy blind signature[C]//Proceedings of the 18th International Conference on Advanced Information Networking and Applications(AINA 2004),2004,2:380-383.
[7] Lang W M,Yang Z K,Cheng W Q,et al.A new id-based proxy blind signature scheme[J].Wuhan University Journal of Natural Sciences,2005,10(3):555-558.
[8] Yang M,Wang Y.A new efficient ID-based proxy blindsignature scheme[J].Journal of Electronics(China),2008,25(2):226-231.
[9] Majhi B,Sahu D K,Subudhi R N.An efficient ID based proxy signature,proxy blind signature and proxy partial blind signature[C]//Proc Int Conf Information Technology(ICIT’08),LasVegas,NV,USA,2008:19-23.
[10] Yu Y,Zheng S,Yang Y.ID-based blind signature and proxy blind signature without trusted PKG[M]//Advances in Computer Science and Engineering.Berlin Heidelberg:Springer,2009:821-824.
[11] Tan Z.Efficient pairing-free provably secure identity- based proxy blind signature scheme[J].Security and Communication Networks,2013,6(5):593-601.
[12] Zhang B,Xu Q.Certificateless proxy blind signature scheme from bilinear pairings[C]//Proceedings of the 2nd International Workshop on Knowledge Discovery and Data Mining(WKDD 2009),2009:573-576.
[13] 何濱,杜偉章.前向安全無證書代理盲簽名方案的分析與改進(jìn)[J].計(jì)算機(jī)工程與應(yīng)用,2013,49(22):104-109.
[14] Shamir A.Identity-based cryptosystems and signature schemes[C]//Proceedings of the CRYPTO 1984.Berlin Heidelberg:Springer,1985:47-53.
[15] Boneh D,F(xiàn)ranklin M.Identity-based encryption from the weil pairing[C]//Proceedings of the CRYPTO 2001.Berlin Heidelberg:Springer,2001:213-229.
[16] Canetti R,Goldreich O,Halevi S.The random oracle methodology,revisited[J].Journal of the ACM(JACM),2004,51(4):557-594.
[17] Paterson K G,Schuldt J C N.Efficient identity-based signatures secure in the standard model[C]//Proceeding of the Information Security and Privacy(ACISP 2006),Berlin Heidelberg:Springer-Verlag,2006:207-222.
[18] 谷科,賈維嘉,王四春,等.標(biāo)準(zhǔn)模型下的代理簽名:構(gòu)造模型與證明安全性[J].軟件學(xué)報(bào),2012,23(9):2416-2429.
[19] 張延紅,陳明.標(biāo)準(zhǔn)模型下增強(qiáng)的基于身份部分盲簽名[J].四川大學(xué)學(xué)報(bào):工程科學(xué)版,2014,46(1):95-101.
[20] Huang X,Mu Y,Susilo W,Wu W.Proxy signature without random oracles[C]//Proc of MSN 2006,13-15 December,2006.Berlin Heidelberg:Springer,2006:473-484.
[21] Boldyreva A,Palacio A,Warinschi B.Secure proxy signature schemes for delegation of signing rights[J].Journal of Cryptology,2012,25(1):57-115.
[22] Pointcheval D,Stern J.Security arguments for digital signatures and blind signatures[J].Journal of Cryptology,2000,13(3):361-396.