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

?

支持密鑰更新與審計者更換的云安全審計方案

2022-10-14 06:02:20陳珍珠付安民
計算機(jī)研究與發(fā)展 2022年10期
關(guān)鍵詞:密鑰標(biāo)簽證據(jù)

周 磊 陳珍珠 付安民 蘇 铓 俞 研

1(南京理工大學(xué)計算機(jī)科學(xué)與工程學(xué)院 南京 210094) 2(廣西可信軟件重點實驗室(桂林電子科技大學(xué)) 廣西桂林 541004)

網(wǎng)絡(luò)空間被認(rèn)為是繼陸、海、空、天之后的第五大發(fā)展領(lǐng)域戰(zhàn)略空間[1],其安全性關(guān)乎國家安全維護(hù)與社會經(jīng)濟(jì)發(fā)展,已成為新形勢下各國重點關(guān)注的安全性問題.云存儲數(shù)據(jù)完整性審計作為網(wǎng)絡(luò)空間安全研究的一部分,對于為用戶提供遠(yuǎn)程存儲安全服務(wù)保障具有至關(guān)重要的意義.云存儲提供一項數(shù)據(jù)外包存儲服務(wù)[2-3],它允許用戶將數(shù)據(jù)從性能受限的本地轉(zhuǎn)移到具有豐富資源的云服務(wù)器,解決了數(shù)據(jù)管理與共享困難的問題.然而,這種依靠不可信云服務(wù)器來托管數(shù)據(jù)的服務(wù)面臨著致命的挑戰(zhàn)[4-6],即數(shù)據(jù)完整性很容易遭到破壞.此外,用戶可能使用臺式機(jī)、筆記本、平板電腦、智能手機(jī)等多樣化的本地設(shè)備接入云存儲服務(wù)[7-8],其中有些設(shè)備僅持有有限的計算能力與帶寬資源.因此,在不對本地端引入過大的計算與通信開銷的前提下,設(shè)計一種有效機(jī)制使用戶能夠驗證云存儲數(shù)據(jù)的完整性,對產(chǎn)業(yè)界和學(xué)術(shù)界都具有重要的意義.

盡管云存儲安全審計在公開審計、數(shù)據(jù)動態(tài)、隱私保護(hù)、多副本、降低證書使用、公平支付等方面已經(jīng)取得頗為豐富的研究成果,然而,現(xiàn)有審計方案都面臨一個同樣的安全問題:簽名密鑰一旦泄露,依賴于密鑰安全性的審計方案將遭受破壞.大部分審計方案只考慮云服務(wù)器端的安全性,忽略了用戶端可能存在的安全問題:1)用戶可能出于經(jīng)濟(jì)考慮而選用一些廉價的軟硬件密鑰保護(hù)機(jī)制;2)由于缺乏安全意識,用戶容易從網(wǎng)上下載一些包含木馬的軟件;3)當(dāng)密鑰較多時,用戶可能由于密鑰管理的復(fù)雜性而放棄對單個密鑰的保護(hù).以上因素均可能導(dǎo)致用戶用于簽名的密鑰泄露.另外,密鑰本身存在有效期,一旦過期,則需要立即進(jìn)行更新.目前,云存儲審計研究中已存在幾個支持密鑰更新的審計方案,但它們或多或少都存在一些局限性:云服務(wù)器與撤銷用戶勾結(jié)可以推測出審計密鑰[9],審計過程安全性不完整[10],審計者被假定是完全被信任的[11],證書開銷大[10-12]等.此外,在現(xiàn)實場景中可能出現(xiàn)因更換審計者而導(dǎo)致審計服務(wù)中斷的情況.這是因為審計者可能由于資源不足或身份過期等原因不能再為用戶提供審計代理服務(wù),或者審計者可能與云服務(wù)器勾結(jié)隱瞞數(shù)據(jù)損壞事實而失信于用戶[12],此時需要及時選擇新的審計者來代替舊審計者,保證審計服務(wù)的可持續(xù)性.然而,現(xiàn)有審計方案均假設(shè)在審計期間有且僅有一個審計者,因此不能適用于審計者更換場景下的云存儲數(shù)據(jù)安全審計.所以,設(shè)計安全高效的密鑰更新機(jī)制并滿足審計者更換需求是云存儲數(shù)據(jù)審計研究中一個亟待解決的問題.

基于上述考慮,本文利用雙線性對與代理重簽名思想構(gòu)造了一種支持密鑰更新與審計者更換的云安全審計方案AKUAR(auditing scheme supporting key update and auditor replacement),有效地抵制了簽名密鑰暴露.不同于現(xiàn)有審計方案,AKUAR的簽名密鑰并不是由用戶單獨持有,而是由用戶密鑰、霧節(jié)點密鑰以及時間密鑰3部分計算而成,增強(qiáng)了密鑰保護(hù)能力.針對簽名密鑰泄露、用戶身份密鑰到期以及霧節(jié)點更換3種導(dǎo)致簽名密鑰需要被更新的情況,AKUAR借鑒代理重簽名思想設(shè)計了高效安全的密鑰與標(biāo)簽更新機(jī)制,它選取云服務(wù)器作為更新簽名的中間代理,保證了基于舊密鑰產(chǎn)生的簽名可以有效地轉(zhuǎn)化為基于新密鑰的簽名,同時有效地降低用戶獨自更新密鑰與標(biāo)簽所需的開銷.此外,基于所設(shè)計的密鑰與標(biāo)簽更新機(jī)制,AKUAR進(jìn)一步實現(xiàn)了審計者可更換功能,保證了審計的可持續(xù)性.本文的主要工作歸納為3個方面:

1)不同于傳統(tǒng)審計方案僅依賴用戶私鑰為數(shù)據(jù)塊生成標(biāo)簽的情況,在本文提出的審計模型中,用戶需要使用與霧節(jié)點共同協(xié)商的簽名密鑰來生成塊標(biāo)簽.當(dāng)用戶或霧節(jié)點的密鑰由于到期或泄露而需要進(jìn)行簽名密鑰更新時,AKUAR設(shè)計了一個標(biāo)簽與密鑰更新機(jī)制,使得基于舊簽名密鑰的簽名能有效地更新為新簽名密鑰的簽名,并且由云服務(wù)器承擔(dān)計算量較大的標(biāo)簽更新操作,用戶本地端僅需要執(zhí)行少量的計算.在整個更新過程中,云服務(wù)器無法推測簽名密鑰,即云服務(wù)器不能代表用戶生成合法的塊標(biāo)簽,保證了簽名更新的安全性.

2)AKUAR引入霧節(jié)點充當(dāng)審計模型中的審計者,負(fù)責(zé)與云服務(wù)器進(jìn)行審計交互以及幫助用戶完成密鑰更新過程,以降低用戶在本地端的開銷.相比于受地域限制的第三方審計者,霧節(jié)點具有更強(qiáng)的移動性,適合代替用戶與云服務(wù)器進(jìn)行審計交互工作.當(dāng)霧節(jié)點出于主動或被動等原因需要退出審計任務(wù)時,AKUAR允許一個新的霧節(jié)點代替舊節(jié)點繼續(xù)為用戶提供數(shù)據(jù)審計服務(wù),實現(xiàn)審計者更換,同時離開的霧節(jié)點也不能獲取新的簽名密鑰.此外,云服務(wù)器可以對審計者的身份進(jìn)行認(rèn)證,確保離開的霧節(jié)點不再能發(fā)起完整性挑戰(zhàn),也避免了外部攻擊者冒充在任霧節(jié)點挑戰(zhàn)云服務(wù)器.

3)安全分析證明AKUAR滿足正確性、不可偽造性、密鑰暴露抵制與審計者更換屬性.對比實驗進(jìn)一步證明了AKUAR在標(biāo)簽生成與密鑰更新階段僅引入了少量的計算與通信開銷,并且本地端消耗的計算開銷是一個與數(shù)據(jù)塊數(shù)無關(guān)的常量.

1 相關(guān)工作

目前,相關(guān)學(xué)者在云存儲數(shù)據(jù)完整性審計領(lǐng)域的研究已經(jīng)頗為深入,主要是在公開審計、數(shù)據(jù)動態(tài)、數(shù)據(jù)隱私保護(hù)、多副本等領(lǐng)域取得了較為豐富的成果.2007年,Ateniese等人[13]提出了可證明數(shù)據(jù)持有技術(shù)(provable data possession, PDP),用于檢查不可信服務(wù)器上存儲數(shù)據(jù)的完整性.Wang[9]提出了基于代理的審計方案,允許用戶不在線時依靠代理對云存儲數(shù)據(jù)進(jìn)行審計.為支持?jǐn)?shù)據(jù)動態(tài),Erway等人[14]提出了一種完全動態(tài)審計方案,它利用基于秩的認(rèn)證跳表來支持存儲數(shù)據(jù)的可證明更新.Wang等人[15]設(shè)計了另一種動態(tài)審計方案,它使用Merkle哈希樹來實現(xiàn)數(shù)據(jù)更新功能.后來,韓靜等人[16]設(shè)計了適用于數(shù)據(jù)實時更新的審計方案,而符曉慶等人[17]設(shè)計了基于分治鄰接表的動態(tài)方案,滿足了不同場景下的動態(tài)審計需求.針對第三方審計者企圖在審計交互過程中提取數(shù)據(jù)隱私的問題,Wang等人[18]設(shè)計了支持?jǐn)?shù)據(jù)隱私保護(hù)的審計方法,它通過在云服務(wù)器生成的審計證據(jù)中加入一次性隨機(jī)因子來避免隱私內(nèi)容泄露給審計者.后來,Nayak等人[19]在多用戶模式下實現(xiàn)了具有隱私保護(hù)的批量審計,Wu等人[20]則設(shè)計了適用于現(xiàn)收現(xiàn)付存儲業(yè)務(wù)模式的具有隱私保護(hù)性的審計協(xié)議.為提升數(shù)據(jù)的可用性和可恢復(fù)性,一些審計方案采用多副本存儲模式存儲用戶的原始數(shù)據(jù)文件.Curtmola等人[21]提出了基于RSA簽名的多副本審計方案,它采用先加密后隨機(jī)化的方式保證了副本的可區(qū)分性.為了保證云上電子病歷的完整性,Zhou等人[22]設(shè)計了一個面向電子病歷數(shù)據(jù)動態(tài)存儲的多副本審計方案,它采用多副本存儲的方式來提升電子病歷數(shù)據(jù)的可用性.為了降低證書的使用,Li等人[23]提出了一種基于身份簽名的多副本審計方案,它將所有副本中位于同一序號的所有副本塊的對應(yīng)標(biāo)簽進(jìn)行聚合,有效地降低了審計開銷.基于無證書簽名,Zhou等人[24]則設(shè)計了一個支持多副本動態(tài)高效更新的審計方案.與此同時,基于身份的簽名與無證書簽名也被用來實現(xiàn)單副本存儲模式下的云數(shù)據(jù)安全審計[25-27],以降低證書開銷.最近,富瑤等人[28]和Lin等人[29]結(jié)合數(shù)據(jù)隱私保護(hù)需求,利用區(qū)塊鏈技術(shù)設(shè)計了滿足公平支付的審計方案.

以上審計方案僅考慮云服務(wù)器的安全性,且不適用使用性能受限的本地設(shè)備接入云存儲的用戶.由于用戶缺乏安全意識或者選用一些廉價的軟硬件密鑰保護(hù)機(jī)制,從而導(dǎo)致用于生成簽名的密鑰容易被泄露,而簽名密鑰一旦泄露,依賴于該密鑰的審計方案將無法提供數(shù)據(jù)完整性保護(hù).盡管目前已經(jīng)存在幾個支持密鑰更新的審計方案,但是它們均存在一些缺陷:文獻(xiàn)[9]雖然允許資源充足的云服務(wù)器完成耗時的標(biāo)簽更新過程,但攻擊者通過與撤銷用戶勾結(jié)就可以推測出簽名密鑰;文獻(xiàn)[10]僅能保證被暴露的密鑰不會影響在暴露之前的標(biāo)簽的安全性;文獻(xiàn)[11]雖然保障了在密鑰暴露前后的審計的安全性,但是密鑰與標(biāo)簽的更新完全依賴于可信的外部審計者;文獻(xiàn)[12]將標(biāo)簽更新的計算轉(zhuǎn)移至云服務(wù)器,降低了用戶端開銷,然而它需要假設(shè)第三方審計實體是完全可信的.以上方案都適用于使用傳統(tǒng)公鑰基礎(chǔ)設(shè)施的審計場景,不可避免地引入了證書開銷.此外,現(xiàn)有審計方案均默認(rèn)有且僅有一個審計者來代替用戶進(jìn)行完整性挑戰(zhàn),然而審計者可能由于被攻陷、被賄賂或資源不足等原因,不能繼續(xù)為用戶提供審計代理服務(wù).因此,如何設(shè)計一個安全高效的支持密鑰更新與審計者更換的云安全審計方案仍然是一個開放性問題.

2 AKUAR的系統(tǒng)模型與安全模型

本節(jié)介紹了AKUAR的系統(tǒng)模型與安全模型.表1對AKUAR中的符號與含義進(jìn)行了描述.

Table 1 Symbol Definition and Description of AKUAR

2.1 AKUAR的系統(tǒng)模型

圖1給出了AKUAR的系統(tǒng)模型,具體包含4個實體:

1)用戶(user,U).具有大量數(shù)據(jù)的實體,希望將數(shù)據(jù)上載到云服務(wù)器進(jìn)行存儲.同時委托霧節(jié)點對云存儲數(shù)據(jù)進(jìn)行完整性審計.

2)云服務(wù)器(cloud server,C).具有充足計算資源和存儲空間的服務(wù)器,負(fù)責(zé)對上傳數(shù)據(jù)進(jìn)行存儲管理,需要響應(yīng)完整性審計挑戰(zhàn).

3)霧節(jié)點(fog node,F).用戶和云服務(wù)器之間的中間節(jié)點,它接受來自用戶的審計任務(wù),與云服務(wù)器進(jìn)行審計交互.

4)密鑰生成中心(key generator center,KGC).負(fù)責(zé)生成身份密鑰與時間密鑰的可信實體,同時負(fù)責(zé)在系統(tǒng)設(shè)置階段生成系統(tǒng)公開參數(shù)以及主密鑰.

2.2 AKUAR的安全模型

在AKUAR中,用戶誠實地執(zhí)行審計方案,KGC誠實地計算實體的部分密鑰與時間密鑰.而云服務(wù)器可能由于維護(hù)自身聲譽而隱瞞數(shù)據(jù)損壞事實,企圖通過偽造審計證據(jù)來通過霧節(jié)點的驗證,同時云服務(wù)器負(fù)責(zé)標(biāo)簽更新工作,因此它可能企圖提取新的簽名密鑰.此外,離開審計任務(wù)的霧節(jié)點可能企圖推測新的簽名密鑰,也可能假冒在任霧節(jié)點向云服務(wù)器發(fā)起完整性挑戰(zhàn).那么AKUAR需要同時滿足不可偽造性、審計正確性、密鑰暴露抵制以及審計者更換.

定義1.不可偽造性.基于離散對數(shù)(discrete logarithm, DL)與計算Diffe-Hellman(computational Diffie-Hellman, CDH)假設(shè),如果對于任意概率多項式時間(probabilistic polynomial time, PPT)攻擊者A來說,它贏得偽造游戲的概率是可忽略的,則AKUAR滿足不可偽造性.實際上A模擬了一個惡意的云服務(wù)器,具體來說,攻擊者A與挑戰(zhàn)者C之間的偽造游戲主要包含5個階段:

1)設(shè)置階段.C生成系統(tǒng)公開參數(shù)params與主私鑰x,將params發(fā)送到A.

2)第1階段詢問.A自適應(yīng)地發(fā)起哈希詢問與標(biāo)簽詢問.定義Q1為第1階段詢問的塊索引集合,{bi,σi}1≤i≤n為索引Q1對應(yīng)的詢問塊與標(biāo)簽對.

3)挑戰(zhàn).C為所選索引集{i1,i2,…,ic}生成一個隨機(jī)挑戰(zhàn)chal,其中{i1,i2,…,ic}?Q1,c為挑戰(zhàn)塊數(shù).隨后C基于chal生成審計證據(jù)返回給A.

4)第2階段詢問.與第1階段類似.定義Q2為第2階段詢問的塊索引集合,定義{bi,σi}1≤i≤n為索引Q2對應(yīng)的塊與標(biāo)簽對,且{i1,i2,…,ic}?Q1∪Q2.

5)偽造.A輸出基于隨機(jī)挑戰(zhàn)的審計證據(jù).

定義2.審計正確性.如果所有實體都誠實地執(zhí)行了審計方案AKUAR,則云服務(wù)器生成的審計證據(jù)可以通過霧節(jié)點的審計驗證.

定義3.密鑰暴露抵制.如果一個簽名密鑰被暴露時,該密鑰與使用該密鑰生成的簽名可以被更新為新密鑰與使用新密鑰生成的簽名,且執(zhí)行標(biāo)簽更新的云服務(wù)器只能以可忽略的概率獲得新的簽名密鑰.

定義4.審計者更換.當(dāng)一個霧節(jié)點退出審計任務(wù)時,一個新的霧節(jié)點能代替其繼續(xù)為用戶提供審計服務(wù),且舊霧節(jié)點不再能發(fā)起審計挑戰(zhàn).

3 方案AKUAR

云存儲中數(shù)據(jù)完整性保證依賴于簽名密鑰的安全性,一旦密鑰暴露或者更新,由該密鑰生成的所有數(shù)據(jù)塊簽名都需要被一一更新,才能保證整個審計方案仍持續(xù)有效地進(jìn)行.然而,重新計算所有數(shù)據(jù)塊的簽名對于用戶本身來說是一個繁重的負(fù)擔(dān).代理重簽名思想允許一個半可信的代理者將對應(yīng)于一個密鑰的簽名轉(zhuǎn)換為對應(yīng)于另一個密鑰的簽名,并且該代理者不能得到轉(zhuǎn)換前后的2個密鑰.在本文提出的方案AKUAR中,代理重簽名思想同樣被用來解決簽名密鑰更新所導(dǎo)致的標(biāo)簽密鑰更新問題.在AKUAR中,當(dāng)簽名密鑰暴露或者需要更新時,云存儲服務(wù)器可以根據(jù)接收到的更新因子對存儲在云上的對應(yīng)塊標(biāo)簽進(jìn)行更新,使得更新后的塊簽名等同于使用新的簽名密鑰在相同數(shù)據(jù)塊上所產(chǎn)生的簽名,從而避免了用戶自己重新計算標(biāo)簽所導(dǎo)致的性能瓶頸問題.

AKUAR包含8個算法:系統(tǒng)設(shè)置Setup、身份密鑰生成GenerateIDKey、簽名密鑰生成GenerateKey、標(biāo)簽生成GenerateTag、證據(jù)生成GenerateProof、證據(jù)驗證VerifyProof、密鑰更新UpdateKey以及標(biāo)簽更新UpdateTag.

1)系統(tǒng)設(shè)置Setup.KGC生成系統(tǒng)必需的參數(shù).

①KGC選擇2個階為q的乘法循環(huán)群:G與G1,以及一個可計算的雙線性對e:G×G→G1,q為一個大素數(shù).KGC選取G的生成元g,并選擇4個哈希函數(shù),H1,H2,H3:{0,1}*→G,H4:{0,1}*→q.

②KGC選擇主密鑰x∈q并計算X=gx.{x,X}為系統(tǒng)主密鑰對,用于生成身份密鑰.KGC選擇y∈q并計算Y=gy.{y,Y}用于生成時間密鑰.

③KGC輸出系統(tǒng)公開參數(shù)params={G,G1,q,e,g,H1,H2,H3,H4,X,Y},私鑰{x,y}由KGC秘密持有.

2)身份密鑰生成GenerateIDKey.用戶Us(s∈{1,2,…,S},共S個用戶)獲取身份密鑰Uidks.

①Us提交身份密鑰請求reqidk={Ut,Uids}給KGC,其中Ut∈{0,1}*為申請時間,Uids∈{0,1}*為用戶身份.KGC為用戶生成身份密鑰Uidks=H1(Uids‖Ut)x∈G,并將身份密鑰Uidks發(fā)送給Us.

①Fl將身份標(biāo)識Fidl∈{0,1}*發(fā)送給Us,Us選擇一個隨機(jī)值Urs∈q,并計算URs=gUrs與授權(quán)信息Ws=H1(ws‖Uids‖F(xiàn)idl)Urs.然后Us將{Uids,Ws}發(fā)送給Fl,同時提交{Uids,Fidl,ws}給KGC進(jìn)行存儲.

tk=Uidks×H2(Uids‖F(xiàn)idl‖ws‖t)y=

H1(Uids‖Ut)x×H2(Uids‖F(xiàn)idl‖ws‖t)y,

(1)

KGC將存儲信息{Uids,Fidl,ws}更新為{t,Uids,Fidl,ws,tk},并將時間密鑰tk返給Fl.

④ 收到時間密鑰tk后,F(xiàn)l驗證

e(H2(Uids‖F(xiàn)idl‖ws‖t),Y).

(2)

若式(2)不成立,F(xiàn)l要求KGC再次重新返回有效的時間密鑰;若式(2)成立,則Fl選擇Frl∈q,并計算簽名密鑰對:sk={tk,Frl},pk=gFrl.

②Fl選擇一個隨機(jī)值r∈G,并計算塊標(biāo)簽:

σi=(H3(name‖n‖i)×rbi)Frl×tk,

(3)

同時Fl計算Sig0=H3(name‖Uids‖F(xiàn)idl)Frl得到簽名Sig=Sig0‖Ws‖name‖Uids‖F(xiàn)idl.最后,F(xiàn)l上傳數(shù)據(jù)集{M={bi}1≤i≤n,Σ={σi}1≤i≤n,Ws,Sig}到C,并從本地刪除{M,Σ}.

e(H2(Uids‖F(xiàn)idl‖ws‖t),Y)×

e(H3(name‖n‖i)×rbi,pk).

(4)

若驗證不通過,則C忽略該數(shù)據(jù)集并通知Fl;若驗證通過,則C存儲收到的數(shù)據(jù)集.

5)證據(jù)生成GenerateProof.在數(shù)據(jù)存儲期間,F(xiàn)l生成隨機(jī)挑戰(zhàn)chal并發(fā)送給C,C生成審計證據(jù)P并返回給Fl進(jìn)行驗證.

①Fl生成隨機(jī)挑戰(zhàn)chal={Ws,Q},Q={(i,vi)}i∈I指定被挑戰(zhàn)數(shù)據(jù)塊的索引與對應(yīng)隨機(jī)值,I表示從{1,2,…,n}隨機(jī)挑選的包含c個元素的集合,Ws用于驗證挑戰(zhàn)發(fā)起者身份的有效性.隨后,F(xiàn)l將chal發(fā)送給C.

6)證據(jù)驗證VerifyProof.收到審計證據(jù)P后,F(xiàn)l通過驗證P的有效性:

(5)

如果等式成立,則Fl發(fā)送“成功”消息發(fā)給Us,意味著C真實地存儲了Us的數(shù)據(jù);否則,F(xiàn)l發(fā)送“失敗”消息發(fā)送給Us,也就意味著云上數(shù)據(jù)已遭破壞.

7)密鑰更新UpdateKey.當(dāng)密鑰泄露時,需要對相應(yīng)簽名密鑰進(jìn)行更新,分3種情況.

情況1.簽名密鑰sk泄露,而Us的身份密鑰Uidks沒有泄露,且Us認(rèn)為Fl是誠實的,則需要更新時間密鑰,具體步驟有2個:

(6)

其中,tk為更新前的時間密鑰,對應(yīng)更新請求{t,Uids,Fidl,ws}.然后KGC發(fā)送tk′給Fl.

情況2.在系統(tǒng)時刻t*,Us因為身份密鑰Uidks泄露或到期,則更新身份密鑰為Uidk*s,具體步驟有3個:

(7)

KGC將原來的存儲信息{Uids,Fidl,ws}更新為{t*,Uids,Fidl,ws,tk*},并將tk*返給Fl.

(8)

8)標(biāo)簽更新UpdateTag.執(zhí)行完Updatekey后,F(xiàn)l請求KGC計算更新因子uf并發(fā)送C,C更新塊標(biāo)簽.

①KGC基于Updatekey算法中3種更新情況分別計算對應(yīng)的更新因子:

(9)

將更新因子uf1,uf2,uf3發(fā)送給C進(jìn)行標(biāo)簽更新.

②C通過式(10)來更新標(biāo)簽,令A(yù)=(H3(name‖n‖i)×gbi)Frl:

(10)

4 安全性分析

本節(jié)對方案AKUAR進(jìn)行安全分析,包括正確性、不可偽造性、授權(quán)審計、密鑰暴露抵制以及審計者更換.

定理1.如果所有實體都誠實地執(zhí)行了AKUAR,則C生成的審計證據(jù)可以通過霧節(jié)點的驗證.

證明.證明AKUAR的正確性等同于證明證據(jù)驗證算法中式(5)成立.根據(jù)雙線性對特性,可以從左到右推導(dǎo)式(5)來證明AKUAR的正確性:

由此得出結(jié)論,如果所有參與實體誠實地執(zhí)行AKUAR,則云服務(wù)器C生成的證據(jù)可以通過Fl驗證.

證畢.

定理2.基于DL與CDH假設(shè),如果對于任意PPT攻擊者A來說,它贏得偽造游戲的概率是可忽略的,則AKUAR滿足不可偽造性.

游戲0:首先C運行系統(tǒng)設(shè)置、身份密鑰生成與簽名密鑰生成算法,生成params和密鑰,并將params發(fā)送給A.然后A選擇一系列數(shù)據(jù)塊,C運行標(biāo)簽生成算法,為這些數(shù)據(jù)塊生成相應(yīng)的塊標(biāo)簽與文件簽名并返回給A.隨后C向A發(fā)送隨機(jī)挑戰(zhàn).最后A返回一個基于此挑戰(zhàn)的審計證據(jù)P,若P能夠以不可忽略的概率通過C的驗證,那么A獲勝.

游戲1:與游戲0僅存在一個不同之處.C保存了一系列A的查詢記錄,同時C與A一起觀察挑戰(zhàn)與響應(yīng)階段的每個交互過程.如果A可以生成一個通過C驗證的審計證據(jù)P′={u′,σ′},但P′={u′,σ′}中的u′和σ′與基于正確數(shù)據(jù)生成的有效證明P中的u和σ不同,則C宣稱挑戰(zhàn)失敗并終止游戲.

分析:在游戲中,挑戰(zhàn)者C可以通過與A交互來觀察每個交互過程.這里給出一些符號說明并得出一些相應(yīng)的結(jié)論.Q={(i,vi)}是一個使C終止游戲的隨機(jī)挑戰(zhàn),A基于Q生成審計證據(jù)P′.假設(shè)誠實服務(wù)器C返回的有效審計證據(jù)P={u,σ}.而A企圖偽造證據(jù)P′={u′,σ′}來通過驗證.如果P可以通過驗證,得到公式:

即使C終止了游戲,先假設(shè)σ≠σ′,可以獲得:

如果A獲得游戲0與游戲1的勝利,則容易構(gòu)造一個知識提取器B能夠找到CDH問題的一個解.假定輸入為g,gα,h∈G,目的是輸出hα.模擬器的行為類似于游戲0中的挑戰(zhàn)者C,但是存在7個不同.

1)在系統(tǒng)設(shè)置階段,B設(shè)置公鑰為X=gα,但是不知道私鑰α的任何信息.

2)B發(fā)起哈希查詢H,并保留查詢和響應(yīng)結(jié)果.對于A的查詢,B選擇隨機(jī)值λ∈q并返回gλ∈G.

3)對于每一個i,B選擇2個隨機(jī)值a,b∈q計算r=gahb,其中1≤i≤n,并運行第i輪的隨機(jī)預(yù)言模式為H(name‖n‖i)=gλ/(gabihbbi).

4)當(dāng)B被要求存儲一些包含n個塊{bi}1≤i≤n的數(shù)據(jù)時,進(jìn)行下一個操作.隨機(jī)選擇一個文件名name∈q,由于選擇文件名的空間很大,因此B無法偽造文件名,并且無法在執(zhí)行第i輪哈希查詢H(name‖n‖i)之前獲得文件名.

5)因此,B獲得σij=H(name‖n‖i)×rbi=rbi×gλ/(gabihbbi)=(gahb)bi×gλ/(gabihbbi)=gλ,進(jìn)而B計算σi=(H(name‖n‖i)×rbi)α=(gα)λ.

6)B繼續(xù)與A交互,直到游戲1中定義的條件發(fā)生為止:A通過返回與有效證明中σ不同的σ′來贏得游戲勝利.從游戲0到游戲1,涉及的參數(shù){name,n,r,bi,σ}都已經(jīng)通過B的交互過程產(chǎn)生了.

游戲2:與游戲1存在一個不同之處:C依然保留A的一系列查詢結(jié)果并與A交互來觀察交互過程,如果A贏得游戲勝利并且返回的證據(jù)P′中的數(shù)據(jù)證據(jù)u′與真正有效證據(jù)P中的u不一樣,則C將終止游戲.

分析:Fl發(fā)送一個隨機(jī)挑戰(zhàn)chal={Ws,Q}給C.為使得驗證式(5)成立,C應(yīng)該基于真實數(shù)據(jù)生成有效審計證據(jù)P={u,σ}.然而,惡意C在不持有完整數(shù)據(jù)的情況下企圖偽造審計證據(jù)P={μ′,σ′}.因為有效證據(jù)P能通過審計驗證,所以下列等式成立:

即使A終止,也能獲得σ≠σ′與下列式子:

在游戲2中,已經(jīng)對σ≠σ′的情況提供了證明,這里僅提供u與u′不同時的證明.定義Δu=u-u′,利用雙線性對性質(zhì),可獲得ru=ru′,進(jìn)而推出rΔu=1.

假定G是以大素數(shù)q為階的乘法循環(huán)群,對于任意2個值h1,h2∈G,能找到一個值λ∈q使得成立.并且,給定h1,h2∈G,可以獲得其中α,β∈q.可以推導(dǎo)出:

這意味著,如果對手在游戲1和游戲2的成功概率間的差異是不可忽略的,那么構(gòu)建的模擬器可以解決DL問題.因此,這些游戲間的差異可以忽略不計.

通過選擇c個不同的系數(shù)vi(i∈I,|I|=c),并基于相同的數(shù)據(jù)塊bi(i∈I)執(zhí)行c次不同的挑戰(zhàn),構(gòu)造了一個知識提取器來提取被挑戰(zhàn)數(shù)據(jù)塊bi,在這種情況下,知識提取器可以獲得關(guān)于變量bi的c個獨立線性方程組.通過求解這些方程,知識提取器可以計算并提取bi(i∈I).這意味著如果云服務(wù)器能夠通過審計驗證,就必須真正存儲了用戶數(shù)據(jù).

證畢.

定理3.如果一個簽名密鑰被暴露時,該密鑰與使用該密鑰生成的簽名可以被更新為新密鑰與使用新密鑰生成的簽名,且執(zhí)行標(biāo)簽更新的云服務(wù)器只能以可忽略的概率獲得新的簽名密鑰,則AKUAR滿足密鑰暴露抵制.

證畢.

定理4.當(dāng)一個霧節(jié)點退出審計時,如果一個新的霧節(jié)點能代替其繼續(xù)提供審計服務(wù),且舊節(jié)點不能發(fā)起審計挑戰(zhàn),則AKUAR實現(xiàn)了審計者更換.

證畢.

5 性能分析

本節(jié)從理論分析和實驗評估2個方面分析AKUAR的性能,證實了AKUAR的高效性.選取SKERA[11]作為AKUAR的實驗對比方案的主要原因有:1)SKERA與AKUAR都適用于云存儲環(huán)境下的靜態(tài)數(shù)據(jù)存儲審計,解決了密鑰暴露導(dǎo)致的標(biāo)簽無效問題;2)相比于其他支持密鑰更新的云審計方案,SKERA與AKUAR在本地端的開銷更低,且具有類似的系統(tǒng)模型設(shè)定.SKERA允許用戶將密鑰更新操作外包給授權(quán)實體,降低用戶本地端的開銷,在系統(tǒng)模型中,經(jīng)過授權(quán)的第三方審計者不僅負(fù)責(zé)數(shù)據(jù)審計而且負(fù)責(zé)密鑰更新工作.在AKUAR中,授權(quán)實體(霧節(jié)點)同時負(fù)責(zé)數(shù)據(jù)審計以及簽名密鑰更新操作,以降低用戶本地端的開銷.因此,為了對比的公平性,本文選取SKERA作為AKUAR的實驗對比方案.

5.1 理論分析

表2給出實驗中的符號與含義.實驗從計算開銷與通信開銷2方面對AKUAR與SKERA進(jìn)行分析.

1)計算開銷.由于支持密鑰更新與標(biāo)簽更新是AKUAR區(qū)別于其他審計方案的關(guān)鍵內(nèi)容,因此主要分析與密鑰更新以及標(biāo)簽更新相關(guān)階段的計算開銷,具體包含標(biāo)簽生成階段、密鑰更新階段和標(biāo)簽更新階段.

Table 2 Symbols and Descriptions of AKUAR for Performance Analysis

① 在標(biāo)簽生成階段.霧節(jié)點執(zhí)行2次Exp與2次Mul來為每個數(shù)據(jù)塊生成標(biāo)簽.對于擁有n個數(shù)據(jù)塊的文件,霧節(jié)點需要消耗n(2Exp+2Mul).在SKERA中,用戶生成n個塊標(biāo)簽的計算成本為(2n+1)Exp+2nMul,而審計者不需要參與運算.

② 在密鑰更新階段.為公平起見,只對比與SKERA中場景設(shè)定類似的情況1.在AKUAR中,霧節(jié)點花費3Pair驗證時間密鑰的有效性,而用戶不需要進(jìn)行任何操作.而在SKERA中,審計者使用私鑰計算更新信息,開銷為Exp,用戶執(zhí)行2次Pair驗證更新信息的正確性以及花費Exp+Mul來生成私鑰.

表3給出了AKUAR與SKERA在標(biāo)簽生成與密鑰更新階段用戶U與審計者Auditor消耗的計算開銷的對比情況.SKERA需要用戶計算塊標(biāo)簽;而在AKUAR中,霧節(jié)點負(fù)責(zé)生成塊標(biāo)簽.2個方案用于生成塊標(biāo)簽的總體開銷差不多.在密鑰更新階段,2個方案在用戶與審計者端的總體開銷差不多,同時AKUAR不需要用戶消耗計算成本.因此,可以看出,AKUAR在用戶本地端消耗的計算開銷更小.

Table 3 Computational Cost Comparison of AKUAR and SKERA

③ 在標(biāo)簽更新階段.由于SKERA不考慮標(biāo)簽更新,所以只分析AKUAR中3種更新情況的計算成本.如表4所示,對于更新一次簽名密鑰,用戶、霧節(jié)點與KGC端的計算開銷都是固定的;而在標(biāo)簽更新階段,3種更新情況下霧節(jié)點的計算成本是固定的,云服務(wù)器端的計算開銷與塊數(shù)n成正比.

Table 4 Computational Cost Comparison of Three Update Cases in AKUAR

2)通信開銷.本文對AKUAR與SKERA在標(biāo)簽生成與密鑰更新階段的總體通信開銷進(jìn)行對比分析.如表5所示,在標(biāo)簽生成階段,兩者的開銷差不多;而在密鑰更新階段,AKUAR需要消耗更多的通信開銷.

表6展示了AKUAR中3種更新情況的通信開銷對比.在密鑰更新階段,通信開銷是固定值,且用戶端的開銷很小;在標(biāo)簽更新階段,KGC計算更新因子之后發(fā)送給云服務(wù)器,即使對于更新一個數(shù)據(jù)塊數(shù)為n的文件,通信開銷也不過是|G|.所以,AKUAR在密鑰更新與標(biāo)簽更新階段引入了較少且固定的通信開銷.

Table 5 Communication Cost Comparison of AKUAR and SKERA

Table 6 Communication Cost Comparison of Three Update Cases in AKUAR

5.2 實驗評估

實驗基于PBC庫[30],云服務(wù)器部署在16 GB ECS.G5.xlarge,霧節(jié)點以及用戶端的計算均使用Ubuntukylin-15.10-desktop-i386內(nèi)存為2 GB的筆記本來模擬.選擇A型雙線性對,2個乘法循環(huán)群具有160 b階和256 b基域,即|q|=160與|G|=512.假設(shè)|t|=64,|id|=80.實驗評估了本文方案AKUAR與對比方案SKERA的計算開銷和通信開銷.為追求更精準(zhǔn)的結(jié)果,所有實驗都進(jìn)行了20輪并取平均值作為最后的結(jié)果.注意,在AKUAR中,霧節(jié)點就是系統(tǒng)模型中的審計者.

1)計算開銷.圖2展示了AKUAR與SKERA在標(biāo)簽生成階段的計算開銷隨著數(shù)據(jù)塊數(shù)n的變化情況.很明顯,2個方案消耗的計算開銷差不多,且都隨著數(shù)據(jù)塊數(shù)n呈線性增長.圖3展示了2個方案用于密鑰更新的計算開銷.雖然AKUAR在審計端的開銷稍微多一些,但超出部分是一個較小的固定值,且不多于0.02 s.因此,相比于SKERA,AKUAR更適用于使用性能受限的本地設(shè)備接入云端的用戶.

圖4展示了AKUAR在3種密鑰更新階段的總計算開銷對比情況.對于每一次密鑰更新,AKUAR引入的計算開銷總是一個小且恒定的值.圖5同樣展示了AKUAR在3種密鑰更新情況導(dǎo)致的標(biāo)簽更新階段的計算開銷.可以看到,盡管3種情況的計算開銷總是隨著數(shù)據(jù)塊數(shù)的增加,然而這個耗時的計算過程是由云服務(wù)器執(zhí)行的,即不會給用戶以及霧節(jié)點端帶來計算壓力.

2)通信開銷.圖6與圖7分別展示AKUAR與SKERA在標(biāo)簽生成與密鑰更新階段的通信開銷的對比.從圖6、圖7中可以看出,AKUAR與SKERA在標(biāo)簽生成階段需要的計算開銷是一樣的;而在密鑰更新階段,AKUAR比SKERA需要更多的通信開銷,因為AKUAR把密鑰更新請求全部計算在內(nèi),而SKERA沒有對請求進(jìn)行定義,且超出部分不超過一個字節(jié).此外,實驗對AKUAR在密鑰更新階段的3種更新情況的通信開銷進(jìn)行了評估,具體結(jié)果如圖8所示.從圖8中可以得出結(jié)論:AKUAR在密鑰更新階段所引入的通信開銷是固定的,與數(shù)據(jù)塊數(shù)n無關(guān).因為AKUAR允許計算一個更新因子傳送給云服務(wù)器,而后云服務(wù)器根據(jù)該更新因子對存儲標(biāo)簽進(jìn)行更新,所以不需要用戶參與標(biāo)簽更新.

綜上所述,AKUAR在標(biāo)簽生成、密鑰更新、標(biāo)簽更新階段引入了少量的計算與通信開銷,并且用戶本地端在3個階段需要的開銷與數(shù)據(jù)塊數(shù)無關(guān).特別是,標(biāo)簽更新計算由云服務(wù)器承擔(dān),用戶不需要消耗任何成本.所以,AKUAR是高效可行的,且適用于使用性能受限的本地設(shè)備接入云存儲的用戶.

6 結(jié) 論

針對云存儲審計中存在的簽名密鑰泄露問題,本文提出一個支持密鑰更新與審計者更換的安全云存儲審計方案AKUAR.AKUAR設(shè)計了3種分別適用于簽名密鑰意外泄露、用戶身份過期,以及審計者更換場景下的密鑰與標(biāo)簽更新機(jī)制,并且由云端承擔(dān)計算復(fù)雜的標(biāo)簽更新操作,僅為本地端引入了少量的開銷.此外,當(dāng)一個充當(dāng)審計者的霧節(jié)點退出審計服務(wù)時,新的霧節(jié)點可以代替其繼續(xù)進(jìn)行完整性審計工作,在保證新簽名密鑰不被泄露給舊霧節(jié)點的同時實現(xiàn)了審計服務(wù)的可持續(xù).安全分析表明AKUAR滿足正確性、不可偽造性、密鑰暴露抵制與審計者更換.理論分析與實驗結(jié)果進(jìn)一步證實了AKUAR在密鑰更新與標(biāo)簽更新階段引入的開銷是少量的,并且本地端的計算開銷是一個與文件劃分塊數(shù)無關(guān)的常量.

作者貢獻(xiàn)聲明:周磊提出了整體框架以及方案明細(xì);陳珍珠負(fù)責(zé)執(zhí)行實驗方案;付安民提出了實驗方案;蘇铓針對安全分析提出了指導(dǎo)意見并進(jìn)行了完善;俞研針對整體論文提出了指導(dǎo)意見并修改論文.

猜你喜歡
密鑰標(biāo)簽證據(jù)
探索企業(yè)創(chuàng)新密鑰
密碼系統(tǒng)中密鑰的狀態(tài)與保護(hù)*
無懼標(biāo)簽 Alfa Romeo Giulia 200HP
車迷(2018年11期)2018-08-30 03:20:32
不害怕撕掉標(biāo)簽的人,都活出了真正的漂亮
海峽姐妹(2018年3期)2018-05-09 08:21:02
一種對稱密鑰的密鑰管理方法及系統(tǒng)
基于ECC的智能家居密鑰管理機(jī)制的實現(xiàn)
對于家庭暴力應(yīng)當(dāng)如何搜集證據(jù)
紅土地(2016年3期)2017-01-15 13:45:22
標(biāo)簽化傷害了誰
手上的證據(jù)
“大禹治水”有了新證據(jù)
财经| 绥德县| 盱眙县| 阜城县| 皮山县| 景德镇市| 黄浦区| 东兰县| 河间市| 南木林县| 巴林左旗| 龙口市| 汕头市| 茂名市| 东源县| 剑阁县| 莫力| 兴城市| 津市市| 齐河县| 休宁县| 九江县| 绥棱县| 东城区| 扶风县| 茂名市| 宁津县| 满城县| 祥云县| 老河口市| 西安市| 公主岭市| 西畴县| 开化县| 乐亭县| 牡丹江市| 临颍县| 田东县| 茂名市| 明溪县| 宁安市|