国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

云存儲(chǔ)下的多用戶密鑰聚合的關(guān)鍵字可搜索加密方案

2020-09-30 04:08王戌琦程相國(guó)程潤(rùn)輝
關(guān)鍵詞:擁有者關(guān)鍵字群組

王戌琦,程相國(guó),程潤(rùn)輝

(1.青島大學(xué)計(jì)算機(jī)科學(xué)技術(shù)學(xué)院,青島266071;2.新華社手機(jī)電視臺(tái),北京100803)

云存儲(chǔ)所具有的強(qiáng)大的分布式存儲(chǔ)能力,更低的成本,更高的靈活性,以及按需購(gòu)買使用的方式,使得越來(lái)越多的研究者將目光投向這個(gè)領(lǐng)域?,F(xiàn)階段,幾乎所有的企業(yè)都會(huì)使用云來(lái)備份企業(yè)數(shù)據(jù)資料,企業(yè)用戶也使用云在公司內(nèi)部分享資源數(shù)據(jù)。在生活中,每天有數(shù)百萬(wàn)用戶通過(guò)基于云存儲(chǔ)的社交網(wǎng)絡(luò)應(yīng)用(如Facebook,微博等)與朋友家人分享個(gè)人數(shù)據(jù)。雖然云存儲(chǔ)給共享數(shù)據(jù)帶來(lái)了便利,但也帶來(lái)了安全問(wèn)題和隱私泄露等風(fēng)險(xiǎn)。惡意攻擊者或惡意的云存儲(chǔ)服務(wù)提供商會(huì)導(dǎo)致嚴(yán)重的個(gè)人隱私或商業(yè)秘密泄露的問(wèn)題。為了保護(hù)用戶隱私,通常的做法是數(shù)據(jù)擁有者將需要共享的數(shù)據(jù)進(jìn)行加密然后上傳到云,之后將密鑰分發(fā)給要共享數(shù)據(jù)的人,這樣持有密鑰的人可以進(jìn)行檢索和解密[1]。但是數(shù)據(jù)加密會(huì)導(dǎo)致檢索困難,用戶檢索能力因此受到限制??伤阉骷用芊桨附鉀Q了這個(gè)問(wèn)題,數(shù)據(jù)擁有者加密潛在的關(guān)鍵字和數(shù)據(jù),并將加密后的內(nèi)容上傳到云,用戶可以將對(duì)應(yīng)的關(guān)鍵字陷門發(fā)送給云以實(shí)現(xiàn)對(duì)加密數(shù)據(jù)的檢索。盡管上述方案可以解決基本的云存儲(chǔ)安全需求,但如果涉及到大規(guī)模用戶群體和大量文件集合應(yīng)用的系統(tǒng)實(shí)現(xiàn)時(shí),密鑰的分發(fā)、傳輸保存和管理就將成為一個(gè)很難解決的問(wèn)題。假設(shè)一種情景,數(shù)據(jù)擁有者選擇性地與不同用戶群組共享大量的加密數(shù)據(jù)。通常情況下,數(shù)據(jù)擁有者要為不同的文件使用不同的加密密鑰,且給每個(gè)用戶分發(fā)與共享文件數(shù)量線性相關(guān)的私鑰數(shù)量,這樣導(dǎo)致通信開(kāi)銷和用戶密鑰存儲(chǔ)開(kāi)銷較大以及用戶密鑰管理困難的問(wèn)題。另外,用戶若想實(shí)現(xiàn)對(duì)加密文件進(jìn)行關(guān)鍵字搜索,需要計(jì)算和提交大量的陷門給云,這對(duì)用戶和云都帶來(lái)了很大的負(fù)擔(dān),當(dāng)文件數(shù)量規(guī)模較大時(shí),上述方案將不再適用。多用戶可搜索加密方案[2-4]中使用廣播加密[5,6]來(lái)實(shí)現(xiàn)用戶對(duì)共享文件的訪問(wèn)控制,但并沒(méi)有減少共享密鑰和陷門的數(shù)量,在聚合密鑰加密方案[7]的啟發(fā)下,Cui等[8]提出了密鑰聚合可搜索加密(KASE)方案來(lái)解決任意群組用戶共享大量加密文件的關(guān)鍵字搜索帶來(lái)的密鑰冗余問(wèn)題。Zhou等[9]指出了KASE 方案的安全性缺陷,并提供了切實(shí)可行的陷門攻擊模型。KASE方案需要在系統(tǒng)建立階段規(guī)定最大文件上限數(shù)量,考慮到文件數(shù)量的增長(zhǎng)性以及用戶密鑰的時(shí)效性,如果文件數(shù)量超過(guò)規(guī)定閾值或者用戶密鑰(不再安全)需要更新時(shí),則需要重新構(gòu)建系統(tǒng)并生成系統(tǒng)參數(shù)和數(shù)據(jù)擁有者的公私鑰,這樣會(huì)產(chǎn)生較大的計(jì)算和通信開(kāi)銷??紤]到現(xiàn)實(shí)場(chǎng)景,分享的文件的數(shù)量應(yīng)是沒(méi)有限制而且可以動(dòng)態(tài)增長(zhǎng)的。一般情況下,數(shù)據(jù)擁有者與用戶共享文件時(shí),是以用戶群組為單位共享的,并且群組的數(shù)量遠(yuǎn)少于文件的數(shù)量。本文在文獻(xiàn)[8]、[9]基礎(chǔ)上,借鑒云訪問(wèn)控制以及多用戶可搜索加密(MUSE)方案[10-13],參照門限秘密共享的加密方案[14-16]和廣播加密方案[17-20]構(gòu)造了一個(gè)共享文件數(shù)量可動(dòng)態(tài)增長(zhǎng)的聚合密鑰的關(guān)鍵字可搜索加密方案,該方案可抵抗文獻(xiàn)[9]方案中提到的陷門攻擊,無(wú)需在系統(tǒng)建立時(shí)設(shè)置文件數(shù)量的上限,用戶只需要保存一個(gè)固定長(zhǎng)度的聚合密鑰,調(diào)整用戶分享文件的權(quán)限時(shí),只需在云服務(wù)器修改相應(yīng)的增量即可。本文方案適用于更細(xì)粒度的云訪問(wèn)控制的可搜索加密的應(yīng)用,支持分享文件數(shù)量動(dòng)態(tài)增長(zhǎng)的情形。與已有方案[10-12]相比,本方案部署較為簡(jiǎn)單,計(jì)算開(kāi)銷較小,有良好的應(yīng)用前景。

1 預(yù)備知識(shí)

1.1 判定Diffie-Hellman(DDH)問(wèn)題

設(shè)G 為素?cái)?shù)p 階的乘法循環(huán)群,g 是群G 的一個(gè)生成元,給定四元組(g,ga,gb,gc),其中a,b,c ∈Zp,判定c=ab(mod p)是否成立。

1.2 群上的多項(xiàng)式秘密共享

文獻(xiàn)[16]使用了一個(gè)群上多項(xiàng)式插值構(gòu)造秘密共享來(lái)構(gòu)造門限的簽名方案。

秘密分發(fā):設(shè)G 是一個(gè)q 階循環(huán)群,任選s∈G?為要分享的秘密,選擇t,n∈,滿足1≤t≤n<q,隨機(jī)選取F1,F(xiàn)2,…,F(xiàn)t-1∈G ,然后定義群上的類多項(xiàng)式函數(shù)(polynomial-like function,PLF)F:N ∪{0}→G ,令,為每個(gè)成員計(jì)算秘密值si=F(i),并且發(fā)送給成員i。

2 具體方案

2.1 結(jié)構(gòu)介紹與方案描述

數(shù)據(jù)擁有者要與用戶通過(guò)公共云存儲(chǔ)服務(wù)分享一些機(jī)密文件,傳統(tǒng)方法是數(shù)據(jù)擁有者使用不同的密鑰對(duì)不同的文件加密,上傳加密后的文件至云服務(wù)器,數(shù)據(jù)擁有者與用戶分享加密數(shù)據(jù)時(shí),需要把所有可搜索加密的安全密鑰發(fā)送給用戶,用戶收到密鑰后需要安全的保存,當(dāng)用戶執(zhí)行關(guān)鍵字搜索時(shí),必須使用這些密鑰來(lái)生成所有的關(guān)鍵字陷門。當(dāng)文件和關(guān)鍵字?jǐn)?shù)量均較多時(shí),會(huì)使得用戶密鑰存儲(chǔ)開(kāi)銷和陷門生成的計(jì)算開(kāi)銷隨之增大。

本文所提的方案能更好的解決這個(gè)問(wèn)題,數(shù)據(jù)擁有者只需給用戶分配一個(gè)聚合密鑰,而不是與用戶分享文件數(shù)量線性相關(guān)的密鑰,用戶也僅需要提交一個(gè)單獨(dú)的陷門給云服務(wù)器,方案結(jié)構(gòu)如圖1所示。

在描述前,給出方案常用符號(hào)釋義,如表1所示。

(1)系統(tǒng)建立(1λ):輸入安全參數(shù)1λ,生成q 階乘法循環(huán)群G 和p 階乘法循環(huán)群G1,其中q|p-1,隨機(jī)選擇一個(gè)生成元g ∈G1,PKG 選取單向哈希函數(shù)H:{0,1}?→G。 公布系統(tǒng)參數(shù)(q,p,g,G,G1,H)。

(2)密鑰生成:隨機(jī)選擇F1,F(xiàn)2,…,F(xiàn)t,s0∈G?,定義群上的類多項(xiàng)式函數(shù)Func:N ∪{0}→G ,令,數(shù)據(jù)擁有者的私鑰一部分為s0,且gF(0)=gs0。隨機(jī)選取t個(gè)數(shù)xi∈,構(gòu)成集合Xt={x1,x2,…,xt},生成公鑰PK={gs0,gF(x1),gF(x2),…,gF(xt)},再次隨機(jī)選擇t個(gè)不同的數(shù)ωi∈,生成私鑰msk={s0,gF(ω1),gF(ω2),…,gF(ωt)},用戶最大分組數(shù)為t,i為用戶所屬群組。

表1 常用符號(hào)

(3)私鑰提取(msk,j):數(shù)據(jù)擁有者使用該算法生成聚合密鑰Kagg,為分組j 的用戶計(jì)算任選αj∈作為用戶私鑰一部分skj,則第j 群組中用戶的聚合密鑰為

(4)加密(PK,skj,l):數(shù)據(jù)擁有者使用該算法在上傳第l 個(gè)文件時(shí)加密數(shù)據(jù)并為用戶j 生成關(guān)鍵字密文。任 選kl∈,kl作為該文件的可搜索加密的密鑰。為授權(quán)分組j計(jì)算Δl,j=,并公開(kāi)存放在云上,關(guān)鍵字w 的密文為cw=gkl(H(w)+s0)。

(5)陷門生成(Kagg, w):用戶使用該算法生成陷門來(lái)執(zhí)行關(guān)鍵字搜索,Kagg=(K1,K2),為關(guān)鍵字生成唯一陷門

(6)測(cè)試(Tr,j,l):輸入用戶群組j,云服務(wù)器使用該算法在第l個(gè)文件上進(jìn)行關(guān)鍵字搜索,將陷門Tr和Δl,j=(c1,c2)作為輸入,計(jì)算c′w=Trc2·c1。 然后判定c′w是否等于cw。

(7)更新(Δl,i,j,l):數(shù)據(jù)擁有者使用該算法調(diào)整用戶群組對(duì)文件的共享權(quán)限,輸入用戶群組j 和文件l,撤銷用戶群組j 對(duì)文件l的分享權(quán)限。任選Δk ∈Z?q,可搜索加密密鑰更新為kl·Δk,對(duì)云服務(wù)器存儲(chǔ)的文件l的增量Δl,i=(c1,c2)計(jì)算,其中i≠j,保存更新后的最后,更新關(guān)鍵字密文:。 云服務(wù)器刪除增量Δl,j。

2.2 正確性分析

方案要求任何擁有聚合密鑰的用戶都對(duì)其所屬群組授權(quán)的共享文件進(jìn)行關(guān)鍵字搜索,云服務(wù)器收到用戶提交的陷門Tr 后,根據(jù)用戶所屬的組別j,對(duì)第l個(gè)文件執(zhí)行測(cè)試操作,進(jìn)行關(guān)鍵字搜索

云服務(wù)器計(jì)算得到的關(guān)鍵字密文:c′w=gkl(H(w)+s0)=cw。

2.3 安全性分析

為分析方案的安全性,應(yīng)假設(shè)公有云是“誠(chéng)實(shí)且好奇”的,即要求云可以提供方案的要求的合法服務(wù),盡管它可能試圖根據(jù)其所獲得的信息恢復(fù)密文。假設(shè)用戶可能嘗試查詢本群組之外的授權(quán)數(shù)據(jù)或其他群組的授權(quán)數(shù)據(jù)。借鑒文獻(xiàn)[8]和文獻(xiàn)[17]方案的安全性證明,從查詢的隱私性和搜索有限性進(jìn)行安全性分析。

定理1方案可保證用戶的查詢隱私,且攻擊者無(wú)法從存儲(chǔ)的關(guān)鍵字密文和相關(guān)公共信息中確定文檔中的關(guān)鍵字。

由拉格朗日插值公式可知:

證明:攻擊者(與云服務(wù)器同謀)可以嘗試猜測(cè)用戶查詢的關(guān)鍵字信息。由關(guān)鍵字密文cw=gkl(H(w)+s0)∈G1以及用戶提交的陷門Tr推測(cè)H(w),但只有解決了離散對(duì)數(shù)問(wèn)題才能成功計(jì)算得到H(w),故攻擊者通過(guò)上述方法計(jì)算得到H(w)是困難的。故定理1得證。由定理1的證明,可以推導(dǎo)引理1。

引理1 攻擊者不能通過(guò)提交相同H(w)的方法恢復(fù)合法用戶的聚合密鑰。

證明:文獻(xiàn)[8]提供了一種針對(duì)KASE方案的攻擊模型,當(dāng)惡意攻擊者A 和受攻擊者B 所共享的文件有交叉時(shí),即設(shè)D 為共享文件的集合,DA∩DB≠? 。那么,攻擊者在竊取用戶提交的陷門Tr之后,猜測(cè)共享文件Yl∈DA∩DB中關(guān)鍵字w 的H(w)值,通過(guò)計(jì)算并多次向云提交驗(yàn)證的方式得到合法用戶的聚合密鑰。而在本方案中,攻擊者若利用H(w)從用戶提交的陷門中獲得用戶的聚合密鑰,應(yīng)首先獲知用戶密鑰的一部分gαj或者成功解決離散對(duì)數(shù)問(wèn)題,在這種情況下,攻擊者若要發(fā)起成功的攻擊必須首先解決離散對(duì)數(shù)難題,故引理1得證。

定理2即便云服務(wù)器與授權(quán)用戶同謀,用戶也無(wú)法對(duì)授權(quán)文件以外的文件進(jìn)行關(guān)鍵字查詢。

證明:好奇的云服務(wù)器可能試圖從存儲(chǔ)的數(shù)據(jù)和用戶提交的陷門中學(xué)習(xí)一些東西。云服務(wù)器與用戶j同謀時(shí),令用戶分組j 的聚合密鑰為,其中秘密份額F(ωj)是由一個(gè)隨機(jī)的t階拉格朗日插值公式生成的,且αj,s0∈是隨機(jī)選取的。令αj=a,,s0=b,則可生成元組(ga,gaP(j),gab),然后將元組(ga,gaP(j),C)發(fā)送給攻擊者,如果攻擊者可以正確判斷C 是否等于gab,則方案不安全,且可以利用攻擊者的攻擊結(jié)果構(gòu)造算法D 解決DDH 問(wèn)題??紤]一種極端情況,若云服務(wù)器與全部用戶合謀,可獲得元組(ga,gaP(1),gaP(2),…,gaP(t),gab),若攻擊者可以區(qū)分gab和任一隨機(jī)元素,則方案不安全。同理,可以利用攻擊者的攻擊結(jié)果構(gòu)造算法D′解決DDH 問(wèn)題。因?yàn)椴淮嬖诙囗?xiàng)式時(shí)間算法可以解決DDH 問(wèn)題,所以即便云與所有用戶同謀也無(wú)法推得gab,故無(wú)法使用結(jié)果計(jì)算關(guān)鍵字密文gab·gaH(w)以進(jìn)行關(guān)鍵字搜索。故定理2得證。

引理2攻擊者無(wú)法使用公開(kāi)信息和已知的聚合密鑰生成新的聚合密鑰。

證明:只有當(dāng)攻擊者獲得每個(gè)文件的可搜索加密密鑰k 時(shí),才可以嘗試生成新的密鑰。在定理1和定理2成立的前提下,k 和gs0的計(jì)算是困難的,故攻擊無(wú)法生成新的密鑰。

2.4 效率分析

本方案實(shí)現(xiàn)了恒定大小的關(guān)鍵字密文、陷門和聚合密鑰設(shè)計(jì)。相比于KASE 方案,本方案雖然使得文件的增量Δ 數(shù)量與用戶數(shù)量線性相關(guān)且增加了用戶群組數(shù)量的限制,但解除了文件數(shù)量的限制,數(shù)據(jù)擁有者可以與授權(quán)的用戶分享任意數(shù)量的文件。在具體環(huán)境中,應(yīng)用前景廣闊??紤]到存儲(chǔ)開(kāi)銷,由于文件增量Δ 由云服務(wù)器保存,本地用戶沒(méi)有存儲(chǔ)負(fù)擔(dān)。在計(jì)算上,相比于已有的聚合密鑰方案,本方案在加解密階段沒(méi)有使用雙線性配對(duì)計(jì)算,且不需要在關(guān)鍵詞搜索步驟執(zhí)行調(diào)整算法,一定程度上減少了數(shù)據(jù)擁有者的生成關(guān)鍵字密文的計(jì)算開(kāi)銷,也減少了云服務(wù)器運(yùn)行調(diào)整算法的計(jì)算開(kāi)銷。

將本方案與KASE[8]和Fc-MKA-KSE[9]方案在計(jì)算存儲(chǔ)開(kāi)銷和系統(tǒng)特性等方面進(jìn)行比較,令M 表示群G 上的乘法,M1表示群G1上的乘法,E1為群G1上的指數(shù)運(yùn)算,設(shè)群G2為素?cái)?shù)p′階的乘法循環(huán)群,則有雙線性映射e:G1×G1→G2。M2表示群G2上的乘法,E2為群G2上的指數(shù)運(yùn)算,P 表示雙線性配對(duì)運(yùn)算。令S 為授權(quán)文件數(shù)量,n 為文件的上限值,t表示拉格朗日插值公式的階數(shù),方案對(duì)比如表2所示。

在本方案中,系統(tǒng)建立,密鑰生成,私鑰提取,加密和更新算法需要數(shù)據(jù)擁有者執(zhí)行,其中加密算法可以由云服務(wù)器協(xié)助完成,測(cè)試算法由云服務(wù)器執(zhí)行,陷門生成算法由用戶執(zhí)行。

通過(guò)實(shí)驗(yàn)仿真來(lái)驗(yàn)證上述計(jì)算效率分析。仿真環(huán)境:Intel Core i5-5200U 2.20GHz處理器,4G 內(nèi)存;操作系統(tǒng):Ubuntu 18.04 LTS;代碼庫(kù):The GNU Multiple Precision Arithmetic Library(GMP)。

表2 本方案與其他方案的性能比較

數(shù)據(jù)擁有者需要執(zhí)行系統(tǒng)建立,密鑰生成,私鑰提取,加密和更新算法。如圖2(a)圖2(b)和圖2(c)所示,系統(tǒng)建立,密鑰生成和私鑰提取算法與最大用戶數(shù)量線性相關(guān);加密算法的計(jì)算時(shí)間耗費(fèi)與文件數(shù)量和最大用戶數(shù)量線性相關(guān),圖2(e)表示在1000個(gè)用戶情況下文件數(shù)量的變化對(duì)加密時(shí)間耗費(fèi)的影響,圖2(f)表示在1000個(gè)文件情況下最大用戶數(shù)量變化對(duì)加密時(shí)間耗費(fèi)的影響。

表3 陷門生成和測(cè)試算法的計(jì)算耗時(shí)

云服務(wù)器可以使用公鑰PK={gs0,gF(x1),gF(x2),…,gF(xt)}進(jìn)行增量的輔助計(jì)算,以分擔(dān)加密算法中數(shù)據(jù)擁有者的部分計(jì)算量,這并不會(huì)降低系統(tǒng)的安全強(qiáng)度。在云服務(wù)器輔助下,執(zhí)行加密算法時(shí),如圖2(g)和圖2(h)所示,云的計(jì)算時(shí)間耗費(fèi)與用戶數(shù)量線性相關(guān),數(shù)據(jù)擁有者的計(jì)算時(shí)間耗費(fèi)與文件數(shù)量線性相關(guān),雖然增加了云的計(jì)算量,但是顯著降低了數(shù)據(jù)擁有者的計(jì)算開(kāi)銷,在系統(tǒng)部署時(shí),可以權(quán)衡數(shù)據(jù)擁有者的計(jì)算能力和云服務(wù)器的計(jì)算能力靈活調(diào)整加密方式;如圖2(d)所示,更新算法與服務(wù)器存量的增量的數(shù)量線性相關(guān)。如圖2(i)和圖2(j)所示,云執(zhí)行的測(cè)試算法和用戶執(zhí)行的陷門生成算法的計(jì)算時(shí)間耗費(fèi)都是固定值,與文件數(shù)量和用戶數(shù)量無(wú)關(guān)。

3 結(jié)論

本文給出了MU-KA-KSE的算法構(gòu)造以及安全性證明。分析和仿真實(shí)驗(yàn)表明,本方案可以構(gòu)建基于公共云的高效數(shù)據(jù)共享的系統(tǒng)。MU-KA-KSE 在保證安全的前提下,解決了之前方案中存在的文件上限問(wèn)題,在云服務(wù)器計(jì)算和存儲(chǔ)能力支持的前提下,數(shù)據(jù)擁有者可以與用戶分享任意數(shù)量的文件,并且調(diào)整文件分享權(quán)限且無(wú)需更新密鑰。當(dāng)與少量用戶分享數(shù)據(jù)時(shí),本方案的綜合性能表現(xiàn)要優(yōu)于KASE 與Fc-MKAKSE的方案,但當(dāng)用戶量較大的時(shí)候,云服務(wù)器需要計(jì)算并保存大量的預(yù)設(shè)增量,這無(wú)疑會(huì)給服務(wù)器帶來(lái)較大的負(fù)擔(dān)。如何減少增量的數(shù)量和解除用戶數(shù)量的限制是未來(lái)的工作方向,方案需要進(jìn)一步擴(kuò)展。

猜你喜歡
擁有者關(guān)鍵字群組
履職盡責(zé)求實(shí)效 真抓實(shí)干勇作為——十個(gè)關(guān)鍵字,盤(pán)點(diǎn)江蘇統(tǒng)戰(zhàn)的2021
群組推薦系統(tǒng):現(xiàn)狀與展望
成功避開(kāi)“關(guān)鍵字”
智能垃圾箱
塘沽区| 敦煌市| 阿合奇县| 桐庐县| 融水| 衡南县| 天祝| 余姚市| 民乐县| 虎林市| 东乡县| 河池市| 陵水| 天镇县| 文水县| 普兰店市| 始兴县| 蒲江县| 福贡县| 定日县| 深圳市| 华安县| 盖州市| 克拉玛依市| 军事| 清远市| 北票市| 名山县| 集安市| 马龙县| 怀宁县| 那曲县| 遂昌县| 宁南县| 永清县| 四会市| 阿拉善左旗| 丰都县| 三台县| 通城县| 南阳市|