魏巍陸幼驪俞藝涵
(1.海軍指揮學(xué)院南京211800)(2.海軍工程大學(xué)信息安全系武漢430033)
基于CP-ABE算法的云存儲數(shù)據(jù)訪問控制方案設(shè)計
魏巍1陸幼驪1俞藝涵2
(1.海軍指揮學(xué)院南京211800)(2.海軍工程大學(xué)信息安全系武漢430033)
云存儲暴露出諸多安全問題,影響其發(fā)展速度。針對云存儲安全問題,提出一項改進的基于密文策略屬性加密的訪問控制方案,通過使用門限訪問控制結(jié)構(gòu)對CP-ABE算法的原訪問控制結(jié)構(gòu)進行改進,以期提升運算效率,通過將用戶ID與密鑰綁定,增強云平臺安全性。文章首先對研究背景進行介紹;其次對整體方案進行詳細說明;最后對新方案的安全性與運行效率進行理論分析和仿真實驗測試。安全性分析表明,論文方案可實現(xiàn)細粒度訪問控制并有效防御多用戶共謀攻擊。仿真實驗結(jié)果表明相比傳統(tǒng)方案,加解密效率大幅提升。
云計算;數(shù)據(jù)存儲;訪問控制;CP-ABE算法;存儲安全
Class NumberTP309
云存儲作為云計算所提供的諸多服務(wù)之一,允許用戶在平臺存儲并共享數(shù)據(jù),因其高效靈活、即付即用等優(yōu)點受到廣泛歡迎[1]。存儲于云平臺的數(shù)據(jù)處在不可控域中,數(shù)據(jù)所有者(Data Owner,DO)失去了對數(shù)據(jù)的控制,安全隱患較高[2]。數(shù)據(jù)加密上傳至云平臺后,用戶希望通過云平臺獲取此數(shù)據(jù)時,必須要擁有其訪問權(quán)限,為云存儲平臺制定合理的訪問策略至關(guān)重要。
DO上傳數(shù)據(jù)時,如果在加密操作采用傳統(tǒng)公鑰加密機制,則DO需為每個用戶均執(zhí)行一次數(shù)據(jù)加密操作,這不僅增加DO端計算負擔(dān),而且云服務(wù)提供商(Cloud Service Provider,CSP)在每次共享所存儲數(shù)據(jù)后,也需如此重復(fù)操作,工作量巨大。為解決上述問題,Sahai和Waters[3]提出基于屬性的加密方案(Attribute Based Encryption,ABE),方案將用戶身份特征作為屬性,選擇部分或全部屬性加解密數(shù)據(jù)。ABE允許DO共享數(shù)據(jù)時不必使用其他用戶公鑰,減少計算量,但不能阻止多用戶間共謀攻擊。在ABE方案基礎(chǔ)上,Goyal等[4]提出基于密鑰策略屬性加密方案(Key-Policy Attribute Based Encryption,KP-ABE),DO在用戶密鑰中構(gòu)建訪問結(jié)構(gòu),使用屬性集合對數(shù)據(jù)執(zhí)行加密操作,可實現(xiàn)細粒度訪問控制,并在管理用戶權(quán)限上具有靈活性,但方案在密鑰撤銷中需對用戶的全部密鑰進行更新。Bethencourt等[5]提出基于密文策略屬性加密方案(Cipher-text Policy Attribute Based Encryption,CP-ABE),該方案以密文為基礎(chǔ),簡化密鑰撤銷過程,相比KP-ABE方案,計算開銷更多。Sabrina等人[6]提出一項旨在加強隱私保護的云數(shù)據(jù)共享服務(wù),其將訪問控制結(jié)構(gòu)轉(zhuǎn)換為二進制訪問控制樹,但因結(jié)構(gòu)限制,方案靈活性有限,存儲效率未得到明顯提高。
本文在此基礎(chǔ)上提出具有靈活性的隱私保護云數(shù)據(jù)共享服務(wù)方案。該方案使用門限訪問結(jié)構(gòu)取代二進制訪問結(jié)構(gòu),擴展文獻[6]方案訪問結(jié)構(gòu)靈活性,以提升工作效能,與CP-ABE等相比計算開銷更低。本方案中數(shù)據(jù)文件均與訪問結(jié)構(gòu)關(guān)聯(lián),允許擁有正確屬性的用戶獲得密鑰解密密文,通過將密鑰與用戶身份綁定,確保在多個用戶擁有相同屬性時,生成不同密鑰,保證數(shù)據(jù)安全性。
2.1 系統(tǒng)整體架構(gòu)
本文方案由四個角色組成:
1)云服務(wù)提供商(CSP):提供所需數(shù)據(jù)存儲空間和計算能力。
2)數(shù)據(jù)所有者(DO):于CSP存儲數(shù)據(jù),DO可以是個人或組織。
3)密鑰管理中心(Private Key Generator,PKG):計算用戶私鑰的可信第三方,PKG負責(zé)為用戶生成私鑰,向用戶提供身份(Identity,ID)和公鑰,PKG不保存有關(guān)密鑰和存儲于服務(wù)器的信息。
4)用戶(User):下載DO所共享數(shù)據(jù),使用自身密鑰對密文執(zhí)行解密操作。
2.2 安全假設(shè)
本文采用主流應(yīng)用情景[7],假定云服務(wù)器是被半信任的,表示其行為在大多數(shù)情況下是正確的,但較特殊時會獲取大量信息,系統(tǒng)中各角色間通信是安全的[8~9]。本文共考慮四種威脅:
1)內(nèi)部威脅:來自CSP,欲獲取未授權(quán)數(shù)據(jù)的User。
2)外部威脅:系統(tǒng)外部敵人。
3)CSP與User間共謀訪問未授權(quán)數(shù)據(jù)。4)User間共謀訪問未授權(quán)數(shù)據(jù)。
2.3 設(shè)計目標
本方案設(shè)計目標旨在DO將數(shù)據(jù)與訪問控制結(jié)構(gòu)連接,對存儲在CSP數(shù)據(jù)實現(xiàn)細粒度訪問控制,防止云服務(wù)器和未授權(quán)用戶獲取訪問數(shù)據(jù)權(quán)限,有助于管理訪問權(quán)限且不泄漏關(guān)于密鑰或數(shù)據(jù)的信息。此外方案還滿足以下安全要求:
1)細粒度訪問控制:User只能訪問自身被授權(quán)數(shù)據(jù);
2)混淆抵抗:User間不能通過共享密鑰,訪問未授權(quán)數(shù)據(jù);
3)隱私保護:CSP不保存用戶的隱私信息。
2.4 流程設(shè)計
2.4.1 流程概述
本方案基于雙線性映射結(jié)構(gòu),設(shè)G1與G2兩個為素數(shù)p階的乘法循環(huán)群,g為G1的生成元,e為雙線性映射,e:G1×G1→G2,則雙線性映射e具有以下特征:
1)雙線性:?u,v∈G1,a,b∈Zp},使e(ua,vb) =e(u,v)ab;
2)非退化性:e(g,g)≠1;
3)可計算性:對于任意y,z∈G1,存在給定多項式時間算法計算e(y,z)∈G2。
本方案與CP-ABE相同,數(shù)據(jù)均由屬性集合描述,此集合用于構(gòu)建訪問控制樹并隨后將被分配給數(shù)據(jù)。User均有描述其訪問權(quán)限的屬性集合(由DO分配)和唯一ID,對于每個分配給用戶的屬性,都擁有新建密鑰。若User所持屬性集合滿足對應(yīng)數(shù)據(jù)的訪問控制樹,則User可解密該數(shù)據(jù)。
方案分為參數(shù)初始化,加密操作,密鑰生成,解密操作四個步驟。參數(shù)初始化階段,DO選擇所使用屬性,并為每個屬性生成系統(tǒng)參數(shù)。加密操作階段,DO選擇某屬性集合并使用其構(gòu)建門限訪問控制結(jié)構(gòu),其次使用該結(jié)構(gòu)加密數(shù)據(jù)文件。DO為每個User分配屬性集合,在PKG生成User私鑰后,使用User自身公鑰對私鑰加密,將加密結(jié)果發(fā)送至CSP。解密操作中,User使用自身私鑰經(jīng)解密算法來獲取數(shù)據(jù)。
2.4.2 各步驟具體算法
1)參數(shù)初始化
DO選擇素數(shù)P,循環(huán)群G1、G2,e:G1×G1→G2表示雙線性映射,H表示哈希函數(shù)。將某User的IDu映射為G1的元素,其次DO定義屬性集合W,每個屬性i∈W,DO生成兩個隨機數(shù)αi,βi∈ZP,則用戶的私鑰和公鑰為:
2)加密環(huán)節(jié)
加密信息M,DO選擇屬性i∈W,基于屬性集合W定義訪問結(jié)構(gòu)P。選擇多項式Qx與Px,選擇方法與文獻[5]相同且Qx(0)=s,Px(0)=0,訪問控制結(jié)構(gòu)每個葉節(jié)點x對應(yīng)隨機數(shù)rx,則計算:
最后上傳加密文件D至CSP:
3)密鑰生成
DO從PKG接收IDu并選擇屬性集合Iu分配用戶,DO計算用戶密鑰如下:
密文加密方式如下
User公鑰加密后的SkD經(jīng)由云服務(wù)器遞送給User,只有User自身私鑰可以解密SkD。
4)解密環(huán)節(jié)
User下載已加密數(shù)據(jù)D,H(IDu),其中D={?x,Dx,1,Dx,2,Dx,3,P,Me},User在屬性集合中選擇符合訪問結(jié)構(gòu)P的屬性后計算:
最后User恢復(fù)加密數(shù)據(jù)為M:
3.1 安全性分析
本方案可滿足以下安全需求:
1)細粒度訪問控制。每個User接收由DO所描述屬性集合,只有符合屬性要求的用戶才能計算得到Qx(0)=s與Px(0)=0,從而恢復(fù)密鑰e(g,g)s,因此本文方案可幫助DO實現(xiàn)細粒度訪問控制的目標。
2)防共謀攻擊。通過將IDu與User屬性相聯(lián)系,以防御共謀攻擊。當多名用戶組合其密鑰試圖破解密鑰時,必須恢復(fù)e(g,g)s部分,這意味著必須求解公式中e(H(ID),g1)Px(0)部分,由于用戶均具有不同ID,不可能通過串通從而完成對e(H(ID),g1)Px(0)部分的計算,所以本方案可有效防御共謀攻擊。
3)用戶訪問權(quán)限機密性。本文方案不向除User本身以外泄漏任何密鑰的信息,有效保護User在云平臺的隱私;與文獻[6]和CP-ABE方案相比,本方案僅向授權(quán)用戶公開解密密鑰,使CSP和未授權(quán)用戶無法解密數(shù)據(jù),用戶機密性得到有效保障。
3.2 效率分析
本節(jié)根據(jù)方案中加解密結(jié)構(gòu)分析計算開銷。本方案與文獻[6]相似,數(shù)據(jù)文件的加解密環(huán)節(jié)占據(jù)了大量計算開銷。加密過程中,DO需為訪問控制結(jié)構(gòu)中每個葉節(jié)點執(zhí)行兩次標量計算Dx,1,一次標量計算Dx,2,一次標量計算Dx,3,因此DO最多需要執(zhí)行4|I|次標量計算,故加密復(fù)雜度是O(|I|),其中|I|是訪問結(jié)構(gòu)中葉節(jié)點數(shù)量。解密過程中,User需為訪問結(jié)構(gòu)中每個葉節(jié)點至少執(zhí)行一次標量計算,并為非葉節(jié)點執(zhí)行一次標量計算求解故解密復(fù)雜度是O(max(|I|,N)),N為節(jié)點總數(shù)量。
如圖3所示,二進制訪問控制樹結(jié)構(gòu)相比于門限訪問結(jié)構(gòu),在數(shù)據(jù)量相同情況下,二進制訪問控制樹大幅增加節(jié)點數(shù)量,導(dǎo)致加解密工作量激增,因此理論上可得出本文方案在加解密環(huán)節(jié)更加高效的結(jié)論。
實驗過程中,通過增加屬性數(shù)量擴大訪問結(jié)構(gòu)規(guī)模測試加密,密鑰生成和解密三個環(huán)節(jié)的耗時情況,對比基于門限訪問控制結(jié)構(gòu)的本文方案、文獻[6]方案、CP-ABE方案三者的性能,在整個實驗過程中忽略數(shù)據(jù)傳輸過程中的網(wǎng)絡(luò)延遲。整個實驗環(huán)境中,處理器為Inter 2.2 GHZ CPU,內(nèi)存為8GB,虛擬機為VMware Workstation 6.5.1,性能仿真軟件為Ubuntu 10.10,部分實驗代碼基于CP-ABE-0.11庫編寫。
本節(jié)實驗中,屬性數(shù)量均由0增加到10000,三個環(huán)節(jié)實驗結(jié)果如圖4~6所示。
通過分析實驗結(jié)果圖4~6可知,本文方案加密耗時隨著測試中屬性|W|的數(shù)量線性增加,其他兩方案隨著屬性數(shù)量增加耗時劇增,實驗結(jié)果與3.2節(jié)復(fù)雜度分析一致。相比其他兩個方案,本方案可實現(xiàn)更低的加解密耗時。本方案通過使用門限訪問控制結(jié)構(gòu)取代二進制訪問結(jié)構(gòu)擴展文獻[6]的靈活性,這種改變雖然會在密鑰生成過程中增加較小的開銷,但在加密和解密兩個環(huán)節(jié)更加高效。隨著訪問結(jié)構(gòu)的復(fù)雜度增加,在加密中使用閾值門限訪問結(jié)構(gòu)將會更加高效。
本文在文獻[6]的基礎(chǔ)上使用門限訪問控制結(jié)構(gòu)取代二進制訪問結(jié)構(gòu)樹,提出一項基于CP-ABE算法的云存儲數(shù)據(jù)訪問控制方案。本文方案能夠?qū)崿F(xiàn)比CP-ABE更低的密鑰生成和加密開銷,同時相比文獻[6]方案擁有更高的靈活性。當訪問結(jié)構(gòu)更加復(fù)雜時,本方案的加密過程將會更加高效。在下一步工作中,將嘗試在本方案中增加數(shù)據(jù)完整性驗證和數(shù)據(jù)源驗證過程。
參考文獻
[1]傅穎勛,羅圣美,舒繼武.安全云存儲系統(tǒng)與關(guān)鍵技術(shù)綜述[J].計算機研究與發(fā)展,2013,50(1):136-145.
[2]馮登國,張敏,張妍.云計算安全研究[J].軟件學(xué)報,2011,22(1):71-83.
[3]SAHAI A,WATERS B.Fuzzy Identity Based Encryption[M].Heidelberg:Springer-Verlag.2005:457-473.
[4]GOYAL V,PANDEY O,SAHAI A.Attribute Based Encryption for Fine-grained Access Control of Encrypted Data[M].New York:ACM,2006:89-98.
[5]BETHENCOURT J,SAHAI A,WATERS B.Ciphertext-policy Attribute-based Encryption[C]//New Jersey:IEEE.2007:321-334.
[6]Sabrina V,Sara F,Riccardo M.A Dynamic Tree-based Data Structure for Access Privacy in the Cloud[C]//New York:IEEE.2016:391-398.
[7]Shucheng Yu,Cong Wang,Kui Ren.Attribute based data sharingwithattributerevocation[C]//NewYork:ACM.2010.261-270.
[8]李琦,馬劍鋒,熊金波.一種素數(shù)階群上構(gòu)造的自適應(yīng)安全帶多授權(quán)機構(gòu)CP-ABE方案[J].電子學(xué)報,2014,4(42):696-702.
[9]程思嘉,張昌宏,潘帥卿.基于CP-ABE算法的云存儲數(shù)據(jù)訪問控制方案設(shè)計[J].信息網(wǎng)絡(luò)安全,2016,3(2):1-6.
[10]王意潔,孫偉東,周松.云計算環(huán)境下的分布存儲關(guān)鍵技術(shù)[J].軟件學(xué)報,2012,23(4):962-986.
[11]王鵬翩,馮登國,張立武.一種支持完全細粒度屬性撤銷的CP-ABE方案[J].軟件學(xué)報,2012,23(10):2805-2816.
[12]鄒徐熹,王磊,史兆鵬.云計算下基于特殊差分方程的(m+1,t+1)門限秘密共享方案[J].計算機工程,2017,43(1):8-12.
Data Access Control Scheme Design for Cloud Storage Based on CP-ABE Algorithm
WEI Wei1LU Youli1YU Yihan2
(1.Naval Command College,Nanjing211800)(2.Department of Information Security,Naval University of Engineering,Wuhan430033)
In the process of cloud storage development,it exposed a lot of security issues,affecting the cloud computing's development.In order to solve the security problem of cloud storage,this paper proposes an improved access control scheme based on cipher-text policy attribute encryption.Threshold access control structure is used to improve the original access control structure,in order to enhance the efficiency of the operation.Making the user's ID and key binding is to increase the cloud platform security.Firstly,the test introduces background of the research.Secondly,the whole scheme is described in detail.Finally,the security and operational efficiency of the scheme are theoretically analyzed and simulated by experiment.Security analysis shows that this scheme can achieve fine-grained access control and defense of multi-user conspiracy attacks.Simulation results show that compared with the traditional scheme,the efficiency of the new scheme is greatly improved when the number of user attributes increases.
cloud computing,data storage,access control,CP-ABE algorithm,storage safety
TP309
10.3969/j.issn.1672-9730.2017.07.018
2017年1月17日,
2017年2月23日
國家自然科學(xué)基金項目(編號:61100042);信息保障技術(shù)國防重點實驗室基金項目(編號:KJ-13-111)資助。
魏巍,男,助教,研究方向:云計算與云安全。陸幼驪,男,碩士,副教授,研究方向:云計算與云安全。俞藝涵,男,博士研究生,研究方向:云存儲安全。