袁 科 程自偉 楊龍威 閆永航 賈春福*③ 何 源
①(河南大學(xué)計算機與信息工程學(xué)院 開封 475004)
②(河南省空間信息處理工程研究中心 開封 475004)
③(南開大學(xué)網(wǎng)絡(luò)空間安全學(xué)院 天津 300350)
④(河南大學(xué)國際教育學(xué)院 鄭州 450046)
現(xiàn)實生活中,存在著許多類似的應(yīng)用場景:發(fā)送方完成消息的加密操作,并提前發(fā)送給接收方,但接收方只能在未來指定的時間解密,比如密封投標(biāo)、影視作品定期上映等。如何為這些具有時間特性的應(yīng)用場景提供安全解決方案?具有“向未來發(fā)送消息”特性的密碼原語,即時控性加密[1](Timed-Release Encryption, TRE)技術(shù)可以解決這一問題。TRE是一種融入時間因素的密碼學(xué)技術(shù),密文只能在未來時間被解密,并且能夠與已有應(yīng)用問題的密碼學(xué)方案進行結(jié)合,為其提供時間特性。
最新研究表明,盡管目前TRE構(gòu)造已經(jīng)擴展到物理方法[2,3]和區(qū)塊鏈技術(shù)[4–6],但TRE構(gòu)造方案大多數(shù)仍然都是基于數(shù)學(xué)問題[1,7–16],比如基于雙線性迪菲·赫爾曼(Bilinear Diffie-Hellman, BDH)問題、基于雙線性迪菲·赫爾曼可逆(Bilinear Diffie-Hellman Inversion, BDHI)問題、基于雙線性迪菲·赫爾曼指數(shù)(Bilinear Diffie-Hellman Exponent,BDHE)問題。TRE技術(shù)最早由May[6]提出,早期的TRE方案通過解決某些特定規(guī)模的非并行計算問題,比如基于因式分解困難問題[1,17],但暴露的無法準(zhǔn)時解密問題亟需研究者解決。為了解決接收方能夠準(zhǔn)時解密的問題,研究者的重點主要集中在代理方法上。即在TRE方案中考慮引入一個第三方實體,也稱為時間服務(wù)器[11],可以為接收方提供一個精確的公開時間參考。時間服務(wù)器方式分為交互式和非交互式兩種。在交互式時間服務(wù)器方式中,當(dāng)TRE系統(tǒng)用戶增多時,時間服務(wù)器可能會面臨遭受拒絕服務(wù)攻擊[18]的安全風(fēng)險。此外,基于交互式時間服務(wù)器方式構(gòu)造的TRE方案解密工作需要和時間服務(wù)器完成雙向交互通信過程,可能會泄露發(fā)送方[1]、接收方[11]或消息相關(guān)的隱私信息。
為了解決交互式時間服務(wù)器方式的隱私泄露問題,非交互式時間服務(wù)器方式為進一步研究的目標(biāo)。非交互式時間服務(wù)器方案初始基于2次剩余問題[19]構(gòu)造,消息的安全性依賴于時間服務(wù)器,該方案抵抗攻擊能力較弱。后續(xù)的基于非交互式時間服務(wù)器TRE方案,解密工作需要具備時間陷門(時間服務(wù)器對解密時間進行“類似加密”操作所得[20])和私鑰(接收方擁有)才能完成。但是TRE方案均依賴單一時間服務(wù)器發(fā)布的時間陷門進行解密,假設(shè)時間服務(wù)器遭到攻擊者/不誠實的接收方的腐敗,提前非法獲取時間陷門解密,那么就無法確保消息的機密性,而容易凸現(xiàn)一定的安全隱患。
針對上述問題,本文重新審視基于非交互式時間服務(wù)器方式構(gòu)造的TRE模型,將時間服務(wù)器數(shù)量由1個增加到N個,并構(gòu)造一種簡單高效的基于BDH問題的可證明安全的多時間服務(wù)器(Multiple Time Servers TRE, MTSTRE)方案。在多時間服務(wù)器的場景下,對不誠實的接收方而言,需要腐敗全部的時間服務(wù)器,而不是僅僅只需腐敗一個時間服務(wù)器就可以解密。類似地,對攻擊者而言,本文不考慮其是否已經(jīng)獲取到合法接收方的私鑰情況,主要考慮獲取時間陷門方面。如果適當(dāng)設(shè)置時間服務(wù)器數(shù)量N值,N值越大,不誠實的接收方/攻擊者所需考慮的賄賂成本也越大。
因此,相對于單時間服務(wù)器TRE方案來說,MTSTRE方案的安全性更強。但已有多時間服務(wù)器Chan等人[9]、Hristu-Varsakelis等人[10]的TRE方案既沒有給出安全性分析,也沒有給出相關(guān)的可證明安全的證明。為此,本文將給出所提方案是抗不可區(qū)分、發(fā)布時間可選、自適應(yīng)選擇明文攻擊(INDistinguishable, selective release Time, adaptive Chosen-Plaintext Attack, IND-sT-CPA)的安全性證明。
定義1有限域上的離散對數(shù)問題(Discrete Logarithm Problem, DLP)。假設(shè)p,q為兩個素數(shù),G2={gk:0≤k ≤q ?1}為 素 域Zp上 階 為q的 循 環(huán)乘法群,g為G2中的一個生成元。如果給定元素y ∈G2, 求解整數(shù)x∈Zq使得y=gx的問題,稱為有限域上的離散對數(shù)問題。
定義2有限域橢圓曲線上的離散對數(shù)問題(Elliptic Curve Discrete Logarithm Problem,ECDLP)。假設(shè)p,q為兩個素數(shù),G1={nα:0≤n ≤q ?1}為橢圓曲線群
定義3 雙線性對。假設(shè)G1為有限域橢圓曲線上的循環(huán)加法群,G2為有限域上的循環(huán)乘法群,G1,G2群 階均為素數(shù)q。使用雙線性對技術(shù),可以將有限域橢圓曲線上的循環(huán)加法群的困難問題規(guī)約為有限域上的循環(huán)乘法群的困難問題。雙線性映射為e:G1×G1→G2,滿足:
(1)雙線性性質(zhì)。對于任意P,Q,R ∈G1,有:e(P+Q,R)=e(P,R)e(Q,R),e(P,Q+R) =e(P,Q)e(P,R)。
(2)非退化性。如果g是G1的生成元,則e(g,g)是G2的生成元。
(3)可計算性。對于任意的P,Q ∈G1,存在有效計算e(P,Q)的算法。

本方案的系統(tǒng)模型如圖1所示,包含的參與實體有發(fā)送方、N個時間服務(wù)器和接收方。發(fā)送方設(shè)置指定的解密時間T,對機密文件M加密并提前將對應(yīng)的密文C發(fā)送給接收方。在指定的解密時間T到來時,N個時間服務(wù)器會周期性地發(fā)布各自的時間陷門。在指定的解密時間T時,接收方獲得N個時間服務(wù)器的時間陷門,再結(jié)合自己私鑰生成的時間陷門來解密密文C。

圖1 系統(tǒng)模型







本節(jié)給出上述基于隨機預(yù)言機模型的MTSTRE方案是抗自適應(yīng)選擇明文攻擊的語義安全證明。







如果系統(tǒng)用戶(接收方)無法正常解密時,可以通過計算各個雙線性對運算值e(siP,H1(T))和相應(yīng)的e(P,siH1(T)) 是 否相等,其中1≤i ≤N,來驗證哪一個時間服務(wù)器的時間陷門出現(xiàn)問題。而Chan等人[9]方案設(shè)計不同,在解密時都必須首先驗證時間服務(wù)器的時間陷門真實性,因此,效率較低。MTSTRE方案與Chan等人[9]方案和Hristu-Varsakelis等人[10]方案進行效率對比,如表2所示。
由表2可以看出,在Chan等人[9]方案中,完成整個加解密過程的計算成本相對較高。相比之下,MTSTRE方案比Hristu-Varsakelis等人[10]方案的計算效率略有提高。

表2 多時間服務(wù)器TRE方案相對耗時表
以TRE典型應(yīng)用場景–密封投標(biāo)為例說明實際應(yīng)用場景中的效率情況。假設(shè)招標(biāo)方A對某一項目進行招標(biāo),規(guī)定在“2023年1月1日上午8點整”開標(biāo),5個投標(biāo)方(B1,B2,B3,B4,B5)參與投標(biāo),并設(shè)置時間服務(wù)器的數(shù)目為10個。為確保本次參與競標(biāo)的公平性以及5個投標(biāo)方標(biāo)書的安全性,招標(biāo)方A采用本文所提的MTSTRE方案。同樣采用表1中相對耗時的統(tǒng)計方法,那么,在Enc階段,總計算成本為31.304。在TS_Rel階段,總計算成本為1.3214。在Dec階段,總計算成本為19.697,如表3所示。

表1 其他基本運算相對于PMec運算的相對耗時統(tǒng)計表

表3 密封投標(biāo)應(yīng)用場景相對耗時統(tǒng)計表(PMT)
本節(jié)將通用公鑰加密GPKE方案[20]與MTSTRE方案進行結(jié)合,并且給出如下定義7通用多時間服務(wù)器時控性加密(Generic MTSTRE, GMTSTRE)方案的形式化定義。
定義7 GMTSTRE方案由發(fā)送方、接收方和N個時間服務(wù)器組成,涉及的算法6元組表示為ζGMTSTRE={Setup,TS_KeyGen,User_KeyGen,En c,TS_Rel,Dec},具體如下:
Setup(1λ)是一種初始化的概率算法。輸入安全參數(shù)λ,生成系統(tǒng)通用的公共參數(shù)p arams。

在GMTSTRE方案形式化定義的基礎(chǔ)上,給出相應(yīng)的構(gòu)造方法,過程如下:


為了解決目前基于非交互式時間服務(wù)器方式構(gòu)造的TRE方案依賴于單時間服務(wù)器進行解密的安全問題,本文提出一種簡單高效的多時間服務(wù)器TRE方案MTSTRE。在指定解密時間時,多個時間服務(wù)器計算并發(fā)布時間陷門,用戶使用所有的時間陷門來完成解密工作。效率分析表明,與已有最有效的多時間服務(wù)器TRE方案相比,所提具體方案效率略高,且本文給出了嚴(yán)格抗自適應(yīng)選擇明文攻擊的安全性證明。
本文所提方案還存在一些問題有待解決,比如如何確保多時間服務(wù)器TRE模型的實用性更強,避免少量時間服務(wù)器出現(xiàn)宕機等故障而拒絕發(fā)布時間陷門。因此,后續(xù)工作將繼續(xù)探索TRE和其他密碼技術(shù)的組合使用,構(gòu)造用戶身份信息對時間服務(wù)器匿名和具有魯棒性的多時間服務(wù)器TRE模型。