姜濤,徐航,王良民,馬建峰
支持受損數(shù)據(jù)定位與恢復(fù)的動態(tài)群用戶可證明存儲
姜濤1,徐航2,王良民3,馬建峰1
(1. 西安電子科技大學(xué)ISN國家重點實驗室,陜西 西安 710071;2. 西安電子科技大學(xué)網(wǎng)絡(luò)與信息安全學(xué)院,陜西 西安 710126;3. 東南大學(xué)網(wǎng)絡(luò)空間安全學(xué)院,江蘇 南京 211189)
云計算的外包存儲模式導(dǎo)致數(shù)據(jù)擁有者的數(shù)據(jù)所有權(quán)和管理權(quán)分離,進而改變了數(shù)據(jù)存儲網(wǎng)絡(luò)模型和安全模型。為了有效應(yīng)對云服務(wù)器端的軟硬件故障及潛在的不誠實服務(wù)提供商,確保數(shù)據(jù)擁有者數(shù)據(jù)的可用性,設(shè)計安全、高效的數(shù)據(jù)可用性、可恢復(fù)性審計方案對于解決用戶擔(dān)憂、保證云數(shù)據(jù)安全具有重要的理論和實踐價值。然而,現(xiàn)有研究多針對數(shù)據(jù)完整性或者可恢復(fù)性方案的安全性和效率進行設(shè)計,沒有考慮動態(tài)群用戶下受損數(shù)據(jù)的快速定位和可靠恢復(fù)問題。因此,針對動態(tài)群用戶環(huán)境中受損數(shù)據(jù)定位與恢復(fù)問題,設(shè)計了一個可公開驗證的動態(tài)群組云用戶存儲證明方案。該方案在檢測到數(shù)據(jù)受損時,任何可信的第三方審計者能夠通過挑戰(zhàn)協(xié)議快速定位受損數(shù)據(jù),并在數(shù)據(jù)受損程度小于糾錯能力門限情況下允許云平臺對數(shù)據(jù)進行可靠恢復(fù)。該方案結(jié)合關(guān)聯(lián)計算和累加計算,有效減少了受損數(shù)據(jù)定位的計算次數(shù);通過糾刪碼與共享編碼技術(shù),方案能夠?qū)崿F(xiàn)用戶受損數(shù)據(jù)的有效恢復(fù)。同時,方案支持用戶的動態(tài)撤銷,確保了群用戶共享數(shù)據(jù)在用戶撤銷后的完整性審計和可靠恢復(fù)。定義了方案的網(wǎng)絡(luò)模型和威脅模型,并在相應(yīng)安全模型下證明了所設(shè)計方案的安全性。通過真實環(huán)境下的原型系統(tǒng)實現(xiàn)和模塊化性能分析,證明了所設(shè)計方案能夠有效定位受損數(shù)據(jù)并在數(shù)據(jù)受損時對云端數(shù)據(jù)進行可靠恢復(fù)。同時,與相關(guān)方案相比,所設(shè)計方案在受損數(shù)據(jù)定位與恢復(fù)方面的計算開銷較小。
云存儲;數(shù)據(jù)共享;損壞識別;可恢復(fù)證明;動態(tài)群用戶
隨著云計算、大數(shù)據(jù)等數(shù)字技術(shù)的快速發(fā)展,云存儲正在通過各種應(yīng)用服務(wù)走進人們的生活。在云存儲應(yīng)用中,用戶可以通過與一組用戶共享數(shù)據(jù)來進一步降低存儲成本。然而,這種外包存儲模式致使用戶失去對數(shù)據(jù)的物理控制權(quán),存儲在無法完全受信的云服務(wù)提供商[1]中的用戶數(shù)據(jù)將面臨極大的安全風(fēng)險。國內(nèi)外相繼爆發(fā)多起云存儲安全事故,如Amazon曾因停電導(dǎo)致部分客戶數(shù)據(jù)永久丟失[2],某公司硬件故障/軟件錯誤[3]導(dǎo)致云數(shù)據(jù)被損毀[4-5]等,云存儲應(yīng)用仍存在許多安全隱患,如何切實保障云數(shù)據(jù)的隱私安全性成為學(xué)術(shù)界亟待解決的研究熱點之一。
學(xué)者相繼提出了許多數(shù)據(jù)完整性/可恢復(fù)性審計方案,如數(shù)據(jù)可擁有性證明(PDP,provable data possession)[6]、數(shù)據(jù)可恢復(fù)證明(POR,proof of retrievability)[7]等。在此基礎(chǔ)上設(shè)計了多種不同特性的數(shù)據(jù)完整性審計方案[8-13]。其中,基于代理的重簽名審計方案[8]結(jié)合可信代理重加密技術(shù)以保證多用戶共享數(shù)據(jù)完整性審計中的用戶安全撤銷;基于共享群密鑰的數(shù)據(jù)審計方案[13]結(jié)合Schnorr簽名與群組共享密鑰以提高動態(tài)群用戶對共享數(shù)據(jù)的完整性審計效率。上述方案雖然可以證明外包數(shù)據(jù)的完整性,但是無法快速識別審計數(shù)據(jù)中的損壞文件/塊并在損壞后恢復(fù)。這是因為,當(dāng)對云服務(wù)器上大規(guī)模數(shù)據(jù)的完整性進行審計時,單個受損文件/塊可能導(dǎo)致審計失敗。數(shù)據(jù)完整性審計失敗之后,識別損壞文件/塊帶來了大量的計算和通信開銷,因而會嚴(yán)重影響數(shù)據(jù)完整性審計方案的效率。為了解決以上挑戰(zhàn),學(xué)者提出了損壞文件識別方案[14-17]。但是這些方案受限于單用戶場景。事實上,在多用戶云存儲環(huán)境下,數(shù)據(jù)的審計標(biāo)簽私鑰一般是不同的,因而在這種應(yīng)用場景中對身份驗證標(biāo)簽進行聚合以及對受損文件/塊進行識別存在一定難度且現(xiàn)有方案的實施效率并不理想。目前關(guān)于如何實現(xiàn)動態(tài)群用戶環(huán)境下受損數(shù)據(jù)的識別和恢復(fù)這一問題,學(xué)術(shù)界尚缺乏行之有效的方案。雖然POR可以在一定程度上恢復(fù)受損的文件,但POR只適用于單個用戶,不支持動態(tài)群用戶環(huán)境。當(dāng)群中某個用戶撤離后,該用戶將無法管理其原先存儲在云服務(wù)器中的共享數(shù)據(jù),這些數(shù)據(jù)將由管理員轉(zhuǎn)交其他合法用戶進行管理。當(dāng)合法用戶對該撤銷用戶的數(shù)據(jù)進行審計時,POR方案無法恢復(fù)屬于撤銷用戶的受損數(shù)據(jù)。總之,在POR中,每個用戶的信息是相互獨立的,屬于撤銷用戶的數(shù)據(jù)不能被其他用戶審計或者恢復(fù)。
針對上述問題,本文提出了一種動態(tài)群用戶受損數(shù)據(jù)的快速定位和恢復(fù)方案。該方案能夠有效地識別來自群用戶的所有外包數(shù)據(jù)的可用性,而無須通過多個證明來檢查。在本文方案中,用戶只需要對原始文件和相應(yīng)的標(biāo)簽執(zhí)行一次處理/上傳操作,而群用戶的撤銷不會影響到該操作;特別是該方案利用快速定位和恢復(fù)技術(shù)有效解決了數(shù)據(jù)受損的情況,本文貢獻如下。
1) 針對云存儲動態(tài)群用戶數(shù)據(jù)完整性審計中無法同時支持受損文件的快速定位與可靠恢復(fù)問題,提出了一種動態(tài)群用戶受損數(shù)據(jù)的定位與恢復(fù)方案。
2) 所設(shè)計方案結(jié)合關(guān)聯(lián)計算、累加計算糾刪碼和共享編碼等技術(shù),在數(shù)據(jù)完整性設(shè)計中減少定位受損數(shù)據(jù)的計算次數(shù)的同時實現(xiàn)了動態(tài)群用戶環(huán)境下受損數(shù)據(jù)的可靠恢復(fù)。
3) 利用雙線性映射和數(shù)學(xué)矩陣的相關(guān)性質(zhì)證明了所設(shè)計方案的安全性。同時,通過方案的原型系統(tǒng)實現(xiàn),并對方案共享數(shù)據(jù)存儲、受損數(shù)據(jù)定位和受損數(shù)據(jù)恢復(fù)等模塊進行評估,證明了方案的可行性。通過與相關(guān)方案在整體性能和定位受損數(shù)據(jù)效率方面進行對比,證明了所設(shè)計方案的高效性。
近年來,學(xué)者相繼提出了多種云存儲數(shù)據(jù)完整性審計方案。例如,Ateniese等在文獻[6]中首次提出“可證明數(shù)據(jù)擁有”PDP的概念,利用RSA方案和離散對數(shù)構(gòu)造同態(tài)驗證標(biāo)簽,在降低文件的檢索和下載開銷的同時成功保護了文件隱私。在此基礎(chǔ)上,Sengupta等[9]提出了一種基于同態(tài)哈希的動態(tài)云存儲方案,該方案不僅支持公開驗證數(shù)據(jù)的完整性,還可以高效地進行數(shù)據(jù)更新。Bernstein等[14]提出了一種基于橢圓曲線簽名的審計方案,可以有效降低受損文件的定位計算成本。Shin等[15]提出了一種基于指數(shù)測試的搜索方案,該方案通過比較指數(shù)的驗證值來識別受損文件/塊的位置。但該方案有很大的局限性,即僅適用于單個文件受損場景,無法一次性定位多個受損文件。為了解決批量受損文件的定位問題,Matt等[16]提出了一種基于配對的簽名方案,該方案可以在批量審計失敗后定位受損文件,同時能夠有效識別多個受損簽名。Wang等[17]提出了一種批量審計方案以支持受損文件的快速查詢。該方案可以有效抵抗“受損文件”攻擊,在保證數(shù)據(jù)可用性的同時具備較高的查詢效率。Zhou等[18]對數(shù)據(jù)糾刪碼技術(shù)進行了總結(jié),介紹了多種用于數(shù)據(jù)恢復(fù)的編碼方法。
數(shù)據(jù)共享是云存儲應(yīng)用的核心服務(wù)之一。通過數(shù)據(jù)共享服務(wù),用戶可以將各自的數(shù)據(jù)托管于云端并相互共享這些數(shù)據(jù),這樣可以大大減輕用戶本地設(shè)備的存儲負擔(dān)。值得注意的是,當(dāng)群組中某些成員用戶被撤離出群組時,其所屬數(shù)據(jù)由群組管理員指派給其他的合法用戶進行管理。針對這一問題,近年來,學(xué)術(shù)界陸續(xù)出現(xiàn)一些群用戶撤離場景下的數(shù)據(jù)完整性審計方案。例如,Wu等[19]提出了一種支持用戶撤銷的多關(guān)鍵字密文查詢方案,該方案能夠抵抗關(guān)鍵字選擇攻擊; Jiang等[11]提出了一種基于群簽名的用戶撤銷共享數(shù)據(jù)完整性審計方案,但該方案效率較慢;Zhang等[13]提出了一種高效的支持用戶撤銷的數(shù)據(jù)完整性審計方案,該方案可以有效提高用戶撤銷的審計效率。然而,這些審計方案大多聚焦于數(shù)據(jù)動態(tài)性或者用戶動態(tài)性的效率,并未考慮數(shù)據(jù)審計未通過的應(yīng)對策略。如果云服務(wù)器未能通過數(shù)據(jù)完整性審計,則意味著存儲在其上的用戶數(shù)據(jù)已遭到破壞,此時如果能快速修復(fù)受損文件,將大大提升云服務(wù)器的存儲性能。因此,設(shè)計一種能夠快速定位和恢復(fù)受損文件的方案具有十分重要的意義。
本節(jié)主要介紹所設(shè)計的CIRG(corruption identification and recovery for dynamic group users)方案的系統(tǒng)模型、威脅模型及設(shè)計目標(biāo)。
CIRG系統(tǒng)模型如圖1所示,系統(tǒng)包含5個實體:群用戶、群管理員、云服務(wù)提供商(CSP,cloud service provider)、私鑰生成器(PKG,private key generator)和第三方審計者(TPA,third party auditor)。其中,群用戶作為數(shù)據(jù)擁有者,負責(zé)對外包給云服務(wù)器的文件進行編碼并標(biāo)記每個文件塊以進行完整性審計。方案假設(shè)群用戶是誠實的,系統(tǒng)中群用戶不會與任何非法人員(包括被系統(tǒng)撤銷的群用戶)共享私人信息;群管理員負責(zé)管理用戶的注冊(新用戶加入群組時)或撤銷(老用戶退出群組時),同時參與密鑰的生成、群中數(shù)據(jù)編碼算法公布;CSP存儲來自云用戶的外包文件,并為群用戶提供數(shù)據(jù)共享服務(wù)。鑒于真實應(yīng)用場景中CSP往往是不可信的,方案設(shè)定系統(tǒng)中的CSP需要接受用戶/TPA的檢查,即對存儲的數(shù)據(jù)進行完整性驗證;PKG是一個可信的實體,它參與系統(tǒng)公共參數(shù)和密鑰的生成;TPA負責(zé)代表群用戶對存儲在云服務(wù)器上的數(shù)據(jù)進行完整性審計。當(dāng)數(shù)據(jù)的完整性審計失敗時(即相應(yīng)被檢測文件遭受破壞),TPA能夠有效定位該受損文件。TPA在數(shù)據(jù)上傳階段無法從用戶的盲性數(shù)據(jù)中獲得真實數(shù)據(jù),在審計階段也無法從云服務(wù)器的數(shù)據(jù)擁有性證明中獲得真實數(shù)據(jù)信息。

圖1 CIRG系統(tǒng)模型
Figure 1 CIRG system model
本文設(shè)計的CIRG方案不僅支持動態(tài)群用戶下的數(shù)據(jù)完整性安全審計,而且進一步考慮了數(shù)據(jù)完整性審計失敗后的補救問題。也就是說,一旦針對某數(shù)據(jù)的完整性審計失敗,TPA能夠有效定位該受損文件的位置。在此之后,TPA將受損文件的位置列表返回給用戶(或CSP),進而可以根據(jù)這些位置恢復(fù)相應(yīng)的受損文件。CIRG方案的威脅模型概括為以下幾點。
1) 文件受損:群用戶外包的文件可能由于服務(wù)器硬件故障、服務(wù)器惡意操作、人為錯誤操作等因素而遭到損壞或刪除。然而,出于自身聲譽及利益的考慮,云服務(wù)商不會主動報告用戶數(shù)據(jù)已被損壞。
2) 文件不可恢復(fù)性:當(dāng)TPA驗證后判定CSP中存儲的某文件已被損壞時,如果沒有特定的文件恢復(fù)機制,系統(tǒng)中群用戶將無法恢復(fù)并共享文件。
為了在實現(xiàn)云存儲共享數(shù)據(jù)的安全審計的同時支持針對受損文件的高效定位和恢復(fù)功能,本文設(shè)計的CIRG方案應(yīng)滿足以下目標(biāo)。
1) 安全目標(biāo):主要考慮方案的正確性和可靠性。正確性意味著如果外包文件完好無損,CSP總能通過數(shù)據(jù)完整性審計。當(dāng)文件塊受損總量低于特定閾值時,任何合法群用戶或CSP最終一定可以恢復(fù)這些受損數(shù)據(jù)塊。可靠性意味著對于任一群用戶的文件,如果CSP中,實際并沒有存儲該文件;只存儲該文件中較少部分的內(nèi)容;存儲的相應(yīng)文件有誤,那么從概率上可以認(rèn)為CSP無法通過數(shù)據(jù)完整性審計。如果數(shù)據(jù)擁有性證明本身含有受損文件,TPA 無法定位被破壞文件位置的可能性可以忽略不計。
2) 效率目標(biāo):主要考慮方案的計算、通信和存儲效率等性能指標(biāo)。本文設(shè)計的CIRG方案兼顧了文件恢復(fù)和公共審計功能,前者是指當(dāng)存儲在云服務(wù)器中的數(shù)據(jù)由于物理磁盤損壞、故障等而受損或丟失時,方案通過計算受損數(shù)據(jù)的有效塊數(shù)可以確保用戶能夠有效地恢復(fù)相應(yīng)受損文件;后者意味著TPA可以對群用戶存儲在云服務(wù)器中的文件進行完整性審計,這一過程僅需該文件的少量數(shù)據(jù)塊協(xié)助計算即可實現(xiàn)。
本節(jié)主要介紹方案采用的密碼工具、數(shù)據(jù)編解碼函數(shù)和關(guān)聯(lián)二分(RDI,relational dichotomy)計算的定義。

哈希函數(shù):本文用到如下哈希函數(shù)。
編解碼函數(shù):本文用到的編解碼函數(shù)定義如下。
本文目標(biāo)是設(shè)計CIRG存儲證明方案,該方案能夠有效識別受損文件/塊并支持動態(tài)群用戶恢復(fù)相應(yīng)受損數(shù)據(jù)。CIRG方案定義的算法如下。

2) KeyGen:該算法用于生成數(shù)據(jù)標(biāo)簽的密鑰。由群用戶、群管理員和PKG交互運行并生成數(shù)據(jù)標(biāo)簽的相關(guān)密鑰。


5) Challenge:該算法由TPA運行,用于生成審計挑戰(zhàn)。其中,TPA根據(jù)用戶審計請求生成文件的挑戰(zhàn)信息chal并將其發(fā)送給云服務(wù)器。
6) Prove:該算法用于生成數(shù)據(jù)擁有性證明。具體而言,由云服務(wù)器運行該算法,以挑戰(zhàn)信息chal作為輸入,輸出相應(yīng)的文件存儲證明并將其返回給TPA。
7) Recover:該算法首先對數(shù)據(jù)擁有性證明進行驗證,如果驗證通過,則說明云服務(wù)器完整存儲了用戶數(shù)據(jù)。一旦驗證不通過,則說明用戶存儲的數(shù)據(jù)受損,這時TPA將快速定位該受損數(shù)據(jù)的位置,并將其返回給用戶,最后由用戶對受損數(shù)據(jù)進行恢復(fù)。

1) Setup算法執(zhí)行階段:PKG生成密鑰和系統(tǒng)公開參數(shù)。
2) KeyGen算法執(zhí)行階段:利用Schnorr簽名協(xié)議生成數(shù)據(jù)標(biāo)簽密鑰。如圖2所示,群用戶和群管理員、PKG交互生成數(shù)據(jù)標(biāo)簽密鑰,其中,文件標(biāo)識符標(biāo)簽密鑰由用戶進行計算。本文將所有合法用戶的數(shù)據(jù)標(biāo)簽私鑰關(guān)聯(lián)起來,群用戶共用同一數(shù)據(jù)標(biāo)簽密鑰。在群組中如果有群用戶離開,系統(tǒng)將及時更新群中成員的數(shù)據(jù)標(biāo)簽私鑰。用戶一旦撤離群組,將無法再上傳數(shù)據(jù)到云服務(wù)器上進行存儲,同時無法享用云服務(wù)器中存儲的共享服務(wù)。此外,該用戶曾經(jīng)存儲在云服務(wù)器上的數(shù)據(jù)將由群管理員轉(zhuǎn)交其他合法的群用戶進行管理。值得注意的是,該用戶所屬的數(shù)據(jù)標(biāo)簽在其撤離群后仍然可以被其他合法群用戶使用,即系統(tǒng)無須重新計算標(biāo)簽。這種可更新共享密鑰的方式可以極大地節(jié)省計算和存儲資源,同時提高審計效率。密鑰生成的具體細節(jié)如下。

圖2 數(shù)據(jù)標(biāo)簽私鑰生成
Figure 2 Data tag private key generation




圖3 數(shù)據(jù)編碼
Figure 3 Data encoding


5) Challenge算法執(zhí)行階段:用戶授權(quán)由TPA對其存儲在云服務(wù)器上的數(shù)據(jù)進行完整性審計。在該算法中,TPA為了驗證用戶數(shù)據(jù)的完整性,發(fā)起審計挑戰(zhàn)。本文假設(shè)TPA一次性接收多個用戶的審計請求,并且可以為多個用戶發(fā)起審計挑戰(zhàn)。具體而言,TPA生成的審計挑戰(zhàn)如下。
6) Prove算法執(zhí)行階段:CSP根據(jù)TPA發(fā)起的挑戰(zhàn)chal生成數(shù)據(jù)擁有性證明,以此表明正確存儲了用戶完整的數(shù)據(jù)。之后,CSP將該數(shù)據(jù)擁有性證明發(fā)送給TPA進行驗證。數(shù)據(jù)擁有性證明計算如下。
7) Recover算法執(zhí)行階段: TPA通過數(shù)據(jù)擁有性證明驗證數(shù)據(jù)的完整性。這時可能出現(xiàn)兩種情況:數(shù)據(jù)的完整性驗證通過/不通過。完整性驗證不通過,表明用戶存儲在CSP的文件受損,意味著用戶的數(shù)據(jù)不可用。針對這種情況,本文設(shè)計的CIRG方案可以快速定位該受損文件并將其恢復(fù),具體內(nèi)容如下。

其中,。系統(tǒng)需要判斷等式是否成立,如果等式成立,則返回1,表示用戶的數(shù)據(jù)是完整存儲在CSP中;否則返回0,表示CSP中至少存在一個受損數(shù)據(jù),這將導(dǎo)致用戶文件不可用。
Figure 4 Data integrity audit
為了保證用戶數(shù)據(jù)的完整性和可用性,必須恢復(fù)受損數(shù)據(jù)。在此之前首先面臨的是如何在審計的所有數(shù)據(jù)中找到受損數(shù)據(jù)的位置。本文采用RDI法查詢受損數(shù)據(jù)的位置,并通過RS糾刪碼恢復(fù)受損數(shù)據(jù)。




其中,和與式(3)所表示的計算值相同。
Figure 5 RDIcomputing
通過RDI將左右子樹的值關(guān)聯(lián)起來,由左/右子樹的值推導(dǎo)出另一個子樹的值。其中,通過計算父節(jié)點和左子節(jié)點驗證值,能夠直接確定右子節(jié)點的值,具體計算公式為



TPA將受損數(shù)據(jù)的位置列表返回給用戶,以備用戶進行受損數(shù)據(jù)的有效恢復(fù)。


圖6 矩陣與編碼數(shù)據(jù)
Figure 6 Matrix and encoded data



當(dāng)存在多個受損數(shù)據(jù)時,綜合利用上述方法可批量恢復(fù)受損數(shù)據(jù)。即使受損數(shù)據(jù)原本屬于某個已撤群用戶,由于本文方案的群用戶均采用群管理員公開的編碼算法對數(shù)據(jù)進行編碼,被系統(tǒng)授權(quán)接管該數(shù)據(jù)的群合法用戶仍然可以通過編碼算法恢復(fù)曾屬于撤群用戶的共享數(shù)據(jù)。
(1)正確性
定理1 如果群用戶、群管理員、CSP和TPA都正確執(zhí)行相應(yīng)計算,那么CIRG方案的批量審計是正確的。


(2)受損數(shù)據(jù)的可恢復(fù)性
定理2 當(dāng)群用戶存儲在CSP的數(shù)據(jù)受損時,CIRG方案能夠有效恢復(fù)該受損數(shù)據(jù)。
(3)密鑰更新特性
定理3 當(dāng)群組中某個用戶撤群時,如果群用戶、群管理員都正確執(zhí)行相應(yīng)計算,群組中數(shù)據(jù)標(biāo)簽私鑰將會被正確更新。

本文在Windows10操作系統(tǒng)中部署實現(xiàn)了CIRG方案原型。系統(tǒng)測試使用的計算機具體配置參數(shù)為:處理器為8核2.90 GHz Intel Core i7-10700,內(nèi)存16 GB。實驗使用Java語言,通過SHA-256和開源的密碼學(xué)算法庫JPBC實現(xiàn)相應(yīng)簽名。采用JAVA 內(nèi)置隨機數(shù)生成器生成實驗測試中所用到的隨機數(shù)。調(diào)用JAVA 自帶的SECURITY類,通過RSA 非對稱加密算法生成文件標(biāo)簽。RSA 算法的密鑰長度為1 024 bit。根據(jù)性能設(shè)置,仿真將每種實驗情況運行50次,以得到平均值。
(1)數(shù)據(jù)存儲模塊測試
如圖7所示,本文測試了密鑰生成模塊的時間開銷。生成身份密鑰GenUIK階段和生成部分密鑰GenTK階段花費的時間較短,分別約為5 ms和4 ms。驗證身份密鑰VerifyUIK階段和驗證部分密鑰VerifyTK階段花費的時間相對較長,分別約為46 ms和48 ms。計算私鑰ComputeSK階段的時間約為37 μs。這3個階段的總時間(Sum)約為104 ms。

圖7 密鑰生成模塊的時間開銷
Figure 7 Time cost of key generation module
如圖8所示,本文測試了密鑰更新與密鑰未更新的時間開銷。當(dāng)群組中沒有用戶離開時,即密鑰未更新時(SAC-SK)密鑰生成的時間開銷為104 ms。當(dāng)群組中某一用戶撤群時,密鑰更新(UDE-SK)的時間開銷為156.02 ms。
本文對數(shù)據(jù)上傳時不同數(shù)量文件在密鑰生成、數(shù)據(jù)編碼、標(biāo)簽生成的時間開銷進行了測試。實驗測試的每個文件大小為1 MB,分為160塊,其中冗余編碼塊為32塊,實驗測試文件的數(shù)量從2增加到128個。如圖9所示,數(shù)據(jù)編碼的時間開銷約為密鑰生成的2.1倍,標(biāo)簽生成的時間開銷約為數(shù)據(jù)編碼的764.7倍。
(2)完整性審計模塊測試
圖10為相應(yīng)數(shù)據(jù)完整性審計的時間開銷測試結(jié)果。具體而言,設(shè)置每個文件大小為1 MB,每個文件塊的大小為20 B,測試的文件數(shù)量從2增加到128個。當(dāng)批量審計的文件數(shù)量為128時,挑戰(zhàn)階段、證明階段和完整性驗證階段的時間成本分別為35.6 ms、91.9 ms、111.0 ms。

圖8 密鑰更新時的時間開銷
Figure 8 Time cost when key update

圖9 數(shù)據(jù)上傳時的時間開銷
Figure 9 Time cost when data upload

圖10 完整性審計時的時間開銷
Figure 10 Time cost when integrity audit
(3)受損數(shù)據(jù)定位模塊測試
本文分別對數(shù)據(jù)完整性審計與受損數(shù)據(jù)定位這兩種情況進行了對比測試。首先,測試受損文件數(shù)量不同時完整性審計和定位的時間開銷,具體選取128個用戶的文件進行測試,每個文件大小為1 MB,編碼后大小為1.25 MB。文件編碼之后的總塊數(shù)為160,冗余塊為32塊。同時,設(shè)置不同數(shù)量的受損文件(數(shù)量分別從16增加到64個),并且每個文件的受損塊數(shù)設(shè)置為32塊。如圖11所示,受損文件定位的時間開銷約為完整性審計時間開銷的3.95倍。

圖11 受損文件數(shù)量不同時的時間開銷
Figure 11 Time cost when the number of damaged files varies
此外,本文還測試了審計文件數(shù)量不同時完整性審計和定位的時間開銷。首先,設(shè)置受損文件的數(shù)量為4個,每個文件的大小是1 MB,測試的文件數(shù)量從8增加到128個。如圖12所示,受損文件定位的時間開銷約為完整性審計的2.64倍。

圖12 審計文件數(shù)量不同時的時間開銷
Figure 12 Time cost when the number of audit files varies
(4)受損數(shù)據(jù)恢復(fù)模塊測試


圖13 編碼和恢復(fù)階段的時間開銷
Figure 13 Time cost when encode and recover process
(5)對比測試
本文分別對方案的整體性能、受損數(shù)據(jù)定位這兩種情況進行了對比測試。首先,測試本文CIRG方案和文獻[13]方案整體性能的時間開銷,具體選取128個用戶的文件進行測試。同時,設(shè)置不同數(shù)量的受損文件(數(shù)量分別從16增加到64個)。CIRG方案測試的功能包括數(shù)據(jù)編碼、數(shù)據(jù)完整性審計、受損數(shù)據(jù)定位與恢復(fù)。文獻[13]方案測試的功能包括數(shù)據(jù)完整性審計、受損數(shù)據(jù)定位(二分法)。如圖14所示,與文獻[13]方案相比,本文的CIRG方案不僅在功能上更完善,并且能夠以較少的時間開銷完成受損數(shù)據(jù)的快速定位與恢復(fù)。
通過選取不同數(shù)量的受損文件,測試本文方案采用RDI累加法和文獻[13]方案采用二分法定位受損數(shù)據(jù)的時間開銷,具體選取128個用戶的文件進行測試,每個文件大小為1 MB,文件編碼后大小為1.25 MB。文件編碼后的總塊數(shù)為160,冗余塊數(shù)為32。同時,設(shè)置受損文件的數(shù)量分別從16增加到64個,每個文件的受損塊數(shù)為32。如圖15所示,相較于文獻[13]方案,本文方案定位受損文件所用的時間開銷明顯較少。
綜上,實驗分析和比較證明了CIRG方案在動態(tài)群用戶場景下的可行性。同時,通過測試不同審計文件數(shù)量、不同受損文件數(shù)量等相關(guān)屬性的時間開銷可知,方案的開銷主要來自數(shù)據(jù)完整性驗證和受損數(shù)據(jù)定位環(huán)節(jié)。由方案對比測試可知,CIRG方案不但支持動態(tài)群用戶數(shù)據(jù)受損的定位與恢復(fù)需求,而且在數(shù)據(jù)完整性審計失敗后定位與恢復(fù)受損數(shù)據(jù)比文獻[13]需要更少的計算時間開銷。

圖14 方案對比測試
Figure 14 Scheme comparison test

圖15 定位對比測試
Figure 15 Location contrast test
本文提出了一種公開的、可驗證的存儲證明方案CIRG,該方案支持在動態(tài)群用戶環(huán)境中快速定位和恢復(fù)受損數(shù)據(jù)。方案不僅允許群用戶高效審計存儲在云服務(wù)器上共享數(shù)據(jù)的完整性,更重要的是,當(dāng)審計未通過時(數(shù)據(jù)受損),用戶可以高效定位并恢復(fù)相應(yīng)受損數(shù)據(jù)。相關(guān)安全性分析證明,該方案在威脅模型下是安全的。本文具體實現(xiàn)了CIRG原型系統(tǒng)并進行了功能測試,相關(guān)實驗結(jié)果表明系統(tǒng)在動態(tài)群用戶受損數(shù)據(jù)的定位與恢復(fù)中是有效的。
[1] ZAFAR F, KHAN A, MALIK S U R, et al. A survey of cloud computing data integrity schemes: Design challenges, taxonomy and future trends[J]. Comput Secur, 2017, 65: 29-49.
[2] GUMASTE P. Amazon aws outage[EB].
[3] PAN Y, HU N. Research on dependability of cloud computing systems[C]//2014 10th International Conference on Reliability, Maintainability and Safety (ICRMS). 2014: 435-439.
[4] SCHROEDER B, GIBSON G A. A large-scale study of failures in high-performance computing systems[J]. IEEE Trans Dependable Secur Comput, 2010, 7(4): 337-351.
[5] WU D, XIA Y, SUN X S, et al. Masking failures from application performance in data center networks with shareable backup[C]//Pro- ceedings of the 2018 Conference of the ACM Special Interest Group on Data Communication. 2018: 176-190.
[6] ATENIESE G, BURNS R C, CURTMOLA R, et al. Provable data possession at untrusted stores[C]//Proceedings of the 2007 ACM Conference on Computer and Communications Security (CCS 2007). 2007: 598-609.
[7] JUELS A, KALISKI B S. Pors: proofs of retrievability for large files[C]//Proceedings of the 2007 ACM Conference on Computer and Communications Security (CCS 2007). 2007: 584-597.
[8] GUO H, ZHANG Z, XU J, et al. Accountable proxy re-encryption for secure data sharing[J]. IEEE Trans Dependable Secur Comput, 2021, 18(1): 145-159.
[9] SENGUPTA B, RUJ S. Efficient proofs of retrievability with public verifiability for dynamic cloud storage[J]. IEEE Trans Cloud Comput, 2020, 8(1): 138-151.
[10] SHEN J, ZHOU T, HE D, et al. Block design-based key agreement for group data sharing in cloud computing[J]. IEEE Trans Dependable Secur Comput, 2019, 16(6): 996-1010.
[11] JIANG T, CHEN X, MA J. Public integrity auditing for shared dynamic cloud data with group user revocation[J]. IEEE Trans Computers, 2016, 65(8): 2363-2373.
[12] LIU X, MA J, XIONG J, et al. Personal health records integrity verification using attribute based proxy signature in cloud computing[C]//Internet and Distributed Computing Systems - 6th International Conference (IDCS 2013). 2013: 238-251.
[13] ZHANG Y, YU J, HAO R, et al. Enabling efficient user revocation in identity-based cloud storage auditing for shared big data[J]. IEEE Trans Dependable Secur Comput, 2020, 17(3): 608-619.
[14] BERNSTEIN D J, DOUMEN J, LANGE T, et al. Faster batch forgery identification[C]//Progress in Cryptology - INDOCRYPT 2012, 13th International Conference on Cryptology. 2012: 454-473.
[15] SHIN S, KIM S, KWON T. Identification of corrupted cloud storage in batch auditing for multi-cloud environments[C]//Information and Communication Technology-Third IFIP TC 5/8 International Conference (ICT), and 9th IFIP WG 8.9 Working Conference (CONFENIS 2015). 2015: 221-225.
[16] MATT B J. Identification of multiple invalid signatures in pairing-based batched signatures[C]//Public Key Cryptography - PKC 2009, 12th International Conference on Practice and Theory in Public Key Cryptography, 2009: 337-356.
[17] 王惠峰, 李戰(zhàn)懷, 張曉, 等. 云存儲中支持失效文件快速查詢的批量審計方法[J]. 計算機學(xué)報, 2017, 40(10): 2338-2351.
WANG H F, LI Z H, ZHANG X, et al. Batch auditing supporting fast searching invalid files in cloud storage[J]. Chinese Journal of Computers, 2017, 40(10): 2338-2351.
[18] ZHOU T, TIAN C. Fast erasure coding for data storage: a comprehensive study of the acceleration techniques[C]//17th USENIX Conference on File and Storage Technologies (FAST 2019), 2019: 317-329.
[19] 伍祈應(yīng), 馬建峰, 李輝, 等. 支持用戶撤銷的多關(guān)鍵字密文查詢方案[J]. 通信學(xué)報, 2017, 38(8): 183-193.
WU Q Y, MA J F, LI H, et al. Multi-keyword search over encrypted data with user revocation[J]. Journal on Communications, 2017, 38(8):183 -193.
[20] WANG C, CHOW S S M, WANG Q, et al. Privacy-preserving public auditing for secure cloud storage[J]. IEEE Trans Computers, 2013, 62(2): 362-375.
[21] YU J, REN K, WANG C, et al. Enabling cloud storage auditing with key-exposure resistance[J]. IEEE Trans Inf Forensics Secur, 2015, 10(6): 1167-1179.
[22] HUO H, JIANG T, TAN S, et al. Efficient public integrity auditing with secure deduplication in cloud computing[J]. Int J Embed Syst, 2019, 11(6): 764-777.
[23] LI Y, YU Y, MIN G, et al. Fuzzy identity-based data integrity auditing for reliable cloud storage systems[J]. IEEE Trans Dependable Secur Comput, 2019, 16(1): 72-83.
Proof of storage with corruption identification and recovery for dynamic group users
JIANG Tao1, XU Hang2, WANG Liangmin3, MA Jianfeng1
1. State Key Laboratory of Integrated Service Networks, Xidian University, Xi’an 710071, China 2. School of Cyber Engineering, Xidian University, Xi’an 710126, China 3. School of computer science and engineering, Southeast University, Nanjing 211189, China
The outsourced storage mode of cloud computing leads to the separation of data ownership and management rights of data owners, which changes the data storage network model and security model. To effectively deal with the software and hardware failures of the cloud server and the potential dishonest service provider and also ensure the availability of the data owners’ data, the design of secure and efficient data availability and recoverability auditing scheme has both theoretical and practical importance in solving the concern of users and ensuring the security of cloud data. However, most of the existing studies were designed for the security and efficiency of data integrity or recoverability schemes, without considering the fast identification and reliable recovery of damaged data under dynamic group users. Thus, to quickly identify and recover damaged data, a publicly verifiable proof of storage scheme was proposed for dynamic group cloud users. The designed scheme enabled a trusted third-party auditor to efficiently identify the damaged files through a challenge-response protocol and allowed the cloud storage server to effectively recover them when the degree of data damage is less than an error correction ability threshold. The scheme combined association calculation and accumulation calculation, which effectively reduced the number of calculations for the identification of damaged data. By combining erasure coding and shared coding technology, the scheme achieved effective recovery of damaged data of dynamic group users. At the same time, the scheme also supported dynamic user revocation, which ensured the integrity audit and reliable recovery of the collective data after user revocation. The network model and threat model of the designed scheme were defined and the security of the scheme under the corresponding security model was proved. Through the prototype implementation of the scheme in the real environment and the modular performance analysis, it is proved that the proposed scheme can effectively identify the damaged data and reliably recover the cloud data when the data is damaged. Besides, compared with other schemes, it is also proved that the proposed scheme has less computational overhead in identifying and recovering damaged data.
cloud storage, data sharing, corruption identification, proof of retrievability, dynamic group users
TP309
A
10.11959/j.issn.2096?109x.2022071
2022?04?11;
2022?07?22
王良民,laingmin@seu.edu.cn
中央高校基本科研業(yè)務(wù)費專項(XJS211502)
Fundamental Research Funds for the Central Universities (XJS211502)
姜濤, 徐航, 王良民, 等. 支持受損數(shù)據(jù)定位與恢復(fù)的動態(tài)群用戶可證明存儲[J]. 網(wǎng)絡(luò)與信息安全學(xué)報, 2022, 8(5): 75-87.
Format: JIANG T, XU H, WANG L M, et al. Proof of storage with corruption identification and recovery for dynamic group users[J]. Chinese Journal of Network and Information Security, 2022, 8(5): 75-87.
姜濤(1984?),男,山東威海人,博士,西安電子科技大學(xué)副教授,主要研究方向為密碼學(xué)與安全協(xié)議、大數(shù)據(jù)存儲安全和智能安全。

徐航(1995?),男,陜西西安人,西安電子科技大學(xué)碩士生,主要研究方向為云存儲數(shù)據(jù)安全。
王良民(1977?),男,安徽潛山人,博士,東南大學(xué)教授、博士生導(dǎo)師,主要研究方向為密碼學(xué)與安全協(xié)議、物聯(lián)網(wǎng)安全、大數(shù)據(jù)安全。

馬建峰(1963?),男,陜西西安人,博士,西安電子科技大學(xué)教授、博士生導(dǎo)師,主要研究方向為計算機系統(tǒng)安全、移動與無線安全、系統(tǒng)可生存性和可信計算。