王少輝,潘笑笑,王志偉,肖甫,王汝傳
?
對基于身份云數(shù)據(jù)完整性驗(yàn)證方案的分析與改進(jìn)
王少輝1,2,潘笑笑1,2,王志偉1,2,肖甫1,2,王汝傳1,2
(1. 南京郵電大學(xué)計(jì)算機(jī)學(xué)院、軟件學(xué)院、網(wǎng)絡(luò)空間安全學(xué)院,江蘇 南京 210003; 2. 江蘇省無線傳感網(wǎng)高技術(shù)研究重點(diǎn)實(shí)驗(yàn)室,江蘇 南京 210003)
個(gè)人或企業(yè)將數(shù)據(jù)外包給遠(yuǎn)程云服務(wù)器,在獲得運(yùn)營便利的同時(shí)也失去了對數(shù)據(jù)的本地控制權(quán),無法直接保證數(shù)據(jù)的完整性和隱私性。分析了Zhang等和Xu等提出的基于身份云數(shù)據(jù)完整性驗(yàn)證方案的安全性。分析表明Zhang等所提方案易遭受密鑰恢復(fù)攻擊,云服務(wù)器利用存儲的用戶數(shù)據(jù)可恢復(fù)出用戶的私鑰,而Xu等所提方案不能滿足健壯性的安全要求。在Xu等方案的基礎(chǔ)上,提出了一個(gè)改進(jìn)的云數(shù)據(jù)完整性驗(yàn)證方案,分析表明新方案可提供健壯性和隱私性的安全需求,并且可提供與Xu等所提方案相同的通信和計(jì)算開銷。
云存儲;基于身份密碼系統(tǒng);數(shù)據(jù)完整性;隱私性
云存儲具有低成本、高擴(kuò)展、海量存儲、便捷存取的優(yōu)點(diǎn),越來越多的個(gè)人或企業(yè)選擇將數(shù)據(jù)存放在云端,這樣用戶可以節(jié)約大量的存儲、管理以及維護(hù)成本,但是隨之帶來的問題是用戶無法對數(shù)據(jù)直接控制,從而不能確保存儲在云中數(shù)據(jù)的完整性和隱私性。云環(huán)境下導(dǎo)致數(shù)據(jù)損壞的因素主要包括以下方面。1)云服務(wù)提供商不完全可信。出于經(jīng)濟(jì)原因,云服務(wù)提供商可能會刪除用戶很少或從未訪問的數(shù)據(jù),以便可以節(jié)省空間存儲其他用戶數(shù)據(jù)從而獲取更多收入。2)由于云服務(wù)器的故障、管理失誤或?qū)κ謵阂夤?,云服?wù)器中存儲的數(shù)據(jù)可能會被破壞。但是,云服務(wù)提供商為了維護(hù)良好的聲譽(yù)可能會故意隱藏?cái)?shù)據(jù)丟失的事實(shí)。在云存儲中,數(shù)據(jù)完整性和隱私性已成為用戶最關(guān)心的問題,因?yàn)榧词购苌僖徊糠謹(jǐn)?shù)據(jù)的損壞也可能會造成不可估量的損失。因此,如何解決云存儲中所面臨的數(shù)據(jù)完整性驗(yàn)證問題已經(jīng)成為了目前學(xué)術(shù)界和企業(yè)界研究的一個(gè)熱點(diǎn),具有較高的研究價(jià)值和應(yīng)用前景。
Deswarte等[1]在2003年提出了基于散列函數(shù)的云數(shù)據(jù)完整性驗(yàn)證方案,它允許客戶端使用相同的元數(shù)據(jù)進(jìn)行多次挑戰(zhàn),但是該協(xié)議必須對存儲的整個(gè)文件進(jìn)行取冪,計(jì)算成本過高。Oprea等[2]在2005年提出了一個(gè)支持塊級數(shù)據(jù)完整性驗(yàn)證的方案,但是該方案仍存在過高的通信成本和計(jì)算成本。Ateniese等[3-4]在2007年最先對可證明數(shù)據(jù)持有審計(jì)方案(PDP,provable data possession)進(jìn)行了形式化建模。該方案引入第三方審計(jì)者(TPA,third-party auditor)提供驗(yàn)證服務(wù),從而能夠有效減輕用戶的負(fù)擔(dān)。方案可以使TPA在不下載數(shù)據(jù)到本地的情況下驗(yàn)證數(shù)據(jù)的完整性,并提出分塊思想降低生成驗(yàn)證元的計(jì)算成本。同時(shí),Juels等[5]最先對數(shù)據(jù)可恢復(fù)證明問題(POR, proof of retrievability)進(jìn)行了形式化建模,提出了基于哨兵的POR驗(yàn)證機(jī)制,該機(jī)制不僅能夠識別遠(yuǎn)程數(shù)據(jù)是否損壞而且能夠?qū)σ呀?jīng)損壞的數(shù)據(jù)文件進(jìn)行恢復(fù)。2008年,Shacham等[6-7]提出了兩種使用糾錯(cuò)碼技術(shù)的高效緊縮的POR方案。這兩種POR方案都支持任意次驗(yàn)證并且支持無狀態(tài)認(rèn)證,即認(rèn)證過程中認(rèn)證者不需要保存認(rèn)證狀態(tài),最后通過引用同態(tài)驗(yàn)證標(biāo)簽將證明信息有效地縮小為一個(gè)較小的值。
上述方案均在公鑰基礎(chǔ)設(shè)施PKI(public key infrastructure)架構(gòu)下設(shè)計(jì)。Shamir[8]在1984年創(chuàng)新性地提出了基于身份的密碼系統(tǒng),用于解決傳統(tǒng)PKI密碼體制帶來的證書生成、驗(yàn)證、存儲和注銷等問題。在基于身份密碼體制中,將標(biāo)示用戶身份的唯一信息(如用戶的IP地址)作為用戶的公鑰,用戶的私鑰由可信的私鑰生成中心(PKG, public key generator)利用用戶的身份信息和自己的主密鑰計(jì)算得到。2001年,Boneh等[9]利用雙線性對構(gòu)建了第一個(gè)安全實(shí)用的基于身份的加密方案,隨后基于身份的加密方案設(shè)計(jì)引起了密碼學(xué)界的廣泛關(guān)注。
目前,大部分基于身份云數(shù)據(jù)完整性驗(yàn)證方案主要利用雙線性運(yùn)算這一工具,如2016年,Zhang等[10]基于Waters簽名,利用雙線性運(yùn)算在標(biāo)準(zhǔn)模型中提出了一個(gè)基于身份的公共驗(yàn)證方案。該方案具有固定的通信開銷和計(jì)算成本。雙線性運(yùn)算比RSA算法中的模冪運(yùn)算需要更多的計(jì)算開銷。為了提高驗(yàn)證效率,Yu等[11]利用RSA算法提出了基于身份的高效遠(yuǎn)程數(shù)據(jù)完整性驗(yàn)證方案。隨后Zhang等[12]指出Yu等的方案僅適用于單個(gè)用戶場景,而且沒有考慮密鑰泄露的問題。Zhang等通過對密鑰在固定時(shí)間間隔進(jìn)行更新,提出了一個(gè)能夠抵御密鑰泄露攻擊的數(shù)據(jù)完整性驗(yàn)證方案。最近Xu等[13]指出了Yu等[11]的方案沒有考慮數(shù)據(jù)的隱私性問題,它容易受到來自TPA或外部攻擊者的數(shù)據(jù)恢復(fù)攻擊。
本文對基于身份云數(shù)據(jù)完整性驗(yàn)證方案進(jìn)行了研究,首先對文獻(xiàn)[12]和文獻(xiàn)[13]所提方案的安全性進(jìn)行了分析,通過分析指出文獻(xiàn)[12]方案容易遭受私鑰恢復(fù)攻擊,云服務(wù)器通過分析用戶存儲的數(shù)據(jù)可以恢復(fù)并得到用戶私鑰;而文獻(xiàn)[13]所提方案不滿足健壯性要求,即服務(wù)器即使沒有完整無誤地保存用戶數(shù)據(jù),也可以成功偽造證據(jù)通過TPA的驗(yàn)證。進(jìn)而在文獻(xiàn)[13]方案的基礎(chǔ)上提出了一個(gè)改進(jìn)的基于身份云數(shù)據(jù)完整性驗(yàn)證方案,通過分析證明該方案能有效滿足隱私性和健壯性要求,而在效能方面,新方案具有與文獻(xiàn)[13]方案相同的通信、計(jì)算成本。
如圖1所示,基于身份云數(shù)據(jù)完整性驗(yàn)證模型主要由如下4個(gè)部分組成。
1) 用戶:用戶是擁有大量數(shù)據(jù)需要存儲在云服務(wù)器的個(gè)人或組織,通常用戶帶寬、存儲和計(jì)算能力有限。
2) 云服務(wù)器:擁有大量的存儲空間和強(qiáng)大的計(jì)算能力以維護(hù)用戶存儲的數(shù)據(jù),并為用戶提供數(shù)據(jù)訪問服務(wù)。一般假設(shè)云服務(wù)器并不完全可信,因?yàn)樵品?wù)器可能會為了自己的利益刪除很少被訪問的用戶數(shù)據(jù)。
3) 第三方審計(jì)者(TPA):代替用戶與云服務(wù)器完成交互,能夠檢查存儲在云服務(wù)器上用戶數(shù)據(jù)的完整性。TPA由可信部門監(jiān)督和管理,提供可信、公正公平的審計(jì)結(jié)果。但是假定TPA是誠實(shí)而好奇(curious but honest)的,因此必須保證TPA無法通過審計(jì)過程獲得用戶的隱私數(shù)據(jù)。
4) 私鑰生成中心(PKG):是完全可信的機(jī)構(gòu),根據(jù)用戶的身份信息為其生成用戶私鑰。
圖1 系統(tǒng)模型
首先給出可忽略概率的概念。
云數(shù)據(jù)完整性驗(yàn)證方案需要滿足隱私性和健壯性的安全需求,下面本文給出兩個(gè)安全需求的形式化定義。
定義2(隱私性) 本文通過挑戰(zhàn)者和敵手之間的如下游戲來定義隱私性,游戲過程如下所示。
2) 質(zhì)詢:敵手自適應(yīng)地向挑戰(zhàn)者進(jìn)行如下質(zhì)詢,包括Extract質(zhì)詢、TagGen質(zhì)詢和Audit質(zhì)詢。
③ Audit質(zhì)詢:通過此質(zhì)詢,敵手和服務(wù)器將執(zhí)行交互,執(zhí)行數(shù)據(jù)的完整性驗(yàn)證算法。
是可以忽略的。本文稱基于身份云數(shù)據(jù)完整性驗(yàn)證方案滿足隱私性,
定義3(健壯性) 通過挑戰(zhàn)者和敵手之間的如下游戲來定義健壯性,其中初始化和質(zhì)詢操作同隱私性的定義,這里不再贅述。
如果概率為
是可以忽略的,則稱基于身份云數(shù)據(jù)完整性驗(yàn)證方案滿足健壯性。
本節(jié)對文獻(xiàn)[12]和文獻(xiàn)[13]中所提方案進(jìn)行詳盡地安全分析,分析指出文獻(xiàn)[12]方案存在私鑰恢復(fù)攻擊,服務(wù)器能利用存儲的數(shù)據(jù)和標(biāo)簽信息得到用戶在時(shí)刻的私鑰。而文獻(xiàn)[13]則不滿足健壯性的要求,即使服務(wù)器沒有存儲數(shù)據(jù),也能生成合法的證明信息通過TPA的驗(yàn)證。
文獻(xiàn)[12]的方案主要針對用戶私鑰的泄露問題,這里只簡單介紹與安全性分析相關(guān)的Setup、Extract和TagGen等算法,其他算法具體可以參考文獻(xiàn)[12]。
3) TagGen。在時(shí)間段,身份為的用戶執(zhí)行以下步驟將數(shù)據(jù)文件外包到云端。
安全分析:下面指出上述方案易遭受私鑰恢復(fù)攻擊,攻擊方法如下所示。
然后式(1)除以式(2)得
文獻(xiàn)[13]提出的基于身份云數(shù)據(jù)完整性認(rèn)證方案由以下算法構(gòu)成。
6) Verify。TPA驗(yàn)證下面的等式是否成立。
如果成立則返回1,表明驗(yàn)證通過。否則表明數(shù)據(jù)沒有被服務(wù)器保存完整,返回0。
安全分析:下面給出對上述方案的攻擊,可以看出方案[13]不能滿足健壯性的安全需求,云服務(wù)器可以在任意修改甚至刪除用戶數(shù)據(jù)后仍能生成合法的證明消息通過TPA的驗(yàn)證,令TPA相信服務(wù)器正確存儲了用戶數(shù)據(jù)。
在Verify算法中,TPA誠實(shí)的執(zhí)行驗(yàn)證過程,此時(shí)
在本節(jié)中,基于文獻(xiàn)[13]的方案,本文提出了一個(gè)改進(jìn)的基于身份云數(shù)據(jù)完整性驗(yàn)證方案,并給出了改進(jìn)方案的安全性分析和效能比較。
改進(jìn)的基于身份云數(shù)據(jù)完整性認(rèn)證方案由6個(gè)算法組成,其中,算法Setup、Extract、TagGen和Challenge與文獻(xiàn)[13]的方案一致,這里不再贅述,ProofGen和Verify算法改進(jìn)如下所示。
2) Verify。TPA驗(yàn)證下面等式是否成立
如果成立則返回1,表明驗(yàn)證通過。否則返回0表明數(shù)據(jù)沒有被服務(wù)器保存完整。
本節(jié)中,本文分別對方案的正確性、健壯性和隱私性進(jìn)行說明。
正確性。由方案可知,此時(shí)
從而如果云服務(wù)器正確保存用戶數(shù)據(jù),生成的驗(yàn)證信息能夠通過TPA的驗(yàn)證。
健壯性。新方案的健壯性基于如下的RSA假設(shè)。
定理1 如果RSA假設(shè)成立,則改進(jìn)的基于身份云數(shù)據(jù)完整性驗(yàn)證方案滿足健壯性安全需求。
即
隱私性。最后我們簡要證明新方案滿足隱私性的安全需求。
分別從通信成本和計(jì)算成本這兩個(gè)方面將新方案與文獻(xiàn)[13]中的方案進(jìn)行了比較。假設(shè)在兩種方案中,存儲相同的數(shù)據(jù)文件,而TPA產(chǎn)生的挑戰(zhàn)信息一樣。從通信開銷來看,新方案在各階段和文獻(xiàn)[13]的方案一致,故兩種方案具有相同的通信開銷。
可以看出在ProofGen算法和Verify算法中,本文的新方案與文獻(xiàn)[13]方案具有相同的計(jì)算復(fù)雜度。
本文的方案與文獻(xiàn)[13]方案在TagGen和Challenge階段的計(jì)算時(shí)間相同,下面給出兩種方案在ProofGen和Verify兩種算法中的性能實(shí)驗(yàn)比較。本文使用Java語言對兩種方案的ProofGen算法和Verify算法進(jìn)行實(shí)現(xiàn)。模擬在Win7系統(tǒng)中實(shí)現(xiàn),處理器為Intel 3230 M,主頻為2.6 GHz,內(nèi)存為8 GB,選擇的文件大小為1 MB,分塊大小為4 KB,指定TPA每次分別隨機(jī)選擇不同數(shù)量的數(shù)據(jù)塊檢查外包數(shù)據(jù)的完整性。為了減少誤差,每個(gè)階段記錄100次執(zhí)行時(shí)間,最終取平均值。表2給出了TPA每次隨機(jī)選擇200個(gè)數(shù)據(jù)塊檢查外包數(shù)據(jù)完整性的實(shí)驗(yàn)結(jié)果對比情況,可以看出兩種方案在ProofGen算法和Verify算法中具有幾乎相同的運(yùn)行時(shí)間。
表1 計(jì)算成本比較
表2 TPA選擇200個(gè)挑戰(zhàn)塊計(jì)算時(shí)間
當(dāng)TPA選擇不同的挑戰(zhàn)塊數(shù)目時(shí),圖2給出了在ProofGen算法中新方案和文獻(xiàn)[13]方案的計(jì)算時(shí)間比較,可以看出新方案和文獻(xiàn)[13]方案的計(jì)算成本幾乎相同。
圖2 ProofGen階段的計(jì)算時(shí)間對比
同樣地,當(dāng)TPA選擇不同的挑戰(zhàn)塊數(shù)量塊時(shí),兩種方案中Verify算法的計(jì)算時(shí)間比對如圖3所示。從圖3中可以看出新方案額外計(jì)算開銷與選取數(shù)據(jù)塊的數(shù)量線性相關(guān)。在一次完整性驗(yàn)證過程中選取的挑戰(zhàn)塊數(shù)量有限,新方案在可以提供更高的安全需求的同時(shí),具有和Xu等方案基本一致的計(jì)算開銷。
圖3 Verify階段的計(jì)算時(shí)間對比
在云存儲應(yīng)用環(huán)境下,用戶無法確保存儲在遠(yuǎn)端云服務(wù)器中的數(shù)據(jù)是完整的,如何驗(yàn)證遠(yuǎn)程數(shù)據(jù)的完整性是云安全領(lǐng)域研究的一個(gè)熱點(diǎn)問題。本文分析了兩種基于身份的云存儲數(shù)據(jù)完整性驗(yàn)證方案的安全性,分析結(jié)果指出文獻(xiàn)[12]的方案易遭受密鑰恢復(fù)攻擊,云服務(wù)器可以利用存儲的數(shù)據(jù)信息計(jì)算得到用戶的私鑰;而文獻(xiàn)[13]不能提供健壯性的安全需求,云服務(wù)器即使在丟失數(shù)據(jù)的情況下依然可以偽造證據(jù)通過TPA的驗(yàn)證?;谖墨I(xiàn)[13]的設(shè)計(jì)方法,本文提出一個(gè)新的改進(jìn)方案,分析表明新方案在提供與文獻(xiàn)[13]相同通信和計(jì)算開銷的條件下,能提供更高的安全需求。針對基于身份密碼系統(tǒng)下,云存儲數(shù)據(jù)完整性驗(yàn)證方案存在的密鑰泄露問題,外包數(shù)據(jù)的動(dòng)態(tài)更新等問題將是我們下一步的研究重點(diǎn)。
[1] DESWARTE Y, QUISQUATER J, SAIDANE A. Remote integrity checking[M]//Integrity and Internal Control in Information Systems VI. 2004: 1-11.
[2] OPREA A, REITER M K, YANG K. Space-efficient block storage integrity[C]// Internet Society, Network and Distributed System Security Symposium. 2005: 1-12.
[3] ATENIESE G, BURNS R, CURTMOLA R, et al. Provable data possession at untrusted stores[C]//ACM Conference on Computer and Communications Security. 2007: 598-609.
[4] ATENIESE G, BURNS R, CURTMOLA R, et al. Remote data checking using Provable data possession[J]. ACM Transactions on Information & System Security(TISSEC), 2011, 14(1): 1-34.
[5] JUELS A. Pors: proofs of retrievability for large files[C]// ACM Conference on Computer and Communications Security. 2007: 584-597.
[6] SHACHAM H, WATERS B. Compact proofs of retrievability[C]// Asiacrypt LNCS 5350. 2008: 90-107.
[7] SHACHAM H, WATERS B. Compact proofs of retrievability[J]. Journal of Cryptology, 2013, 26(3): 442-483.
[8] SHAMIR A. Identity-based cryptosystems and signature schemes[C]// Crypto. 1984: 47-53.
[9] BONEH D, FRANKLIN M K. Identity based encryption from the weil pairing[J]. Siam Journal on Computing, 2001, 32(3): 213-229.
[10] ZHANG J, DONG Q. Efficient ID-based public auditing for the outsourced data in cloud storage[J]. Information Sciences, 2016, 343-344(C):1-14.
[11] YU Y, XUE L, MAN H A, et al. Cloud data integrity checking with an identity-based auditing mechanism from RSA[J]. Future Generation Computer Systems, 2016, 62(C):85-91.
[12] ZHANG J, LI P, SUN Z, et al. ID-based data integrity auditing scheme from RSA with resisting key exposure[C]// International Conference on Provable Security. 2016: 83-100.
[13] XU Z, WU L, KHAN M K, et al. A secure and efficient public auditing scheme using RSA algorithm for cloud storage[J]. Journal of Supercomputing, 2017(4):1-25.
Analysis and improvement on identity-based cloud data integrity verification scheme
WANG Shaohui1,2, PAN Xiaoxiao1,2, WANG Zhiwei1,2, XIAO Fu1,2, WANG Ruchuan1,2
1. College of Computer, Nanjing University of Posts and Telecommunications, Nanjing 210003, China 2. Key Laboratory of Jiangsu High Technology Research for Wireless Sensor Network, Nanjing 210003, China
Many individuals or businesses outsource their data to remote cloud. Cloud storage provides users the advantages of economic convenience, but data owners no longer physically control over the stored data, which introduces new security challenges, such as no security guarantees of integrity and privacy. The security of two identity-based cloud data integrity verification schemes by Zhang et al and Xu et al respectively are analysed. It shows that Zhang et al.’s scheme is subjected to secret key recovery attack for the cloud servers can recover user’s private key only utilizing stored data. And Xu et al.’s scheme cannot satisfy security requirements of soundness. Based on Xu et al.'s scheme, a modified identity-based cloud data integrity verification scheme is proposed. A comprehensive analysis shows the new scheme can provide the security requirements of soundness and privacy, and has the same communication overhead and computational cost as Xu et al.’s scheme.
cloud storage, identity-based cryptosystem, data integrity, privacy
TP393
A
10.11959/j.issn.1000-436x.2018229
王少輝(1977?),男,山東濰坊人,博士,南京郵電大學(xué)副教授,主要研究方向?yàn)槊艽a學(xué)、信息安全。
潘笑笑(1993?),男,安徽宿州人,南京郵電大學(xué)碩士生,主要研究方向?yàn)樵瓢踩?/p>
王志偉(1976?),男,江蘇揚(yáng)州人,博士,南京郵電大學(xué)教授,主要研究方向?yàn)樾畔踩?、密碼學(xué)。
肖甫(1980?),男,湖南邵陽人,博士,南京郵電大學(xué)副教授,主要研究方向?yàn)闊o線傳感器網(wǎng)絡(luò)、信息安全等。
王汝傳(1943?),男,安徽合肥人,博士,南京郵電大學(xué)教授,主要研究方向?yàn)樾畔踩?、無線傳感器網(wǎng)絡(luò)等。
2017?12?22;
2018?10?11
國家自然科學(xué)基金資助項(xiàng)目(No.61373006, No.61373139, No.61672016, No.61872192);江蘇省科技支撐計(jì)劃基金資助項(xiàng)目(No.61003236)
The National Natural Science Foundation of China (No.61373006, No.61373139, No.61672016, No.61872192), The Scientific of Technolgical Suppovt Project of Jiangsu Province (No.61003236)