王 輝 唐俊勇
(西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,陜西 西安 710032)
基于屬性加密的云存儲(chǔ)訪問控制研究
王 輝 唐俊勇
(西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,陜西 西安 710032)
云存儲(chǔ)技術(shù)迅猛發(fā)展的同時(shí)也引起諸多安全問題,在云存儲(chǔ)環(huán)境中,數(shù)據(jù)被外包給云服務(wù)器而處于用戶控制之外,如何實(shí)施新穎可信的訪問控制技術(shù)就變得非常關(guān)鍵。作為一類新興的公鑰加密技術(shù),基于屬性的加密算法以其靈活性被廣泛應(yīng)用在云存儲(chǔ)訪問控制方案的設(shè)計(jì)中。文章提出了一種基于屬性加密的云存儲(chǔ)訪問控制方案,方案可以實(shí)現(xiàn)安全的云存儲(chǔ),系統(tǒng)采用基于角色的訪問控制技術(shù)實(shí)現(xiàn)身份驗(yàn)證、對(duì)屬性的加密/解密以及對(duì)非敏感數(shù)據(jù)的訪問。最后通過仿真實(shí)驗(yàn)證明該方案是一種可以保證數(shù)據(jù)完整性和機(jī)密性的云存儲(chǔ)訪問控制。
云存儲(chǔ);數(shù)據(jù)安全;訪問控制模塊;屬性加密算法
云存儲(chǔ)基于云計(jì)算進(jìn)行擴(kuò)充和發(fā)展,其核心就是實(shí)現(xiàn)海量的數(shù)據(jù)存儲(chǔ)和管理。云存儲(chǔ)利用各種網(wǎng)絡(luò)存儲(chǔ)設(shè)備以及相關(guān)應(yīng)用軟件,通過集群應(yīng)用、網(wǎng)絡(luò)技術(shù)和分布式文件系統(tǒng)等實(shí)現(xiàn)海量數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)訪問[1]。
云存儲(chǔ)可以使用戶通過任何網(wǎng)絡(luò)設(shè)備、在任意時(shí)間、任意地點(diǎn)接入到云,從而達(dá)到快速訪問數(shù)據(jù)的目的。云存儲(chǔ)方便、靈活、價(jià)格低廉,在很多領(lǐng)域云存儲(chǔ)都可以滿足大規(guī)模數(shù)據(jù)存儲(chǔ)的需求,因此被企業(yè)和個(gè)人廣泛使用。然而云存儲(chǔ)中的數(shù)據(jù)安全問題成為用戶關(guān)注的焦點(diǎn),即如何保護(hù)敏感數(shù)據(jù)的機(jī)密性以及如何保護(hù)合法用戶的訪問。其中,訪問控制和授權(quán)則成為現(xiàn)階段實(shí)現(xiàn)安全地訪問云存儲(chǔ)的關(guān)鍵技術(shù)以及主要內(nèi)容。在訪問控制中,Thomas首次提出了兩種傳統(tǒng)的訪問控制,即自主訪問控制以及強(qiáng)制訪問控制[2],但是,這兩種訪問控制并沒有適應(yīng)分布式環(huán)境?;诮巧脑L問控制在1996年被Sandu等人提出[3],該訪問控制借助引入的一個(gè)“角色”,從而可以實(shí)現(xiàn)“用戶-角色-權(quán)限”模式。然而,這幾種類型的訪問控制模型都只能解決數(shù)據(jù)的相對(duì)完整以及數(shù)據(jù)的合法訪問,它并不能保證在通信過程中數(shù)據(jù)是否被非法攔截。Fuzzy IBE加密方法被Amit Sahai和Brent Waters提出,在該加密方法中,屬性加密的概念被首次提出。直到 2006年KP-ABE的概念被Sahai和Brent Waters首次提出,通過這種加密方法可以更好地加密解密數(shù)據(jù)。論文首先研究了屬性加密以及訪問控制,使用基于角色的訪問控制方法以及屬性加密技術(shù)提出了基于屬性加密的云存儲(chǔ)訪問控制系統(tǒng),該訪問控制系統(tǒng)在實(shí)現(xiàn)合法訪問的同時(shí),能夠有效確保數(shù)據(jù)的完整性和機(jī)密性。
2.1 在云存儲(chǔ)中基于角色的訪問控制模型
使用基于角色的訪問控制模型(Role-Based Access Control,RBAC)提出基于屬性加密的云存儲(chǔ)訪問控制系統(tǒng)?;诮巧脑L問控制模型RBAC的核心技術(shù)是采用傳統(tǒng)的訪問控制方法分離主體、客體。主體以及客體并不直接被賦予某種訪問權(quán)限,而是將訪問權(quán)限分配給某一個(gè)角色,繼而,當(dāng)用戶被確定為某個(gè)角色時(shí),用戶也就會(huì)具有這個(gè)角色所被賦予的所有權(quán)利。
2.2 基于屬性的加密算法
將基于身份的加密(Identity Based Encryption,IBE)進(jìn)一步延伸擴(kuò)展就得到基于屬性的加密(Attribute Based Encryption,ABE)[4]?;趯傩缘募用荏w制包括兩種,分別是基于密文策略的屬性加密系統(tǒng)(Ciphertext-Policy ABE,CP-ABE)以及基于密鑰策略的屬性加密體制(Key-Policy ABE,KP-ABE)[5]。在基于密鑰策略的屬性加密體制中,一組屬性可以和密文相關(guān)聯(lián),用決策樹來約束解密密鑰。用戶如果想要得到解密密鑰,前提條件是用戶屬性和訪問控制策略樹得以匹配。對(duì)加密的明文沒有任何控制?;诿荑€策略的屬性加密在大規(guī)模網(wǎng)絡(luò)環(huán)境中的密鑰管理非常適用?;诿芪牟呗缘膶傩约用苤?,訪問控制策略樹與密文、解密密鑰一起被描述為一組屬性約束。云計(jì)算資源具有高開放性、高集中性以及易擴(kuò)展的特性,比較基于密文策略的屬性加密體制以及基于密鑰策略的屬性加密體制這兩種體制,前者則要更適合于云存儲(chǔ)系統(tǒng),密鑰管理也會(huì)更容易、更快捷。
3.1 系統(tǒng)數(shù)據(jù)類別
由于在實(shí)際系統(tǒng)中不需要加密全部數(shù)據(jù),并且為了有效提高加密技術(shù)的效率,考慮將云存儲(chǔ)環(huán)境中的數(shù)據(jù)分為非敏感數(shù)據(jù)以及敏感數(shù)據(jù)這兩類。例如,在檔案管理系統(tǒng)中的圖片、公告和視頻等可以被用戶共享而不需要加密的數(shù)據(jù),就被叫做非敏感數(shù)據(jù);檔案管理系統(tǒng)中的合同、檔案等關(guān)鍵數(shù)據(jù)則被叫做敏感數(shù)據(jù),對(duì)于這類敏感數(shù)據(jù)則需要使用加密技術(shù)加密。
3.2 屬性加密機(jī)制
云存儲(chǔ)環(huán)境中數(shù)據(jù)加密訪問控制的難點(diǎn)是對(duì)密鑰的管理,如果在訪問控制中僅用對(duì)稱加密并不能保證秘鑰的安全,相反,如果使用非對(duì)稱加密則能夠使系統(tǒng)的安全性得以提升,非對(duì)稱加密算法比對(duì)稱加密算法要相對(duì)復(fù)雜,但是在直接加密數(shù)據(jù)文件時(shí)算法的效率很低。試圖在云存儲(chǔ)環(huán)境中實(shí)現(xiàn)數(shù)據(jù)加密的高效訪問控制,必須保證密鑰以及數(shù)據(jù)被安全有效的加密。系統(tǒng)采用屬性加密機(jī)制在訪問控制中的優(yōu)勢(shì),并且結(jié)合高效的對(duì)稱加密算法完成加密,最終實(shí)現(xiàn)多用戶安全、高效地訪問云數(shù)據(jù)。云存儲(chǔ)中基于屬性加密的數(shù)據(jù)訪問控制架構(gòu)如圖1所示。
圖1 云存儲(chǔ)中數(shù)據(jù)的訪問架構(gòu)
3.3 系統(tǒng)框架
論文描述的基于屬性加密的云存儲(chǔ)訪問控制系統(tǒng)由四個(gè)模塊構(gòu)成,分別是基于角色的訪問控制模塊、云存儲(chǔ)模塊、主信息管理模塊以及基于屬性的加密解密模塊?;趯傩约用艿脑拼鎯?chǔ)訪問控制系統(tǒng)如圖2所示。
圖2 基于屬性加密的云存儲(chǔ)訪問控制系統(tǒng)
在基于屬性加密的云存儲(chǔ)訪問控制系統(tǒng)中,用戶會(huì)首先發(fā)出需要進(jìn)行資源訪問的請(qǐng)求,當(dāng)基于角色的訪問控制模塊收到該請(qǐng)求后,將對(duì)用戶身份進(jìn)行驗(yàn)證,如果用戶身份驗(yàn)證失敗,則給用戶返回失敗消息,結(jié)束該訪問請(qǐng)求;如果用戶身份驗(yàn)證成功,就需要進(jìn)一步查看資源,確定該資源的類型。如果請(qǐng)求的資源是非敏感數(shù)據(jù),即未加密數(shù)據(jù),則基于角色的訪問控制模塊將給用戶分配具備一定權(quán)限的角色,然后轉(zhuǎn)向云存儲(chǔ)模塊使用數(shù)據(jù)。相反,如果用戶請(qǐng)求了一個(gè)敏感資源即敏感數(shù)據(jù)時(shí),則需要從主模塊中尋找適合的用戶屬性,如果用戶屬性與資源訪問控制策略一致,就會(huì)依照基于屬性加密解密模塊完成明文的加密或密文的解密。每個(gè)模塊的內(nèi)容詳細(xì)介紹如下:
(1)基于角色的訪問控制模塊
基于角色的訪問控制模塊的作用是驗(yàn)證用戶信息以及訪問控制非敏感數(shù)據(jù)。如果用戶請(qǐng)求訪問資源,基于角色的訪問控制模塊將給云授權(quán)中心上傳該用戶信息,由云授權(quán)中心審核用戶信息,如果用戶信息滿足系統(tǒng)的安全規(guī)則,訪問控制模塊將進(jìn)一步確定所需訪問資源的類型;如果訪問的是非敏感數(shù)據(jù),則訪問控制模塊授予用戶所需的角色,然后將相應(yīng)的訪問權(quán)限賦予用戶角色。此后,用戶就可以直接把數(shù)據(jù)提交給云存儲(chǔ)模塊并訪問資源。如果訪問的是敏感數(shù)據(jù),用戶相關(guān)信息會(huì)被直接傳遞給加密和解密模塊。
(2)主信息模塊
主信息模塊的主要任務(wù)是保存用戶屬性的相關(guān)信息、對(duì)稱加密(Data Encryption Standard,DES)算法生成的對(duì)稱密鑰以及私鑰。
(3)云存儲(chǔ)模塊
云存儲(chǔ)模塊的主要任務(wù)是保存在訪問控制模塊中的沒有加密的明文以及加密后的密文。
(4)屬性加密和解密模塊
屬性加密和解密模塊由三個(gè)功能構(gòu)成,分別是對(duì)稱加密和解密功能,屬性加密功能以及解密功能?!皩?duì)稱加密解密功能”使用對(duì)稱加密算法生成對(duì)稱密鑰,使用該對(duì)稱密鑰加密明文以及解密密文,“屬性加密功能”使用基于密文策略的屬性加密算法加密對(duì)稱密鑰,獲得加密后的對(duì)稱密鑰,然后將該對(duì)稱秘鑰存儲(chǔ)在信息管理模塊的主體中?!皩傩越饷芄δ堋痹诩用芎蟾鶕?jù)用戶的身份信息搜索用戶的私鑰和對(duì)稱密鑰,運(yùn)行基于密文策略的屬性加密算法解密加密后的對(duì)稱密鑰后獲得對(duì)稱密鑰。
屬性加密和解密模塊使用對(duì)稱加密算法實(shí)現(xiàn)數(shù)據(jù)加密,其復(fù)雜性低于非對(duì)稱加密算法,加密效率高,但密鑰是不安全的,基于此,再通過基于密文策略的屬性加密算法加密該不安全的對(duì)稱密鑰,基于密文策略的屬性加密算法的優(yōu)點(diǎn)是非常適合解密分布式環(huán)境中的非固定信息,在加密時(shí)加秘方根本不需要了解解密方,解密時(shí)要求解密方按照加密方的規(guī)則對(duì)密文進(jìn)行解密得到明文。
基于密文策略的屬性加密算法包括以下四個(gè)部分:
(1)系統(tǒng)初始化:選取隨機(jī)算法的輸入消息 I,設(shè)置一個(gè)素?cái)?shù)q,密鑰分發(fā)中心KDC中取Uj∈U,并設(shè)置屬性Aj,每一個(gè)KDC包含兩個(gè)隨機(jī)指數(shù)Xi,Yi∈Zq,KDC的私鑰是KS[j ]={Xi,Yi,i ∈Aj},公鑰是KG[j]={e(g,g )Xi,gYi,i∈Aj}。
(2)密鑰生成:利用Ks=KeyGen (KS,A),以及用戶U屬性生成用戶的私鑰
(3)加密:選擇一個(gè)隨機(jī)數(shù)s∈Zq,一個(gè)隨機(jī)向量v∈Zqh,h是訪問樹的葉節(jié)點(diǎn)的數(shù)量,矩陣W的行,性別(民族),籍貫,單位+職稱(職務(wù)),研究方向?yàn)椋ɑ驈氖拢?。是r,得到密文
(4)解密:用戶U計(jì)算訪問矩陣的屬性,r是矩陣W的行,對(duì)每個(gè)都得到明文
4.1 系統(tǒng)實(shí)施
基于屬性加密的訪問控制系統(tǒng)平臺(tái)是Linux ubuntu 12.04,實(shí)驗(yàn)環(huán)境安裝工作站為VMware8,并安裝Hadoop0.20.0,使用MyEclipse10開發(fā)環(huán)境。
系統(tǒng)拓?fù)鋱D如圖3所示。
圖3 系統(tǒng)拓?fù)鋱D
基于屬性加密的訪問控制系統(tǒng)主要包括身份驗(yàn)證服務(wù)器以及若干個(gè)存儲(chǔ)節(jié)點(diǎn)。其中,身份驗(yàn)證服務(wù)器需要對(duì)用戶的身份進(jìn)行驗(yàn)證以及對(duì)非敏感數(shù)據(jù)的訪問,這兩項(xiàng)控制主要通過基于角色的訪問控制,用戶根據(jù)屬性驗(yàn)證生成策略,確定是否是一個(gè)授權(quán)用戶訪問數(shù)據(jù)資源,如果用戶屬性和訪問策略一致,那么用戶將被授權(quán)允許訪問,否則提示未經(jīng)授權(quán)的響應(yīng)信息。訪問控制系統(tǒng)的存儲(chǔ)節(jié)點(diǎn)通過對(duì)稱加密算法對(duì)敏感數(shù)據(jù)進(jìn)行加密或解密,使用基于密文策略的屬性加密算法加密和解密密鑰,并完成云環(huán)境中的數(shù)據(jù)存儲(chǔ)。
4.2 系統(tǒng)分析
通過仿真實(shí)驗(yàn)來驗(yàn)證基于屬性的加密算法的訪問控制,實(shí)驗(yàn)結(jié)果如圖4和圖5中,很明顯,DES加密和解密的性能比基于密文策略的屬性加密體制強(qiáng)。當(dāng)使用DES對(duì)稱加密算法加密系統(tǒng)中的敏感數(shù)據(jù)時(shí),能夠確保數(shù)據(jù)的完整性以及機(jī)密性,對(duì)稱加密算法的高效特點(diǎn),即使系統(tǒng)性能下降,但是也在用戶許可接收的范圍,此后,通過基于密文策略的屬性加密DES對(duì)稱密鑰,以保證密鑰的機(jī)密性。
圖4 加密時(shí)間的對(duì)比圖
圖5 解密時(shí)間的對(duì)比圖
針對(duì)云存儲(chǔ)環(huán)境中數(shù)據(jù)安全問題,論文首先研究了屬性加密以及訪問控制,利用基于角色的訪問控制技術(shù)以及屬性加密技術(shù)提出了基于屬性加密的云存儲(chǔ)訪問控制系統(tǒng),該訪問控制系統(tǒng)在實(shí)現(xiàn)合法訪問的同時(shí),能夠有效確保數(shù)據(jù)的完整性和機(jī)密性。最后通過仿真實(shí)驗(yàn)證明了訪問控制系統(tǒng)的可靠。
[1] 李喬,鄭嘯.云計(jì)算研究現(xiàn)狀綜述[J].計(jì)算機(jī)科學(xué),2011,38(4):32-37.
[2] 孫國(guó)梓,董宇,李云.基于 CP-ABE算法的云存儲(chǔ)數(shù)據(jù)訪問控制[J].通信學(xué)報(bào),2011,32(7):147.
[3] 傅穎勛,羅圣美,舒繼武.安全云存儲(chǔ)系統(tǒng)與關(guān)鍵技術(shù)綜述[J].計(jì)算機(jī)研究與發(fā)展,2013,50(1):136.
[4] 牛德華,馬建峰,馬卓,等.基于屬性的安全增強(qiáng)云存儲(chǔ)訪問控制方案[J].通信學(xué)報(bào),2013,34(Z1):276.
[5] 宋開波.基于密文策略屬性基加密的云存儲(chǔ)訪問控制機(jī)制研究[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2012.
Research on attribute-based cryptographic access control in cloud storage
With the rapid development of cloud storage technology, many security problems in cloud storage were caused. In cloud storage, how to implement the new trusted access control becomes critical. As a kind of emerging public key encryption, the encryption algorithm based on attribute was widely used in the design of access control scheme in cloud storage because of its flexibility. A secure cloud storage access control scheme based on encryption attribute was proposed in this paper. The cloud platform was build with Linux and Hadoop. To apply role-based access control method to test identity and access of nonsensitive data, and attribute encryption algorithm encrypt/decrypt data. It was proved that the integrity and confidentiality of data in the cloud storage can be effectively ensured by this scheme.
Cloud storage; data security; access control model; attribute encryption algorithm
TP301.6
A
1008-1151(2016)08-0007-03
2016-07-13
西安工業(yè)大學(xué)校長(zhǎng)基金(XAGDXJJ1216)。
王輝(1975-),女,陜西西安人,西安工業(yè)大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院講師,研究方向?yàn)橛?jì)算機(jī)網(wǎng)絡(luò),網(wǎng)絡(luò)安全,網(wǎng)絡(luò)協(xié)議分析。