?

云數據安全去重技術研究綜述*

2024-01-11 11:00伍高飛袁紫依孫思賢陳永強孫潤東付安民朱笑巖張玉清1
密碼學報 2023年6期
關鍵詞:攻擊者數據安全密鑰

伍高飛, 袁紫依, 孫思賢, 陳永強, 孫潤東, 付安民, 朱笑巖, 張玉清1,,6

1.西安電子科技大學 網絡與信息安全學院, 西安710126

2.燕山大學 信息科學與工程學院, 秦皇島066004

3.西安電子科技大學 通信工程學院, 西安710071

4.中國科學院大學國家計算機網絡入侵防范中心, 北京101408

5.南京理工大學 計算機科學與工程學院, 南京210094

6.中關村實驗室, 北京100094

7.成都信息工程大學 先進密碼技術與系統安全四川省重點實驗室, 成都610225

1 引言

隨著云計算技術的飛速發展, 當前已經進入了大數據時代.很多用戶將自己的數據存儲到云服務器中, 這使得用戶能夠隨時隨地訪問自己的數據, 更加方便地管理它們[1].根據國際數據機構IDC (International Data Corporation) 研究報告統計[2], 2013 年全球數據總量為4.4 ZB, 2022 年全球數據總量將增加至80 ZB, 而2025 年將會達到175 ZB.龐大的數據量使得如何經濟、高效地在云端存儲數據更加受到關注.

為了在實踐中更好地使用和發展云存儲的相關技術, 首先要解決云存儲服務提供商的存儲效率和功耗問題.最直接的方法是使用數據壓縮技術, 將數據壓縮后再上傳至云端.然而, 不同的場景要求不同的壓縮格式, 不同的壓縮算法便會產生不同的壓縮副本, 并不能解決存儲效率問題, 同時還造成了額外的帶寬消耗[3], 因此數據去重技術應運而生.數據去重技術通過刪除存儲系統中集中重復的數據, 只保留其中一份副本, 以達到消除冗余數據和提高云存儲系統的帶寬利用率等目的[4,5].為保證隱私和數據安全, 用戶往往對需要上傳云端的數據進行加密, 將數據以密文形式存儲在云端, 這會阻礙云服務器的維護和重復數據的有效刪除.因此, 如何同時實現數據的安全存儲和有效去重, 是一個值得深入研究的方向[6].

為了提高云存儲服務提供商的存儲效率, 同時降低管理開銷, 數據去重技術被廣泛應用于各大云服務器提供商之間[7], 該技術可以找出不同用戶上傳的重復數據, 只保存唯一的數據單元, 并為該數據單元創建訪問指針.用戶將預處理后的數據上傳至云服務器, 云服務器存儲數據與相關數據標識, 并根據隨機抽樣、提取散列值等方法來檢測數據是否重復, 若相同則執行刪除操作, 將數據的訪問指針發送給用戶, 而不執行實際的上傳.文獻[8] 將重復數據刪除技術分為相同數據檢測技術、相似數據檢測和編碼技術兩類, 從完全文件檢測、固定塊檢測、可變分塊檢測、滑動塊檢測等方面對相同數據檢測進行分析, 從基于shingle 的檢測技術、基于Bloom filter 的檢測技術、基于模式匹配的檢測技術等方面分析了相似數據檢測技術.Xiong 等[9]分析總結了云存儲中的數據去重的相關技術, 從基于內容加密的安全去重、基于所有權證明的安全去重和隱私保護的安全去重3 個方面總結了相關技術的研究進展.Shin 等[10]從研究對象粒度、數據去重的操作位置、存儲架構和云服務模型等方面對數據去重技術進行了分析, 描述了用于解決不同安全威脅的多種云數據去重技術.

與傳統的數據存儲模式不同, 用戶將數據上傳至云端后, 就失去了對數據的直接控制能力, 只能通過云服務器提供的接口對存儲數據進行間接管理[11].在云環境中, 存儲在云服務器的用戶數據通常包含大量的隱私或敏感信息, 攻擊者可以利用數據去重過程產生的側信道來獲取這些用戶隱私[12].此外, 云環境下的數據安全去重系統還面臨著安全風險及其解決方法帶來的性能效率問題, 例如隱私保護去重方案中隱私與效率之間的平衡問題.為了解決上述問題, 在保證用戶數據安全的同時實現數據安全去重迅速成為云存儲領域的研究熱點, 并取得了相關的研究成果.本文廣泛調研了云去重領域自2016 年1 月至2023 年4 月期間來自DBLP (Database Systems and Logic Programming)、Web of Science、Elsevier、SpringerLink 和中國知網(CNKI) 等國內外知名數據庫收錄的現有相關研究工作, 如圖1 所示, 并對主要期刊1期刊: IEEE Trans., ACM Trans., IEEE Internet of Things Journal, Information Sciences, Computers & Security 等、會議2會議: S&P, USENIX Security, CCS, NDSS, EUROCRYPT, CRYPTO, ASIACRYPT, INFOCOM, ACM SoCC 等收錄的現有研究工作進行分類統計, 如圖2 所示.

本文的主要貢獻有3 個方面:

(1) 深入調研云數據去重領域自2016 年以來的相關文獻, 總結云數據安全去重系統的一般結構和其面臨的主要挑戰及相關安全威脅.

(2) 以云數據安全去重技術的實現機制為分類依據, 從基于內容加密的安全去重、基于PoW 的安全去重、隱私保護的安全去重和基于數據流行度的安全去重四個方面分析近年來研究工作, 重點分析現有研究工作的去重效率, 并指出各種數據去重技術的優點、局限性以及存在的共性問題.

(3) 分析當前數據安全去重領域面臨的各種機遇和挑戰, 并對未來的發展趨勢和研究方向進行展望.

2 問題描述

2.1 面臨的挑戰

云存儲服務不同于傳統的數據存儲系統, 其中用戶數據的管理權與所有權相分離.為保護用戶的隱私與數據安全, 云存儲服務通常會將數據加密處理.數據的加密方式以及安全去重方式也是當今學術界的研究熱點.云環境下的數據外包與虛擬化等特征也給云數據的安全去重帶來諸多如下挑戰.

(1) 數據去重與語義安全.傳統加密算法可以為數據提供安全級別較高的語義安全, 但傳統加密算法與數據去重技術互不兼容.收斂加密(convergent encryption, CE) 采用數據的散列值作為加密密鑰, 相同的數據加密后可得到相同的密文, 實現了加密去重.然而, CE 只能為不可預測的數據提供語義安全.若采用CE 對可預測的數據進行加密, 則易遭受離線字典攻擊.因此, 在實現數據去重的過程中提供語義安全是一個關鍵問題.

(2) 隱私泄露.數據去重方案往往是在用戶與服務器之間進行信息交互, 通過判斷數據的重復性來執行數據去重.數據去重過程中會產生側信道, 攻擊者通過學習文件內容、識別文件、建立隱蔽通道等方式來對云服務器發起攻擊[12], 竊取用戶的隱私信息.此外, 用戶的外包數據中通常包含大量的敏感或隱私信息, 攻擊者也可以收集用戶數據中的隱私信息來進行針對性的對策分析.因此,保護用戶數據的隱私是非常必要和緊迫的, 這也是云存儲服務提供商亟需解決的問題.

(3) 數據可用性.云存儲系統中存在設備故障的風險, 可能會導致共享數據丟失以及數據不可用等問題.在云存儲系統中只存儲一份重復數據, 若設備發生故障且共享數據丟失, 則會導致多個文件不可讀.此外, 云存儲系統采用的設備還存在機械故障的風險, 可能會導致數據丟失以及系統服務中斷.

2.2 系統模型

安全去重系統的模型大致分為兩類: 含第三方服務器的安全去重系統模型(如圖3 所示) 和不含第三方服務器的安全去重系統模型.整個系統的主要實體包括用戶、云服務器和第三方服務器(如果有).文獻[13–16] 引入了密鑰服務器對收斂密鑰進行管理.文獻[17–20] 使用不含第三方服務器的安全去重系統,所有去重過程都在用戶和云服務器之間完成, 擺脫了可信第三方的束縛, 同時減少了系統的通信開銷.

圖3 含第三方服務器的系統模型Figure 3 System model with third-party server

2.3 威脅模型

攻擊者能夠利用數據去重機制對云服務器發起攻擊, 本節將描述攻擊者對云服務器造成的各種安全威脅, 以及抵抗這些安全威脅的相關方案.

側信道攻擊.Harnik 等[12]提出了三種利用跨用戶數據去重來攻擊用戶隱私的側信道攻擊, 側信道攻擊既可以發生在文件級去重中, 也可以發生在塊級去重中, 如圖4 所示, 主要分為三種: (1) 識別文件[21],攻擊者將指定文件上傳至云服務器并觀察網絡流量, 如果文件成功上傳至云服務器, 則攻擊者就會知道云服務器沒有存儲該文件, 否則, 攻擊者可以發現云服務擁有該文件; (2) 學習文件內容, 攻擊者通過對文件內容的所有可能值進行窮舉攻擊, 并通過去重檢測來判斷所猜測的內容是否正確; (3) 建立隱秘通道, 攻擊者在客戶端嵌入惡意軟件, 惡意軟件可以將一個文件的兩個版本上傳至云服務器, 通過觀察文件是否發生去重, 將文件信息發送給攻擊者.

圖4 側信道攻擊模型Figure 4 Side channel attack model

針對上述攻擊, 文獻[22] 提出了一種基于雙層加密和密鑰共享的云數據去重方案, 該方案基于服務器端進行去重, 使得用戶難以判斷上傳的文件是否已經存在, 從而抵抗側信道攻擊.此外, 文獻[23] 提出在去重標簽中嵌入屬性密鑰, 實現了安全的授權去重, 未經授權的用戶無法進行側信道攻擊, 數據對于未授權用戶而言是語義安全的.

蠻力攻擊.當攻擊者擁有密文時, 可以對猜測的明文內容進行加密, 將所有猜測的明文加密后與密文進行比對, 就可以獲取原始文件內容.針對該攻擊, Xiong 等[24]提出了一個用于協作云應用中的安全訪問和數據去重的混合PoSW 方案, 可以解決多用戶共享所有權這一問題, 該方案使用多個密鑰管理器分散地生成收斂密鑰, 可以抵抗蠻力攻擊, 同時可以解決云服務器和密鑰管理員串通這一問題.Li 等[25]提出了一種安全的、有效的客戶端加密數據去重方案, 采用密鑰服務器來協助用戶生成密鑰, 通過采用速率限制策略來抵抗蠻力攻擊.文獻[26] 提出了一種基于Merkle 哈希樹的數據去重方案, 該方案通過構造Merkle哈希樹來生成加密密鑰, 使得密文變得不可預測, 從而抵抗了蠻力攻擊.

字典攻擊.若攻擊者與云服務器勾結, 獲取了密文內容, 與已知的密文字典進行比對, 借此推測出明文內容.Puzio 等[27]指出了在基于CE 的加密中存在字典攻擊, 在已知密文的情況下, 攻擊者可以通過對猜測的明文進行加密, 再將加密后的明文與已知密文進行對比, 從而破解出密文對應的明文.Shen 等[28]提出一種輕量級云存儲審計的數據去重方案, 用戶的文件隱私不會被泄露給云端和其他各方, 解決了數據泄露問題, 能夠抵抗字典攻擊.Zheng 等[29]提出利用無證書代理重加密技術來抵抗字典攻擊.

偽造攻擊.攻擊者首先提供合法的去重標簽值, 同時上傳與標簽值不一致的加密文件, 由于標簽是由數據所有者通過擁有的文件計算得到, 因此云服務器難以驗證標簽與加密文件的一致性; 當用戶上傳與該去重標簽值相匹配的文件時, 該文件會由于去重機制而無法被云服務器存儲, 用戶只能下載得到攻擊者偽造的文件, 如圖5 所示.為了抵抗該攻擊, 文獻[30] 提出了一種基于秘密共享算法的安全數據去重方案, 采用基于中國剩余定理的秘密共享算法將密鑰分為多個隨機塊, 并發送給相應的密鑰管理服務器, 降低了密鑰開銷, 可以有效抵抗偽造攻擊.

圖5 偽造攻擊模型Figure 5 Forgery attack model

頻率分析攻擊.現有去重方案大多采用確定性加密算法, 這使得相同明文經過加密后得到的密文相同, 每一對密文和明文都具有相關的頻率模式, 因此攻擊者可以對密文進行頻率分析從而推斷出原始明文的內容[31].Li 等[32]在頻率分析攻擊的基礎上提出一種基于分布的攻擊, 該攻擊與頻率分析攻擊相比,能夠更加精確地推斷出去重系統中明文-密文對.針對頻率分析攻擊, 文獻[33] 提出一種新的密碼學原語TED, TED 提供了一種可調節的機制, 允許用戶在存儲效率和數據保密性之間進行平衡.其核心思想是削弱MLE 算法的確定性, 允許不同的密鑰對重復的明文塊進行加密, 有效地抵抗了頻率分析攻擊.Yang等[34]設計了一種在數據加密前對數據去重的方法DbE, 并根據該方法提出了一種基于Intel SGX 的數據去重方案DEBE.該方案首先對enclave 安全容器內頻率較高的數據進行去重, 再對enclave 安全容器外頻率較低的數據進行去重, 為去重提供了安全的執行環境, 從而抵抗了頻率分析攻擊.Xie 等[35]根據用戶的安全需求為數據塊提供不同級別的安全性, 保證去重效率的同時有效抵抗了頻率分析攻擊.

3 國內外研究進展分析

目前, 國內外對云數據安全去重的研究取得了一定的成果.我們給出了云數據安全去重系統的一般結構, 如圖6 所示, 通常包含數據提取、指紋計算、指紋比較、指紋寫入四個步驟.對于現有的去重方案主要有以下分類方式: 根據去重時機的不同可將去重技術分為Inline 去重和Post-Process 去重[36].Inline去重首先刪除重復數據, 然后將其存儲到存儲介質中.在Post-Process 去重中, 數據首先被存儲在介質中,然后系統進行去重工作.根據去重數據的粒度大小[37]可劃分為文件級去重和塊級去重.根據實施去重操作的主導者可劃分為客戶端去重、服務器端去重以及跨用戶去重.

圖6 安全去重系統結構Figure 6 Secure deduplication system structure

本文以云數據安全去重的實現技術為依據, 從以下四個方面展開論述: 基于內容加密的安全去重、基于PoW 的安全去重、隱私保護的安全去重以及基于數據流行度的安全去重, 如圖7 所示.

3.1 基于內容加密的安全去重

基于內容的加密算法為對稱加密算法, 它們通過文件的內容計算對應的密文, 主要包含以下兩類算法:收斂加密(convergent encryption, CE) 算法和消息鎖加密(message-locked encryption, MLE) 算法.

3.1.1 基于CE 實現云數據安全去重

收斂加密是一種確定性加密算法, 收斂密鑰由原數據進行散列運算得到, 使得相同的數據能得到相同的收斂密鑰.該算法由Douceur 等[38]首次提出, 并在Farsite 分布式文件系統中使用了基于CE 的去重方案, 該方案使得相同的明文文件被加密成相同的密文文件, 使得系統能夠準確識別相同的文件從而有效地進行去重工作, 極大提高了重復數據的刪除率, 減少了云存儲中不必要的浪費.CE 的可擴展性強、效率高以及容錯率高等優點使其在云數據去重領域中得到了廣泛的應用.

為了實現有效的數據安全去重以及數據完整性審計, Guo 等[44]設計并實現了一個基于收斂加密的云安全去重和完整性審計系統.該方案使用基于盲簽名的收斂密鑰封裝與解封算法以及基于收斂密鑰的BLS (Boneh-Lynn-Shacham) 簽名算法, 在保證收斂密鑰安全性的同時能夠刪除冗余的密鑰, 且減少了客戶端存儲開銷和計算開銷.

Li 等[45]結合CE 算法和文件擴散思想提出了CDStore 方案, 實現了文件的塊級去重, 提高了數據的安全性.Tian 等[46]提出塊級去重方案Sed-Dedup, Sed-Dedup 是一種有效的安全增量編碼數據去重系統, 該系統在CE 的基礎上引入了一種新的增量編碼方法, 將修改后的內容存儲在增量文件中并保持原始文件不變, 從而有效地減少了重復數據的產生.實驗表明該方案能夠很好地降低存儲成本和計算開銷.

Puzio 等[27]提出了一種基于CE 算法的云數據去重方案ClouDedup, 增加訪問控制機制, 保證了數據的機密性.Agarwala 等[47]提出一種雙重完整性收斂加密方案DICE.該協議執行標簽檢查, 并通過網絡發送散列, 從而在不影響安全性能的情況下降低通信和計算成本.實驗證明該協議有很好的安全性, 能夠抵抗偽造復制攻擊.

針對塊級文件去重中的密鑰管理問題, Liu 等[48]設計了一種客戶端安全去重方案KeyD, 采用CE和基于身份的廣播加密算法, 在不引入密鑰管理服務器或其他可信第三方的情況下, 實現了安全高效的密鑰管理, 用戶只需要與云服務器進行交互即可實現數據去重, 但沒有考慮到數據所有者的身份隱私問題.

3.1.2 基于MLE 實現云數據安全去重

在CE 的基礎上, 為了明確安全目標, 提供形式化定義的安全去重模型, Bellare 等[49]提出了消息鎖加密方案, 該方案基于CE 方案實現, 其文件的密鑰由文件原始內容和系統參數共同計算, 而后使用該密鑰對數據進行加密得到其對應的密文.

Chen 等[40]提出BL-MLE 實現了塊級的MLE 去重方法, 但塊級的MLE 的生成和共享過程存在潛在的隱私問題和大量的計算消耗.針對此問題, Zhou 等[50]提出了一種具有靈活訪問控制的云相似性感知加密數據去重方案EDedup.該方案采用基于代理的屬性加密算法實現了細粒度的訪問控制, 通過一個代表性哈希, 利用相似性減少了計算消耗.Zhang 等[51]提出SPADE 安全去重方案, 該方案提出一種服務器輔助MLE 的主動機制, 對密鑰服務器進行定期更新, 以更新對密鑰的安全保護, 能夠抵抗蠻力攻擊.

Bellare 等[39]利用完全同態加密算法擴展了MLE, 提出iMLE 方案, 該方案通過交互消息鎖加密算法實現了跨用戶的數據去重, 從而有效地實現了關聯文件的去重.Pooranian 等[18]提出了一種消息鎖加密和無解密同態加密協議LEVER, 該協議能夠很好地抵抗外來的蠻力攻擊, 且文件傳輸過程只有上傳者和云參與, 無需CSP 在后臺工作.LEVER 在客戶端進行加密數據的去重, 且能夠在保證通信效率的同時增加重復數據的刪除率.

Bellare 等[52]提出DupLESS 方案, 該方案引入密鑰服務器協助用戶生成加密密鑰, 有效抵抗了字典攻擊.Chouhan 等[53]對DupLESS 方案進行擴展, 采用EC (eraser coding) 機制將數據和密鑰分割成片段, 分別存儲在云服務器以及密鑰存儲服務器, 進一步保證了數據和密鑰的安全性.

Zhao 等[41]提出了可更新的塊級消息鎖加密UMLE, 該方法支持所有權證明可以很好地保護用戶數據.Shin 等[15]基于UMLE 算法提出了一種可隱私保護且支持數據更新的加密文件塊去重方案, 該方案通過指數運算和雙線性實現文件塊的密鑰生成、加密和解密操作, 在一定程度上能夠抵抗蠻力攻擊.

3.1.3 小結

基于內容加密的安全去重能夠更加有效地刪除重復數據, 解決了用戶加密和數據重復率的矛盾, 節省了許多存儲空間.但依舊存在一些局限性: (1) 基于CE 的去重方案使得相同數據的密文也變得相同, 極大提高了數據的去重效率, 但它極易遭受離線的暴力攻擊[54], 這使得數據無法得到很好的安全保障; (2)Sed-Dedup 方案[46]解決了文件發生較小改動時無效的相似性檢測的問題, 但在計算文件的多個版本之間的差異時效果仍不是很好; (3) LEVER 系統[18]可以抵抗蠻力攻擊, 但無法有效地抵抗側信道攻擊.表1 對上述基于內容加密的安全去重方案的性能進行了對比分析.

3.2 基于PoW 的安全去重

在客戶端去重中, 為了防止用戶只需擁有上傳文件的散列值就可以獲取到原始文件, 研究人員提出了所有權證明的概念, PoW 協議是由云服務器與客戶端共同參與的交互協議, 用來證明客戶端是否真實擁有該文件.

3.2.1 基于MHT 的PoW

基于MHT (Merkle hash tree) 的PoW 證明方法(MHT-PoW) 最早由Halevi 等[55]提出, 該方法中由服務器隨機選取n個葉子節點, 并將這些葉子節點的路徑作為挑戰信息發送給客戶端, 再根據客戶端的應答信息來驗證用戶的所有權.然而在該方案中, 挑戰與應答階段中所有的數據塊都沒有加密, 可能會泄露數據隱私.針對上述問題, Xu 等[56]在Halevi 方案的基礎上進行優化, 利用收斂加密處理數據, 對加密數據計算散列值來構建MHT, 因此在挑戰與應答過程中不會泄露任何信息.

為實現云數據安全去重和完整性審計, Li 等[57]提出了兩個安全系統, SecCloud 和SecCloud+.Sec-Cloud 方案利用MapReduce 云代替第三方審計者, 幫助客戶端在上傳文件前生成數據標簽, 并對存儲在云中的數據進行完整性審計.在SecCloud 方案的基礎上, SecCloud+ 引入了一個密鑰服務器, 除了能夠實現數據完整性和安全去重外, 還能夠保證文件的保密性, 但將數據直接發送給MapReduce 云沒有考慮數據隱私問題.

Wang 等[58]提出了一種基于密鑰共享的數據安全去重方案, 該方案基于所有權證明的密鑰共享方法來解決收斂加密的密鑰管理問題.通過構造MHT 來生成去重檢測標簽, 攻擊者無法從中獲得任何有價值的信息.實驗結果表明, 該方案比其他方案具有更小的通信開銷.然而, 該方案仍需借助第三方來實現數據去重、所有權證明以及密鑰管理等, 沒有擺脫對信任實體的依賴.

3.2.2 基于隨機抽樣的PoW

由于MHT-PoW 中計算和I/O 開銷較大, 研究者提出基于隨機抽樣的PoW 方法, 該方法要求服務器隨機選擇文件的比特位來作為文件所有權的證據發送給客戶端, 客戶端將對應的應答返回給服務器, 再驗證是否與挑戰信息相匹配.Di 等[42]提出了一種優化方案(s-PoW), 利用偽隨機數生成器產生隨機的索引位置, 保證了計算開銷不隨數據塊的數量變化而變化.Blasco 等[43]利用Bloom filter 的高檢索效率, 提出了一種基于Bloom filter 的靈活且可擴展的數據去重方案(BF-PoW), 提高了服務器端的工作效率.González-Manzano 等[17]提出了一種CE-PoW, 采用CE 算法對數據進行加密, 該方案相較于其他PoW 方案具有較小的開銷.

Yang 等[59]提出了一種可證明的文件所有權證明方案(POF), 通過動態系數和隨機選擇的原始文件索引值來實現安全與高效的目標, 即使攻擊者收集到大量挑戰-響應信息, 也無法從中獲取到與所有權證明相關的信息, 可以抵抗重放攻擊和合謀認證攻擊.在該方案中, 客戶端只需要訪問原始文件的很小一部分來生成所有權證明, 減少了客戶端的計算開銷.

為了實現分層環境下的授權數據去重和所有權證明, González-Manzano 等[60]提出了一種屬性對稱加密的PoW 方案(ase-PoW), 采用輕量級的訪問控制程序來抵抗文件內容猜測攻擊, 其中文件加密密鑰與用戶的屬性相關.然而, 該方案并未考慮到密鑰的更新和撤銷.為了解決上述問題, Xiong 等[61]提出了一種基于RSE 的角色對稱加密PoW 方案(RSE-PoW), 采用了一個分層的樹狀結構來管理用戶的角色密鑰, 只有具有特定權限的用戶才能夠訪問相應的文件, 當用戶的權限被撤銷時, 相應的角色密鑰則會被刪除和更新, 實現了對數據授權訪問的安全去重.該方案可以防止隱私泄露和側信道攻擊.

由于所有權動態變化過程會產生大量的開銷, 為了改進這一問題, Jiang 等[62]提出了一種支持動態所有權管理的安全去重方案, 支持跨用戶、塊級和文件級去重, 采用懶人更新策略以減少更新頻率和計算開銷.實驗表明, 該方案保證了數據的機密性和標簽的一致性, 并且減少了密鑰的存儲空間.

為解決數據去重方案中共享文件的所有權問題, Xiong 等[24]結合所有權證明、秘密共享、Bloom filter 等技術, 提出了一種用于協作云應用的共享所有權證明方案(ms-PoSW), 實現協作云應用中對共享文件的安全訪問、所有權證明與安全去重.

Liu 等[63]提出了一種可以同時支持數據去重和可搜索加密的方案, 該方案將所有權證明和MLE 結合, 同時引入密鑰服務器參與密鑰生成, 密鑰服務器與客戶端之間采用盲簽名進行交互, 未經授權的用戶無法獲取加密密鑰, 可以有效抵抗蠻力攻擊.

表2 對上述基于隨機抽樣的PoW 方案的性能進行了對比分析.

表2 基于隨機抽樣的PoW 去重方案的對比分析Table 2 Comparison of PoW based on spot-checking

3.2.3 基于數字簽名的PoW

為了保證用戶數據的隱私, 收斂加密被廣泛用于客戶端數據去重的場景中, 但收斂加密易遭受暴力字典攻擊, 且無法為可預測數據提供語義安全.因此, 研究者提出將數字簽名與所有權證明方法相結合.基于數字簽名的PoW 方案具有較高的安全性, 因此被廣泛應用于安全去重方案中.

用戶需要定期檢查云中存儲數據的完整性, 但大多數方案不能同時支持數據的安全去重和完整性審計.針對這一問題, Youn 等[64]提出了一種可以同時支持加密數據的客戶端去重和完整性審計的方案, 使用基于BLS 簽名的同態線性認證器執行PoW 協議來實現安全去重, 同時該方案支持第三方審計師進行公共審計.

Liu 等[65]利用代理重簽名技術, 實現了用戶間審計標簽去重, 進一步提高了去重的效率.該方案不需要額外的代理服務器, 只需將審計任務委托給第三方審計機構, 但是審計過程需要用戶參與, 且云服務器中存儲了大量代理重簽名密鑰, 增加了云存儲開銷.

Zheng 等[29]提出了一種基于無證書代理重加密的安全去重方案, 該方案由無證書代理重加密和基于無證書簽名的PoW (PoW-CLS)組成, 使用無證書代理加密技術解決了密鑰托管問題, 密鑰由客戶端和密鑰生成中心共同生成, 可以避免密鑰生成中心冒充用戶對密文進行解密, 實現了跨用戶的數據去重.

Li 等[66]提出了一種基于區塊鏈的安全去重方案, 采用雙向的PoW 機制, 使用戶和云服務器能夠互相驗證雙方對目標數據的所有權.通過集成雙向PoW 機制、MLE、密鑰累加器以及區塊鏈技術, 實現了安全透明的數據去重方案.

除了保證云存儲數據的安全去重, 驗證存儲在云服務器中數據的完整性也十分重要, 驗證數據完整性的方案可分為可證明數據持有(provable data possession, PDP) 機制[67]和數據可恢復證明(proofs of retrievability, POR) 機制[68].現有大部分PDP 和POR 尚未考慮損壞數據定位這一問題, Zheng 等[69]提出了一種可以支持密鑰更新的安全審計方案, 該方案將用戶部分密鑰的計算委托給TPA, 減少了用戶端的計算開銷, 并且每一輪更新的密鑰都不相同, 提高了用戶密鑰的不可偽造性.

3.2.4 小結

基于所有權證明的安全去重方法是通過執行驗證數據的所有者是否擁有數據源的過程, 來證明數據所有者的所有權, 并以此抵御所有權偽造攻擊或其他側信道攻擊, 但仍存在一定局限性: (1) 現有的PoW 方法能夠抵抗隱私泄露和哈希證明攻擊, 但同時也存在計算開銷大或誤判導致隱私泄露的風險; (2) 較少考慮到所有權動態變化這一問題, 未能實現對所有權的更新和撤銷; (3) 云服務器利用Bloom filter 能夠迅速驗證客戶端的響應結果, 但Bloom filter 存在一定的誤判率, 且隨著元素增加, 誤判率也不斷增加.

3.3 隱私保護的安全去重

在云存儲領域中, 數據安全與用戶隱私一直以來都是人們關注的一個熱點問題.在進行云數據去重的過程中, 攻擊者能夠利用側信道來侵犯用戶隱私.因此, 保障數據隱私對云存儲發展極為重要.云數據去重方案中側重于數據隱私保護的去重方案可大致分為兩類: 基于隨機化方法實現的隱私保護安全去重和基于差分隱私實現的隱私保護安全去重.

3.3.1 基于隨機化方法的隱私保護安全去重

數據去重過程中去重請求和去重響應之間的確定性關系是產生側信道的主要原因, 因此抵抗側信道攻擊的一個簡單策略是隨機化去重檢查過程.Harnik 等[12]提出了一種簡單的隨機化機制, 為每個上傳文件都設置了一個隨機閾值, 當文件的存儲副本數量達到閾值則執行客戶端去重, 否則數據去重只在服務器端執行.該方案支持跨用戶數據去重, 同時降低了數據泄露的風險.

Armknecht 等[70]在Harnik 等[12]方案的基礎上證明了隨機化數據去重方案在安全性和效率之間存在一定的平衡, 并表明Harnik 等[12]方案的統一隨機閾值比Lee 等[71]方案的可變閾值更具有安全性.Wang 等[72]采用博弈論對去重過程中遇到的安全問題進行模擬, 經實驗證明該方案能夠有效抵抗側信道攻擊.

Yu 等[73]提出了ZEUS 方案, 該方案要求每次上傳兩個數據塊, 并根據數據塊的去重結果生成模糊化的響應, 可以防止攻擊者通過去重檢查來判斷數據的存在狀態, 從而保護了數據存在性隱私.但該方案需要維護一個去重檢查響應表來記錄所有用戶已檢測但未上傳的數據塊, 增加了云服務器的存儲和計算開銷.Pooranian 等[74]在Yu 等[73]方案的基礎上增加了少量的開銷, 提供了更強的隱私保護.

Tang 等[75]提出了基于請求合并的數據去重方案RMDS, 該方案使用基于異或的區塊級服務器端存儲結構, 在去重過程中添加冗余塊來混淆攻擊者, 可以有效地抵御附加塊攻擊.經實驗證明RMDS 方案所需的通信開銷明顯小于ZEUS 方案[73].

Ha 等[76]提出了針對側信道攻擊的防御方案, 該方案將已存儲和未存儲數據塊的去重響應分組到不同的集合中, 可以消除數據去重響應與數據存在之間的相關性, 降低攻擊者破壞數據隱私的可能性.安全分析以及性能評估表明, 該方案可以有效地保護用戶數據隱私, 同時降低系統的通信開銷.

3.3.2 基于差分隱私的隱私保護安全去重

該方法主要是引入了差分隱私機制, 差分隱私概念是由Dwork[77]首先提出的, 通過添加噪聲對數據造成污染, 使得改變任意一條數據也無法使查詢結果發生明顯變化, 在對數據造成污染的同時保證原數據的某些特性不變.

Harnik[12]等的隨機化去重方案都基于每個文件相互獨立這一前提, 并未考慮文件的相關性.Shin等[78]提出相關文件攻擊這一概念, 在實際環境中, 一些文件存在著一定的關聯, 攻擊者會通過上傳文件或與相關的文件來推斷出上傳文件的存在.針對這一攻擊, Shin 等[78]引入了差分隱私機制來保證數據去重過程中的隱私, 該方案基于存儲網關來實現數據去重, 通過上傳虛擬數據來混淆數據去重的發生, 使得攻擊者無法判斷出文件是否發生去重, 達到了保護文件的目的, 從而抵抗側信道攻擊和相關文件攻擊, 實現了更強的隱私保護.

針對攻擊者利用側信道來攻擊用戶隱私這一問題, Ren 等[79]提出一種可以控制文件副本數量的混合云架構的去重方案, 結合差分隱私技術及收斂加密算法來計算密鑰值并對其二次加密, 保證每個上傳文件在服務器中只存在一份副本, 該方案可以抵抗相關文件攻擊和側信道攻擊, 節約了帶寬和存儲空間.

3.3.3 小結

面向隱私保護的安全數據去重方案采取一定的方法能夠有效地抵抗側信道攻擊, 使得用戶的數據隱私與安全得到保障, 但仍存在以下缺陷: (1) 隨機化方法由于隨機響應閾值帶來的不必要的文件上載會導致巨大的網絡帶寬消耗, 會給云服務器帶來一定的負擔, 尋求一種更輕量、便捷的隨機化機制是目前亟待解決的問題; (2) 差分隱私去重方法雖然對抵抗側信道攻擊有著很好的效果, 但引入的噪聲會對模型的可用性和準確性造成一定影響, 如何在隱私保護和數據的準確性之間取得很好的平衡還需要深入的研究.

表3 從隱私保護程度的高低、帶寬通信消耗以及數據缺損等方面, 對上述方案進行了對比分析.

表3 隱私保護的安全去重方案的對比分析Table 3 Comparison of secure deduplication of privacy protection

3.4 基于數據流行度的安全去重

現有的去重方案大多采用CE 加密, 將數據散列值作為去重檢測標簽(如CE[38]、ClouDedup[27]),而CE 只能為不可預測數據提供語義安全, 若采用CE 對可預測數據進行加密, 則易遭受離線字典攻擊.因此, 如何在實現數據去重的過程中提供語義安全是一個關鍵問題.

針對上述問題, Stanek 等[80]首次提出了數據流行度的概念, 根據數據的隱私程度將數據劃分為流行數據和非流行數據, 對不同類型的數據采用不同的保密措施.該方案為所有數據設立一個閾值t, 當某一數據F的所有者數量count(F) 大于t時, 就將該數據標識為流行數據; 否則, 當count(F) 小于t時就將數據標識為非流行數據, 如圖8 所示.由于流行數據的隱私程度較低, 采用安全性較弱的算法對流行數據進行加密, 從而降低用于加密數據的時間開銷.而非流行數據的隱私程度較高, 需要對數據采用語義安全的對稱加密算法.Stanek 等[80]使用真實數據集對該去重系統的存儲效率進行分析, 結果表明當流行數據文件較多時, 方案的去重效率較高.

圖8 數據流行度轉換Figure 8 Transition of popularity status

Puzio 等[81]提出了PerfectDedup 方案, 通過完美散列函數計算出數據標識, 將數據標識發送至索引服務器IS (index service), IS 則根據數據標識來查詢數據流行度.如果數據為流行數據, 將數據塊采用CE 加密后上傳至CSP 再執行數據塊去重; 若為非流行數據, 則對數據塊采用對稱密鑰加密.該方案對流行數據塊進行去重, 實現了更高效的數據去重.

Stanek 等[82]在原有方案的基礎進行優化, 提出了一種新的門限數據去重方案, 引入門限密碼系統,提高了非流行數據的安全性.該方案引入IRS (index repository service) 提供索引服務, 對數據流行度進行查詢.若為流行數據, 則采用CE 進行加密; 若為非流行數據, 則采用雙層加密, 內層為收斂加密, 外層為門限密碼加密, 提高了對非流行數據的隱私保護程度.該方案開銷較小, 且能抵抗用戶合謀攻擊.

現有方案大多未能實現對非流行數據的去重, 針對這一問題, Zhang 等[83]提出了一種無可信第三方的加密數據去重方案, 基于橢圓曲線實現了對數據的流行度查詢, 在查詢過程中不泄露數據的任何明文信息, 擁有相同數據的初始上傳者能夠通過云服務器將加密密鑰安全離線共享給后繼上傳者, 實現了非流行數據的去重, 提高了去重的執行效率.

Ha 等[84]引入半可信的同態解密服務器來統計數據流行度, 使用同態加密生成隨機標簽, 避免使用確定性標簽來記錄數據流行度, 然而其中的同態解密服務器易成為單點故障和效率瓶頸.針對這一問題, Ha等[85]提出了一個無第三方服務器的基于數據流行度的加密去重方案, 在不依賴于第三方服務器的情況下實現了對數據流行度的精確檢測, 同時可以為非流行數據提供語義安全以及加密去重.

基于數據流行度的安全去重要求用戶在上傳數據之前, 按照數據的隱私程度對數據進行劃分, 對不同類型的數據采用不同的加密算法進行保護.基于數據流行度的去重方法能有效地提高數據去重的效率, 但仍存在如下局限性: (1) 不同數據的隱私程度不同, 應該具有不同的流行度閾值, 而現有方案大多為所有上傳數據設定統一的閾值, 可能會增加數據隱私泄露的風險; (2) 文獻[80–82] 均未能執行非流行數據去重.

表4 對上述去重方案進行對比, 分析了非流行數據首次上傳、后續上傳和流行度轉換三種情況下的客戶端計算開銷.表5 從主要算法、去重粒度、優點和局限性等方面對數據去重方案進行系統梳理和歸納.

表4 基于數據流行度的去重方案的客戶端計算開銷對比分析Table 4 Comparison of client computation of popularity-based deduplication scheme

表5 云數據安全去重方案的對比分析Table 5 Comparison of secure data deduplication

4 發展趨勢與未來研究方向

目前云加密數據去重已經取得了一定的成果, 但與成熟的體系結構還有一段距離.圖9 給出了本文所提及的具有一定代表性的云數據安全去重方案的時間線.在大數據時代, 數據的爆炸增長和多樣性也給加密數據的安全去重帶來了更大挑戰, 也是今后應該研究的重點和方向.未來的研究方向應分為如下幾方面.表6 總結了云數據去重領域的挑戰和機遇.

表6 云數據去重領域面臨的挑戰和機遇Table 6 Challenges and opportunities in field of cloud data deduplication

(1) 基于內容加密的安全去重仍然是目前安全去重的主流方法, 但CE 不能為可預測的數據提供語義安全, 容易遭受暴力字典攻擊.為了解決這一問題, 許多研究者引入第三方服務器協助云服務器進行數據去重, 例如, Bellare 等[52]提出了基于服務器協助加密的去重方案DupLESS, 在密鑰服務器的協助下生成隨機的安全密鑰, 保證數據的安全性, 該方案可抵抗蠻力攻擊, 但要求密鑰服務器完全可信.然而, 完全可信的第三方實體在現實中難以實現, 可行性較低.在實際應用中, 第三方可信實體可能和攻擊者共謀獲取用戶數據, 則用戶數據安全難以保證.現有數據去重方案大多依賴于第三方可信實體, 導致方案的執行效率與安全性較低, 因此, 尋求能夠擺脫第三方可信實體的數據去重方案成為了目前研究的熱點問題.

(2) 現有的所有權證明方法能夠防止隱私泄露同時抵抗哈希證明攻擊, 但仍然存在計算開銷大或是誤判導致隱私泄露的問題, 同時現有方法不支持靈活的用戶撤銷.Jiang 等[62]利用隨機收斂加密RCE 對文件加密, 并以密文文件來構建BF-PoW, 同時利用密鑰加密樹實現密鑰分享和用戶管理.但Bloom filter存在一定的誤判率, 攻擊者可以產生Bloom filter 中誤判的塊從而通過PoW 協議導致隱私泄露.因此, 如何構建一個低開銷和隱私保護的所有權證明方法, 從而更好地達到云存儲系統中數據共享與管理的要求,仍然是一個亟待解決的問題.

(3) 隱私保護的安全去重方案能夠抵抗側信道攻擊, 同時保護用戶的隱私, 但現有方案大多無法很好地平衡安全性能與帶寬開銷之間的關系.Yu 等[73]提出一種數據塊對去重檢測方案, 該方案可以同時對一個數據塊對進行去重, 采用去重檢查響應表、上傳數據對的異或值等方法, 使得攻擊者無法確認數據塊是否發生去重, 但是造成了一定的網絡帶寬開銷.Pooranian 等[74]在Yu 等[73]的基礎上結合隨機化方法提出了RARE 方案, 提供了更強的隱私保護, 但卻造成了更多的網絡帶寬消耗.因此, 如何在隱私保護、安全去重以及效率之間取得折中, 還需要深入研究.

(4) 在基于數據流行度的安全去重中, 現有方案大多為所有上傳的數據設置統一的閾值, 當統一的閾值過大時, 對于隱私程度較低的數據, 則在數據的副本數量未達到閾值之前, 需要全部存儲在云服務器中,在一定程度上會造成存儲空間浪費; 當統一的閾值過小時, 對于隱私程度較高的數據, 則會被過早地執行去重操作, 可能會增加數據隱私泄露的風險.因此, 隱私程度不同的數據應當具有不同的流行度閾值, 如何判斷數據的隱私程度, 并根據其隱私程度設定一個合理的閾值, 是云存儲服務發展過程中一個重要的研究課題.

5 結束語

隨著大數據時代的來臨, 大量的企業和個人選擇將數據外包至云服務器進行存儲和管理.當存儲在云服務器中的數據不斷增加時, 如何高效且安全地存儲不斷增加的數據, 是云服務器需要解決的一個關鍵問題.數據去重技術使得云服務器只需存儲重復數據的單一副本, 極大地提高了存儲利用率, 但同時也帶來了隱私泄露、未授權訪問等一系列安全問題.針對云數據安全去重的研究越來越廣泛且深入, 但目前已有的各種去重方案均存在一些安全缺陷, 云環境下實現數據的安全去重領域仍需要不斷地深入研究.

本文首先分析了數據安全去重技術面臨的主要挑戰, 包括數據外包與加密方式、側信道攻擊以及相關文件攻擊, 詳細闡述了數據安全去重過程中可能面臨的安全威脅; 然后, 依據云數據安全去重的技術實現機制, 從基于內容加密的安全去重、基于PoW 的安全去重、隱私保護的安全去重和基于數據流行度的安全去重四個方面對當前研究工作進行了深入分析及總結, 指出了各種數據去重技術的優點、局限性及存在的共性問題; 最后探討了數據去重技術研究的發展趨勢.

猜你喜歡
攻擊者數據安全密鑰
探索企業創新密鑰
基于微分博弈的追逃問題最優策略設計
密碼系統中密鑰的狀態與保護*
云計算中基于用戶隱私的數據安全保護方法
建立激勵相容機制保護數據安全
正面迎接批判
一種對稱密鑰的密鑰管理方法及系統
基于ECC的智能家居密鑰管理機制的實現
大數據云計算環境下的數據安全
有限次重復博弈下的網絡攻擊行為研究
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合