国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

加密云數(shù)據(jù)多級安全訪問控制方案

2019-05-10 02:00張馨月嚴新成賈洪勇
小型微型計算機系統(tǒng) 2019年5期
關(guān)鍵詞:擁有者密文密鑰

張馨月,陳 越,嚴新成,賈洪勇

1(中國人民解放軍信息工程大學(xué) 數(shù)據(jù)與目標(biāo)工程學(xué)院,鄭州 450001)2(鄭州大學(xué) 軟件與應(yīng)用科技學(xué)院,鄭州 450001)

1 引 言

隨著云存儲技術(shù)的迅猛發(fā)展,越來越多的企業(yè)和個人傾向于將應(yīng)用軟件和數(shù)據(jù)轉(zhuǎn)移到云服務(wù)提供商的龐大網(wǎng)絡(luò)數(shù)據(jù)中心存儲,以減少自身管理和存儲開銷,方便數(shù)據(jù)共享.然而,當(dāng)用戶外包敏感數(shù)據(jù)到半可信的云存儲環(huán)境時,會產(chǎn)生數(shù)據(jù)的機密性、完整性、可用性等問題,實現(xiàn)外包數(shù)據(jù)的安全訪問控制是一重要研究的內(nèi)容,各種技術(shù)手段陸續(xù)被提出[1].基于加密的方式實現(xiàn)訪問控制可以以較小的代價實現(xiàn)最大的安全性.多級安全系統(tǒng)是指一類包含各種敏感等級信息,在不危及信息安全的情況下能夠同時為不同安全等級的用戶提供訪問服務(wù)的系統(tǒng),它是數(shù)據(jù)訪問控制研究的一個重要方面,在軍事和商業(yè)領(lǐng)域有廣泛需求.經(jīng)典的多級安全模型如Bell-La Padula(BLP)模型,其總體目標(biāo)是防止高密級的信息泄漏給低密級的主體,以保護數(shù)據(jù)的機密性.許多屬性基加密或者層次密鑰管理方案通過數(shù)據(jù)加密或者密鑰派生的方式實現(xiàn)敏感數(shù)據(jù)“禁止上讀”特性,但是對數(shù)據(jù)“禁止下寫”的研究還較為匱乏,作為BLP模型的一大特征,“禁止下寫”特性保證了在機密性要求較高的系統(tǒng)中,高安全級的主體不能生成一個低安全級的密文數(shù)據(jù),實現(xiàn)對其寫權(quán)限的靈活控制.

本文針對在云存儲環(huán)境下數(shù)據(jù)的多級安全訪問控制問題,提出了一個層次密鑰管理方案,數(shù)據(jù)擁有者可以實現(xiàn)其云端數(shù)據(jù)的多級安全訪問控制,通過將讀寫密鑰分開的方式,實現(xiàn)了BLP模型中“禁止上讀”和“禁止下寫”兩大安全特性.并且高安全級用戶可以通過密鑰派生的方式計算出低安全級用戶的讀密鑰,從而實現(xiàn)機密數(shù)據(jù)的安全共享.

2 相關(guān)工作

Akl和Taylor首先提出了等級密鑰分配方案(Hierarchical Key Assignment Scheme,HKAS)[2],使得授權(quán)用戶具有不同的數(shù)據(jù)訪問權(quán)限,根據(jù)這些不同的權(quán)限,用戶被劃分至互不相交的安全級(Security Class,SC).通常情況下,HKAS具有一個中心權(quán)威機構(gòu),負責(zé)給每個安全級分配一些私有信息和加解密密鑰,為了能夠讀較低安全級的數(shù)據(jù),每個安全級可以由其私有信息和公開參數(shù)推導(dǎo)出當(dāng)前安全級及其后繼節(jié)點的解密密鑰.HKAS可以應(yīng)用于多種環(huán)境當(dāng)中,例如云計算[3],無線傳感器網(wǎng)絡(luò)[4].

Akl和Taylor提出的第一個HKAS方案的缺點是計算開銷隨著安全級數(shù)目的增加呈指數(shù)級增長,且不便于訪問權(quán)限動態(tài)更新.隨后,許多改進的HKAS方案被陸續(xù)提出,它們或者具有更好的性能[5],或者支持動態(tài)改變安全級[6],或者更靈活的訪問控制策略[7].2002年,W.Tzeng[8]提出了具有時間約束的HKAS,但是不能抵抗共謀攻擊.有些HKAS方案基于橢圓曲線加密系統(tǒng)來解決訪問控制問題[9-11],然而Das等[12]指出文獻[9]中方案是不安全的:當(dāng)一個新的安全級被插入多級訪問結(jié)構(gòu)時,外部攻擊者可以通過尋根算法(Root Finding Algorithm)導(dǎo)出密鑰;Lin和Hsu[11]指出Jeng-Wang的方案[10]會受到妥協(xié)攻擊(Compromising Attack),即敵手可以從一個被刪除的訪問群組中獲得當(dāng)前訪問結(jié)構(gòu)中某些群組的密鑰.文獻[5]和文獻[13]等方案均為間接訪問,即不能直接派生出后繼節(jié)點的密鑰,需要迭代計算,開銷較大.Tang等利用偽隨機函數(shù)提出了一種密鑰強不可區(qū)分安全的HKAS[14],Atallah等人提出了一個抵抗密鑰恢復(fù)攻擊的可證明安全HKAS[15],和一個密鑰不可區(qū)分安全的HKAS[16].

Sahai和Waters提出了實現(xiàn)細粒度訪問控制的屬性基加密方案[17],只有屬性集合滿足訪問控制條件的用戶可以解密密文,文獻[18]基于屬性加密的方法實現(xiàn)了多級訪問控制,但是各種屬性基加密方案的訪問控制策略只針對用戶的讀權(quán)限,對用戶的寫權(quán)限即加密數(shù)據(jù)的能力沒有限制.

可以看出上述方案對BLP模型中寫規(guī)則的研究還較為缺乏,文獻[19]提出了一種基于代理重加密的HKAS,實現(xiàn)了滿足BLP模型要求的用戶讀寫權(quán)限靈活授權(quán),但是需要迭代地計算低級別的用戶私鑰和重加密密文,計算開銷較大.

3 預(yù)備知識

3.1 BLP模型

一個多級安全訪問控制策略是一個五元組(SC,?,U,D,λ),其中SC={SCi:1≤i≤n}是安全級集合,表示所包含實體的敏感性;?是安全級間的二元關(guān)系,SCj?SCi代表SCi的安全級高于SCj的安全級,即SCj可由SCi支配,若既不存在SCi?SCj也不存在SCj?SCi,則安全級SCi與安全級SCj間不可比較,所以(SC,?)形成一個偏序集;U代表用戶集合;D代表數(shù)據(jù)集合;λ:U∪D→SC是某一用戶或者數(shù)據(jù)到某一特定安全級的映射.

如圖1為一個多級安全訪問控制策略示例,偏序集(SC,?)可由有向無環(huán)圖G=(V,E)表示,圖中的每個節(jié)點對應(yīng)一個安全級,有向邊(Vi,Vj)代表偏序關(guān)系SCj?SCi,Anc(Vi,G)表示節(jié)點Vi的所有祖先節(jié)點,Des(Vi,G)代表節(jié)點Vi的所有后繼節(jié)點.策略圖G可通過消除傳遞閉包屬性中隱含的邊來化簡.

BLP模型是第一個將安全策略形式化的數(shù)學(xué)模型,為滿足BLP模型的訪問控制策略,P須滿足如下兩點:

1)簡單安全特性:如果用戶u∈U,數(shù)據(jù)d∈D滿足λ(u)?λ(d),那么u不能對d執(zhí)行讀操作,即“禁止上讀”.

2)*-特性:如果用戶u∈U,數(shù)據(jù)d∈D滿足λ(d)?λ(u),那么u不能對d執(zhí)行寫操作,即“禁止下寫”.

圖1 多級安全訪問控制策略圖Fig.1 Multi-level security access control policy diagram

3.2 雙線性映射

G1和GT是兩個素數(shù)p階乘法循環(huán)群,g是G1的生成元,則稱映射e:G1×G1→GT是雙線性映射,如果e滿足:

1)雙線性:對于任意u,v∈G1,a,b∈Zp,都有e(ua,vb)=e(u,v)ab;

2)非退化性:e(g,g)≠1,1為群GT的單位元;

3)可計算性:對于任意u,v∈G1,e(u,v) 都是可計算的.

3.3 DBDH困難假設(shè)

|Pr[S(g,ga,gb,gc,T=e(g,g)abc)=1]-
Pr[S(g,ga,gb,gc,T=R)=1]|≤negl

4 CloudMLS方案

4.1 方案模型

如圖2所示,在云計算環(huán)境下多級安全訪問控制系統(tǒng)通常包含如下實體:中心權(quán)威機構(gòu)、數(shù)據(jù)擁有者、用戶和云存儲服務(wù)器.中心權(quán)威機構(gòu)負責(zé)用戶注冊和某些公開參數(shù)的生成,數(shù)據(jù)擁有者負責(zé)確定多級安全訪問控制策略,將其數(shù)據(jù)按照不同的安全級加密后外包至云存儲服務(wù)器中存儲,并分配各安全級的讀寫密鑰,用戶根據(jù)自身安全級對云存儲服務(wù)器中的數(shù)據(jù)執(zhí)行讀寫操作.

本文提出一種基于線性幾何的云存儲層次密鑰分配與數(shù)據(jù)加密方案CloudMLS,數(shù)據(jù)擁有者確定訪問策略P可由有向圖G=(V,E)表示,并計算一個公開矩陣來描述安全級間的支配關(guān)系,每個安全級對應(yīng)著矩陣的一個行向量,并存在以下關(guān)系:

1)每個安全級的公開向量和私有向量是非正交的,內(nèi)積為密鑰生成參數(shù),用于計算其讀寫密鑰;

2)每個安全級的公開向量和其前驅(qū)節(jié)點的私有向量是非正交的,內(nèi)積為一中間參數(shù),用于計算前驅(qū)節(jié)點的讀密鑰;

3)其它情況,安全級的公開向量和私有向量內(nèi)積為0.具體形式化描述見4.2節(jié).

圖2 多級安全訪問控制模型Fig.2 Multi-level security access control model

在CloudMLS方案中,數(shù)據(jù)擁有者首先與權(quán)威中心交互獲取系統(tǒng)公開參數(shù),用對稱密鑰加密需要共享的數(shù)據(jù),并將密文上傳至云存儲服務(wù)器,根據(jù)分配給每個安全級的寫密鑰加密消息(對稱密鑰)并上傳.當(dāng)用戶加入時,首先在權(quán)威中心注冊,確定安全級,與數(shù)據(jù)擁有者交互得到其私有信息,當(dāng)欲執(zhí)行讀寫操作時,某一節(jié)點的用戶可以直接計算出其后繼節(jié)點的讀密鑰,來解密低安全級的數(shù)據(jù)實現(xiàn)數(shù)據(jù)共享,但是不能計算出其前驅(qū)節(jié)點的讀密鑰,從而滿足BLP模型中“禁止上讀”的特性;由于用戶沒有后繼節(jié)點用于生成寫密鑰的私有信息,無法計算出其寫密鑰,使得用戶不能加密生成一個低安全級的合法密文,從而滿足BLP模型中“禁止下寫”的特性.

4.2 規(guī)則描述

在CloudMLS方案中,數(shù)據(jù)擁有者與權(quán)威中心交互獲取系統(tǒng)公開參數(shù),確定素數(shù)p階循環(huán)群G1、GT,并為每個安全級SCi選定用于計算讀寫密鑰(WriteKi,ReadKi)的參數(shù)ki,i,私有信息{(Yi,Zi),gi},其中Yi、Zi是兩個二維向量,gi∈G1,為了處理不同安全級之間的支配關(guān)系,使得公開矩陣M可以表示訪問策略P,針對各安全級的私有信息,我們利用線性幾何中向量的正交性來確定如下3條規(guī)則:

根據(jù)上述規(guī)則,我們給出用于安全級間讀密鑰派生的中間參數(shù)ki,j的定義:

(1)

矩陣K由所有ki,j組成.

用戶u∈SCi根據(jù)其私有信息和公開信息可計算得到密鑰對(WriteKi,ReadKi)及滿足SCj?SCi的所有讀密鑰ReadKj,但無法得到其他安全級的寫密鑰,以此對用戶的寫權(quán)限加以限制,實現(xiàn)滿足BLP模型“禁止上讀”、“禁止下寫”特性的安全數(shù)據(jù)共享,保護系統(tǒng)數(shù)據(jù)機密性.

4.3 具體構(gòu)造

4.3.1SystemSetup(1δ,G)→(spi,pp)

根據(jù)安全參數(shù)δ和數(shù)據(jù)擁有者確定的多級安全訪問結(jié)構(gòu)圖G,數(shù)據(jù)擁有者按照如下方式進行系統(tǒng)建立過程:

2)由私有信息Zi得到一個間接矩陣X:對于i=1,2,xi,1=zi,1、xi,2=zi,2,對于i≥3,xi,j=0;對于i=3,…,n,xi,1=zi,1、xi,i=zi,2,而對于j≠1且i≠j,xi,j=0,所以矩陣

計算間接矩陣X是否可逆,即|X|≠0是否成立.由于稀疏矩陣X的行列式可由|X|=(x1,1x2,2-x1,2x2,1)x3,3…xn,n求得,所以只須滿足條件x1,1x2,2≠x1,2x2,1且xi.i≠0(i≥3) 即可.

3)數(shù)據(jù)擁有者為每個安全級SCi∈SC選取一個密鑰生成參數(shù)ki,i,并按照如下方式并計算公開矩陣M:

Step 2.根據(jù)上述規(guī)則1、2、3可得矩陣間關(guān)系X×M=K,由于X是可逆矩陣,于是可計算得到公開矩陣M=X-1×K.

4.3.2KeyGen(pp,spi)→(WriteKi,ReadKi)

4.3.3Enc(WriteKi,m,pp)→(c1,c2)

4.3.4KeyDer(SCi,SCj,pp)→ReadKi

密鑰派生過程,如果安全級為SCj的用戶想要獲取安全級為SCi用戶的共享數(shù)據(jù),首先計算其讀密鑰,當(dāng)且僅當(dāng)SCi?SCj時,SCj可以通過其私有向量和公開信息獲得SCi的讀密鑰,從而解密其密文.具體過程如下:

Step 2.若kj,i=0,則表示不滿足關(guān)系SCi?SCj,即安全級SCi、SCj不可比較或者SCj比SCi安全級低,那么SCj無法計算出ki,i;否則,計算ki,i=yj,1kj,j+yj,2kj,i,ReadKi=gis·ki,i.

4.3.5Dec(ReadKi,(c1,c2))→m

解密過程,高安全級用戶輸入讀密鑰ReadKi和密文(c1,c2),計算m=c2/e(ReadKi,c1).

4.4 訪問權(quán)限動態(tài)管理

4.4.1 增加一個新安全級

在當(dāng)前訪問策略中,對安全級SCi,SCj∈SC若有SCi?SCj,現(xiàn)欲插入一個新安全級SCt,使得存在關(guān)系SCi?SCt?SCj.

首先,數(shù)據(jù)擁有者隨機選擇私有信息((Yt,Zt),gt)及密鑰生成參數(shù)kt,t,并通過安全信道發(fā)送給其中的用戶.為保證方案的后向安全性,數(shù)據(jù)擁有者為所有比SCi低的安全級選擇新的密鑰生成參數(shù)ki,i,并按照系統(tǒng)建立過程計算公開矩陣M,涉及到的用戶根據(jù)新的公開矩陣M和私有信息計算新的讀寫密鑰對,重加密并更新其云端的密文數(shù)據(jù).

4.4.2 刪除一個安全級

當(dāng)從當(dāng)前多級安全訪問結(jié)構(gòu)中刪除一個安全級,記為SCk,為保證方案的前向安全性,數(shù)據(jù)擁有者需要更新所有訪問權(quán)限比SCk低的安全級的密鑰生成參數(shù),并根據(jù)新的多級安全訪問策略圖計算公開矩陣M,涉及到的相關(guān)用戶計算新的讀寫密鑰對.

4.4.3 多級安全訪問結(jié)構(gòu)中增加一條關(guān)系

若原多級安全訪問結(jié)構(gòu)中SCi和SCj不可比較,現(xiàn)在訪問圖G=(V,E)中增加一條Vj到Vi的路徑,即增加了關(guān)系SCi?SCj,那么數(shù)據(jù)擁有者需要更新所有訪問權(quán)限比SCi低和比SCj高的安全級的密鑰生成參數(shù),計算新的公開矩陣M,相關(guān)用戶計算新的密鑰對,更新其云端密文數(shù)據(jù).

4.4.4 多級安全訪問結(jié)構(gòu)中刪除一條關(guān)系

若安全級SCi、SCj對應(yīng)的訪問圖G=(V,E)中的節(jié)點Vi、Vj存在Vj到Vi的路徑,現(xiàn)欲刪除關(guān)系SCi?SCj.那么需要更新安全級SCi及所有SCk的密鑰生成參數(shù),其中SCk對應(yīng)的節(jié)點Vk滿足Vk∈Des(Vi,G)且Vk?Des(Vj,G),然后數(shù)據(jù)擁有者計算新的公開矩陣M,相關(guān)用戶計算新的讀寫密鑰對.

5 安全性及性能分析

5.1 BLP模型遵循性

本文提出的方案遵循BLP模型的簡單安全性和*-特性.根據(jù)4.2規(guī)則描述中的規(guī)則1、2、3對多級安全訪問策略P構(gòu)建出公開矩陣M,使得安全級為SCi用戶只可以利用自己的私有向量Zi和公開矩陣M計算出密鑰生成參數(shù)ki,i,再利用公開參數(shù)計算出其讀密鑰,利用私有信息gi計算出寫密鑰;用戶根據(jù)其私有向量Yi和計算出的中間參數(shù)ki,j可計算出低安全級SCj的密鑰生成參數(shù)kj,j(對于不滿足SCj?SCi的安全級SCj,會得到無效的間接參數(shù)ki,j=0,不能計算出正確的kj,j),由于沒有私有信息gj,只能計算出SCj的讀密鑰,而不能計算出其寫密鑰,因此滿足“不能上讀”、“不能下寫”的原則,遵循BLP模型的簡單安全特性和*-特性.

5.2 抵抗合謀攻擊

假設(shè)SCm的安全級高于SCm,1,…,SCm,h,h是一個正整數(shù).如果這些低安全級的用戶合謀,他們只能得到如下方程:

kmi,mi=km,mwm,1+km,miwm,2

=km,mwm,1+(xm,1ami,1+xm,mami,mi)wm,2

(2)

km,m=xm,1am,1+xm,mam,m

(3)

根據(jù)方程(2),合謀的惡意用戶可得到:

(4)

其中,km,m、xm,1、xm,m、wm,1和wm,2對合謀的惡意用戶是未知的.

令u1=km,mwm,1,u2=xm,1wm,2,u3=xm,mwm,2,則當(dāng)h≥3時,可由方程組(4)計算得到u1、u2及u3的值,那么有:

(5)

由方程組(5)不能求得唯一的密鑰生成參數(shù)km,m,所以即使低安全級的用戶合謀也不能求得高安全級解密的讀密鑰,并且由于沒有其他安全級的私有信息gi,也不能得到其用于加密的寫密鑰,所以本文提出的密鑰分配方案能夠抵抗合謀攻擊.

5.3 數(shù)據(jù)機密性

為保證本方案數(shù)據(jù)機密性,證明對于某些非法用戶,SCi*級的消息{m0,m1}中某一個加密的密文c*,判斷出其到底是來自哪一個明文消息的概率Pr≤1/2+negl,其中negl是一個可忽略函數(shù),{m0,m1}由非法用戶選定.非法用戶可以是非注冊用戶、已撤銷用戶或者注冊用戶,但是對于他們的安全級SCj,均滿足SCi*?SCj.

定理1.如果DBDH問題是困難的,那么本文提出方案CloudHACS在選擇明文攻擊情況下是消息不可區(qū)分安全的(Message Indistinguishability,MI).

證明:如果概率多項式時間敵手A能以不可忽略的優(yōu)勢ε打破CloudHACS,那么可以利用敵手A構(gòu)建一個算法Β來解決DBDH問題.算法Β輸入五元組,T=e(g,g)abc或者T=R(R代表GT中的一個隨機元素).

因為私有向量(Yi,Zi)只用來計算當(dāng)前及更低安全級的密鑰生成參數(shù),并只進行了代數(shù)運算,所以在模擬過程中,直接簡化為對密鑰生成參數(shù)ki,i的查詢.算法B和敵手A的交互過程如下:

Setup:算法B輸入DBDH元組,建立系統(tǒng),確立多級安全訪問策略P,將公共信息提供給敵手A,其中a作為系統(tǒng)的主私鑰,敵手A選擇一目標(biāo)安全級SCi*;

B返回相應(yīng)的k和gi,并記錄(SCi,gi,k,z,α);敵手A可按照如下方式得到讀寫密鑰:ReadKi=((ga)z)k,WriteKi=(gi,(ga)k).其中SCi*?SCi;

Challenge Phase:敵手A選擇兩個等長的消息{m0,m1}發(fā)送給B,B計算gi*并得到元組(SCi*,gi*,k,z,α),B隨機選擇mt,t∈{0,1},返回c*=(gb,mt·Tzk)給敵手A;

Query Phase II:同查詢階段I;

Guess Phase:敵手A猜測密文c*對應(yīng)的明文消息mt′,輸出t′∈{0,1}.B驗證下列條件是否成立:

i.安全級SCi*相應(yīng)的α值為0;

ii.對于所有滿足條件的A所查詢SCi相應(yīng)的αi=1.

如果B不滿足任一條件,那么中止模擬過程;否則,若t′=t,則B輸出1,其他情況則輸出0.

如果B沒有中止游戲,那么敵手A所得到的信息和真實的上述方案的攻擊的情況一致.假設(shè)A在問詢階段I、II共做了q次查詢,那么B沒有中止游戲的概率為γq(1-γ).算法B輸入DBDH元組,如果T=e(g,g)abc,那么挑戰(zhàn)密文c*是安全級SCi*的消息mt正確形式加密的密文,敵手贏得游戲的優(yōu)勢為ε;如果T=R(R為GT中的隨機元素),敵手贏得游戲的優(yōu)勢為0.所以,B有γq(1-γ)ε/2的優(yōu)勢解決DBDH問題.由于ε是不可忽略的,故而B以一個不可忽略的優(yōu)勢解決DBDH問題,這與DBDH假設(shè)矛盾,所以本方案是IND-CPA安全的.

表1 相關(guān)方案安全性對比
Table 1 Comparison for security

方案BLP模型遵循性安全性安全假設(shè)文獻[13]×KIPRF文獻[14]×KIPRF文獻[19]√MIUni-directional PRE本文方案√MICPA-Secure+DBDH

本文方案和相關(guān)方案的安全性對比如表1所示,文獻[13,14]均為密鑰不可區(qū)分安全的(Key Indistinguishability,KI),本文提出的方案CloudMLS遵循BLP模型的同時是消息不可區(qū)分安全的.

5.4 性能分析

5.4.1 存儲開銷分析

安全級為SCi的用戶需存儲兩對私有向量Yi=(yi,1,yi,2),Zi=(zi,1,zi,2)和私有參數(shù)gi∈G1,記群中元素大小為L,安全級的總數(shù)目為n,則每個用戶需要大小為5L的存儲開銷.數(shù)據(jù)擁有者需要存儲所有安全級的私有信息,需要5nL的存儲開銷.

5.4.2 計算開銷分析

記m為平均每個安全級對應(yīng)的低安全級數(shù)目,tF為函數(shù)F的計算開銷,add、mul、inv和exp分別是群上的加法、乘法、求逆和模指數(shù)運算.

1)系統(tǒng)建立過程

數(shù)據(jù)擁有者計算中間參數(shù)ki,j需要2mn次乘法運算、mn次加法運算和n次求逆運算,計算公開矩陣M需要不超過3n2+2n+6次乘法運算、不超過3n2+2n+2次加法運算和n次求逆運算,所以系統(tǒng)建立過程數(shù)據(jù)擁有者的總計算開銷為(3n2+(2m+2)n+6)tmul+(3n2+(m+2)n+2)tadd+2ntinv.

2)密鑰派生過程

用戶計算自身安全級的讀寫密鑰共需進行2次乘法運算、1次加法運算和2次模指數(shù)運算,這一過程的計算開銷為2tmul+tadd+2texp;用戶計算某個低安全級的讀密鑰需進行4次乘法運算、2次加法運算和1次模指數(shù)運算,用戶密鑰派生總的計算開銷為(4m+2)tmul+(2m+1)tadd+(m+1)texp.

3)加解密過程

加密過程需2次模指數(shù)運算,1次雙線性運算和1次群乘法,一次加密計算開銷為2texp+te+tmul,解密過程需要1次雙線性運算、1次群乘法運算和一次群上求逆運算,一次解密的計算開銷為te+tmul+tinv.

5.4.3 相關(guān)方案對比

本節(jié)中的使用符號含義如表2所示.本方案與文獻[13,14,19]的存儲和計算開銷的對比如表3所示,可看出本方案中因增加了對用戶寫權(quán)限的限定,用戶需存儲的私有信息增加,但是密鑰派生無須迭代的計算每一安全級的密鑰,并且所需的群上的乘法和加法運算是非常輕量級的,降低了計算開銷.

表2 符號含義
Table 2 Meaning of symbols

變 量含 義PRF偽隨機函數(shù)SE-ENC對稱加密運算SE-DEC對稱解密運算Ψ.ReEnc代理重加密運算Ψ.Dec代理重加密中的解密運算Ψ.ReKeyGen重加密密鑰生成運算#c(u)用戶u可解密的密文數(shù)LVi安全級SCi和比其更低安全級的集合LEi與LVi中所有節(jié)點相關(guān)聯(lián)的邊miSCi安全級中的用戶數(shù)量

表3 相關(guān)方案存儲開銷和計算開銷對比
Table 3 Comparison of storage and computation overhead

方案用戶存儲開銷密鑰派生計算開銷文獻[13]L(d+1)tPRF文獻[14]4L4tmul+2tadd文獻[19]L2d·tΨ.ReEnc+2tΨ.Dec+tSE.DEC本文方案5L 4tmul+2tadd+texp

表4 用戶撤銷時的計算開銷對比
Table 4 Computation overhead comparison of user revocation

方案密鑰更新密文數(shù)據(jù)更新文獻[14]O(|LVi|)#c(u)·tSE-ENC文獻[19]O(|LVi|+|LEi|+mi)|Vi|·tΨ.ReKeyGen+2·#c(u)·tΨ.ReEnc本文方案O(|LVi|)#c(u)·(2texp+te+tmul)

當(dāng)撤銷SCi安全級的用戶u時的密鑰重分配的計算開銷和密文數(shù)據(jù)更新開銷對比如表4所示,其中文獻[13]不支持用戶訪問權(quán)限動態(tài)變更,通過與文獻[14,19]對比可以看出,我們的CloudMLS具有較高的密鑰更新和密文數(shù)據(jù)更新效率.

6 結(jié)束語

本文針對云存儲環(huán)境中多級安全訪問控制問題提出了一種數(shù)據(jù)訪問控制方案CloudMLS,該方案遵循BLP多級安全模型的“禁止上讀”、“禁止下寫”兩大特性.利用線性幾何中的向量內(nèi)積來處理安全級間的關(guān)系,可以直接計算出低安全級的讀密鑰,無須迭代計算極大降低了計算開銷,并通過將讀寫密鑰分開的方式實現(xiàn)用戶讀寫權(quán)限分別授權(quán),然后針對該CloudMLS給出了用戶權(quán)限動態(tài)管理算法,最后證明了方案在CPA模型下是消息不可區(qū)分安全的.

猜你喜歡
擁有者密文密鑰
一種支持動態(tài)更新的可排名密文搜索方案
幻中邂逅之金色密鑰
幻中邂逅之金色密鑰
基于模糊數(shù)學(xué)的通信網(wǎng)絡(luò)密文信息差錯恢復(fù)
嵌入式異構(gòu)物聯(lián)網(wǎng)密文數(shù)據(jù)動態(tài)捕獲方法
一種新的密文策略的屬性基加密方案研究
Android密鑰庫簡析
一種新的動態(tài)批密鑰更新算法