閆政偉 王晨 黃秋波 李麗 徐光偉



摘 要:云共享環境下,雖然現有的數據確定性刪除算法保證了遠程存儲數據在停止共享后的安全性,但沒有考慮到不同數據訪問策略之間的差異.不同訪問策略可能需要數據擁有者撤銷全部屬性才能實現數據刪除,但大量的計算可能導致數據擁有者無法快速完成數據刪除,導致數據仍然能被訪問.為此,在現有數據刪除算法的基礎上提出了一種輕量級的數據確定性刪除算法,以降低數據擁有者的刪除負擔.該算法通過額外設置的關鍵屬性及默克爾哈希樹對云共享的數據執行刪除和驗證操作.實驗結果表明,提出的算法是安全且高效的.
關鍵詞:云共享;屬性加密;數據確定性刪除
中圖分類號:TP309.2
文獻標志碼:A
文章編號:1004-5422(2023)03-0255-07DOI:10.3969/j.issn.1004-5422.2023.03.006
0 引言
云存儲服務[1-2]使得越來越多的個人和公司將數據存儲在云端,不僅極大減輕了本地設備的存儲負擔,還提供了便捷的數據共享服務,使得用戶可以隨時隨地將數據通過云服務器共享給其他用戶,所以越來越多的數據擁有者(data owner,DO)將其數據外包存儲在云空間中以提供方便的數據存儲和共享服務,而且數據使用者(data user,DU)也可以根據協議隨時隨地訪問并獲取有用數據[3].雖然云數據的共享給用戶帶來極大便利,但由于數據通常包含DO的隱私信息,一旦被泄露,將會給DO帶來巨大損失,所以對云數據進行保護具有非常重要的意義.保護不僅發生在數據的存儲和共享過程中,也需要發生在DO停止使用數據后的階段.若DO失去了對數據的直接管理權[4-5],一些惡意的云服務提供商(cloud server provider,CSP)會在數據刪除后再對其進行回收以進一步挖掘與分析,或者再將數據賣給第三方[6],這將會造成DO的隱私泄露或利益受損.例如, Snapchat承諾用戶發布在其平臺上的數據在規定時間后便會被刪除,但在2014年數據泄露的事件中,用戶發現理應被刪除的數據依舊存儲在云服務器中,從而造成大量的用戶隱私信息泄露,所以CSP可能并不會執行數據刪除操作[7].那么,DO在失去數據直接管理權的情況下如何安全高效地刪除已經停止共享的數據就成為待解決的重要問題,而數據確定性刪除(簡稱為數據刪除)是解決此問題的關鍵技術[8].
數據刪除的目標是,執行刪除操作后無人可以再次訪問數據[8],以確保之前存儲的數據不會造成安全問題.Perlman設計的數據刪除系統[9]存儲數據前會為每份數據提前創建到期時間,且加密密鑰與到期時間一一對應.但是該系統需要可信的服務器來刪除過期的加密密鑰,而可信服務器在實際生活中難以滿足.Tang等[10]提出了一種基于策略的數據刪除方案FADE.該方案為了提升安全性,通過盲加密進行設計,但是其刪除策略都是通過布爾表達式來設計的,所以有一定的局限.Hao等[11]基于trust-but-verify模型,利用Diffie-Hellman集成加密方案和Chaum-Pedersen零知識證明,設計了更加安全的算法來實現數據刪除.然而,該算法在完成刪除操作后,只有1份簽名信息.若DO之后發現數據依舊能被解密,則DO有權得到賠償.Yu等[12]提出了支持數據刪除功能的密文策略屬性加密(ciphertext-policy attribute-based encryption,CP-ABE)方案.雖然該方案實現了屬性的細粒度控制和DO可信驗證,但是在刪除驗證階段,DO需要執行多次雙線性對操作,從而占用了大量時間,增加了DO計算開銷.Ma等[13]使用新的訪問策略重新加密來實現數據刪除,但是新增的訪問策略不僅使管理更為復雜,也增加了DO的驗證時間.此外,Tian等[14]為了實現對數據的細粒度的訪問控制,在算法中引入了滑動窗口技術,但這樣的操作也增加了數據訪問結構的復雜性和刪除證據驗證的時間開銷.雖然以上算法實現了數據刪除的功能,卻沒有考慮到不同數據之間訪問策略的差異.因此,本研究在云共享場景下提出云數據共享中一種輕量級的數據確定性刪除算法(lightweight algorithm for data assured deletion in cloud data sharing,LADAD),通過引入關鍵屬性和默克爾哈希樹對數據執行刪除操作和數據刪除的驗證操作,并在降低DO計算開銷的情況下,提高CSP的刪除效率,同時,通過安全性分析與性能測試證明了本研究所提算法的安全性與高效性.
1 數據刪除模型與設計目標
1.1 數據刪除模型
本研究的數據刪除模型主要包括4個實體,即密鑰生成中心(key generation center,KGC)、數據擁有者DO、云服務提供商CSP和數據使用者DU,如圖1所示.
1)DO.DO會將自己的數據以加密的形式上傳至CSP的云服務器,使用CSP的數據存儲和共享的服務.DO是完全可信的.
2)CSP.CSP為DO提供數據存儲和共享服務,并響應數據刪除請求.但是CSP并不是完全可信的,雖然不會惡意修改和刪除DO存儲在其中的數據,也不會額外存儲數據副本,但是CSP會在DO刪除數據過程中及刪除完成后對數據進行分析,試圖破解數據的機密性,從中得到有價值的信息來獲取相應利益.
3)DU.DU會訪問DO的共享數據,也不是完全可信的,所以DU可能在DO進行數據刪除后繼續試圖解密數據,甚至與CSP合謀對數據發起攻擊.
4)KGC.KGC是可信的服務器,為DO和DU生成私鑰.
1.2 設計目標
從數據刪除模型和對手攻擊中可以看出,為了將外包給CSP的數據安全地進行刪除,本算法應該達到以下3個設計目標:
1)保證數據刪除的確定性.由于CSP并不是完全可信的,所以當DO需要CSP刪除數據時,確定CSP是否真實執行了刪除操作.
2)保證數據刪除操作的便捷性.由于不同的數據使用不同訪問策略進行加密,所以針對訪問策略各不相同的情況,數據刪除所執行的操作是便捷高效的.
3)抵御數據刪除過程中的2種惡意攻擊,即CSP偽造刪除證據的偽造攻擊及CSP與DU合謀試圖獲取數據刪除后信息的合謀攻擊.
2 一種輕量級的數據確定性刪除算法
2.1 算法概述
DO將數據m加密存儲至CSP并共享給DU.當DO停止共享后,執行數據刪除操作.數據刪除過程由以下7個步驟組成:
1)Setup(λ,U)→(MSK,PK).KGC選擇安全參數λ和屬性全集U,生成公鑰PK和主密鑰MSK.PK公開而MSK由KGC保存.
2)Encrypt(PK,m,A)→CT.DO使用公鑰PK和訪問結構A對數據m進行加密,生成密文CT.
3)KeyGen(MSK,P,PK)→SK.KGC根據主密鑰MSK、DU的屬性集P和公鑰PK,為DU生成對應私鑰SK.
4)Decrypt(CT,SK,PK)→(m/⊥).DU在拿到密文CT后,DU使用私鑰SK和公鑰PK進行解密.如果DU的屬性滿足CT中的訪問控制結構,則可以正確解密出數據m.
5)DeleteReq(file,PK)→request.DO選擇需要刪除的數據file,結合公鑰PK生成對應的刪除請求request.
6)DeleteExec(CT,request)→proof.CSP接收到DO的刪除請求request后,對其存儲的密文CT進行更新,從而產生新密文CT′,并對刪除后的密文CT′生成相應刪除證據proof.
7)DeleteVerify(proof)→(true/false).DO在收到CSP的刪除證據proof后,進行驗證以判斷CSP是否執行了數據刪除.
3.2 安全性分析
本算法從偽造攻擊和合謀攻擊2個方面來分析其安全性.
1)抵御偽造攻擊.根據式(4)可知,CSP想要偽造刪除證據proof=H(mthe(g,g)δ·sde(H(d),g)δ·sd),則CSP至少需要偽造出關鍵屬性的信息e(g,g)δ·sd和e(H(d),g)δ·sd,這是通過e(C5,d,Rd)和e(C5,d′,Rd)而來的,所以CSP也要偽造出Rd,即gδ.由于δ是有限域Zp的隨機數,Zp的大小為p,所以CSP偽造成功的概率為1/p,又因為p為大素數,偽造成功的概率是可以忽略不計的,因此CSP是否完成數據刪除是可以被驗證的.CSP無法在未執行刪除操作的情況下偽造出刪除證據并通過DO的驗證操作,所以本算法能抵御CSP的偽造攻擊.
2)抵御合謀攻擊.在CSP完成數據刪除后,由于數據依舊保留在云端,所以不完全可信的CSP和DU進行合謀,以試圖破解數據刪除后的機密性.但是即使DU聯合CSP獲得執行數據刪除后的秘密,DU也無法通過自己的私鑰解密出密文,即使其屬性結合復合密文刪除前的訪問策略.因為密文中的關鍵屬性被撤銷了,而DU私鑰中和關鍵屬性對應的信息{D3,d=gr·H(d)rd,D3,d′=grd}并未發生改變,所以DU的私鑰無法正確解密數據.此外,DU具有試圖解密的過程中會違背雙線性映射的性質,無法正確完成計算.綜上所述,本算法可以抵御CSP和DU的合謀攻擊,保證數據刪除后的安全性.
4 實驗結果與分析
為了驗證本算法的性能,實驗選取2臺8核CPU(主頻3.2 GHz)、16 GiB內存的主機作為DO和DU及1臺雙核CPU、8 GiB內存的阿里云服務器作為CSP來模擬本算法的所有過程.整個算法使用Java語言編寫,利用JPBC庫函數進行實現,其中安全參數為512 bit.為了提高算法可行性,本研究使用真實數據集[16]進行實驗,選取其中100 MiB作為本算法的實驗數據,并取50次實驗測試數據的平均值作為最終數據,以保證實驗結果的準確性.本研究將所提的LADAD和Xue等[17]提出的基于策略的屬性加密的確定性刪除算法(key-policy attribute-based encryption scheme for assured deletion,AD-KP-ABE)進行了比較分析.
1)數據刪除的時間開銷.這是指DeleteReq、DeleteExec和DeleteVerify 3個階段的總時間開銷.實驗結果如圖2所示.從圖2可知,LADAD和AD-KP-ABE的時間開銷均隨著屬性數量的增加而增長,但是AD-KP-ABE增長幅度遠遠大于LADAD,尤其是在屬性數量超過20后,增幅更為迅速.而LADAD的時間開銷維持在較低水準,且遠低于AD-KP-ABE.這是因為LADAD只需要針對關鍵屬性進行撤銷,并且通過輔助信息來減少計算開銷,所以LADAD整個刪除階段的時間開銷都較低.
2)算法的總時間開銷.這是算法所有階段總共的時間開銷,即包括Setup、Encrypt、KeyGen、Decrypt、DeleteReq、DeleteExec和DeleteVerify這7個階段,如圖3所示.從圖3可知,LADAD和AD-KP-ABE的時間開銷都隨著屬性數量的增加而增長.雖然在屬性數量低于15時,AD-KP-ABE的時間開銷更低,但是當屬性數量大于15時,AD-KP-ABE不僅時間開銷明顯高于LADAD,而且增長速度遠大于LADAD.這是因為LADAD在Encrypt會額外生成輔助信息,占據了一定時間.但是隨著屬性數量的增加,AD-KP-ABE在數據刪除的階段會花費更多時間,而LADAD的時間開銷更低.所以,LADAD具有更多的優勢,尤其是在數據的訪問策略較為復雜且屬性較多時,這份優勢也會不斷變大.
3)CSP的存儲開銷.這是指CSP存儲密文而產生的開銷,如圖4所示.從圖4可知,LADAD和AD-KP-ABE的存儲開銷均隨著屬性數量的增加而增長,這是因為密文大小和屬性數量線性相關,所以兩者保持著相同的增長速度.雖然LADAD在密文中增加了關鍵屬性,占據了一部分額外空間,但是和AD-KP-ABE的存儲開銷差距較小,基本都在1 Kib左右,這是因為增加的元素只有1個,這與屬性數量不相關,保持為固定值.總的來說,LADAD和AD-KP-ABE 2個算法的存儲開銷基本一致.
5 結 語
云數據共享中的數據確定性刪除是重要且急需解決的問題.本研究提出了LADAD,不僅能夠保證數據刪除的確定性,而且通過關鍵屬性保證了不同訪問策略下數據刪除的便捷性.安全性分析表明,本研究提出的算法滿足了安全要求.實驗測試結果表明,本研究提出的算法具有高效性和實用性.
參考文獻:
[1]Lee K.Comments on “secure data sharing in cloud computing using revocable-storage identity-based encryption”[J].IEEE Trans Cloud Comput,2020,8(4):1299-1300.
[2]Zhang J,Ma J,Ma Z,et al.Efficient hierarchical data access control for resource-limited users in cloud-based e-health[C]//2019 International Conference on Networking and Network Applications (NaNA).Daegu,South Korea:IEEE,2019:319-324.
[3]Qi S,Zheng Y.Crypt-DAC:cryptographically enforced dynamic access control in the cloud[J].IEEE Trans Depend Sec Comput,2021,18(2):765-779.
[4]Wang Q,Zhou F,Xu J,et al.Efficient verifiable databases with additional insertion and deletion operations in cloud computing[J].Futur Gener Comput Syst,2021,115:553-567.
[5]Singh B C,Carminati B,Ferrari E.Privacy-aware personal data storage (P-PDS):learning how to protect user privacy from external applications[J].IEEE Trans Depend Sec Comput,2021,18(2):889-903.
[6]Li Y,Gai K,Qiu L,et al.Intelligent cryptography approach for secure distributed big data storage in cloud computing[J].Inf Sci,2017,387:103-115.
[7]Young D.Now you see it,now you dont...or do you?:snapchats deceptive promotion of vanishing messages violates federal trade commission regulation [J].John Marsh J Inf Technol Priv Law,2014,30(4):6.
[8]Zheng D,Xue L,Yu C,et al.Toward assured data deletion in cloud storage[J].IEEE Netw,2020,34(3):101-107.
[9]Perlman R.File system design with assured delete[C]//Third IEEE International Security in Storage Workshop (SISW'05).San Francisco,CA,USA:IEEE,2005.
[10]Tang Y,Lee P P C,Lui J,et al.FADE:Secure overlay cloud storage with file assured deletion[C]//International Conference on Security and Privacy in Communication Systems.Berlin,Germany:Springer,2010:380-397.
[11]Hao F,Clarke D,Zorzo A F.Deleting secret data with public verifiability[J].IEEE Trans Depend Sec Comput,2016,13(6):617-629.
[12]Yu Y,Xue L,Li Y,et al.Assured data deletion with fine-grained access control for fog-based industrial applications[J].IEEE Trans Industr Inf,2018,14(10):4538-4547.
[13]Ma J,Wang M,Xiong J,et al.CP-ABE-based secure and verifiable data deletion in cloud[J].Sec Commun Netw,2021,2021:8855341-1-8855341-14.
[14]Tian J,Wang Z.Cloud data assured deletion scheme based on dynamic sliding window[J].Peer-to-Peer Netw Appl,2022,15:1817-1833.
[15]Shamir A.How to share a secret[J].Commun ACM,1979,22(11):612-613.
[16]University of Maryland.Disease ontology-institute for genome sciences[EB/OL].(2009-07-16)[2022-12-10].https://disease-ontology.org.
[17]Xue L,Yu Y,Li Y,et al.Efficient attribute-based encryption with attribute revocation for assured data deletion[J].Inf Sci,2019,479:640-650.
(實習編輯:黃愛明)
Abstract:In cloud sharing environment,although the existing data assured deletion algorithm ensures the security of remotely stored data after the sharing is stopped,it does not take into account the differences between different data access policies,and different access policies may require the data owner to revoke all attributes to achieve data deletion,and the large amount of computation may result in the data owner not being able to complete data deletion quickly,causing the problem that the data can still be accessed.To this end,the researchers propose a lightweight algorithm for data assured deletion in cloud data sharing to reduce the deletion burden of the data owner based on the existing data deletion algorithms.The algorithm performs deletion and verification operations on the data shared in the cloud with the additional key attribute and Merkle hash trees.The security analysis and experimental results prove the security and effectiveness of the proposed algorithm in this paper.
Key words:cloud sharing;attribute encryption;data assured deletion
基金項目:上海市自然科學基金(19ZR1402000、21ZR1400400);國家自然科學基金(62172088、61772018)
作者簡介:閆政偉(1997—),男,碩士研究生,從事數據確定性刪除研究.E-mail:y1312088938@163.com