◆楊喜艷
(塔里木大學(xué)信息工程學(xué)院 新疆 843300)
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,伴隨著信息輸入,數(shù)據(jù)傳輸,網(wǎng)絡(luò)資源共享等通信安全問(wèn)題的產(chǎn)生,人們?cè)絹?lái)越注重信息數(shù)據(jù)的機(jī)密性和認(rèn)證性。能保證密文的認(rèn)證性和機(jī)密性的最為有效的措施為數(shù)字簽密[1-2]。目前,簽密方案多使用公鑰加密技術(shù)和對(duì)稱加密技術(shù),但兩種技術(shù)分別在加密速度和安全性方面有局限。因此,實(shí)際通信時(shí),多采用混合加密[3-4]或者混合簽密[5-10]的方法?;旌霞用馨€加密的密鑰封裝機(jī)制(key encapsulation mechanism,KEM)及對(duì)稱密鑰加密的數(shù)據(jù)封裝機(jī)制(data encapsulation mechanism,DEM)。2009 年,混合加密技術(shù)被Li,Shirase 和Takagi[11]用于構(gòu)建基于身份簽密方案中,同時(shí),還根據(jù)BLMQ 方案[12]構(gòu)建了基于身份簽密KEM 實(shí)例。2013 年,Li,Shirase 和Takagi[13]將簽密TKEM 用于無(wú)證書(shū)領(lǐng)域,展示了無(wú)證書(shū)簽密方案中可運(yùn)用混合加密技術(shù)。為了證明構(gòu)造的合理性,他們還根據(jù)BF 方案[14]構(gòu)造出了一個(gè)無(wú)證書(shū)簽密TKEM。此后,諸多學(xué)者對(duì)基于身份的混合簽密[15-17]和無(wú)證書(shū)混合簽密[18-21]進(jìn)行了研究。
但是,在上述的混合簽密方案中,用戶是處于同一個(gè)密碼體制中的。隨著大數(shù)據(jù)和云計(jì)算的發(fā)展,跨平臺(tái)的應(yīng)用和操作越來(lái)越普遍。因此,適用于在不同密碼體制間通信的異構(gòu)密碼系統(tǒng)就需要被考慮。近年來(lái),許多學(xué)者研究了異構(gòu)簽密[22-27]。
在上述異構(gòu)簽密方案和混合簽密方案中,簽名人在對(duì)明文簽名時(shí)是已知明文內(nèi)容的。但在某些特殊的應(yīng)用環(huán)境中,消息內(nèi)容對(duì)于簽名人需要具有盲性。在1982 年,盲簽名被Chaum 首次提出。由此以后,諸多學(xué)者研究了盲簽名[28-33],一些學(xué)者還將盲簽名擴(kuò)展到了盲簽密,提出了許多盲簽密方案[34-38]。但現(xiàn)在可查閱的盲簽密方案中通信雙方采用同樣的密碼體制,這是不現(xiàn)實(shí)的。因此,本文構(gòu)建的方案生成系統(tǒng)主密鑰方式靈活,為用戶提供了更多可能性。同時(shí),本文方案采用混合簽密技術(shù),能夠加密任意大消息,另外本文方案是部分盲簽密,不僅滿足所有盲簽密的特性,而且選擇部分明文消息進(jìn)行盲簽名,更加有利于實(shí)現(xiàn)消息擁有者的隱私保護(hù)。并在ROM 下,驗(yàn)證本文方案基于CDH 問(wèn)題及DL 問(wèn)題的保密、不可偽造、盲、不可追蹤等特性。通過(guò)理論分析和數(shù)值實(shí)驗(yàn)分析,本文方案的計(jì)算效率明顯更高,通信成本明顯更低,所以本文方案具有更高的可行性。
定義 1.計(jì)算Diffie-Hellman(Computation Diffie-Hellman,CDH)問(wèn)題,已知 (P,aP,bP)∈G1,對(duì)任意未知的a,b∈,計(jì)算abP∈G1。
定義 2.離散對(duì)數(shù)(Discrete Logarithm,DL)問(wèn)題,已知(P,aP)∈G1,計(jì)算a∈。
在基于異構(gòu)密碼系統(tǒng)無(wú)雙線性對(duì)的混合部分盲簽密方案中,主要考慮兩種攻擊者A1,A2:A1對(duì)s2是未知的,但能更換用戶公鑰;A2對(duì)s2已知,但不可替換用戶公鑰。因此,A1,A2分別應(yīng)具有在選取密文攻擊下的不可區(qū)分和明文攻擊下的不可偽造。
系統(tǒng)建立算法.設(shè)G1,G2均為階是q的循環(huán)群,P為G1的生成元。選擇三個(gè)hash 函數(shù):H3:{0,1}*→G1。(E,D)為對(duì)稱加密技術(shù)中的加密及解密算法。s1,s2為系統(tǒng)主密鑰,PKG 保密s1,并計(jì)算,KGC 保密s2,并計(jì)算P2=s2P。系統(tǒng)參數(shù)為:params={G1,G2,q,P,n,E,D,H1,H2,H3}。
IBC 密鑰提取算法.寫(xiě)入用戶身份IDA,PKG 產(chǎn)生用戶私鑰SA=s1QA,其中QA=H1(IDA)。
CLC 密鑰提取算法.該算法分為以下三步:
(1)輸入用戶身份IDB,KGC 計(jì)算用戶部分私鑰DB=s2QB,其中QB=H1(IDB),最后通過(guò)安全方式發(fā)給用戶;
(2)用戶隨機(jī)選擇xB∈;
(3)用戶計(jì)算公鑰PB=x BP和完整私鑰SB=x B DB。
部分盲簽密.M是消息擁有者,A是部分盲簽名者,c*是公共信息,m是待簽密的消息,部分盲簽密算法如下:
(1)A隨機(jī)選擇r∈,計(jì)算R1=rQA,R2=rP,并將 (R1,R2)發(fā)送給M;
(2)M隨機(jī)選擇a∈,計(jì)算U1=aR1,U2=aR2,U3=a-1QA,h=H2(m,c*,U1,U2),并將h發(fā)送給A;
(3)A計(jì)算h*=H2(h,c*,IDA,IDB),S=(r+h*)SA,并將S發(fā)送給M;
(4 )M計(jì) 算S*=a-1S,K=H3(P2QB,P2QB PB),c=DEM.Enc(K,m);
(5)M輸出密文σ= (c,S*,U1,U2,U3,R1,R2)。
解簽密.檢驗(yàn)等式P1S*=(R2+Ph*)U3是否成立。若不成立,輸出⊥,否則,解簽密算法如下:
(1)B計(jì)算K=H3(DBP,S BP2);
(2)B計(jì)算m=DEM.Dec(K,c);
(3)B輸出m。
假設(shè)除了消息擁有者M(jìn)和接收者B之外的任意第三方(假設(shè)是部分盲簽名者A)能夠從密文c中恢復(fù)出消息m。因?yàn)樵诓糠置ず灻茈A段,M給A的是關(guān)于m的hash值,A只能通過(guò)密文c恢復(fù)出m,所以A必須通過(guò)計(jì)算對(duì)稱密鑰K恢復(fù)m。但是A僅僅知道(SA,R1,R2,r,h,S,h*),而不知道B的秘密值xB,因此A通過(guò)K不可能恢復(fù)出m,因?yàn)锳需要解決離散對(duì)數(shù)困難問(wèn)題。由此可見(jiàn),除了M和B外,其他用戶不可能知道m(xù)。
在本文方案中,即使A擁有r和SA,A需解決的困難問(wèn)題是單向散列函數(shù),所以通過(guò)h=H2(m,c*,U1,U2)不能恢復(fù)m,且A無(wú)法得知M選擇的a,因此A不可偽造部分盲簽密。
如果B稱 (c,S*,U1,U2,U3,R1,R2)是來(lái)自M的密文,B想要通過(guò)S*=a-1S和S=(r+h*)SA恢復(fù)出a和r,并偽造 (U1,U2,U3,R1,R2),即使B在信道上獲取SA和h,但是B不知道公共信息*c,B需解決的是離散對(duì)數(shù)困難問(wèn)題和單向散列函數(shù)困難問(wèn)題,所以B不能通過(guò)S*=a-1S和S=(r+h*)S A恢復(fù)出a和r。因此B不可偽造部分盲簽密。
如果M想要偽造一個(gè)合法的部分盲簽密,首先,M不知道A的私鑰SA,其次,M無(wú)法得知r,即使M在信道上獲取SA,M需解決的是離散對(duì)數(shù)困難問(wèn)題,所以M不可通過(guò)R1=rQA,R2=rP恢復(fù)出r。因此M不可偽造部分盲簽密。
如果除M,,A B外的其他人想偽造合法的部分盲簽密,即使他在公開(kāi)信道上截獲 (S A,DB,R1,R2,h,S,U1,U2,U3,c,S*),但他對(duì)(s1,s2,x B,S B,r,a)是未知的,因此他不能偽造部分盲簽密。
盲性指的是部分盲簽名者在簽密過(guò)程中對(duì)消息是不可見(jiàn)的。在部分盲簽密算法中,M隨機(jī)選擇a∈,計(jì)算U1=aR1,U2=aR2,U3=a-1QA,h=H2(m,c*,U1,U2),并將h發(fā)送給A。顯而易見(jiàn),A不知道需要簽名的消息內(nèi)容。
不可追蹤性指的是部分盲簽名者不能通過(guò)需要簽名的內(nèi)容追蹤到密文。如果B公開(kāi)部分盲簽密的密文(c,S*,U1,U2,U3,R1,R2),即使A保留原始的簽密數(shù)據(jù) (R1,R2,h,h*,S),但是A不能通過(guò)密文消息獲得數(shù)據(jù) (U1,U2,U3,S*,c,K)。因此,方案滿足不可追蹤性。
本節(jié)通過(guò)理論和數(shù)值實(shí)驗(yàn)對(duì)效率進(jìn)行分析。首先,進(jìn)行理論分析。文獻(xiàn)[34]、[35]、[36]均為盲簽密方案,本節(jié)將對(duì)文獻(xiàn)[34]、[35]、[36]及該文提出的方案的效率進(jìn)行比較,主要比較對(duì)運(yùn)算(P),指數(shù)運(yùn)算(EP),點(diǎn)乘運(yùn)算(MP),異或運(yùn)算(OP)。由表1 可知,在簽密階段,文獻(xiàn)[34]的方案比本文方案多7 個(gè)EP,2 個(gè)MP,2 個(gè)OP,文獻(xiàn)[35]的方案比本文方案多1 個(gè)P,4 個(gè)EP,1 個(gè)OP,但是本文方案比文獻(xiàn)[35]的方案多4 個(gè)MP。文獻(xiàn)[36]的方案比本文方案多1 個(gè)P,1 個(gè)EP,但是本文方案比文獻(xiàn)[36]的方案多1 個(gè)MP。在解簽密階段,文獻(xiàn)[34]的方案比本文方案多6 個(gè)EP和2 個(gè)OP,文獻(xiàn)[35]的方案比本文方案多3 個(gè)P,1 個(gè)OP,但是本文方案比文獻(xiàn)[35]的方案多5 個(gè)MP。文獻(xiàn)[36]的方案比本文方案多3 個(gè)P,但是本文方案比文獻(xiàn)[36]的方案多6 個(gè)MP。由此可見(jiàn),本文方案的計(jì)算效率明顯比文獻(xiàn)[34]、[35]、[36]更高。
表1 計(jì)算效率
其次,進(jìn)行數(shù)值實(shí)驗(yàn)分析,采用C 語(yǔ)言的PBC 庫(kù)對(duì)本文方案仿真模擬。在模擬過(guò)程中,群G1,G2的取1024bit,參數(shù)為a型橢圓曲線y2=x3+xmodq,通信者身份及消息取160bit 隨機(jī)值。模擬環(huán)境配置如表2 所示。
表2 環(huán)境配置
為比較計(jì)算效率,對(duì)文獻(xiàn)[36]的方案做相同仿真。仿真結(jié)果取60次的平均值,如圖1 所示。因文獻(xiàn)[34]、[35]明顯比文獻(xiàn)[36]和本文方案的計(jì)算效率高,因此無(wú)需對(duì)文獻(xiàn)[34]、[35]做仿真。
由圖1 可以清楚看出本文方案的計(jì)算效率明顯比文獻(xiàn)[36]更高,因此本文方案的可行性更高。
圖1 計(jì)算效率
在本文方案中,在不同密碼體制中生成系統(tǒng)主密鑰方式靈活,而且本文是部分盲簽密,滿足所有盲簽密的特征。另外,對(duì)于任意大消息的簽密,本文采用混合簽密完成。同時(shí),在ROM 下,本文方案有機(jī)密、不可偽造、盲、不可追蹤等特性。經(jīng)理論分析和數(shù)值實(shí)驗(yàn)顯示本文方案更適用于實(shí)際環(huán)境。