《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 一種基于CP-ABE多屬性授權(quán)中心的隱私保護(hù)方案
NI-LabVIEW 2025
一種基于CP-ABE多屬性授權(quán)中心的隱私保護(hù)方案
2016年微型機(jī)與應(yīng)用第14期
譚躍生, 婁燕賀
(內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,內(nèi)蒙古 包頭 014010)
摘要: 針對(duì)云計(jì)算環(huán)境下用戶隱私保護(hù)的問(wèn)題,提出一種基于CPABE多屬性授權(quán)中心隱私保護(hù)方案(PPMACPABE)。方案中采用多個(gè)屬性授權(quán)中心代替單一中央授權(quán)服務(wù)器,避免了由單一中央授權(quán)服務(wù)器引起的安全性問(wèn)題。方案設(shè)計(jì)了一種交互式的密鑰生成算法,利用承諾方案和零知識(shí)證明的方法,實(shí)現(xiàn)了用戶密鑰獲取過(guò)程中用戶的屬性以及全局身份標(biāo)識(shí)不被泄露,安全性分析表明PPMACPABE方案能夠保護(hù)用戶隱私,并給出了方案的正確性證明。仿真實(shí)驗(yàn)結(jié)果表明,與DCPABE方案相比,在保護(hù)用戶隱私信息的前提下,本方案有較高的效率。
Abstract:
Key words :

  譚躍生, 婁燕賀

  (內(nèi)蒙古科技大學(xué) 信息工程學(xué)院,內(nèi)蒙古 包頭 014010)

  摘要:針對(duì)云計(jì)算環(huán)境下用戶隱私保護(hù)的問(wèn)題,提出一種基于CP-ABE多屬性授權(quán)中心隱私保護(hù)方案(PPMACP-ABE)。方案中采用多個(gè)屬性授權(quán)中心代替單一中央授權(quán)服務(wù)器,避免了由單一中央授權(quán)服務(wù)器引起的安全性問(wèn)題。方案設(shè)計(jì)了一種交互式的密鑰生成算法,利用承諾方案和零知識(shí)證明的方法,實(shí)現(xiàn)了用戶密鑰獲取過(guò)程中用戶的屬性以及全局身份標(biāo)識(shí)不被泄露,安全性分析表明PPMACP-ABE方案能夠保護(hù)用戶隱私,并給出了方案的正確性證明。仿真實(shí)驗(yàn)結(jié)果表明,與DCP-ABE方案相比,在保護(hù)用戶隱私信息的前提下,本方案有較高的效率。

  關(guān)鍵詞:CP-ABE;多授權(quán);隱私保護(hù);零知識(shí)證明;承諾方案;

0引言

  隨著云計(jì)算[1]的發(fā)展,存儲(chǔ)在云中的數(shù)據(jù)是否安全是關(guān)系到云存儲(chǔ)能否發(fā)展的關(guān)鍵問(wèn)題。加密的方法可以有效保證存儲(chǔ)在云中的數(shù)據(jù)安全。本文利用基于屬性加密的密文策略(CP-ABE)[2]的加密算法保護(hù)云中的數(shù)據(jù)。CP-ABE方案是更加靈活有效的加密算法,因?yàn)榧用苷呖梢栽诩用軘?shù)據(jù)時(shí)為數(shù)據(jù)制定相應(yīng)的訪問(wèn)結(jié)構(gòu)。

  但是在CP-ABE方案中,中央授權(quán)(CA)服務(wù)器的安全性成為了整個(gè)系統(tǒng)的安全瓶頸,因?yàn)橐坏┲醒胧跈?quán)服務(wù)器遭受攻擊,整個(gè)系統(tǒng)將會(huì)癱瘓。因此,參考文獻(xiàn)[3]最后遺留了一個(gè)公開(kāi)問(wèn)題,即如何構(gòu)建一個(gè)ABE方案,其中私鑰能由多個(gè)授權(quán)方生成,這樣用戶可以減少對(duì)中央授權(quán)服務(wù)器的信任。之后CHASE M[4]給出了一個(gè)肯定的回答。但是在CHASE M的方案中,如何抵抗用戶合謀攻擊是一個(gè)難題,為了克服這個(gè)難題,引出了全局身份標(biāo)識(shí)(Global Identity,GID)的概念,通過(guò)每個(gè)用戶的GID與對(duì)應(yīng)的私鑰進(jìn)行綁定抵抗合謀攻擊。但是本方案需要一個(gè)中央授權(quán)服務(wù)器。

  HUR J等人[5]于2013年提出將密鑰生成中心進(jìn)行拆分,多個(gè)機(jī)構(gòu)之間進(jìn)行交互式計(jì)算,共同生成用戶私鑰。其優(yōu)點(diǎn)是,任一密鑰生成機(jī)構(gòu)無(wú)法獲得全部密鑰,不能解密密文,以消除不可信第三方密鑰生成機(jī)構(gòu)問(wèn)題。但其缺點(diǎn)是,增加了用戶端的計(jì)算量,降低了執(zhí)行效率。

  Lin Hhuan等人[6]通過(guò)利用分布式密鑰產(chǎn)生協(xié)議[7](Distributed Key Generation protocol,DKG )和聯(lián)合零秘密共享協(xié)議[8](Joint Zero Secret Sharing protocol ,JZSS)提出了一種MAABE方案,其中不需要中央授權(quán)服務(wù)器。為了進(jìn)行系統(tǒng)初始化,多個(gè)授權(quán)服務(wù)器必須協(xié)同工作,并各自運(yùn)行2次DKG協(xié)議和k次JZSS協(xié)議,其中k是每個(gè)授權(quán)服務(wù)器所對(duì)應(yīng)多項(xiàng)式的次數(shù)。每個(gè)授權(quán)服務(wù)器必須要維護(hù)k+2個(gè)密鑰。這個(gè)方案只有當(dāng)合謀攻擊用戶的數(shù)量少于k時(shí)才是安全的,并且k的值在系統(tǒng)初始化的時(shí)候就確定了。此方案授權(quán)方計(jì)算量過(guò)大,而且系統(tǒng)的性能會(huì)隨著屬性數(shù)量的增長(zhǎng)而不斷退化。

  Liu Zhen等人[9]提出了一種在標(biāo)準(zhǔn)化模型下完全安全的多授權(quán)中心CPABE方案,此方案存在多個(gè)中央授權(quán)服務(wù)器和多個(gè)屬性授權(quán)服務(wù)器。中央授權(quán)服務(wù)器負(fù)責(zé)給用戶發(fā)行與身份相關(guān)的密鑰,屬性授權(quán)服務(wù)器為用戶發(fā)行屬性相關(guān)的密鑰,在獲得屬性相關(guān)密鑰之前,用戶必須先從中央授權(quán)服務(wù)器獲得私鑰。但這個(gè)方案是在復(fù)合順序線性群組中設(shè)計(jì)的。

  LEKWO A和WATERS B[10]提出了一種新的去中心化的CP-ABE方案(DCP-ABE),改變了之前需要多個(gè)授權(quán)服務(wù)器合作才能進(jìn)行系統(tǒng)初始化的情況。此方案中,多個(gè)授權(quán)服務(wù)器在系統(tǒng)初始化和密鑰產(chǎn)生階段不需要合作,并且也不需要中心授權(quán)服務(wù)器,任何一個(gè)授權(quán)服務(wù)器都可以自由加入或離開(kāi)本系統(tǒng),而且不需要重新進(jìn)行系統(tǒng)初始化。這個(gè)系統(tǒng)是在復(fù)合順序線性群組上構(gòu)建的,并在隨機(jī)預(yù)言模型中實(shí)現(xiàn)了安全性。但是本方案中的授權(quán)服務(wù)器能夠通過(guò)追蹤用戶的GID來(lái)收集用戶屬性。

  上述多個(gè)方案并沒(méi)能有效地保護(hù)用戶隱私,因此,基于上述方案,本文提出了PPMAC-ABE方案,該方案基于DCP-ABE模型,設(shè)計(jì)交互式密鑰生成算法IAKeyGen,在用戶向多個(gè)AA進(jìn)行密鑰獲取時(shí),有效保護(hù)用戶的屬性以及GID,進(jìn)而實(shí)現(xiàn)了用戶的隱私保護(hù)。

1預(yù)備知識(shí)

  定義1(雙線性映射) 若設(shè)G、Gr是兩個(gè)階為素?cái)?shù)q的群,g為G的一個(gè)生成元,存在映射e:G×G→Gr。當(dāng)e為雙線性映射時(shí),其有如下性質(zhì):

  (1)雙線性性,即:

  u,v∈G,a,b∈Z,e(ga,gb)=e(g,g)ab

  (2)非退化性:e(g,g)≠1x。其中1x是群Gr的標(biāo)識(shí)。

  (3)可計(jì)算性:對(duì)任意u,v∈G,存在有效的算法計(jì)算出e(u,v)。

  定義2(訪問(wèn)結(jié)構(gòu))設(shè)P={P1,P2,…,Pn}是所有屬性的集合,訪問(wèn)結(jié)構(gòu)A是{P1,P2,…,Pn}的非空子集,即A∈2{P1,P2,…,Pn}/{Φ}。則A作為一個(gè)判斷條件:在A中的集合為授權(quán)集合,否則,為非授權(quán)結(jié)合。

  定義3(線性秘密共享)設(shè)p為一有限集合,Zp為素?cái)?shù)域,一個(gè)基于集合P的秘密共享方案Π如果滿足下列屬性,則稱作是線性的:

 ?。?)一方共享的值構(gòu)成基于Zp上的一個(gè)向量。

 ?。?)對(duì)于Π,存在一個(gè)l行n列的矩陣Μ稱作共享生成矩陣。對(duì)于x=1,2,…,l第i行用ρ(i)表示。其中ρ:{1,2,…,l}→Zp。當(dāng)一個(gè)向量v=(s,v2,…,vn),其中s∈Zp是要共享的秘密值,v2,…,vn∈Zp為隨機(jī)值,那么Μv即為將s共享為l份共享值所組成的向量。ρ(i)=Μiv表示第i個(gè)實(shí)體得到的共享值,Μi表示Μ的第i行。

2PPMACP-ABE方案

  本方案一共包括四類實(shí)體:數(shù)據(jù)擁有(Data Owner,DO)、云服務(wù)商(Cloud Server,CS)、多個(gè)屬性授權(quán)方(Attribute Authorities,AA )和用戶User,系統(tǒng)模型圖如圖1所示?! ?/p>

001.jpg

  DO首先為將要上傳的明文M制定相應(yīng)的訪問(wèn)策略T,并從多個(gè)屬性授權(quán)服務(wù)器獲取多個(gè)公鑰PKi,利用T和PKi對(duì)明文M進(jìn)行加密得到密文CT,并將CT上傳到CS。當(dāng)用戶從CS下載到CT并且想要對(duì)密文CT進(jìn)行解密時(shí),用戶會(huì)向多個(gè)AA提交自己的屬性集得到相應(yīng)的私鑰SKi,當(dāng)SKi中的屬性集合滿足了密文CT中的訪問(wèn)策略T,并能夠?qū)⒚孛苤党晒謴?fù)時(shí),解密成功。

  本方案由下列算法構(gòu)成。

  2.1系統(tǒng)初始化算法Setup

  初始化算法分為系統(tǒng)初始化Global Setup和屬性授權(quán)服務(wù)器初始化Authority Setup:

  Global Setup(1k)→params。全局初始化算法:設(shè)本方案中共有N個(gè)屬性授權(quán)服務(wù)器{A1,A2,…,An},每一個(gè)屬性授權(quán)服務(wù)器Ai監(jiān)管一組屬性Bi={bi,1,bi,2,…,bi,n},其中一個(gè)屬性值滿足:

  bi,j∈Zp(i=1,2,…,N,j=1,2,…,qi)。

  每個(gè)用戶擁有唯一的全局身份標(biāo)識(shí)GIDU并有一組屬性U。本算法輸入安全參數(shù)1k,輸出線性組(e,p,G,Gr),則公共參數(shù)為:

  params=(g,h,f,e,p,G,Gr)

  其中g(shù)、h、f為G的生成元,Authority Setup(1k) →(SKi,PKi)。授權(quán)服務(wù)器初始化算法每個(gè)屬性授權(quán)服務(wù)器生成各自的密鑰對(duì)(SKi,PKi)。每個(gè)屬性授權(quán)服務(wù)器Ai任選αi,βi,γi,xi∈Zp,計(jì)算:

  Hi=e(g,g)αi,Ai=gxi,Bi=gβi,Γ1=gγi,Γ2=hγi(i∈1,2,…,N)

  對(duì)于Ai中的每一個(gè)屬性bi,j,A任選zi,j∈Zp并計(jì)算:

  Zi,j=gzi,j,Ti,j=hzi,j/gri+ai,j(1)

  然后Ai發(fā)表公鑰:

  PKi={Hi,Ai,Bi,( Γ1,Γ2),(Ti,j,Zi,j)bi,j∈B}(2)

  同時(shí)保留主密鑰:

  SKi={αi,βi , γi, ai,(zi,j)bi,j∈B}(3)

  2.2密文生成算法Encrypt

  Encrypt(params,M,(Μi, ρi,PKi)i∈I) →CT,I是一組屬性授權(quán)服務(wù)器的集合,并且I中的屬性授權(quán)服務(wù)器所監(jiān)管的屬性會(huì)用來(lái)加密明文M。對(duì)于j∈I,加密算法首先選擇訪問(wèn)結(jié)構(gòu)(Μj,ρi),v=(sj,vj,2,…,vj,nj),其中sjvj,2,…,vj,nj∈Zp,Μj是一個(gè)lj×nj矩陣,計(jì)算λi,j=Μjivj,其中Μji是Μj的第i行,最后,任選rj,1,rj,2,…rj,lj∈Zp,計(jì)算:

  ((Cj,1=gxjλj,1Z-rj,1ρj(1),Dj,1=grj,1),…,

  (Cj,lj=gxjλj,ljZ-rj,ljρj(lj),Dj,lj=grj,lj))j∈I(4)

  得到密文:

  CT={C0,(Xj,Yj,Ej(Cj,1,Dj,1),…,(Cj,lj,Dj,lj))j∈I}(5)

  隨后DO將產(chǎn)生的密文CT上傳到云服務(wù)器CS上。

  2.3交互式密鑰生成算法IAKeyGen

  IAKeyGen中使用的承諾方案[11]由下列幾個(gè)算法構(gòu)成:

  (1)Setup(1k) →params:這個(gè)算法輸入安全參數(shù)1k,輸出公共參數(shù)params。

  (2)Commit(params,m) →(com,decom)。本算法輸入公共參數(shù)params和數(shù)據(jù)m,輸出承諾com和解承諾decom。decom能夠從com中解出m。

  (3)Decommit(params,m,com,decom) →{0,1}。本算法輸入公共參數(shù)params,數(shù)據(jù)m,承諾com和解承諾decom。如果decom能夠從com中解出m,輸出1,否則輸出0。

  一個(gè)承諾方案必須滿足兩種屬性:隱藏性和綁定性。

  隱藏性:要求用戶在解密出數(shù)據(jù)m之前,m一直都是隱藏的。

  綁定性:要求只有decom才能從com中解密出數(shù)據(jù)m。

  IAKeyGen算法:當(dāng)用戶從CS下載到CT并且要對(duì)CT進(jìn)行解密時(shí),用戶與多個(gè)屬性授權(quán)中心執(zhí)行算法:

  IAKeyGen(U(params,GIDU,U~,PKi,decomi,6.jpg

  首先用戶利用授權(quán)標(biāo)簽Ti,j向每一個(gè)參與加密的AA進(jìn)行授權(quán)認(rèn)證。

  7.png

  其中γi是A~i的密鑰中的一部分,Ti,j可以在不泄露屬性bi,j的前提下,使AA相信此用戶擁有屬性bi,j。然后用戶U執(zhí)行承諾方案,對(duì)GIDU和屬性bi,j進(jìn)行承諾,即:

  Commit(params,bi,j)→(comi,j,decomi,j)bi,j∈A~i∩U~

  Commit(params,GIDU)→(comi,decomi)(8)

  將(comi,(comi,j)bi,j∈U~∩A~i)發(fā)送給AA,通過(guò)零知識(shí)證明向AA申請(qǐng)私鑰,此時(shí):

  用戶U輸入:(params,GIDU,U~,PKi,decomi,(decomi,j)bi,j∈A~i∩U~)

  屬性授權(quán)服務(wù)器A~i輸入:(params,SKi,PKi,comi,(comi,j)ai,j∈A~i∩U~)

  當(dāng)解承諾:

  Decommit(params,GIDU,comi,decomi)=1

  Decommit(params,ai,j,comi,j,decomi,j)=1(9)

  同時(shí)成立時(shí),A~i任選(cu,eu),U任選(d1,k2),雙方進(jìn)行安全雙方計(jì)算[12]得到:wU,i=eud1,tU,i=cu/k2,A~i利用得到的參數(shù),計(jì)算:

  Ki=gαigxiwU,if tU,if βi+μtU,i,Pi=gwU,i,Li=gtU,i,L′i=htU,i,

  Ri=g1tU,i,R′i=h1tU,i,(Fx=ZwU,ix)ax∈A~i∩U~(10)

  得到私鑰:

  SKiU={Ki,Pi,Li,L′i,Ri,R′i,(Fx)ax∈U~∩A~}(11)

  并發(fā)送給用戶。否則,算法終止。

  2.4解密算法Decrypt

  合法用戶對(duì)CT進(jìn)行解密:

  12.png

3方案安全性分析

  通過(guò)以下游戲來(lái)定義本方案的安全模型,該模型是在挑戰(zhàn)者和敵手Α之間進(jìn)行的。初始化階段:敵手Α提交一組惡意屬性授權(quán)方的列表B={Bi}i∈I和一組訪問(wèn)結(jié)構(gòu)A={Μμi,ρμi}i∈I*,其中I∈{1,2,…,N},I*∈{1,2,…,N},應(yīng)該至少存在一個(gè)訪問(wèn)結(jié)構(gòu)(Μ*,ρ*)∈A不能被B所監(jiān)管的屬性滿足,敵手Α也不能通過(guò)其獲取密鑰。

  Global Setup階段:挑戰(zhàn)者運(yùn)行本算法產(chǎn)生公共參數(shù)params,并發(fā)送給敵手Α。

  Authority Setup階段:存在以下兩種情況。

  (1)對(duì)于屬性授權(quán)服務(wù)器Bi∈B,挑戰(zhàn)者運(yùn)行本算法生成公私鑰對(duì)(PKi,SKi),并把它們發(fā)送給敵手Α。

  (2)對(duì)于屬性授權(quán)服務(wù)器BiB,挑戰(zhàn)者運(yùn)行此算法生成公私鑰對(duì)(PKi,SKi),并把PKi發(fā)送給敵手Α。

  階段1:敵手Α詢問(wèn)用戶U的GID和一組屬性集生成的密鑰,挑戰(zhàn)者運(yùn)行KeyGen算法生成SKU,并發(fā)送給敵手Α,本次詢問(wèn)具有自適應(yīng)性及可重復(fù)性。

  挑戰(zhàn)階段:敵手Α提交兩份相同長(zhǎng)度的信息M0和M1,挑戰(zhàn)者在{0,1}上隨機(jī)擲幣,得到b∈{0,1}。

  然后挑戰(zhàn)者運(yùn)行:

  Encrypt(params,Mb,(M*i,ρi,PKi)i∈I*)(13)

  產(chǎn)生被挑戰(zhàn)的密文CT*發(fā)送給敵手Α。

  第二階段:重復(fù)第一階段。

  猜測(cè)階段:Α輸出他的猜測(cè)值b′,若b′=b則敵手Α贏得游戲。

  如果不存在任何多項(xiàng)式時(shí)間內(nèi)的敵手能以不可忽略的優(yōu)勢(shì)猜測(cè)出挑戰(zhàn)者的隨機(jī)擲幣,那么本方案就是安全的。

4仿真實(shí)驗(yàn)

  實(shí)驗(yàn)環(huán)境:VMware Workstation 12.0.0虛擬機(jī)平臺(tái),部署多臺(tái)64位Cent操作系統(tǒng),4 GB內(nèi)存。實(shí)驗(yàn)中文件大小為100 KB,并利用CPABE工具包[13]實(shí)現(xiàn)仿真實(shí)驗(yàn),與文獻(xiàn)[10]中的DCP-ABE方案進(jìn)行對(duì)比。

002.jpg

  通過(guò)與DCP-ABE方案在參數(shù)生成時(shí)間、加密算法以及解密算法所耗費(fèi)的時(shí)間進(jìn)行了對(duì)比分析。圖2表示對(duì)于不同數(shù)量的AA,兩方案在參數(shù)生成階段所需要的時(shí)間。可見(jiàn)隨著AA數(shù)量的增加,本方案所消耗的時(shí)間更少。

003.jpg

004.jpg

  加密與解密的耗時(shí)對(duì)比如圖3和圖4所示,圖中表示當(dāng)密文中的屬性個(gè)數(shù)增加時(shí),用戶的加密解密時(shí)間也會(huì)增長(zhǎng),本方案在實(shí)現(xiàn)隱私保護(hù)的同時(shí),在時(shí)間上的消耗上與DCP-ABE方案相近。

  在密鑰產(chǎn)生階段,由于需要AA和用戶之間進(jìn)行交互式計(jì)算,因此與DCP-ABE相比,本方案在密鑰產(chǎn)生階段用戶一端增加了計(jì)算量,設(shè)密文中的屬性個(gè)數(shù)為n,則客戶端的計(jì)算量數(shù)量級(jí)為O(n),增加的計(jì)算量在可接受范圍之內(nèi)。

5結(jié)論

  CPABE方案在云存儲(chǔ)環(huán)境下有著重要的應(yīng)用,但系統(tǒng)中CA的安全性是整個(gè)系統(tǒng)的安全瓶頸。本文提出的PPMACP-ABE方案的目的在于保護(hù)云存儲(chǔ)環(huán)境中用戶的隱私。采用交互式算法,利用承諾方案和零知識(shí)證明等技術(shù)實(shí)現(xiàn)了在多個(gè)AA模型下對(duì)用戶的屬性和GID的保護(hù),在合理的計(jì)算量范圍內(nèi)提高了系統(tǒng)的安全性。適用于對(duì)安全性要求較高的云存儲(chǔ)系統(tǒng)。

參考文獻(xiàn)

 ?。?] MellP,Grance T.800145. The NIST definition of cloud computing[S]. Gaithersburg,USA: National Institute of Standards and Technology,2009.

  [2] BETHENCOURT S A,WATERS B.Ciphertextpolicy attributebased encryption[C]. IEEE Symposium on Security and Privacy (SP’07),Oakland,USA: IEEE Computer Society,2007: 321334.

  [3] SAHAI A, WATERS B. Fuzzy identity based encryption[J]. Lecture Notes in Computer Science,2005,3494:457473.

  [4] CHASE M. Multiauthority Attribute Based Encryption[J]. Lecture Notes in Computer Science,2007,4392:515534.

 ?。?] HUR J,KOO D,HWANG S O,et al. Removing escrow from ciphertext policy attributebased encryption[J]. Computers & Mathematics with Applications,2013,65(9):13101317.

  [6] Lin Huang, Cao Zhenfu, Liang Xiaohui,et al. Secure threshold multi authority attribute based encryption without a central authority[J]. Information Sciences An International Journal,2010,180(13):26182632.

 ?。?] 王小英. 基于橢圓曲線密碼的分布式密鑰生成協(xié)議與應(yīng)用[D]. 成都:西華大學(xué), 2007.

 ?。?] 孫昌霞,馬文平,陳和風(fēng). 可證明安全的中心授權(quán)的多授權(quán)屬性簽名[J].電子科技大學(xué)學(xué)報(bào),2012,41(4):552556.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。