本發(fā)明屬于數(shù)據(jù)的安全存儲和信息搜索領(lǐng)域,涉及一種仲裁可搜索加密方法。
背景技術(shù):
隨著大數(shù)據(jù)、云計算、物聯(lián)網(wǎng)等技術(shù)的快速發(fā)展和廣泛應(yīng)用,大量用戶產(chǎn)生的海量數(shù)據(jù)會被上傳至云服務(wù)器上進行存儲或者進行計算,以此來解決本地服務(wù)器或者個人電腦以及移動終端等設(shè)備的計算和存儲資源不足的問題。其中,物聯(lián)網(wǎng)技術(shù)使得更多的智能終端加入了互聯(lián)網(wǎng),并伴隨著更多的數(shù)據(jù)傳入云端。然而,當用戶數(shù)據(jù)上傳至第三方服務(wù)器時,用戶就失去了對數(shù)據(jù)的直接控制,而現(xiàn)有的第三方服務(wù)器大多數(shù)由商業(yè)公司運營,所以數(shù)據(jù)的安全和隱私面臨極大的挑戰(zhàn),例如個人電子醫(yī)療記錄、家庭智能終端上傳的視頻圖像等等,涉及到了人們生活的方方面面。當這些敏感數(shù)據(jù)被泄露時,對人們的生活甚至生命會造成威脅。
傳統(tǒng)的訪問控制技術(shù)和加密技術(shù)是用戶保護數(shù)據(jù)隱私性的主要方法。一個有效的訪問控制機制需要由一個完全可信的服務(wù)器和可信的管理人員來執(zhí)行,用戶和存儲數(shù)據(jù)的大小成為系統(tǒng)利用率的瓶頸,對現(xiàn)有的云計算環(huán)境是不適用的。加密技術(shù)為用戶數(shù)據(jù)提供了更強的保護,傳統(tǒng)的公鑰密碼或者對稱密碼技術(shù)對海量用戶在完成信息共享的影響很大,因為密鑰管理是關(guān)鍵問題之一,而且針對不同的用戶可能需要對同一份文件生成不同的密文,以保證數(shù)據(jù)安全,增加了存儲成本和計算成本。除此之外,當海量信息以密文的形式存儲在云端時,文件信息被隱藏,用戶可能需要下載一定數(shù)量的密文,解密后才能找到他的目標文件,這樣的成本消耗在云計算環(huán)境下是普通用戶難以承擔的。綜上所述,在大數(shù)據(jù)、云計算的技術(shù)背景下,傳統(tǒng)的訪問控制機制不能提供用戶細粒度訪問,加密技術(shù)不支持用戶細粒度的文件搜索。
基于上述兩個問題,我們需要在確保數(shù)據(jù)安全的前提下,使得用戶能快速地進行信息搜索。屬性加密(Attribute-Based Encryption,ABE)是一種基于策略的細粒度訪問控制加密方法,該方法具有可擴展性且在分布式環(huán)境下實現(xiàn)一對多加密的訪問控制機制,適用于在云環(huán)境中解決數(shù)據(jù)隱私安全問題。ABE分為基于密鑰策略的ABE(Key-Policy ABE,KP-ABE)和基于密文策略的ABE(CP-ABE),前者屬性集與密鑰相關(guān),后者屬性集與密文相關(guān)。從數(shù)據(jù)擁有者的角度來看,使用CP-ABE更適合進行數(shù)據(jù)的訪問控制,可以自由定義具有哪些屬性的用戶可以訪問該文件。由于每個用戶的權(quán)限是與自身的屬性相關(guān)聯(lián)的,如果數(shù)據(jù)擁者改變了密文所基于的訪問策略,使得一些用戶不再有權(quán)限對其訪問。現(xiàn)有屬性密碼的研究,作者Luan I等在文獻“Mediated Ciphertext-Policy Attribute-Based Encryption and Its Application”一文中,提出了帶仲裁的屬性加密機制,提出了密鑰分離,實現(xiàn)了即時的用戶撤銷;作者Hohenberger S等在文獻“Online/Offline Attribute-Based Encryption”中提出了基于屬性密碼的在線離線加密,使得細粒度的訪問控制技術(shù)適用于移動云環(huán)境中。中國專利CN103179114A提出了一種云存儲中實現(xiàn)數(shù)據(jù)細粒度訪問控制的方法,實現(xiàn)了用戶的權(quán)限撤銷,但沒有考慮外包解密;基于屬性加密機制,專利CN105592100A和CN104901942A對大數(shù)據(jù)的隱私保護提供了有效的方法,且都考慮到了外包解密和用戶撤銷,但不能在加密的數(shù)據(jù)上實現(xiàn)搜索功能,不能實現(xiàn)高效的用戶利用。
可搜索加密技術(shù)為人們提供了一種在密文形式的數(shù)據(jù)上進行信息檢索的方法,在不泄露加密數(shù)據(jù)文件關(guān)鍵信息的情況,也保證了用戶的搜索隱私。根據(jù)應(yīng)用環(huán)境的不同,可搜索加密技術(shù)可用于個人存儲和信息共享,其中,信息共享有兩種情況,一個是單個數(shù)據(jù)擁有者提供信息給多個用戶,另一個是多個數(shù)據(jù)擁有者提供信息給多個用戶。在現(xiàn)有的可搜索加密方案中,大多數(shù)都只考慮到了數(shù)據(jù)檢索,即搜索到目標文件時,就返回文件,使用傳統(tǒng)加密方法來進行解密,需要額外的密鑰管理開銷,且不能提供細粒度的訪問控制。當前研究如中國專利CN105763324A提出了一種可控制的可驗證多用戶端可搜索加密搜索方法,支持多用戶搜索和細粒度訪問控制,以及信息的完整性驗證。但用戶需要對數(shù)據(jù)明文和關(guān)鍵詞使用不同的加密方法,加重的數(shù)據(jù)擁有者的計算任務(wù);CN105897419A提出了一種多用戶動態(tài)關(guān)鍵詞可搜索加密方法,但沒有考慮到用戶撤銷和數(shù)據(jù)加密;CN104780161A提出了一種云存儲中基于多用戶的可搜索加密方法,但沒有對用戶進行細粒度控制,而且也沒有考慮到數(shù)據(jù)加密。此外,作者Wenhai Sun等在文獻“Protecting your right:Attribute-based keyword search with fine-grained owner-enforced search authorization in the cloud”中提出了基于屬性密碼的可搜索加密機制,支持用戶屬性撤銷,但需要更新所有合法的用戶私鑰和密文,使得系統(tǒng)的效率不夠高。
技術(shù)實現(xiàn)要素:
有鑒于此,本發(fā)明的目的在于提供一種仲裁可搜索加密方法,能夠支持在線離線加密和仲裁加密,適用于移動云計算環(huán)境并實現(xiàn)即時的用戶權(quán)限撤銷。
為達到上述目的,本發(fā)明提供如下技術(shù)方案:
一種仲裁可搜索加密方法,所述方法包括:
S1:系統(tǒng)初始化,可信屬性權(quán)威AA生成系統(tǒng)公共參數(shù),所述系統(tǒng)公共參數(shù)包括每個屬性的公/私鑰對和仲裁方Mediator的公/私鑰對;
S2:關(guān)鍵詞加密,數(shù)據(jù)擁有者加密關(guān)鍵詞,并把加密后的關(guān)鍵詞以安全索引的形式存儲到云服務(wù)器上;
S3:數(shù)據(jù)加密,數(shù)據(jù)擁有者加密文件,并把加密后的數(shù)據(jù)以密文的形式存儲到云服務(wù)器上;
S4:用戶密鑰生成,AA給合法用戶分配一個全局私鑰,并基于用戶的權(quán)限給其生成屬性私鑰,其中屬性私鑰包含兩個部分,分別發(fā)送給用戶和對應(yīng)的Mediator;
S5:搜索陷門Trapdoor生成,用戶向Mediator發(fā)送搜索請求,并在其協(xié)助下生成有效的搜索陷門;
S6:搜索數(shù)據(jù),Mediator將Trapdoor發(fā)送給云服務(wù)器,當且僅當用戶的屬性集滿足安全索引中的訪問結(jié)構(gòu),且搜索陷門中的關(guān)鍵詞與安全索引中的關(guān)鍵詞相同時,Mediator才能從云服務(wù)器得到返回的數(shù)據(jù)密文;
S7:數(shù)據(jù)解密,Mediator對得到的密文進行預(yù)解密,得到解密令牌,并將其發(fā)送給對應(yīng)的用戶,然后用戶用其私密值對解密令牌進行解密,得到數(shù)據(jù)明文;
S8:用戶撤銷,當用戶的權(quán)限發(fā)生變化時,仲裁不協(xié)助用戶生成有效的搜索陷門,使其不能檢索相關(guān)數(shù)據(jù)集。
進一步地:所述步驟S1包括如下步驟:
S11:AA初始化,輸入安全參數(shù),生成系統(tǒng)公共參數(shù),包括每個屬性的公/私鑰對;
S12:Mediator初始化,輸入公共參數(shù),AA生成Mediator的公/私鑰對。
進一步地:所述步驟S2包括如下步驟:
S21:離線關(guān)鍵詞加密,數(shù)據(jù)擁有者從AA處接收到系統(tǒng)公共參數(shù),生成中間安全索引II;
其中,步驟S21包括如下步驟:
S211:從數(shù)字集Zp中選取隨機數(shù)s作為加密指數(shù);
S212:選擇隨機數(shù)vk∈Zp,其中k∈{1,...,3n};
S213:計算
S214:輸出中間安全索引II;
S22:在線關(guān)鍵詞加密,輸入公共參數(shù)、關(guān)鍵詞、訪問結(jié)構(gòu)以及中間安全索引,數(shù)據(jù)擁有者生成完整的安全索引;
其中步驟S22包括如下步驟:
S221:數(shù)據(jù)擁有者從步驟S21中得到中間安全索引II;
S222:數(shù)據(jù)擁有者基于全局屬性集N,給數(shù)據(jù)定義一個訪問結(jié)構(gòu)GT=∧i∈Ni,GT由閾門“AND”來表示;
S223:計算Di,1和Di,2;
S224:輸出安全索引CTw;
S225:數(shù)據(jù)擁有者把安全索引CTw上傳到云服務(wù)器上;
S23:基于允許訪問該數(shù)據(jù)集的用戶,計算
S24:輸出用戶列表UL;
S25:基于與數(shù)據(jù)擁有者對應(yīng)的Mediator,計算
S26:數(shù)據(jù)擁有者將用戶列表UL和上傳至相關(guān)Mediator。
進一步地:所述步驟S3包括如下步驟:
S31:離線數(shù)據(jù)加密,數(shù)據(jù)擁有者從AA處接收到系統(tǒng)公共參數(shù)和每個屬性的公鑰,生成中間數(shù)據(jù)密文IC;
其中,步驟S31包括如下步驟:
S311:從數(shù)字集Zp中選取隨機數(shù)sm作為加密指數(shù);
S312:選擇隨機數(shù)hk∈Zp,其中k∈{1,...,3n};
S313:計算
S314:輸出中間數(shù)據(jù)密文IC;
S32:在線文件加密,輸入公共參數(shù)、關(guān)鍵詞、訪問結(jié)構(gòu)、數(shù)據(jù)明文以及中間數(shù)據(jù)密文,數(shù)據(jù)擁有者生成完整的數(shù)據(jù)密文;
其中,步驟S32包括如下步驟:
S321:數(shù)據(jù)擁有者從步驟S31中得到中間數(shù)據(jù)密文IC;
S322:數(shù)據(jù)擁有者從步驟S222中得到的訪問結(jié)構(gòu)GT;
S323:計算Ci,1和Ci,2;
S324:輸出數(shù)據(jù)密文CTm;
S325:數(shù)據(jù)擁有者把數(shù)據(jù)密文CTm上傳到云服務(wù)器上。
進一步地:所述步驟S4包括如下步驟:
S41:用戶加入系統(tǒng),向AA提交身份信息GID及其擁有的屬性集S進行注冊;
S42:AA認證用戶的合法性;
S43:若用戶合法,則為該用戶生成屬性私鑰和全局私鑰;若該用戶不合法,則拒絕加入系統(tǒng);
S44:AA對用戶的屬性私鑰進行密鑰分離,并分發(fā)給用戶和對應(yīng)的Mediator。
進一步地:所述步驟S5包括如下步驟:
S51:用戶向Mediator發(fā)送數(shù)據(jù)搜索請求;
S52:Mediator驗證用戶GID是否屬于用戶撤銷列表UL;
S53:若用戶不屬于UL,則繼續(xù)以下操作;若用戶屬于UL,Mediator終止操作;
S54:Mediator檢索用戶的屬性私鑰,生成Mediator端的中間陷門Tmed,并將其發(fā)送給用戶;
其中S54包括如下步驟:
S541:選取隨機數(shù)β∈Zp;
S542:計算Q1,對i∈N,計算Qi,1,QFi,1;
S543:輸出Tmed;
S55:接著用戶基于中間陷門Tmed,生成用戶端的中間陷門Tu,并將其返回給Mediator;
其中S55包括如下步驟:
S551:計算Q1,T1,對i∈N,計算Ti,1,TFi,1,Qi,2,QFi,2;
S552:輸出Tu;
S56:Mediator基于用戶端的中間陷門Tu,生成完整的搜索陷門T,將其發(fā)送給云服務(wù)器;
其中S56包括如下步驟:
S561:基于S541選取的隨機數(shù)β∈Zp,計算T0,對i∈N,計算Ti,2,TFi,2;
S562:輸出T;
S57:然后Mediator把T發(fā)送給云服務(wù)器。
進一步地:所述步驟S6包括如下步驟:
S61:云服務(wù)器收到來自Mediator的搜索陷門,開始檢索相應(yīng)的數(shù)據(jù)集;
S62:云服務(wù)器使用搜索陷門與安全索引進行匹配,若用戶的屬性集合滿足安全索引中的訪問結(jié)構(gòu),且搜索陷門中的關(guān)鍵詞與安全索引中的關(guān)鍵詞相同,那么返回該索引對應(yīng)的數(shù)據(jù)密文CTdata給Mediator;若不滿足,則返回為空;
其中步驟S62包括如下步驟:
S621:令訪問結(jié)構(gòu)GT中的屬性集合I={i:i∈N},且若根據(jù)訪問結(jié)構(gòu)GT,對i∈I,進行配對運算e(Di,Ti,1)和e(Di,Ti,2);對i∈N/I,進行配對運算e(Di,TFi,1)和e(Di,TFi,2);
S622:接著服務(wù)器分別計算多項式和并驗證等式是否成立;
S623:若成立,則返回對應(yīng)的數(shù)據(jù)密文CTdata;若不成立,則返回為空。
進一步地:所述步驟S7包括如下步驟:
S71:Mediator接收到云服務(wù)器返回的密文CTdata;
S72:Mediator利用與用戶交互的信息預(yù)解密生成解密令牌CTtoken;
其中,S72包括如下步驟:
S721:計算Q1';
S722:計算Qi,1',QFi,1';
S723:計算和
S724:計算
S725:輸出CTtoken,并將其返回給用戶;
S73:用戶接收到CTtoken,并解密得到m。
進一步地:所述步驟S8包括如下步驟:
S81:當用戶的權(quán)限發(fā)生變化時,數(shù)據(jù)擁有者更新用戶列表UL,并重新發(fā)送給對應(yīng)的Mediator;
S82:用戶GID向Mediator請求搜索陷門;
S83:若則Mediator拒絕與其協(xié)作生成有效的搜索陷門,同時刪除用戶UID的屬性私鑰。
本發(fā)明的有益效果在于:
基于在線/離線的屬性加密機制和仲裁加密機制,本發(fā)明提出了一個適用于霧計算環(huán)境的仲裁可搜索加密機制。Mediator是霧計算中的半可信霧結(jié)點,支持解密外包和高效的用戶撤銷。本發(fā)明基于同一密鑰對,即使用同一訪問結(jié)構(gòu)加密了數(shù)據(jù)明文和關(guān)鍵詞,用戶和仲裁可以使用搜索陷門來對安全索引和數(shù)據(jù)密文進行解密。在線離線加密機制使得本發(fā)明可以適用于計算資源和存儲資源小的移動終端。
在本發(fā)明中,利用密鑰分離把用戶的私鑰分為用戶端私鑰和Mediator端私鑰,其中用戶端私鑰由用戶存儲,而Mediator端私鑰由Mediator保存。因此,用戶和Mediator均具有部分的解密能力,但是其中任何一方都不具備完全解密密文的能力。用戶在Mediator的協(xié)助下生成搜索陷門,并且當且僅當用戶的屬性滿足安全索引中的訪問結(jié)構(gòu),且搜索陷門中的關(guān)鍵詞與安全索引中關(guān)鍵詞相同時,用戶才能得到解密令牌并正確解密密文。本發(fā)明充分利用了霧計算的特點,把解密密文過程中的大部分工作量都委托給了Mediator,而且Mediator只能部分解密密文,提高解密效率同時保證了系統(tǒng)安全。當數(shù)據(jù)擁有者更新數(shù)據(jù)集的用戶列表后,用戶權(quán)限發(fā)生變化,未在用戶列表內(nèi)的用戶將不能與Mediator進行交互產(chǎn)生有效搜索陷門。
附圖說明
為了使本發(fā)明的目的、技術(shù)方案和有益效果更加清楚,本發(fā)明提供如下附圖進行說明:
圖1為本發(fā)明的流程框圖;
圖2為系統(tǒng)初始化流程圖;
圖3為安全索引生成流程圖;
圖4為數(shù)據(jù)密文生成流程圖;
圖5為用戶私鑰生成流程圖;
圖6為搜索陷門生成流程圖;
圖7為搜索匹配過程流程圖;
圖8為數(shù)據(jù)解密流程圖;
圖9為用戶撤銷流程圖。
具體實施方式
下面將結(jié)合附圖,對本發(fā)明的優(yōu)選實施例進行詳細的描述。
本發(fā)明提供的基于仲裁屬性的在線離線的可搜索加密機制,包括以下步驟,參見圖1:
S1:系統(tǒng)初始化,生成系統(tǒng)公共參數(shù)(包括每個屬性的公/私鑰對)以及Mediator的公/私鑰對,參見圖2;
進一步,所述步驟S1包括如下步驟:
S11:系統(tǒng)初始化,輸入安全參數(shù)λ,生成系統(tǒng)公共參數(shù),系統(tǒng)主密鑰,其中系統(tǒng)公共參數(shù)包括兩個階為p的雙線性群G和GT、G中的生成元g和雙線性映射e:G×G→GT,哈希函數(shù)H:{0,1}*→Zp,以及每個屬性的公/私鑰對,令i表示屬性,選擇隨機數(shù)t1,...,t3n∈Zp,計算其中k∈{1,...,3n}。然后選取y∈Zp,計算Y=e(g,g)y。輸出公共參數(shù)PP=(p,g,H,Y,{A1,...,A3n}),主密鑰MSK=(y,{t1,...,t3n});
S12:選擇γ∈Zp,計算PPmed=Y(jié)γ,輸出Mediator的公/私鑰對為(γ,PPmed)。
S2:關(guān)鍵詞加密,數(shù)據(jù)擁有者加密關(guān)鍵詞,并把加密后的關(guān)鍵詞以安全索引的形式存儲到云服務(wù)器上,參見圖3;
進一步,所述步驟S2包括如下步驟:
S21:數(shù)據(jù)擁有者從AA處接收到系統(tǒng)公共參數(shù)PP;
S22:選擇隨機數(shù)s∈Zp,計算D0=Y(jié)s,和
S23:數(shù)據(jù)擁有者基于全局屬性集N,對于k∈{1,...,3n},選擇隨機數(shù)vk∈Zp,計算輸出IIatt=({vk,Dk}k∈{1,...,3n})。
S25:輸出中間安全索引
S26:數(shù)據(jù)擁有者確定一個訪問結(jié)構(gòu)GT和關(guān)鍵詞w,并根據(jù)GT隨機選擇并計算特別地,對于i'∈N,計算Di',2=(s-vi')/H(w)。
S27:輸出安全索引
S28:基于與數(shù)據(jù)擁有者對應(yīng)的Mediator,計算
S29:數(shù)據(jù)擁有者將上傳至相關(guān)Mediator。
S3:數(shù)據(jù)加密,數(shù)據(jù)擁有者加密文件,并把加密后的文件以密文的形式存儲到云服務(wù)器上,參見圖4;
進一步,所述步驟S3包括如下步驟:
S31:數(shù)據(jù)擁有者從AA處接收到系統(tǒng)公共參數(shù)PP;
S32:選擇隨機數(shù)sm∈Zp,計算和
S33:數(shù)據(jù)擁有者基于全局屬性集N,對于k∈{1,...,3n},選擇隨機數(shù)hk∈Zp,計算輸出ICatt=({hk,Ck}k∈{1,...,3n});
S34:輸出中間密文
S35:基于步驟S26中的GT和關(guān)鍵詞w,選擇并計算特別地,對于i'∈N,計算Ci',2=(sm-hi')/H(w),然后計算Cm=mC0。
S36:輸出數(shù)據(jù)密文
S37:輸出完整密文CT=(GT,CTw,CTm),并上傳至云服務(wù)器。
S4:用戶密鑰生成,AA給合法用戶分配一個全局私鑰,并基于用戶的權(quán)限給其生成屬性私鑰,其中屬性私鑰包含兩個部分,分別發(fā)送給用戶和對應(yīng)的Mediator,參見圖5;
進一步,所述步驟S4包括如下步驟:
S41:用戶加入系統(tǒng),向AA提交身份信息GID以及擁有的屬性集S進行注冊;
S42:AA認證用戶的合法性;
S43:若用戶合法,則為該用戶生成屬性私鑰和全局私鑰;若該用戶不合法,則拒絕加入系統(tǒng)。選擇隨機數(shù)u∈Zp,計算用戶公鑰PPUID=Y(jié)u;
S44:選取隨機數(shù)ri,xi∈Zp,計算以及
S45:計算K1=gy-r,其中
S46:輸出以及其中
S47:數(shù)據(jù)擁有者計算并輸出用戶列表并上傳至相應(yīng)的Mediator。
S5:搜索陷門(Trapdoor)生成,用戶向Mediator發(fā)送搜索請求,并在其協(xié)助下生成有效的搜索陷門,參見圖6。
進一步,所述步驟S5包括如下步驟:
S51:用戶向Mediator發(fā)送數(shù)據(jù)搜索請求;
S52:Mediator驗證用戶GID是否屬于用戶撤銷列表(UL);
S53:若用戶不屬于UL,則繼續(xù)以下操作;若用戶屬于UL,Mediator終止操作;
S54:Mediator檢索用戶的屬性私鑰,選擇隨機數(shù)β∈Zp,計算和
S55:輸出Mediator端陷門份額Tmed=(Q1,{Qi,1,QFi,1}i∈N),并將其發(fā)送給對應(yīng)用戶;
S56:用戶接收到Mediator端陷門Tmed后,選擇隨機數(shù)α∈Zp,并計算Q0=u+α,然后計算特別地,
S57:輸出Tu=(Q0,T1,{Ti,1,TFi,1,Qi,2,QFi,2}i∈N),并將其發(fā)送給Mediator;
S58:基于S54選擇的隨機數(shù)β∈Zp,和S12選擇的γ∈Zp,計算T0=βQ0+γ,然后計算
S59:輸出完整搜索陷門并將其發(fā)送給云服務(wù)器。
S6:搜索數(shù)據(jù),Mediator將Trapdoor發(fā)送給云服務(wù)器,當且僅當用戶的屬性集滿足安全索引中的訪問結(jié)構(gòu),且搜索陷門中的關(guān)鍵詞與安全索引中關(guān)鍵詞相同時,Mediator才能從云服務(wù)器得到返回的數(shù)據(jù)密文,參見圖7。
進一步,所述步驟S6包括如下步驟:
S61:云服務(wù)器收到來自Mediator的搜索陷門,開始檢索相應(yīng)的數(shù)據(jù)集;
S62:云服務(wù)器使用搜索陷門與安全索引進行匹配,計算對于屬性i屬于GT,計算和對于屬性i不屬于GT,計算和
S63:云服務(wù)器計算和驗證下列等式是否成立
其中對于b∈{1,2},有
S64:若等式成立,云服務(wù)器計算輸出數(shù)據(jù)密文并將其發(fā)送給Mediator。
S7:數(shù)據(jù)解密,Mediator對得到的密文進行預(yù)解密,得到解密令牌,并將其發(fā)送給對應(yīng)的用戶,然后用戶用其私密值對解密令牌進行解密,得到數(shù)據(jù)明文,參見圖8。
進一步,所述步驟S7包括如下步驟:
S71:Mediator接收到數(shù)據(jù)密文CTdata,計算解密令牌。首先計算然后對于i屬于GT,計算對于i不屬于GT,計算最后計算
輸出解密令牌并發(fā)送給用戶;
S72:用戶使用自己的隨機私密值計算得到明文m。
S8:用戶撤銷,當用戶的權(quán)限發(fā)生變化時,仲裁不協(xié)助用戶生成有效的搜索陷門,使其不能檢索相關(guān)數(shù)據(jù)集,參見圖9。
本發(fā)明的有益效果在于:
基于在線/離線的屬性加密機制和仲裁加密機制,本發(fā)明提出了一個適用于霧計算環(huán)境的仲裁可搜索加密機制。Mediator是霧計算中的半可信霧結(jié)點,支持解密外包和高效的用戶撤銷。本發(fā)明基于同一密鑰對,即使用同一訪問結(jié)構(gòu)加密了數(shù)據(jù)明文和關(guān)鍵詞,用戶和仲裁可以使用搜索陷門來對安全索引和數(shù)據(jù)密文進行解密。在線離線加密機制使得本發(fā)明可以適用于計算資源和存儲資源小的移動終端。
在本發(fā)明中,利用密鑰分離把用戶的私鑰分為用戶端私鑰和Mediator端私鑰,其中用戶端私鑰由用戶存儲,而Mediator端私鑰由Mediator保存。因此,用戶和Mediator均具有部分的解密能力,但是其中任何一方都不具備完全解密密文的能力。用戶在Mediator的協(xié)助下生成搜索陷門,并且當且僅當用戶的屬性滿足安全索引中的訪問結(jié)構(gòu),且搜索陷門中的關(guān)鍵詞與安全索引中關(guān)鍵詞相同時,用戶才能得到解密令牌并正確解密密文。本發(fā)明充分利用了霧計算的特點,把解密密文過程中的大部分工作量都委托給了Mediator,而且Mediator只能部分解密密文,提高解密效率同時保證了系統(tǒng)安全。當數(shù)據(jù)擁有者更新數(shù)據(jù)集的用戶列表后,用戶權(quán)限發(fā)生變化,未在用戶列表內(nèi)的用戶將不能與Mediator進行交互產(chǎn)生有效搜索陷門。
最后說明的是,以上優(yōu)選實施例僅用以說明本發(fā)明的技術(shù)方案而非限制,盡管通過上述優(yōu)選實施例已經(jīng)對本發(fā)明進行了詳細的描述,但本領(lǐng)域技術(shù)人員應(yīng)當理解,可以在形式上和細節(jié)上對其作出各種各樣的改變,而不偏離本發(fā)明權(quán)利要求書所限定的范圍。