劉雄飛,于志遠(yuǎn),包釗源,李佩峰,顧樂威
(1.中國科學(xué)院 空天信息創(chuàng)新研究院,北京 100190;2.中國人民解放軍92496 部隊(duì),上海 201900)
目前,航天信息系統(tǒng)已與大數(shù)據(jù)、人工智能、物聯(lián)網(wǎng)等新一代信息技術(shù)深度融合[1-2]。航天信息系統(tǒng)是建立在各個(gè)智慧應(yīng)用系統(tǒng)之上的系統(tǒng),以航天基地建設(shè)與管理為基礎(chǔ)[3-4],基于航天信息與數(shù)字基礎(chǔ)設(shè)施,通過數(shù)據(jù)匯聚和分析,結(jié)合可視化展現(xiàn)形式,快速有效地感知、預(yù)警、調(diào)度、應(yīng)對(duì)航天信息系統(tǒng)網(wǎng)絡(luò)安全風(fēng)險(xiǎn),提升管理效率和應(yīng)急響應(yīng)能力[5]。在航天信息系統(tǒng)建設(shè)過程中,基礎(chǔ)設(shè)施和信息資源是航天信息系統(tǒng)的重要組成部分,而信息安全作為輔助支撐體系,也是航天信息系統(tǒng)的重要環(huán)節(jié)。如何建設(shè)信息安全綜合監(jiān)控平臺(tái),如何強(qiáng)化信息安全風(fēng)險(xiǎn)評(píng)估體系,已成為航天信息系統(tǒng)建設(shè)的戰(zhàn)略重點(diǎn)。
在航天信息系統(tǒng)中,航天信息系統(tǒng)數(shù)據(jù)管理者會(huì)定期將重要數(shù)據(jù)進(jìn)行分類分級(jí)處理,并傳輸?shù)胶教煨畔⑾到y(tǒng)云平臺(tái)服務(wù)器進(jìn)行存儲(chǔ)。盡管云存儲(chǔ)帶來維護(hù)海量數(shù)據(jù)的巨大優(yōu)勢(shì)[6-8],但出現(xiàn)的安全和隱私問題可能會(huì)阻礙航天信息系統(tǒng)數(shù)據(jù)管理者享受云存儲(chǔ)和計(jì)算服務(wù)。從航天信息系統(tǒng)數(shù)據(jù)管理者角度來看,一些數(shù)據(jù)內(nèi)容非常敏感,很可能以未經(jīng)授權(quán)的方式被訪問。因此,為了實(shí)現(xiàn)隱私保護(hù),該敏感數(shù)據(jù)需要在云存儲(chǔ)之前進(jìn)行加密。
基于關(guān)鍵詞的公鑰可搜索加密(Public Key Searchable Encryption,PEKS)技術(shù),可以有效解決航天信息系統(tǒng)中敏感數(shù)據(jù)加密可搜索與安全共享的問題。BONEH 等[9]首先提出了PEKS 技術(shù),解決了在共享加密數(shù)據(jù)搜索的問題,使沒有包括特定關(guān)鍵詞共享憑證的終端設(shè)備無法獲得任何有關(guān)原始數(shù)據(jù)的信息。該技術(shù)的提出,促進(jìn)了可搜索加密技術(shù)的發(fā)展,越來越多的PEKS 技術(shù)及各種變體被提出。BAEK 等[10]提出了一個(gè)無安全信道的基于關(guān)鍵詞搜索的PEKS 技術(shù),解決了PEKS 中存在的隱私性問題。FANG 等[11]提供了一種基于公開信道的正式模型PEKS 技術(shù),并證明了在關(guān)鍵詞攻擊及密文攻擊下的安全性。MA 等[12]提出了在工業(yè)物聯(lián)網(wǎng)(IIoT)環(huán)境下,支持多關(guān)鍵字搜索的PEKS 技術(shù),并給出了安全性證明。WU 等[13]提出了一種基于Diffie-Hellman 密鑰交換協(xié)議的PEKS,能有力地抵抗關(guān)鍵詞內(nèi)部猜測(cè)和文件注入攻擊。MIAO 等[14]提出了一種在多所有者的環(huán)境下,支持隱私保護(hù)的屬性基加密技術(shù)。LIU 等[15]提出了一種基于隱私保護(hù)的多關(guān)鍵字搜索加密技術(shù),采用基于多值屬性與門技術(shù)來隱藏訪問策略。CHAUDHARI 等[16]提出了一種單關(guān)鍵詞屬性基加密技術(shù),允許用戶從云端訪問數(shù)據(jù)的選擇性子集,而不會(huì)向云服務(wù)器泄露訪問權(quán)限。此外,一些具有新特性基于關(guān)鍵詞搜索的PEKS 技術(shù)陸續(xù)被提出[17-18]。針對(duì)細(xì)粒度數(shù)據(jù)訪問控制與安全共享需求,一些基于屬性加密的PEKS新型技術(shù)也被提出[19-21]。為適應(yīng)移動(dòng)終端設(shè)備應(yīng)用需求,提出了輕量級(jí)的PEKS 技術(shù)[22],該技術(shù)拒絕使用耗時(shí)的雙線性配對(duì)運(yùn)算,提供了可抵御關(guān)鍵詞猜測(cè)攻擊的隱私保護(hù)的搜索功能。
針對(duì)云存儲(chǔ)服務(wù)中用戶數(shù)據(jù)安全存儲(chǔ)與加密搜索、共享的相關(guān)問題,本文面向航天信息系統(tǒng),設(shè)計(jì)基于多關(guān)鍵詞搜索功能的PEKS 技術(shù),實(shí)現(xiàn)航天信息系統(tǒng)敏感數(shù)據(jù)的可授權(quán)安全共享。
雙線性對(duì)映射是密碼學(xué)中一類特殊的用于構(gòu)建密碼系統(tǒng)的工具。
定義1對(duì)于兩個(gè)群之間的映射e:G1×G1→G2,其中G1和G2都為q階乘法循環(huán)群,q是一個(gè)大素?cái)?shù)。雙線性對(duì)映射e滿足以下條件。
雙線性性:對(duì) ?x,y∈和 ?P,Q∈G1,e(Px,Qy)=e(P,Q)xy;非退化性:對(duì)任何生成元P∈G1,e(P,P)∈G2是群G2的生成元。可計(jì)算:對(duì)任何?P,Q∈G1,都存在有效的多項(xiàng)式時(shí)間算法計(jì)算e(P,Q)。由于雙線性對(duì)映射的計(jì)算特性,許多可搜索加密技術(shù)都基于雙線性對(duì)構(gòu)建而成。
基于關(guān)鍵詞搜索的PEKS 技術(shù),可以有效實(shí)現(xiàn)航天信息系統(tǒng)中加密數(shù)據(jù)按需搜索與安全共享目的,具體定義如下:
定義2PEKS 包括4 個(gè)算法:1)初始化。根據(jù)安全參數(shù)λ,初始化全局參數(shù)G1,G2和G1的生成元g。同時(shí)輸出通信實(shí)體的公私鑰對(duì)(pk,sk),其中pk為公鑰,sk為私鑰。2)基于關(guān)鍵詞搜索的加密。輸入公鑰pk和數(shù)據(jù)關(guān)鍵詞kw,輸出關(guān)鍵詞對(duì)應(yīng)的安全索引C=(C1,C2)。3)可授權(quán)共享憑證。輸入私鑰sk,待查詢關(guān)鍵詞kw′,輸出可授權(quán)共享憑證T。4)加密數(shù)據(jù)搜索與安全共享。輸入可授權(quán)共享憑證T,云服務(wù)器驗(yàn)證安全索引C和可授權(quán)共享憑證T是否匹配,如果匹配,返回對(duì)應(yīng)的加密數(shù)據(jù);如果不匹配,返回空。
基于關(guān)鍵詞搜索的PEKS,能夠?yàn)橥ㄐ艑?shí)體節(jié)約大量的網(wǎng)絡(luò)和計(jì)算開銷,并充分利用云端服務(wù)器龐大的計(jì)算資源。由于關(guān)鍵詞通常包含數(shù)據(jù)的重要信息,所以關(guān)鍵詞隱私十分重要,對(duì)關(guān)鍵詞加密可以有效地保護(hù)關(guān)鍵詞的隱私。
BLS 短簽名技術(shù)是由BONEH、LYNN 和SHACHAM 提出[23],其算法主要包括4 個(gè)算法:系統(tǒng)參數(shù)生成、密鑰生成、簽名和驗(yàn)證。具體描述如下:1)系統(tǒng)參數(shù)生成。系統(tǒng)參數(shù)生成算法以安全參數(shù)λ作為輸入,選擇一個(gè)雙線性對(duì)e:G×G →GT,其中G 和GT都是p階乘法循環(huán)群;一個(gè)哈希函數(shù)H:{0,1}*→G,然后返回系統(tǒng)參數(shù)SP。2)密鑰生成算法。密鑰生成算法將系統(tǒng)參數(shù)SP作為輸入,隨機(jī)選擇私鑰sk=α∈Zp,計(jì)算公鑰pk=h=gα,然后返回公私鑰對(duì)(pk,sk)。3)簽名。簽名算法將消息m、私鑰sk和系統(tǒng)參數(shù)SP作為輸入,輸出明文對(duì)應(yīng)的簽名σm=H(m)α。4)驗(yàn)證。驗(yàn)證算法將消息-簽名對(duì)(m,σm)、公鑰pk和系統(tǒng)參數(shù)SP作為輸入,如果以下驗(yàn)證等式成立,驗(yàn)證通過。
基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享的系統(tǒng)模型包含4 類通信實(shí)體:1)可信中心。系統(tǒng)中的權(quán)威認(rèn)證機(jī)構(gòu),負(fù)責(zé)產(chǎn)生系統(tǒng)的全局參數(shù)。2)航天信息系統(tǒng)數(shù)據(jù)管理者。負(fù)責(zé)提取航天信息系統(tǒng)核心數(shù)據(jù)的關(guān)鍵詞,產(chǎn)生關(guān)鍵詞的安全索引;并使用公鑰加密技術(shù)加密航天信息系統(tǒng)核心數(shù)據(jù),上傳至航天信息系統(tǒng)云平臺(tái)服務(wù)器進(jìn)行存儲(chǔ)。3)智能終端。根據(jù)用戶私鑰和航天信息系統(tǒng)公鑰產(chǎn)生基于目標(biāo)關(guān)鍵詞搜索的可授權(quán)共享憑證;然后發(fā)送給航天信息系統(tǒng)云平臺(tái)服務(wù)器,獲取可授權(quán)安全共享的航天信息系統(tǒng)機(jī)密數(shù)據(jù);最后,若檢索出匹配的航天系統(tǒng)機(jī)密數(shù)據(jù)文件,進(jìn)行解密獲得原始數(shù)據(jù)。4)航天信息系統(tǒng)云平臺(tái)服務(wù)器。在收到智能終端上載的關(guān)鍵詞安全索引以及航天信息系統(tǒng)核心加密數(shù)據(jù)后,對(duì)以上數(shù)據(jù)進(jìn)行級(jí)聯(lián)存儲(chǔ)。當(dāng)航天信息系統(tǒng)云服務(wù)器收到智能終端發(fā)送的可授權(quán)共享憑證之后,通過高效、快速的云計(jì)算能力篩選出目的信息,計(jì)算得到與終端用戶檢索內(nèi)容匹配的關(guān)鍵詞安全索引,將對(duì)應(yīng)的航天信息系統(tǒng)加密數(shù)據(jù)發(fā)送給智能終端。
本方法涉及安全威脅有以下內(nèi)容:1)系統(tǒng)內(nèi)部程序執(zhí)行錯(cuò)誤,航天信息系統(tǒng)管理者于智能終端上傳的數(shù)據(jù)計(jì)算不正確,或者云服務(wù)器在進(jìn)行合法正確輸入時(shí),無法進(jìn)行正確的反饋。2)系統(tǒng)外部存在攻擊者,可能會(huì)利用不安全的網(wǎng)絡(luò)傳輸信道,發(fā)起竊聽、截獲、篡改、替換、重放等攻擊,破壞系統(tǒng)的安全,導(dǎo)致航天信息系統(tǒng)機(jī)密信息的泄露。3)系統(tǒng)內(nèi)部存在攻擊者,在本文是指惡意的云服務(wù)器,利用賦予的高權(quán)限,對(duì)航天信息系統(tǒng)機(jī)密信息的關(guān)鍵詞或者內(nèi)容進(jìn)行猜測(cè)。
針對(duì)以上安全威脅,本方法設(shè)計(jì)目標(biāo)包括以下5 個(gè)方面:1)正確性(Correctness)。對(duì)任何合法的智能終端檢索授權(quán)共享的密文信息時(shí),若檢索的每個(gè)關(guān)鍵詞都與可授權(quán)共享憑證匹配,則航天信息系統(tǒng)云服務(wù)器在進(jìn)行加密數(shù)據(jù)搜索與安全共享測(cè)試算法運(yùn)算時(shí),都應(yīng)返回符號(hào)“1”。2)可認(rèn)證性(Authentication)。要求航天信息系統(tǒng)數(shù)據(jù)管理者和智能終端雙方能相互認(rèn)證,保證通信雙方的身份真實(shí)性,避免發(fā)生偽造等攻擊。3)選擇關(guān)鍵詞密文不可區(qū)分性。未授權(quán)的智能終端無法從給定的關(guān)鍵詞安全索引集合中判斷其中是否包含指定的關(guān)鍵詞。4)選擇可授權(quán)共享憑證不可區(qū)分性。未授權(quán)的智能終端無法從給定的兩個(gè)關(guān)鍵詞關(guān)聯(lián)的可授權(quán)共享憑證集合中判斷其中是否包含指定的關(guān)鍵詞。5)實(shí)現(xiàn)計(jì)算的輕量級(jí)特性。沒有大量的耗時(shí)計(jì)算開銷,特別在加密數(shù)據(jù)搜索與安全共享測(cè)試過程中,能夠最大程度的減少智能終端的計(jì)算負(fù)擔(dān),提高實(shí)時(shí)通信性能。
本節(jié)概述了基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法,包括系統(tǒng)初始化、基于多關(guān)鍵詞的加密、可授權(quán)共享憑證產(chǎn)生、加密數(shù)據(jù)搜索測(cè)試與安全共享步驟。
1)系統(tǒng)初始化步驟。用于初始化正常運(yùn)行所需的安全參數(shù),根據(jù)安全參數(shù),設(shè)置整個(gè)系統(tǒng)公開參數(shù),包括哈希函數(shù)、乘法循環(huán)群及其生成元、雙線性映射函數(shù);航天信息系統(tǒng)數(shù)據(jù)管理者和智能終端分別選取自身私鑰,并發(fā)布對(duì)應(yīng)的公鑰。
2)基于多關(guān)鍵詞的加密步驟,由航天信息系統(tǒng)數(shù)據(jù)管理者執(zhí)行,產(chǎn)生關(guān)鍵詞集合對(duì)應(yīng)的安全索引集合。航天信息系統(tǒng)數(shù)據(jù)管理者提取原始航天信息系統(tǒng)關(guān)鍵數(shù)據(jù)文件中含有多個(gè)關(guān)鍵詞的集合,利用自己的私鑰以及智能終端的公鑰,分別產(chǎn)生每個(gè)關(guān)鍵詞對(duì)應(yīng)的安全索引,形成安全索引集;利用通用公鑰加密技術(shù)將航天信息系統(tǒng)關(guān)鍵數(shù)據(jù)文件加密;航天信息系統(tǒng)數(shù)據(jù)管理者將安全索引集以及航天信息系統(tǒng)數(shù)據(jù)文件的密文數(shù)據(jù)一起上傳到航天信息系統(tǒng)云平臺(tái)服務(wù)器。
3)可授權(quán)共享憑證產(chǎn)生步驟,由智能終端執(zhí)行,智能終端選取關(guān)鍵詞集合,并利用智能終端的私鑰計(jì)算關(guān)鍵詞集合對(duì)應(yīng)的可授權(quán)共享憑證;將可授權(quán)共享憑證提交到航天信息系統(tǒng)云平臺(tái)服務(wù)器,激活云服務(wù)器進(jìn)行加密數(shù)據(jù)搜索測(cè)試與安全共享。
4)加密數(shù)據(jù)搜索測(cè)試與安全共享步驟,由航天信息系統(tǒng)云平臺(tái)服務(wù)器執(zhí)行。云服務(wù)器收到可授權(quán)共享憑證之后,逐一將關(guān)鍵詞對(duì)應(yīng)的安全索引,以及原始航天信息系統(tǒng)關(guān)鍵文件的密文數(shù)據(jù)進(jìn)行搜索測(cè)試,一旦匹配成功,云服務(wù)器返回搜索結(jié)果。最后,智能終端利用私鑰對(duì)關(guān)鍵詞集合對(duì)應(yīng)的原始數(shù)據(jù)文件進(jìn)行解密,實(shí)現(xiàn)可授權(quán)數(shù)據(jù)安全共享。
本文提出了基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享具體方法,包括系統(tǒng)初始化、基于多關(guān)鍵詞的加密、可授權(quán)共享憑證產(chǎn)生、加密數(shù)據(jù)搜索測(cè)試與安全共享步驟。
1)系統(tǒng)初始化。①系統(tǒng)定義一個(gè)雙線性對(duì)映射e:G1×G1→GT,其 中G1是一個(gè)q階乘法循環(huán)群,其中q為一個(gè)大素?cái)?shù);GT為雙線性對(duì)映射的目標(biāo)群,也是q階乘法循環(huán)群;g,ν為乘法循環(huán)群G1的2 個(gè)不同的生成元。② 系統(tǒng)設(shè)置4 個(gè)安全的抗碰撞哈希函數(shù)H1:{0,1}l1→;哈希函數(shù)H2:G1→;哈希函數(shù)H3:GT→Zq*;哈希函數(shù)H4:G1×{0,1}l1→;其中l(wèi)1為關(guān)鍵詞的比特長度為與q互素的乘法循環(huán)群。③公開系統(tǒng)全局參數(shù)Para=(q,e,G1,GT,g,ν,H1,H2,H3,H4);④ 航天信息系統(tǒng)數(shù)據(jù)管理者隨機(jī)選取x←作為其私鑰sks=x,計(jì)算pks=gx作為其公鑰。⑤ 智能終端隨機(jī)選取y←作為其私鑰skr=y,計(jì) 算pkr=gy作為其公鑰。
2)基于多關(guān)鍵詞的加密。①航天信息系統(tǒng)數(shù)據(jù)管理者提取原始航天信息系統(tǒng)關(guān)鍵數(shù)據(jù)文件f的多個(gè)關(guān)鍵詞,形成關(guān)鍵詞集合kw={kw1,kw2,…,kwn},關(guān)鍵詞的個(gè)數(shù)即是集合的長度,記為n。計(jì)算每一個(gè)關(guān)鍵詞kw(jj=1,2,…,n)對(duì)應(yīng)的安全索引Cj={Cj,1,Cj,2},其中,安全索引第1 分量為,安全索引第2 分量為② 航天信息系統(tǒng)數(shù)據(jù)管理者將需要安全分享的數(shù)據(jù)文件采用通用的公鑰加密算法進(jìn)行加密,形成密文數(shù)據(jù)。航天信息系統(tǒng)數(shù)據(jù)管理者將關(guān)鍵詞集合kw={kw1,kw2,…,kwn}對(duì)應(yīng)的安全索引集C={C1,C2,…,Cn}以及航天信息系統(tǒng)關(guān)鍵數(shù)據(jù)文件的密文數(shù)據(jù)一起上傳到航天信息系統(tǒng)云平臺(tái)服務(wù)器。
3)可授權(quán)共享憑證產(chǎn)生。①智能終端準(zhǔn)備需要搜索的的關(guān)鍵詞集合kw={kw1,kw2,…,kwn},其中長度為n;對(duì)于每個(gè)關(guān)鍵詞kwj,選取一個(gè)隨機(jī)數(shù)τj←Zq*,計(jì)算定 位標(biāo)簽tag j=H4(,kwj);計(jì) 算這n個(gè)關(guān)鍵詞的隨機(jī)聚合值此外,智能終端隨機(jī)選取隨機(jī)數(shù)r←,計(jì)算D=e(pks,g)r,計(jì)算關(guān)于隨機(jī)聚合值μ′的盲化值μ=r+H3(D)μ′。② 智能終端發(fā)送可授權(quán)共享憑證T=({tagj}1≤j≤n,{τj}1≤j≤n,D,μ)到航天信息系統(tǒng)云平臺(tái)服務(wù)器,進(jìn)行加密數(shù)據(jù)搜索測(cè)試與安全共享。
4)加密數(shù)據(jù)搜索測(cè)試與安全共享。①對(duì)于j=1,2,…,n,航天信息系統(tǒng)云平臺(tái)服務(wù)器依次根據(jù)每一個(gè)定位標(biāo)簽tagj查詢是否tagj與Cj,2相等,如果相 等,則取回對(duì)應(yīng)的安全索 引Cj={Cj,1,Cj,2},然后,進(jìn)一步檢查以下方程是否成立:
② 如果成立,航天信息系統(tǒng)云平臺(tái)服務(wù)器將返回與安全索引關(guān)聯(lián)的所有加密數(shù)據(jù)。最后智能終端利用解密密鑰解密返回的所有加密數(shù)據(jù),即可獲得相關(guān)聯(lián)的原始航天信息系統(tǒng)關(guān)鍵數(shù)據(jù)文件,達(dá)到可授權(quán)數(shù)據(jù)安全共享的目的。
本章對(duì)基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法進(jìn)行正確性證明。
1)定位標(biāo)簽tagj匹配步驟的正確性推導(dǎo),其作用是確認(rèn)終端智能生成的可授權(quán)共享憑證中包含具體的關(guān)鍵詞,從而匹配到對(duì)應(yīng)的關(guān)鍵詞加密密文。本文采用了Diffie-Hellman 密鑰協(xié)商的思想進(jìn)行設(shè)計(jì),實(shí)現(xiàn)航天信息系統(tǒng)數(shù)據(jù)管理者和智能終端在無需知道對(duì)方的秘密值(私鑰)的情況下,就可以相互之間協(xié)商出由自己私鑰和對(duì)方公鑰組合而成的共享秘密值,避免秘密信息在不安全的信道上進(jìn)行傳輸,實(shí)現(xiàn)只有對(duì)應(yīng)的授權(quán)通信雙方才能實(shí)現(xiàn)正確加密數(shù)據(jù)的檢索目的。
從正確性推導(dǎo)過程中可以看出,定位標(biāo)簽tag j是用來與Cj,2(關(guān)鍵詞密文的第2 部分)進(jìn)行匹配的,這里能夠起到的作用是通過判斷等式是否成立,并用以確定與定位標(biāo)簽匹配的關(guān)鍵詞密文Cj有哪些。若等式成立,則說明智能終端所檢索的關(guān)鍵詞集合中包含密文分量Cj,2中的關(guān)鍵詞kwj,此時(shí)取回Cj,2對(duì)應(yīng)的第1 部分密文索引Cj,1,以用于驗(yàn)證加密數(shù)據(jù)搜索測(cè)試。做到正確匹配需要滿足以下兩個(gè)條件,缺一不可:①智能終端正在檢索的關(guān)鍵詞會(huì)與航天信息系統(tǒng)數(shù)據(jù)管理者存儲(chǔ)在云端的關(guān)鍵詞集合進(jìn)行一一匹配,關(guān)鍵詞相同才可以成功匹配;② 要滿足數(shù)據(jù)收發(fā)雙方的正確,原因是在智能終端的定位標(biāo)簽中,通過引入航天信息系統(tǒng)數(shù)據(jù)管理者的公鑰以及自己的私鑰,授權(quán)了明確的航天信息系統(tǒng)數(shù)據(jù)管理者和智能終端。而航天信息系統(tǒng)數(shù)據(jù)管理者存儲(chǔ)的關(guān)鍵詞密文中的定位索引部分,引入了智能終端的公鑰以及自己的私鑰,讓通信雙方在不告知對(duì)方自己私鑰的情況下,完成匹配。由于只有數(shù)據(jù)收發(fā)雙方自己才知道自己的私鑰,所以在這里冒充和偽造難以做到,第三方要從信道上傳輸?shù)男畔⒅蝎@得密鑰或者關(guān)鍵詞等信息也比較困難。
2)加密數(shù)據(jù)搜索測(cè)試算法的正確性推導(dǎo)。在上一步定位標(biāo)簽匹配步驟完成后,航天信息系統(tǒng)云平臺(tái)服務(wù)器就篩選出了定位索引所對(duì)應(yīng)的關(guān)鍵詞密文,然后航天信息系統(tǒng)云平臺(tái)服務(wù)器再對(duì)關(guān)鍵詞密文的第1 部分進(jìn)行聚合,則可以篩選出包含智能終端產(chǎn)生的可授權(quán)共享憑證中所有關(guān)鍵詞的密文數(shù)據(jù)。加密數(shù)據(jù)搜索測(cè)試算法的正確性推導(dǎo)過程如下:
3)方法正確性分析。從上述正確性推導(dǎo)過程中可以看出,基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法,充分利用了雙線性對(duì)的特性,對(duì)智能終端提交的檢索關(guān)鍵詞集合進(jìn)行了聚合匹配,實(shí)現(xiàn)了對(duì)航天信息系統(tǒng)云端密文數(shù)據(jù)更精確地篩選。若等式成立,則返回符號(hào)“1”;若等式不成立,則返回符號(hào)“0”。然后再對(duì)下一份數(shù)據(jù)進(jìn)行匹配,當(dāng)匹配完成后,航天信息系統(tǒng)云平臺(tái)服務(wù)器就將所對(duì)應(yīng)的原始航天信息系統(tǒng)關(guān)鍵文件密文發(fā)安全共享給智能終端。
本章對(duì)基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法進(jìn)行安全性分析,包括滿足可認(rèn)證性、關(guān)鍵詞密文不可區(qū)分性和關(guān)鍵詞陷門不可區(qū)分性。
1)可認(rèn)證性分析。在基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法中,通過引入航天信息系統(tǒng)數(shù)據(jù)管理者私鑰的方法,對(duì)數(shù)據(jù)源的身份進(jìn)行綁定??烧J(rèn)證性的具體表現(xiàn)在關(guān)鍵詞密文的第1部分,在生成密文步驟中,運(yùn)用簽密的思想增加數(shù)據(jù)加密及簽名的功能。其中,加密用的是智能終端的公鑰pkr,簽名用的是航天信息系統(tǒng)數(shù)據(jù)管理者的私鑰sks。因?yàn)楹教煨畔⑾到y(tǒng)數(shù)據(jù)管理者在生成關(guān)鍵詞密文的過程中,引入了自身私鑰x對(duì)密文數(shù)據(jù)進(jìn)行簽名,所以智能終端在用航天信息系統(tǒng)數(shù)據(jù)管理者的公鑰gx進(jìn)行加密時(shí),可以對(duì)數(shù)據(jù)源的身份進(jìn)行認(rèn)證。又因?yàn)榧用苡玫氖侵悄芙K端的公鑰pkr,故解密只能由智能終端完成。而解密密鑰skr只有智能終端知道,所以如果智能終端可以成功解密,則證明該智能終端是正確的數(shù)據(jù)接收方,因此,也完成了對(duì)智能終端的身份認(rèn)證。
在完成數(shù)據(jù)收發(fā)雙方身份認(rèn)證的同時(shí),還可以防止攻擊者發(fā)起偽造、截獲等攻擊。由于攻擊者不知道航天信息系統(tǒng)數(shù)據(jù)管理者的私鑰sks,所以攻擊者無法偽造關(guān)鍵詞密文;同時(shí),如果攻擊者從不安全的傳輸信道上截獲了關(guān)鍵詞密文,由于攻擊者不知道智能終端的私鑰,也無法從加密數(shù)據(jù)中獲得任何關(guān)鍵詞的相關(guān)信息。
2)密文不可區(qū)分性分析。在基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法中,要滿足選擇關(guān)鍵詞攻擊下不可區(qū)分性(Indistinguishability under Chosen Keyword Attack,IND-CKA)的安全目標(biāo),即要求在攻擊者擁有能夠任意詢問(或以黑盒方式獲得)關(guān)鍵詞密文和關(guān)鍵詞陷門的情況下,攻擊者依然無法獲得與關(guān)鍵詞相關(guān)的明文信息,可達(dá)到關(guān)鍵詞密文不可區(qū)分性和關(guān)鍵詞陷門不可區(qū)分性這個(gè)安全目標(biāo)。事實(shí)上,攻擊者可以任意多次詢問關(guān)鍵詞密文及關(guān)鍵詞陷門,故攻擊者可以獲得許多關(guān)鍵詞對(duì)應(yīng)的密文及陷門,但攻擊者從已有的密文信息中是無法獲得挑戰(zhàn)關(guān)鍵詞相關(guān)的密文信息。首先對(duì)于關(guān)鍵詞密文進(jìn)行分析,關(guān)鍵詞密文Cj={Cj,1,Cj,2} 由2 部分組成,第1 部分表示為,第2 部分表示為Cj,2=H4(,kwj)。在挑戰(zhàn)時(shí),限制了攻擊者不能查詢挑戰(zhàn)關(guān)鍵詞的密文,由于攻擊者難以從已獲取的關(guān)鍵詞-密文對(duì)中計(jì)算得出私鑰,根據(jù)判定雙線性對(duì)映射Diffie-Hellman 困難問題假設(shè),可以知道,攻擊者無法以不可忽略的優(yōu)勢(shì)準(zhǔn)確判斷給出的關(guān)鍵詞密文是哪一個(gè)關(guān)鍵詞所對(duì)應(yīng)的密文,并且其正確判斷的概率近乎是隨機(jī)猜測(cè)的概率。
對(duì)本方法可授權(quán)共享憑證的產(chǎn)生過程進(jìn)行分析,其表示為T=({tag j}1≤j≤n,{τj}1≤j≤n,D,μ),其中,tag j=H4(,kwj)是同關(guān)鍵詞密文第2 部分定位索引進(jìn)行匹配的定位標(biāo)簽,τj是從中選取的隨機(jī)數(shù),D=e(pks,g)r不包含關(guān)鍵詞信息,隨機(jī)數(shù)r是秘密值,μ=r+H3(D)μ′是可授權(quán)共享憑證對(duì)應(yīng)的關(guān)鍵詞聚合值的盲化值。關(guān)鍵詞對(duì)應(yīng)的可授權(quán)共享憑證中包含關(guān)鍵詞的有定位標(biāo)簽tagj,其安全性分析與關(guān)鍵詞密文Cj,2相 同;是檢索關(guān)鍵詞的線性組合,攻擊者在進(jìn)行關(guān)鍵詞對(duì)應(yīng)的可授權(quán)共享憑證詢問時(shí),只能獲得聚合的關(guān)鍵詞對(duì)應(yīng)的可授權(quán)共享憑證,由于利用了同態(tài)線性認(rèn)證技術(shù)(HLA)與隨機(jī)掩碼(r和H3(D))相結(jié)合,使得攻擊者無法從聚合值中獲取到單個(gè)關(guān)鍵詞陷門的值,故攻擊者要想從詢問關(guān)鍵詞對(duì)應(yīng)的可授權(quán)共享憑證中獲取到關(guān)鍵詞的相關(guān)信息更不可能。
因此,本方法保證了關(guān)鍵詞密文不可區(qū)分性和關(guān)鍵詞陷門不可區(qū)分性,從而保證了密文的不可區(qū)分性。
將基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法取名為MD-PEKS,與同樣支持多關(guān)鍵詞搜索與安全共享功能的VMKS[24]、SCF-MCLPEKS[12]和CLPEKS[25]進(jìn)行性能比較和評(píng)估。由于數(shù)據(jù)安全共享最主要的計(jì)算開銷是在加密數(shù)據(jù)搜索與安全共享測(cè)試環(huán)節(jié),高效的加密數(shù)據(jù)搜索測(cè)試與安全共享方法可以減少云存儲(chǔ)系統(tǒng)的計(jì)算成本和智能終端的計(jì)算開銷,有效降低文加密數(shù)據(jù)搜索的響應(yīng)延遲。因此,本節(jié)中首先從理論上分析在云存儲(chǔ)系統(tǒng)中,加密數(shù)據(jù)搜索測(cè)試與安全共享過程的計(jì)算開銷性能分析;然后,搭建性能仿真平臺(tái),進(jìn)行實(shí)驗(yàn)分析與比較。
1)基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法(MD-PEKS)的加密數(shù)據(jù)搜索測(cè)試與安全共享的計(jì)算開銷。在提出的基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法的加密數(shù)據(jù)搜索測(cè)試與安全共享步驟中,為了搜索到包含τ個(gè)關(guān)鍵詞詞組kw={kw1,kw2,…,kwτ}對(duì)應(yīng)的文件,則航天信息系統(tǒng)云平臺(tái)服務(wù)器需要進(jìn)行如下計(jì)算,包括2τ+1 次普通哈希運(yùn)算,τ+1 次點(diǎn)乘運(yùn)算,2τ+1 次普通乘法運(yùn)算,τ+3 次模指數(shù)運(yùn)算,τ次點(diǎn)加運(yùn)算和2 次雙線性對(duì)運(yùn)算。因此航天信息系統(tǒng)云平臺(tái)服務(wù)器的計(jì)算開銷是(2τ+1)Tha+(τ+1)TMp+(2τ+1)Tmu+(τ+3)TEx+2TPa+τTAdd。
2)VMKS 計(jì)算開銷。其加密數(shù)據(jù)搜索測(cè)試與安全共享步驟,云服務(wù)器需要執(zhí)行4 次雙線性對(duì)運(yùn)算、1 次逆運(yùn)算和τ+2 次正規(guī)乘法運(yùn)算,因此云服務(wù)器端的總計(jì)算成本為4TPa+Tinv+(τ+2)Tmu。
3)SCF-MCLPEKS 計(jì)算開銷。其加密數(shù)據(jù)搜索測(cè)試與安全共享,云服務(wù)器需要執(zhí)行1 次雙線性對(duì)運(yùn)算,2 次ECC 中的哈希到點(diǎn)運(yùn)算,1 次普通哈希運(yùn)算,1 次ECC 中的標(biāo)量乘法運(yùn)算,以及2 次ECC中的點(diǎn)加法運(yùn)算,因此云服務(wù)器端的總計(jì)算成本為τ(TPa+2THa+Tha+TMu+2TAdd)。
4)CLPEKS 計(jì)算開銷。其加密數(shù)據(jù)搜索測(cè)試與安全共享步驟,云服務(wù)器需要執(zhí)行1 次普通哈希運(yùn)算,1 次ECC 中的標(biāo)量乘法運(yùn)算,2 次點(diǎn)加運(yùn)算和1 次雙線性對(duì)運(yùn)算。因此,云服務(wù)器端的總計(jì)算成本為τ(Tha+TMu+2TAdd+TPa)。
因此,由理論性能分析可知,本設(shè)計(jì)MD-PEKS 與其他類似方法相比,在耗時(shí)最大的雙線性對(duì)運(yùn)算開銷方面只需要2 個(gè)恒定量,而SCF-MCLPEKS 和CLPEKS 需要雙線性對(duì)運(yùn)算開銷與關(guān)鍵詞個(gè)數(shù)成正比關(guān)系,SCF-MCLPEKS 需要雙線性對(duì)運(yùn)算開銷是4 個(gè)恒定量,因此MD-PEKS 在計(jì)算性能上具有優(yōu)勢(shì),可以安全高效部署在航天信息云存儲(chǔ)系統(tǒng)。
從實(shí)驗(yàn)上分析在云存儲(chǔ)系統(tǒng)中,加密數(shù)據(jù)搜索測(cè)試與安全共享過程的計(jì)算開銷性能。所有的算法實(shí)現(xiàn)都運(yùn)行在處理器為Inter(R)Core(TM)I5-2320 3.00 GHz 和內(nèi)存為8.00 GB 的主機(jī)上,操作系統(tǒng)為Windows 10。所有算法的計(jì)算開銷時(shí)間都使用C 語言以及其版本號(hào)為5.6.2 密碼算法基礎(chǔ)函數(shù)庫MIRACL。實(shí)驗(yàn)中使用了一條MNT 曲線,其基本域大小為159 比特,嵌入度為6。TPa為雙線性對(duì)運(yùn)行時(shí)間;TMu為橢圓曲線中的倍點(diǎn)運(yùn)算運(yùn)行時(shí)間;Tmu為普通模乘法運(yùn)行時(shí)間;TEx為普通模指數(shù)計(jì)算運(yùn)行時(shí)間;THa為映射到循環(huán)群中的橢圓曲線點(diǎn)坐標(biāo)的運(yùn)行時(shí)間;Tha為普通哈希函數(shù)運(yùn)行時(shí)間;TAdd為基于橢圓曲線的加法循環(huán)群中加法的運(yùn)行時(shí)間。本章需要對(duì)以上基礎(chǔ)密碼計(jì)算模塊進(jìn)行實(shí)驗(yàn)仿真,具體的算法實(shí)驗(yàn)仿真數(shù)據(jù)見表1。
表1 不同算法仿真的執(zhí)行時(shí)間Tab.1 Execution simulation time of different algorithms
在基于以上密碼運(yùn)算基礎(chǔ)模塊的實(shí)驗(yàn)數(shù)據(jù),以及前面的理論分析結(jié)果,進(jìn)行實(shí)驗(yàn)仿真分析。如圖1 和圖2 所示描繪了云服務(wù)器的計(jì)算開銷詳細(xì)實(shí)驗(yàn)仿真結(jié)果。實(shí)驗(yàn)結(jié)果表明,在單個(gè)關(guān)鍵詞的搜索測(cè)試中MD-PEKS 的開銷明顯優(yōu)于VMKS和SCF-MCLPEKS、,雖然MD-PEKS 單關(guān)鍵詞的加密數(shù)據(jù)搜索測(cè)試與安全共享開銷高于CLPEKS,但是在多關(guān)鍵詞環(huán)境下,隨著關(guān)鍵詞數(shù)量的增加,MD-PEKS 的加密數(shù)據(jù)搜索測(cè)試與安全共享開銷遠(yuǎn)低于CLPEKS,并且在要搜索20 個(gè)關(guān)鍵詞的情況下也只是略高于VMKS,計(jì)算時(shí)間不超過50 ms,完全可以滿足在云服務(wù)器上部署的實(shí)際要求。
圖1 基于單個(gè)關(guān)鍵詞的加密數(shù)據(jù)搜索測(cè)試與安全共享Fig.1 Encrypted data search test and secure sharing based on a single keyword
圖2 基于多關(guān)鍵詞的加密數(shù)據(jù)搜索測(cè)試與安全共享Fig.2 Encrypted data search test and secure sharing based on multiple keywords
為有效解決航天信息系統(tǒng)核心數(shù)據(jù)安全共享實(shí)際需求,本文開展了一種基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享研究。提出的方法按照數(shù)據(jù)安全審計(jì)的角度,借鑒同態(tài)線性認(rèn)證技術(shù)、隨機(jī)掩碼技術(shù)及BLS 短簽名技術(shù),實(shí)現(xiàn)了基于航天信息系統(tǒng)云平臺(tái)的加密數(shù)據(jù)資源共享。本文對(duì)實(shí)現(xiàn)方法進(jìn)行了語義安全證明,分析了方法滿足的可認(rèn)證性、關(guān)鍵詞密文不可區(qū)分性和關(guān)鍵詞陷門不可區(qū)分性等安全特性,從而可以抵抗航天信息系統(tǒng)敏感的關(guān)鍵詞猜測(cè)攻擊。最后,本文還對(duì)方法進(jìn)行了性能評(píng)估,表明基于航天信息系統(tǒng)云平臺(tái)的可授權(quán)數(shù)據(jù)安全共享方法可以安全高效地部署在航天信息系統(tǒng)。