王 正,曹素珍,趙 曉,周大偉,邢丹丹
(西北師范大學(xué) 計算機(jī)科學(xué)與工程學(xué)院,蘭州 730070)
隨著物聯(lián)網(wǎng)和5G 技術(shù)的廣泛應(yīng)用[1-2],現(xiàn)有云服務(wù)器的性能已不能滿足互聯(lián)網(wǎng)時代對海量數(shù)據(jù)的實(shí)時處理需求。邊緣設(shè)備[3-4]以低時延、移動性支持等優(yōu)勢逐步成為解決上述問題的一種新途徑。云服務(wù)器和邊緣設(shè)備是半誠實(shí)的[5-7],因此為保證用戶數(shù)據(jù)的機(jī)密性,數(shù)據(jù)所有者(Data Owner,DO)通常將數(shù)據(jù)加密后再存儲于云端或邊緣設(shè)備,然而如何檢索密文成為數(shù)據(jù)用戶面臨的一大難題。文獻(xiàn)[8]提出可搜索加密(Searchable Encryption,SE)概念,有效解決了密文檢索的難題。
在早期的SE 方案中常采用單關(guān)鍵字SE 方案[9],但因存在大量的關(guān)鍵字索引重復(fù)問題,從而導(dǎo)致搜索效率不高。為了提高搜索的準(zhǔn)確性,在后續(xù)的研究中用戶搜索的關(guān)鍵字通常采取多關(guān)鍵字方案[10-12]。文獻(xiàn)[13]提出一種多關(guān)鍵字SE 方案,通過匹配多關(guān)鍵字的索引和搜索陷門來提高搜索效率,但仍存在關(guān)鍵字與主題相關(guān)性不大的問題。文獻(xiàn)[14]提出一種多關(guān)鍵字排序SE 算法,利用TF-IDF規(guī)則根據(jù)關(guān)鍵字相關(guān)的程度排序搜索結(jié)果,僅返回最滿足用戶需求的Top-k文件。上述文獻(xiàn)無論是采用對稱或非對稱加密算法均無法滿足數(shù)據(jù)共享時的細(xì)粒度訪問控制需求。
文獻(xiàn)[15]提出屬性基可搜索加密(Attribute-Based Searchable Encryption,ABSE)概念,實(shí)現(xiàn)了外包加密數(shù)據(jù)上的安全搜索和細(xì)粒度訪問控制。文獻(xiàn)[16-17]提出一種基于密文策略的ABSE 方案(CPABSE),在CP-ABSE 方案中私鑰與屬性相關(guān)聯(lián),密文與訪問結(jié)構(gòu)相關(guān)聯(lián),使得訪問密文的用戶由數(shù)據(jù)所有者設(shè)定的訪問策略決定,達(dá)到細(xì)粒度訪問控制的效果。KP-ABSE[18]方案是將策略嵌入用戶密鑰,屬性嵌入密文,但這兩種ABSE 方案都可能存在訪問策略泄露問題。文獻(xiàn)[19]提出一種基于隱藏策略和外包解密的白盒可跟蹤屬性加密方案,基于LSSS訪問結(jié)構(gòu),該方案采用策略隱藏的方式只對屬性名進(jìn)行公開,缺陷在于不支持對多關(guān)鍵字的搜索排序,搜索結(jié)果不精準(zhǔn)。文獻(xiàn)[20-21]提出一種基于邊緣計算框架的高效密文索引檢索方案,結(jié)合可搜索加密技術(shù)與邊緣計算技術(shù)所定義的邊緣緩存網(wǎng)絡(luò)模型使密文檢索更加安全高效。文獻(xiàn)[22]提出IIoT 時代可持續(xù)邊緣云網(wǎng)絡(luò)的多關(guān)鍵詞排序搜索隱私保護(hù)方案,但該方案無法滿足大規(guī)模計算需求。
針對上述問題,本文提出云邊協(xié)同下可排序的屬性基可搜索加密方案,主要工作如下:
1)利用云邊協(xié)同技術(shù),將加密后的數(shù)據(jù)上傳到云端,與其對應(yīng)的加密索引上傳到最近的邊緣節(jié)點(diǎn),提高了搜索效率,降低了用戶的計算負(fù)擔(dān)。
2)用戶的屬性由屬性名和屬性值組成,在構(gòu)造訪問結(jié)構(gòu)時,用戶僅通過公開的屬性名進(jìn)行陷門搜索匹配,從而使得未經(jīng)授權(quán)的用戶無法獲取訪問策略中的任何有效信息。
3)在密文檢索階段,可在排除無關(guān)關(guān)鍵字的情況下根據(jù)檢索關(guān)鍵字的重要程度進(jìn)行排序,最終返回與用戶需求最相關(guān)的Top-k密文,實(shí)現(xiàn)了多關(guān)鍵字排序搜索。
4)利用在線/離線加密技術(shù),數(shù)據(jù)所有者在上傳密文之前先進(jìn)行離線加密,降低客戶端的計算成本。
選擇兩個循環(huán)群G1、G2,p是它們的素數(shù)階,定義一個雙線性映射e:G1×G1→G2滿足以下性質(zhì)[23]:
1)雙線性。對?x,y?G1,?a,b?,有e(xa,yb)=e(xb,ya)=e(x,y)ab成 立。
2)非退化性。?x,y?G1滿足e(x,y) ≠1。
3)可計算性。對?x,y?G1,存在一個多項式時間算法有效計算e(x,y)。
設(shè)P={P1,P2,…,Pn}表示參與者的集合,令2P={A|A?{P1,P2,…,Pn}},集合A?2P是單調(diào)的,當(dāng)且僅當(dāng)對于任意子集B,C?P,如果B?A且B?C,則C?A。若A是P={P1,P2,…,Pn}中的非空子集(單調(diào)的),即則 稱A是一個 訪問結(jié)構(gòu)(單調(diào)的)。對于任意集合D,若D?A,則D為授權(quán)集,否則為非授權(quán)集[24]。
定義P上的一個線性秘密共享方案π,滿足如下條件[25]:
2)每個線性秘密共享方案都有一個l×n的生成矩陣M,且存在單射函數(shù)ρ:{1,2,…,l} →P把M的每一行(i=1,2,…,l)映射到參與者ρ(i)??紤]向量v=(s,v2,v3,…,vn),s?是共享秘 密值,選 擇隨機(jī)數(shù)v2,v3,…,vn?隱藏共享秘密值s,則Mv是共享秘密份額,其中λi=(Mv)i是共享秘密值s的第i個秘密份額。
TF-IDF 用來評估指定關(guān)鍵字對于文檔集合中某一篇文檔的重要程度[26],值越大,說明該關(guān)鍵字w在文檔f中的重要程度越靠前。TF 是計算指定關(guān)鍵字w在查詢文檔f中出現(xiàn)的次數(shù),IDF 是該關(guān)鍵詞出現(xiàn)在所有文檔中的數(shù)據(jù)集合。根據(jù)下述拆分規(guī)則計算Top-k文件。
拆分規(guī)則:基于隨機(jī)的n維二進(jìn)制向量P計算n維向量Q,利用P將Q拆分為兩個隨機(jī)向量(Q′,Q″),如式(1)所示:
困難問題假設(shè)具體如下:
1)DBDH 假設(shè)。設(shè)一個循環(huán)群G,p是它的素數(shù)階,g是G的一個生成元。隨機(jī)選擇a,b,c,z?Zp,給定多元組,如果不存在一種算法能夠在多項式時間內(nèi)以不可忽略的概率區(qū)分(g,ga,gb,gc,z),則DBDH 假設(shè)成立。
2)q-parallel DBDH 假設(shè)。選擇兩個乘法循環(huán)群G1、G2,p是它們的素數(shù)階,g是G1的一個生成元。隨機(jī)選擇q+2 個元素x,a,b1,b2,…,bq?Zp,計算:
文中使用的一些符號和變量如表1 所示。
表1 符號和變量描述Table 1 Description of symbols and variables
所提方案的系統(tǒng)主要包括5 類實(shí)體,分別是授權(quán)機(jī)構(gòu)(Authorization Attribute,AA)、云服務(wù)提供商(Cloud Service Provider,CSP)、邊緣節(jié)點(diǎn)(Edge Node,EN)、數(shù)據(jù)所有者和數(shù)據(jù)用戶(Data User,DU)。
該方案由一個受信任的AA 公開發(fā)布全局參數(shù)并對主密鑰保密,DO 將加密文件上傳到CSP 存儲,將相應(yīng)的關(guān)鍵字索引上傳到最近的EN。DU 根據(jù)訪問策略生成搜索陷門發(fā)送給最近的EN,EN 接收到搜索陷門后先對CSP 中存儲的數(shù)據(jù)進(jìn)行搜索,CSP搜索出符合的文件返回給EN,EN 利用用戶生成的部分解密密鑰對其進(jìn)行部分解密,將Top-k文件返回給用戶解密,最后得到共享的數(shù)據(jù)文件。系統(tǒng)模型及流程如圖1 所示。
圖1 系統(tǒng)模型及流程Fig.1 System model and procedure
該模型在現(xiàn)實(shí)應(yīng)用中可適應(yīng)于大部分實(shí)際場景,如智能電網(wǎng)。假設(shè)電力運(yùn)營公司使用該模型使某市的各小區(qū)之間可相互共享一些電網(wǎng)用戶數(shù)據(jù)。電網(wǎng)用戶查看自己相關(guān)的數(shù)據(jù)時只需要簡單的身份注冊,受信任的授權(quán)機(jī)構(gòu)根據(jù)其基本信息分發(fā)可解密本人數(shù)據(jù)的屬性密鑰。電網(wǎng)用戶根據(jù)屬性設(shè)置訪問策略,系統(tǒng)將其轉(zhuǎn)換為一個矩陣并將其嵌入密文后上傳云服務(wù)器,相應(yīng)的關(guān)鍵字索引上傳到最近的邊緣節(jié)點(diǎn)。管理人員等其他想要訪問數(shù)據(jù)的電網(wǎng)查詢者需要受信任的授權(quán)機(jī)構(gòu)審核其身份信息并為其分發(fā)屬性密鑰,在系統(tǒng)中輸入相關(guān)關(guān)鍵字,當(dāng)屬性滿足電網(wǎng)用戶設(shè)置的訪問策略時,則可解密搜索結(jié)果,否則無權(quán)查看,這在一定程度上保護(hù)了數(shù)據(jù)隱私。
1)AA。AA 是一個完全受信任的實(shí)體,由它生成全局參數(shù)和系統(tǒng)主密鑰,當(dāng)用戶想要查詢時,可以根據(jù)其屬性集生成對應(yīng)的用戶私鑰。
2)CSP。CSP 是一個誠實(shí)但好奇的半可信實(shí)體,會好奇云上存儲的數(shù)據(jù)但會誠實(shí)地執(zhí)行任務(wù)。在該系統(tǒng)中,允許系統(tǒng)中的合法用戶上傳或訪問存儲其上的密文數(shù)據(jù)。
3)EN。EN 用于存儲密文索引,當(dāng)從DU 接收搜索陷門時,誠實(shí)地執(zhí)行搜索算法,并將搜索結(jié)果發(fā)送到CSP。在獲得從CSP 返回的加密文件后,協(xié)助DU進(jìn)行部分密文解密操作,并根據(jù)TF-IDF 規(guī)則計算并返回給用戶最符合要求的Top-k文件。
4)DO。根據(jù)DO 設(shè)定的訪問策略對數(shù)據(jù)和關(guān)鍵字進(jìn)行加密后上傳到EN。
5)DU。每個DU 計算搜索陷門并發(fā)送到邊緣節(jié)點(diǎn)進(jìn)行匹配查詢,生成部分解密密鑰發(fā)送到邊緣節(jié)點(diǎn)以供對返回的搜索結(jié)果進(jìn)行部分解密操作。
所提方案的安全模型通過攻擊者A 和挑戰(zhàn)者C之間的模擬游戲定義。若攻擊者A 在多項式時間算法內(nèi)不能以不可忽略的優(yōu)勢在游戲中獲勝,則該方案具有選擇關(guān)鍵字攻擊(IND-CKA)安全性。
1)初始化。挑戰(zhàn)者C 調(diào)用SetUp 算法,通過安全參數(shù)λ計算得全局參數(shù)GP和系統(tǒng)主密鑰KM。
2)查詢階段1。攻擊者A 向挑戰(zhàn)者C 請求對應(yīng)屬性集SA的私鑰和待查詢關(guān)鍵字的集合W′的搜索陷門。
3)挑戰(zhàn)。攻擊者A 向挑戰(zhàn)者C 發(fā)送兩個大小相同的關(guān)鍵字w1、w2,攻擊者A 提供訪 問策略(M,ρ),挑戰(zhàn)者C 隨機(jī)選擇b?{0,1},利用wb生成加密關(guān)鍵字索引Iwb返回給攻擊者A。
4)查詢階段2。攻擊者A 重復(fù)進(jìn)行查詢階段1,查詢更多與w1、w2不同的關(guān)鍵字集合的搜索陷門。
5)猜測階段。攻擊者A 輸出b的一個猜想b'?{0,1},若b=b',則攻擊者A 獲勝,攻擊者A 成功的優(yōu)勢為
算法描述具體如下:
1)設(shè) 置SetUp(1λ) →(GP,KM)。AA 執(zhí)行該 算法,輸入安全參數(shù)λ,輸出全局參數(shù)GP,主密鑰KM。
2)密鑰生成KeyGen(GP,KM,S)→(KS)。AA執(zhí)行該算法,輸入全局參數(shù)GP,根據(jù)主密鑰KM和用戶的屬性集S生成用戶的屬性密鑰KS。
3)加密。加密包括離線加密和在線加密。
(1)離線加密Offline.Enc(GP) →(CP)。在沒有確定關(guān)鍵字集合以及訪問策略之前,DO 空閑時執(zhí)行該算法,輸入全局參數(shù)GP,根據(jù)用戶屬性S及選擇的秘密值s輸出中間密文CP,用于在線加密。
(2)在線加密Online.Enc(GP,CP,F,W,A(M,ρ)) →(CT,Iw)。DO 執(zhí)行該算法,輸入全局參數(shù)GP,離線加密時生成的中間密文CP,明文文件集F,關(guān)鍵字集合W,訪問策略A(m,ρ),輸出對數(shù)據(jù)加密生成的加密密文CT和對關(guān)鍵字加密生成的加密索引Iw,并根據(jù)TF-IDF 規(guī)則計算索引向量Iw。
4)陷門生成Trapdoor(GP,KS,q) →(Tq)。DU 執(zhí)行該算法,輸入用戶私鑰KS和在關(guān)鍵字集合中隨機(jī)選擇的待搜索關(guān)鍵字q,生成查詢陷門用于密文搜索。同時,根據(jù)TF-IDF 規(guī)則計算查詢向量與在線加密時生成的索引向量一同用于Top-k文件的分?jǐn)?shù)排序計算。
5)密文搜索Search(GP,CT,Iw,Tq)→(CT/⊥)。CSP執(zhí)行該算法,輸入查詢陷門Tq和關(guān)鍵字索引Iw,檢測其能否成功匹配,若能則繼續(xù)驗證,否則終止。
6)驗證Verify。驗證返回結(jié)果的正確性,并根據(jù)TF-IDF 規(guī)則計算并返回給用戶需要的Top-k文件。
7)轉(zhuǎn)換Transform(GP,KS) →(KP)。由DU 執(zhí)行該算法,輸入DU 的私鑰KS,輸出邊緣節(jié)點(diǎn)的部分解密密鑰KP,用于協(xié)助密文的部分解密。
8)部分解密密文E.Dec(GP,KP,CT) →(CPT)。EN執(zhí)行該算法,輸入全局參數(shù)GP和邊緣節(jié)點(diǎn)的部分解密密鑰KP,對所得的Top-k文件密文進(jìn)行部分解密,輸出部分解密密文CPT。
9)解 密Dec(KS,CPT,Kτ) →(m)。DU 執(zhí)行該 算法,輸入DU 的私鑰KS,并利用中間解密密鑰中包含的轉(zhuǎn)換因子Kτ,對步驟8)得到的部分解密密文CPT解密后,獲得所需明文m。
方案構(gòu)造具體如下:
1)系統(tǒng)建立。先初始化系統(tǒng),輸入安全參數(shù)λ,設(shè)置全局參數(shù)U={1,2,…,N},設(shè)兩個乘法循環(huán)群G1、G2,p是它們 的素數(shù) 階,設(shè)定雙 線性對e:G1×G1→G2,其中,g是G1的生成元,并選擇哈希函數(shù)H:{0,1}*→。AA 隨機(jī)選擇α,β,μ?,計算e(g,g)α、gβ、gμ。對于每個屬性i?U,AA 隨機(jī)選擇ai?,計算。最后生成系統(tǒng)的全局參數(shù)GP和主密鑰KM,如式(2)所示:
其中:GP由AA 公開;KM由AA 秘密保存。
3)離線加密。在沒有確定關(guān)鍵字集合以及訪問策略之前先進(jìn)行離線計算。DO 選擇秘密值,計算密文,如式(4)所示:
4)在線加密。設(shè)l×n的訪問矩陣Ml×n,其中對?i?[1,l],Mi是矩陣M的第i行,定義函數(shù)ρ將第i行映射到 相應(yīng)的 屬性名ai,ρ:ρ(i) →ai。最后將{Ml×n,ρ}以明文的形式作為訪問結(jié)構(gòu)。
(1)數(shù)據(jù)加密
②計算λi=Ml×n×v。
(3)生成索引向量。DO 根據(jù)拆分規(guī)則式(1)設(shè)置索引向量與關(guān)鍵字索引一同作為密文索引發(fā)送到EN。
5)查詢
(1)生成查詢陷門。DU 選擇關(guān)鍵字集合W,隨機(jī)選擇q,計算查詢陷門如式(5)所示:
(2)生成查詢向量。DU 根據(jù)拆分規(guī)則式(1)設(shè)置查詢向量將其與查詢陷門一起發(fā)送到EN。
6)密文搜索。EN 檢測查詢陷門與關(guān)鍵字索引能否成功匹配,驗證等式e(IWj,T1)e(I1,T3)=e(I2×I3,T2)是否成立,若成立則使用式(6)計算索引向量和查詢向量的相關(guān)分?jǐn)?shù):
將計算得到的相關(guān)分?jǐn)?shù)結(jié)果排序,僅返回Top-k文件密文CT,否則輸出⊥。
9)明文。DU 收到EN 返回的部分解密密文CPT后,計算明文m=并輸出。
1)關(guān)鍵字匹配正確性
檢查式(7)是否成立來判斷用戶生成的陷門和密文對應(yīng)的關(guān)鍵字是否匹配:
綜上,關(guān)鍵字匹配的正確性得證。
2)解密密文正確性
邊緣節(jié)點(diǎn)接收到DU 的部分解密密鑰后計算部分解密密文。邊緣節(jié)點(diǎn)輔助解密的正確性證明如下:
根據(jù)上述可得解密密文的正確性證明如下:
綜上,解密密文的正確性得證。
定理1若多項式時間內(nèi)的算法允許攻擊者A以可忽略的優(yōu)勢獲勝,則該方案具有IND-CKA 安全性。
1)初始化。輸入安全參數(shù)λ,選擇一個循環(huán)群G1,p是它的素數(shù)階,g是G1的生成元,隨機(jī)選擇α,β,μ?和哈希函數(shù)H:{0,1}*→,挑戰(zhàn)者 C 調(diào) 用SetUp(1λ) →(GP,KM)算法。最后生成系統(tǒng)的全局參數(shù)GP和主密鑰KM,GP由AA公開,KM由AA秘密保存。
2)查詢階段1。查詢階段1 包括私鑰查詢和陷門查詢。
4)查詢階段2。攻擊者A 重復(fù)進(jìn)行查詢階段1,查詢更多與w1、w2不同的關(guān)鍵字集合的搜索陷門。
5)猜測階段。攻擊者A 輸出b的一個猜想b'?{0,1},若b'=b,則攻擊者A 輸出b'=b的概率為,若b'≠b,則攻擊者A 輸出b'≠b的概率為因此攻擊者A 成功的優(yōu)勢如下:
由于攻擊者A 成功的優(yōu)勢是可忽略的,因此所提方案是安全的,證畢。
為了證明所提方案的有效性,進(jìn)行在線/離線加密、策略隱藏、搜索結(jié)果排序等方面的比較實(shí)驗,比較方案選擇文獻(xiàn)[12-14,19]方案,比較結(jié)果如表2 所示,其中,√表示具備該功能,×表示不具備該功能。
表2 功能比較Table 2 Function comparison
由表2 可知,除文獻(xiàn)[19]方案外的其他方案都支持多關(guān)鍵字搜索,從而提高了方案對文件檢索的準(zhǔn)確性,特別是文獻(xiàn)[14]方案和所提方案可以對搜索后得到的文件進(jìn)行Top-k排序,但只有所提方案在加密時引入了在線/離線加密機(jī)制,因而實(shí)現(xiàn)了較低的計算開銷。此外,在所提方案中,運(yùn)用邊緣節(jié)點(diǎn)輔助解密的設(shè)計,密文在被DU 解密之前會被EN 部分解密,大大減少了DU 的計算開銷,減輕了客戶端負(fù)擔(dān)。文獻(xiàn)[19]方案引入外包輔助加/解密的技術(shù),雖降低了客戶端的成本,但外包密鑰的生成和驗證需要額外的開銷導(dǎo)致效果不理想。文獻(xiàn)[12-13]方案并未實(shí)現(xiàn)對訪問策略的隱藏,對用戶的敏感信息有巨大的安全隱患。相比較而言,所提方案不僅可滿足多關(guān)鍵字的密文排序搜索,以及實(shí)現(xiàn)策略隱藏和細(xì)粒度訪問控制,同時與其他方案相比,在降低用戶開銷方面具有更好的性能。
將所提方案與文獻(xiàn)[12-14,19]方案在計算、存儲開銷方面進(jìn)行對比,結(jié)果如表3 和表4 所示,其中,分別表 示中元素 的長度,n1、n2分別表示訪問策略中的屬性個數(shù)、與用戶相關(guān)的屬性個數(shù),i表示關(guān)鍵字集中關(guān)鍵字的個數(shù),E1、E2表示G1、G2上的群指數(shù)運(yùn)算,P表示雙線性對運(yùn)算。
表3 計算開銷比較Table 3 Computational cost comparison
表4 存儲開銷比較Table 4 Storage cost comparison
對于計算開銷的比較,所提方案在加/解密階段采用了在線/離線加密技術(shù),與其他方案相比開銷較低。對于存儲開銷的比較,因為云服務(wù)器的存儲容量不受限,所以所提方案并不考慮云中的密文存儲開銷。由于用戶的密鑰長度只與屬性相關(guān),因此在所有方案中用戶只存儲其長度隨n2增加而線性增加的屬性。雖然當(dāng)屬性較少時所提方案需要的存儲空間較大,但是當(dāng)屬性數(shù)隨著n2線性增加時,所提方案的密鑰存儲開銷低于其他方案。以上表明,所提方案在計算和存儲開銷方面較其他方案有一定優(yōu)勢。
為了更準(zhǔn)確地評估方案的實(shí)際性能,實(shí)驗平臺配置在Intel?CoreTMi5-8250U CPU @ 160 GHz 8.00 GB RAM 的筆記本上,基于Java 配對加密庫(JPBC),采用Type A 型素數(shù)階橢圓曲線y2=x3+x進(jìn)行仿真實(shí)驗。為了方便定量分析,假定關(guān)鍵字集中關(guān)鍵字的數(shù)量為50,屬性數(shù)量的取值范圍為[10,50],當(dāng)屬性數(shù)量取值為10、20、30、40、50 時,各方案在加密和陷門生成階段的計算時間隨屬性數(shù)量的變化情況分別如圖2 和圖3 所示。
圖2 各方案加密階段的計算時間比較Fig.2 Comparison of computing time in encryption stage of each scheme
圖3 各方案陷門生成階段的計算時間比較Fig.3 Comparison of computing time in trapdoor generation stage of each scheme
由圖2 和圖3 可知,各方案的加密和陷門生成時間都與屬性數(shù)量成線性正比關(guān)系,所提方案在加密和陷門生成階段的計算時間相比于次優(yōu)的文獻(xiàn)[12]方案降低了10%和25%。在加密階段,雖然當(dāng)屬性數(shù)量較少時所提方案的計算時間不是最少,但隨著屬性數(shù)量的增加計算時間一直少于其他方案。在陷門生成階段,與其他方案相比,所提方案的計算時間一直保持在最低的常數(shù)級水平。
實(shí)驗結(jié)果分析表明,所提方案不僅實(shí)現(xiàn)了高效的多關(guān)鍵字搜索和密文的訪問控制,而且具有更好的性能和實(shí)用價值。
本文提出云邊協(xié)同下可排序的屬性基可搜索加密方案。采用在線/離線加密和邊緣節(jié)點(diǎn)輔助計算,在確定訪問策略前進(jìn)行預(yù)加密,通過將加密后的數(shù)據(jù)上傳到云端,與其對應(yīng)的加密索引上傳到最近的邊緣節(jié)點(diǎn)來降低用戶的計算負(fù)擔(dān)。將關(guān)鍵字拆分成關(guān)鍵字名和關(guān)鍵字值,用戶只能通過公開的關(guān)鍵字名進(jìn)行匹配,保證了方案安全性。在實(shí)現(xiàn)多關(guān)鍵字搜索的情況下對關(guān)鍵字的重要程度進(jìn)行排序,提高了搜索效率。分析與對比結(jié)果表明,所提方案滿足IND-CKA 安全性,并且與同類方案相比更具高效性。后續(xù)將進(jìn)一步加強(qiáng)所提方案的搜索效率及實(shí)用性。