王光波 劉海濤 王晨露 王鵬程 練 琳 惠文濤
1(31008部隊 北京 100036) 2(61660部隊 北京 100036) 3 (61046部隊 北京 100094) (691759571@qq.com)
隨著大數據時代的到來,出現越來越多的用戶數據,為了實現數據共享的同時降低成本,使用第三方的云存儲提供商(cloud storage provider, CSP)成為優先選擇.云存儲作為云計算的延伸與發展,其最大特點是存儲即服務,用戶可以在任何地點、任何時間,通過任何可連網設備方便地存取數據,因此得到了越來越廣泛的應用.但是,云存儲中用戶數據存儲在云端服務器上,脫離了用戶的實際控制,因此如何保證用戶隱私和數據安全的同時盡可能地提高服務質量已經成為安全云存儲的關鍵問題.
Sahai等人[1]在2005年提出了屬性加密(attribute-based encryption, ABE)的概念,將密文和密鑰與一系列的屬性相關聯,通過定義訪問結構,指定能夠解密數據的屬性集合,實現細粒度的訪問控制,屬性加密方案憑借其靈活的訪問結構在云存儲中得到了廣泛的應用.最初的ABE只能實現門限操作,策略表達不夠豐富.因此,有學者提出了基于密文策略[2-4](ciphertext-policy, CP)和密鑰策略[5-6](key-policy, KP)的ABE機制,實現豐富的屬性操作,因此能夠支持更加靈活的訪問策略.
然而,在云存儲中應用ABE也帶來了嚴重的安全挑戰.因為云存儲中存在大量的用戶,而在ABE的應用中不同的用戶可能共享相同的屬性.如果用戶的某個屬性被撤銷,如何保證在不影響其他用戶正常訪問的前提下,實現對該用戶相應訪問權限的撤銷,而且不能造成系統的過載與安全強度的降低,成為亟待解決的問題.本文主要針對這一問題進行研究.
近年來,在ABE的實際應用中,用戶撤銷的重要性引起了人們的重視,Ostrovsky等人[7]提出了一種實現用戶級撤銷的ABE方案.該方案通過對撤銷用戶的身份進行AND的“非”操作來實現撤銷,但是性能太差.隨后,Staddon等人[8]提出了一種實現用戶可撤銷的KP-ABE方案,但是該方案只能在滿足密文相關屬性正好為整個屬性集的一半時才能被使用,限制太高,不符合實際應用.Liang等人[9]提出了一種利用二叉樹結構來實現用戶撤銷的CP-ABE方案,由屬性授權生成更新密鑰實現撤銷,但是性能較差,而且增加了屬性授權的負擔.可以發現,這幾種方案都只能實現系統級的用戶撤銷,即一旦用戶的某個屬性被撤銷,就失去了系統中所有其他屬性對應的訪問權限.
在屬性級用戶撤銷方面,文獻[10-12]通過為每個屬性設置有效期來實現屬性撤銷,但是這種方式不能實現實時撤銷.Hur等人[13]提出了一種通過使用密鑰加密密鑰樹來實現屬性撤銷的CP-ABE方案,該方案能夠實現屬性級的用戶撤銷.若某個用戶的屬性被撤銷,CSP將生成新的密鑰加密密鑰,并重新加密所有的密文.但是,在該方案中,用戶需要額外存儲lb(nuser+1)長度的密鑰加密密鑰,其中nuser表示系統內的所有用戶,而且該方案僅僅實現了通用群模型下的安全性,通用群模型為啟發式的安全,不是可證明安全,很多通用群模型下安全的方案在實際應用中發現并不安全.隨后,Yang等人[14]提出了一個適用于云存儲環境的CP-ABE方案,該方案為每個屬性生成2個對應的公開參數.當需要進行屬性撤銷時,由屬性授權生成更新密鑰,并建立安全通道,將其發送給所有未被撤銷的用戶進行密鑰更新,同時發送給CSP進行密文更新.另外,屬性授權需要更新該屬性對應的2個公鑰參數,并將其發送給所有的用戶,因此加重了屬性授權的計算負載和通信負載.而且,對于每次撤銷,用戶必須保持在線進行密鑰更新和公鑰更新.
本文針對這一問題展開研究,提出了一個標準模型下可證明安全的支持屬性級用戶撤銷的CP-ABE方案,在該方案中,一旦用戶的某個屬性被撤銷,CSP將隨機選擇撤銷屬性對應的指數,對密文進行更新.然后,本文設計了一個廣播屬性加密方案對隨機指數進行加密,且廣播屬性加密方案使用與加密算法相同的訪問策略.因此,本方案可以實現只有屬性集合滿足密文訪問策略且未被撤銷的用戶才能進行密鑰更新.而且對于每次屬性撤銷,本文方案的用戶不需要進行實時的密鑰更新,只有用戶解密時才需要進行密鑰更新,進而解密密文.而且,用戶進行密鑰更新前,可以先確認其擁有的屬性集合是否滿足訪問策略,若不滿足,則不必進行密鑰更新.
在方案提出前,首先對本文將用到的相關技術進行簡單介紹,包括雙線性群、線性秘密分享方案及確定性q-parallel BDHE(q-parallel bilinear Diffie-Hellman exponent)假設.
定義1. 雙線性群.雙線性群提出后被廣泛應用到各種密碼系統中.令ψ是一個群生成算法,以安全參數λ為輸入,輸出(p,,T,e).其中p為素數,由安全參數λ決定,和T是2個階為p的循環群,e:×→T是一個滿足3個條件的映射:
1) 雙線性.?u,v∈,a,b∈p,e(ua,vb)=e(u,v)ab.
2) 非退化性.?g∈使得e(g,g)在T中的階是p.
3) 計算性.存在有效的對運算算法.
定義2. 線性秘密分享方案(linear secret-sharing scheme, LSSS)[15].參與者集合P上的一個秘密共享方案Ⅱ如果滿足2個條件,則稱為p上的線性秘密共享方案:
2) 對于每個秘密分享方案Ⅱ,存在一個生成矩陣A(l×n),對于矩陣A中的每一行i=1,2,…,l,映射ρ:{1,2,…,l}→P把A的每一行映射到參與者ρ(i).考慮向量v=(s,r2,r3,…,rn),s∈p是共享密鑰,r2,…,rn隨機選擇用來隱藏s,Av是l個秘密份額形成的向量,其中λi=(Av)i表示參與者ρ(i)所持有的秘密份額.
定義3.q-Parallel BDHE假設[16].令表示階為p的雙線性群,a,s,b1,b2,…,bq為p內隨機選擇的參數,g為的生成元.若攻擊者給定參數

其中,1≤k,j≤q,對攻擊者來說,要區別e(g,g)aq+1s與群T中的隨機元素R來說是困難的.算法B通過輸出z∈{0,1}來進行猜測,定義其擁有優勢ε來解決群下的q-Parallel BDHE假設,如果:
|Pr[B(y,T=e(g,g)aq+1s)=0]-
Pr[B(y,T=R)=0]|≥ε,
若無多項式時間算法以不可忽略的優勢來解決q-Parallel BDHE問題,那么我們就說假設q-Parallel BDHE在群,T中是成立的.
本節首先定義了一個標準語義安全的(semantic security)的選擇性安全模型,即選擇明文攻擊下的密文不可區分性(ciphertext indistinguishability under chosen plaintext attacks, IND-CPA)[17];接著對本文提出的屬性加密方案進行構造.
在該選擇性安全模型中,我們將使用Tu等人[18]提出的技術,其具體定義如下:
1) 選擇階段.攻擊者A選擇將要攻擊的訪問結構A*與屬性x*的撤銷列表RLx*.
2) 參數設置階段.挑戰者B運行初始化Setup算法,并把產生的系統公開密鑰參數PK發送給攻擊者A.


4) 挑戰階段.攻擊者A提交長度相等的2個消息M0與M1給挑戰者B.然后B隨機選擇β∈{0,1},并在訪問結構A*下加密Mβ,產生密文CT*,并將其發送給攻擊者A.

6) 猜測階段.攻擊者A輸出一個值β′∈{0,1}作為對β的猜測.如果β′=β,我們稱攻擊者A贏得了該游戲.攻擊者A在該游戲中的優勢定義為
AdvA=|Pr[β′=β]-12|.
若無多項式時間算法以不可忽略的優勢來攻破以上安全模型,那么我們就說本文提出可撤銷屬性加密方案是安全的.
本節對提出的可撤銷屬性加密方案進行了具體構造.
2.2.1 系統初始化
系統初始化階段,屬性授權生成系統的相關參數,包括公開密鑰與主密鑰.
初始化算法:Setup(λ,U,n)→(PK,MSK).
屬性授權以安全參數λ、屬性集合U與用戶數量n作為輸入,運行群生成函數ψ獲得系統參數(p,,T,e),其中p為素數,和T是p階循環群,e是一個雙線性映射.g∈為群的生成元.算法隨機選擇α,β∈p,并且設置gi=g(αi)∈,其中i=1,2,…,n,n+2,n+3,…,2n.接著算法隨機選擇γ∈p,設置v=gγ.對于每一個屬性i∈U,算法隨機選擇參數h1,h2,…,hU∈.系統公開密鑰參數PK設置為
PK=(p,g,g1,g2,…,gn,gn +2,gn +3,…,
g2n,v,e(g,g)β,h1,h2,…,hU),
主密鑰MSK設置為
MSK=(α,γ,gβ).
2.2.2 數據加密
當用戶想要將數據M放到CSP時,他首先定義訪問控制策略(A,ρ),其中A是一個l×n矩陣,映射函數ρ把A的每行Ai映射到一個屬性ρ(i).如文獻[19]要求ρ不會把2個不同的行映射到同一個屬性.然后運行算法Encrypt(PK,M,(A,ρ))對M進行加密.
加密算法:Encrypt(PK,M,(A,ρ))→CT.
算法以系統公開密鑰PK、明文消息M和訪問控制策略(A,ρ)為輸入,然后算法隨機選擇s,v2,v3,…,vn∈p,并定義向量v=(s,v2,v3,…,vn),對A的每一行Ai,計算內積λi=Ai·v,并隨機選擇ri∈p,算法輸出密文:

2.2.3 數據重加密
當用戶集RLx的屬性x被撤銷時,為了撤銷該屬性對應的訪問權限,但不影響該用戶集其他屬性以及其他用戶的正常訪問,使用廣播屬性加密對密文進行更新.
重加密算法:Re_encrypt(PK,CT,RLx)→CT″.

因此最后輸出密文為CT″=(CT′,Hdrx).
2.2.4 密鑰生成
為了實現外包解密、提高性能,生成密鑰:
密鑰生成算法:KeyGenout(PK,MSK,ID,S)→SK.
算法以系統公開密鑰PK、主密鑰MSK、用戶身份ID和用戶屬性集合S為輸入,然后算法隨機選擇參數r′∈p,并生成相應的用戶密鑰其中:
密鑰生成后,算法隨機選擇參數z∈*p,并計算:
K=(K′)=(gαIDγ)(gα r′),
L=(L′)=(gr′),
令r=r′z,得到密鑰為
2.2.5 部分解密
為了實現用戶的外包解密,用戶需要將外包密鑰TK發送給CSP,然后CSP代為進行部分解密如下:
部分解密算法:Transformout(TK,CT″)→TCT.


部分解密完成后,CSP將TCT=(C,E)發送給用戶進行最后解密.



2.2.6 解密
用戶得到部分解密密文后,進行最后解密.
解密算法:Decrypt(TCT,SK)→M.
算法以部分解密密文TCT與用戶密鑰SK為輸入.
1) 無屬性被撤銷,即TCT=(C,E).此時用戶計算:
CEz=M×e(g,g)β s(e(g,g)β sz)z=M.


若用戶屬性集合S滿足訪問策略(A,ρ),則CSP能在多項式時間計算{wi∈p}i∈I使成立,然后計算:

引理1. 若確定性的q-parallel BDHE假設在群與T中成立,那么沒有多項式時間的攻擊者能選擇性地攻破我們的方案,其中挑戰矩陣為A*(l*×n*),且l*,n*≤q.
證明. 假設攻擊者A能以不可忽略的優勢ε=AdvA選擇性地攻破我們的方案,而且假設其挑戰矩陣為A*(l*×n*),且l*,n*≤q.接下來,我們將構造仿真器B來攻破確定性的q-parallel BDHE假設.
1) 選擇階段.仿真器B以確定性的q-parallel BDHE挑戰y,T為輸入.并且攻擊者A給定訪問控制(A*,ρ*)與屬性x*的撤銷列表RLx*,其中A*有n*列.
2) 參數設置階段.仿真器B隨機選擇β′∈p,并通過計算e(g,g)β=e(g,g)β′×e(gα,gαq)來隱含地設置β=β′+αq+1.另外算法設置廣播集:
然后選擇u∈p,并設置
設置群元素h1,h2,…,hU,對于每個x(1≤x≤U),隨機選擇參數zx∈p.令X表示ρ*(i)=x的索引i的集合,因此hx被設置為

最后仿真者B發送給攻擊者A公開密鑰為
PK=(g,g1,g2,…,gq,gq+2,gq+3,…,
g2q,v,e(g,g)β,h1,h2,…,hU).
3) 查詢階段1. A向B進行密鑰生成查詢Okg與密文重加密查詢Oree.

仿真器B計算向量w=(w1,w2,…,wn*)∈np,

仿真器隨機選擇t∈p,并定義r為
r=t+w1αq+w2αq-1+…+wqα.
計算L′為


密鑰生成后,B隨機選擇參數z∈*p,并且設置外包密鑰:
私鑰SK=(z,TK),最后將TK發送給A.

仿真器隨機vx*∈*p,并輸出重加密密文:

因此,最終生成重加密密文為
CT″=(CT′,Hdrx*).

5) 查詢階段2. 如查詢階段1,A向B進行密鑰生成查詢Okg與密文重加密查詢Oree.
6) 猜測階段.攻擊者A最終輸出對μ的猜測μ′.若μ=μ′,A輸出0表示猜測T=e(g,g)αq+1s;否則輸出1表示猜測T為群T中的隨機元素.
若T=e(g,g)αq+1s,那么CT′為有效密文,因此得出:
而當T為群T中的隨機元素時,Mμ對于攻擊者來說是完全隨機的,得出:
因此,B能以不可忽略的優勢模擬確定性的q-parallel BDHE假設.
證畢.
現將本文提出的方案與已有3種撤銷方案進行對比,包括功能性、存儲成本、通信成本與計算性能.其中所使用的描述符如下:|C1|表示中數據元素的長度;|CT|表示T中數據元素的長度;|Cp|表示*p中數據元素的長度;CT表示密文中訪問結構的元素個數;|Ck|表示Hur方案中使用的密鑰KEK的長度;t表示與密文有關的屬性個數;k表示用戶密鑰中屬性的個數;nattr表示整個系統中屬性的總個數;nuser表示整個系統中用戶的總個數;nra表示系統中撤銷屬性的個數;nru表示撤銷用戶的個數;nmax表示Liang方案中密文訪問結構的最大列向量.
從表1可以看出,Liang方案實現了系統級的用戶撤銷,一旦用戶的某個屬性被撤銷,該用戶就失去了系統內所有其他合法屬性的訪問權限,這不符合實際的環境應用.而本文方案、Hur方案和Yang方案都實現了屬性級的用戶撤銷,即若用戶的某個屬性被撤銷,不會影響該用戶其他合法屬性的正常訪問.但是,Hur方案只實現了一般群模型下的可證明安全性,Yang方案則只實現了隨機預言模型下的可證明安全性,而很多一般群模型和隨機預言模型下可證明安全的方案在實際應用中被發現并不安全.相對于Hur方案和Yang方案,本文在標準模型下基于q-parallel BDHE假設對方案的安全性進行了完整的證明,實現了更高的安全性.

Table 1 Comparison of Function表1 功能對比
表2將本文方案與其他相關方案進行了存儲成本的對比.屬性授權AA的存儲成本主要來自于主密鑰,我們的方案與Hur方案使用了較少的主密鑰.而Liang方案中,主密鑰隨著用戶總數nuser呈線性增長,Yang方案則隨著屬性總數nattr呈線性增長.數據擁有者O的存儲成本主要來自于公鑰.Hur方案使用了最少的公鑰,Yang方案公鑰隨著屬性總數nattr呈線性增長,Liang方案公鑰隨著屬性總數nattr與訪問矩陣列向量CTt呈互為斜率的線性增長,而本文方案中,公鑰隨著屬性總數nattr與用戶總數nuser呈斜率為常數的線性增長.云存儲提供商CSP的存儲成本主要來自于密文與密文頭.因為Liang方案只實現了用戶撤銷,在該方案中,利用子集覆蓋進行密鑰更新,不需要對密文進行更新,但其密文長度隨著訪問結構CT呈線性增長.Yang方案通過屬性授權與用戶交互為用戶進行密鑰更新,并對被撤銷屬性對應的密文進行更新,因此,密文長度只與密文相關屬性個數t呈線性增長.Hur方案中,數據擁有者將密文發送給CSP后,CSP為每個屬性組生成相應的密文頭,因此其存儲包括密文及密文頭,其密文長度與密文相關屬性個數t呈斜率為常數的線性增長,而密文頭長度與密文相關屬性個數t及用戶總數nuser呈互為斜率的線性增長.本文方案中,若發生屬性改變,CSP為該屬性對應的密文重新選擇指數進行密文更新,并將指數進行加密,生成相應的密文頭.因此其存儲也包括密文及密文頭,且密文隨著密文相關屬性個數t呈線性增長,密文頭則隨著密文相關屬性個數t及撤銷屬性個數nra呈互為斜率的線性增長.數據訪問者的存儲成本主要來自于其擁有的密鑰.本文方案與Yang方案中,密鑰長度較短,只與用戶擁有的屬性個數k呈線性增長;Liang方案利用二叉樹來生成用戶密鑰,其密鑰長度與密鑰屬性個數k、密文訪問結構最大列向量nmax與用戶個數nuser都相關.而屬性撤銷時,使用子集覆蓋進行密鑰更新,其更新密鑰長度與最小覆蓋集呈正增長.而Hur方案中,每個用戶都要存儲一定的KEK來解密相應的指數進行密鑰更新,因此其密鑰長度不僅與用戶擁有的屬性個數k呈線性增長,而且與整個系統中用戶的總個數nuser呈對數增長.

Table 2 Comparison of Storage Cost表2 存儲成本對比


Table 3 Comparison of Communication Cost表3 通信成本對比
實驗環境為64 b Ubuntu 14.04操作系統、Intel?CoreTMi7-3770CPU(3.4 GHz)、內存4 GB,實驗基于Pairing-based Cryptography Library(PBC-0.5.14)[20]與cpabe-0.11[21]進行修改與編寫,并且使用基于512 b有限域上的超奇異曲線y2=x3+x中的160 b橢圓曲線群.實驗數據取運行20次所得的平均值.在實驗中,PBC庫計算對運算的時間大約為5.3 ms,1與T的運算時間大約為6.2ms與0.6ms.另外,通過使用Ubuntu14.04操作系統中的devurandom來選擇1與T中隨機元素的時間大約為14 ms與1.4 ms.
本文對4種方案在密鑰生成時間、加密時間、解密時間與重加密時間方面進行了比較,并且取nmax=6,nuser=10.
如圖1所示,密鑰生成時間與用戶屬性個數呈線性增長,本文方案密鑰生成時間略高于Yang方案,但優于Hur方案與Liang方案.特別是Liang方案,其密鑰生成時間不僅與用戶屬性個數有關,而且與密文訪問結構最大列向量nmax與用戶個數nuser相關,因此其密鑰生成時間遠遠大于其他3種方案.

Fig. 1 Key generation time圖1 密鑰生成時間
如圖2所示,加密時間與訪問結構中的屬性呈線性增長.本文方案加密時間略高于Hur方案,但優于Yang方案與Liang方案.需要注意的是,Hur方案加密過程中,中間節點的多項式操作涉及了適當數量的乘法,但是運行時間很短;而Liang方案其加密生成時間不僅與訪問結構中的屬性個數有關,而且同樣與訪問結構最大列向量nmax相關,因此加密時間遠遠大于其他3種方案.進行解密實驗時,使用所用的屬性進行解密,并且對Hur方案進行解密時使用最簡單的二叉結構,所有中間節點均為(n,n)門限.而本文提出的方案分別在無屬性撤銷與50%的屬性被撤銷2種情況下進行了解密實驗.

Fig. 2 Encryption time圖2 加密時間
如圖3所示,Liang方案、Hur方案、Yang方案與本文50%屬性被撤銷方案的解密時間都隨著解密屬性數量而增長,而本文無屬性撤銷方案由于采用了外包解密,其用戶只需要進行1個T的指數操作.另外,由于本文屬性撤銷方案的解密時間為解密屬性的二次函數,但是本文采用了外包解密,大大降低了用戶的解密時間.圖3可以看出,當屬性在某個范圍內時,本文撤銷方案的解密時間小于其他方案,隨著屬性個數的增加,其解密時間逐次超過Yang方案與Hur方案,但在可接受的范圍.為了進行重加密時間對比,不失一般性,本文考慮了用戶數量為10的情況下重加密時間與屬性數量的關系和屬性數量為10的情況下重加密時間與用戶數量的關系.

Fig. 3 Decryption time圖3 解密時間
如圖4所示為用戶數量為10的情況下重加密時間與屬性數量的關系,當屬性被撤銷時,需要對密鑰或密文進行更新.Yang方案與Liang方案主要對密鑰進行更新,而Hur方案與本文方案主要對密文進行更新.因此從圖4中可以發現,Hur方案與本文方案需要的計算時間較長,且隨著屬性數量逐漸增長,但是所需計算完全是由CSP實施的,實際應用中CSP擁有大量的計算資源;而Yang方案與Liang方案雖然需要的計算時間較少,但是需要AA實施密鑰更新,而AA的計算資源是有限的,容易造成系統瓶頸.

Fig. 4 Re-encryption time圖4 重加密時間
如圖5所示為屬性數量為10的情況下重加密時間與用戶數量的關系.從圖5中可以發現,Liang方案、Hur方案和本文方案的重加密時間與用戶個數無關;而在Yang方案中,一旦發生屬性撤銷,AA需要為所有未被撤銷的用戶進行解密密鑰更新,加重了AA的計算負載.

Fig. 5 Re-encryption time圖5 重加密時間
本文提出了一個密文策略的屬性加密方案,該方案能夠實現屬性級的用戶撤銷.在該方案中,若用戶的屬性被撤銷,那么對該屬性對應的密文進行更新,只有屬性滿足訪問策略且沒有被撤銷的用戶才能夠成功地進行密鑰更新,而成功解密密文.本文基于q-parallel BDHE假設在標準模型下對方案進行了選擇訪問結構明文攻擊的安全性證明.最后對方案進行了性能分析與實驗驗證,實驗結果表明,與已有相關方案相比,雖然為了實現屬性撤銷,增加了存儲中心的計算負載,但是不需要屬性授權的參與,因此降低了屬性授權的計算負載,而且用戶除了密鑰外不需要其他額外參數來實現屬性撤銷,因此大大節省了存儲空間.另外本文基于q-parallel BDHE假設,在標準模型下對方案進行了選擇訪問結構明文攻擊下的安全性證明,該方案可以通過文獻[22]中提出的通用技術轉換為選擇訪問結構密文攻擊下可證明安全的方案,以適用于云存儲環境下用戶數據多以密文形式存儲的情形.
[1]Sahai A, Waters B. Fuzzy Identity-Based Encryption[M]. Berlin: Springer, 2005: 457-473
[2]Yadav U C. Ciphertext-policy attribute-based encryption with hiding access structure[C]Proc of the 5th IEEE Int Advance Computing Conf (IACC). Piscataway, NJ: IEEE, 2015: 6-10
[3]Naruse T, Mohri M, Shiraishi Y. Provably secure attribute-based encryption with attribute revocation and grant function using proxy re-encryption and attribute key for updating[J]. Human-centric Computing and Information Sciences, 2015, 5(1): 8
[4]Wang Hao, Yang Bo, Wang Yilei. Server aided ciphertext-policy attribute-based encryption[C]Proc of the 29th IEEE Int Conf on Advanced Information Networking & Applications Workshops. Piscataway, NJ: IEEE, 2015: 440-444
[5]Li Qi, Ma Jiangfeng, Li Rui, et al. Large universe decentralized key-policy attribute-based encryption[J]. Security & Communication Networks, 2015, 8(3): 501-509
[6]Wang Xinlei, Zhang Jianqing, Schooler E M, et al. Performance evaluation of attribute-based encryption: Toward data privacy in the IoT[C]Proc of the 26th Int Conf on Communications (ICC). Piscataway, NJ: IEEE, 2014: 725-730
[7]Ostrovsky R, Sahai A, Waters B. Attribute-based encryption with non-monotonic access structures[C]Proc of the 14th ACM Conf on Computer & Communications Security (CCS). New York: ACM, 2007: 195-203
[8]Staddon J, Golle P, Gagn M, et al. A content-driven access control system[C]Proc of the 7th Symp on Identity and Trust on the Internet. New York: ACM, 2008: 26-35
[9]Liang Xiaohui, Lu Rongxing, Lin Xiaodong. Ciphertext policy attribute based encryption with efficient revocation[J]. IEEE Symp on Security & Privacy, 2008, 6(3): 321-334
[10]Bethencourt J, Sahai A, Waters B. Ciphertext-policy attribute-based encryption[C]Proc of the 28th Symp on Security and Privacy. Los Alamitos, CA: IEEE Computer Society, 2007: 321-334
[11]Boldyreva A, Goyal V, Kumar V. Identity-based encryption with efficient revocation[C]Proc of the 15th ACM Conf on Computer and Communications Security(CCS). New York: ACM, 2008: 417-426
[12]Pirretti M, Traynor P, Mcdaniel P, et al. Secure attribute-based systems[C]Proc of the 13th ACM Conf on Computer and Communications Security(CCS). New York: ACM, 2006: 799-837
[13]Hur J, Noh D K. Attribute-based access control with efficient revocation in data outsourcing systems[J]. IEEE Trans on Parallel & Distributed Systems, 2011, 22(7): 1214-1221
[14]Yang Kan, Jia Xiaohua, Ren Kui. Attribute-based fine-grained access control with efficient revocation in cloud storage systems[C]Proc of the 8th ACM SIGSAC Symp on Information, Computer and Communications Security. New York: ACM, 2013: 523-528
[15]Zavattoni E, Perez L J D, Mitsunari S, et al. Software implementation of an attribute-based encryption scheme[J]. IEEE Trans on Computers, 2015, 64(5): 1429-1441
[16]Waters B. Ciphertext-policy attribute-based encryption: An expressive, efficient, and provably secure realization[C]Proc of the 14th Int Workshop on Public Key Cryptography. Berlin: Springer, 2011: 53-70
[17]Cheung L, Newport C. Provably secure ciphertext policy ABE[C]Proc of the 14th ACM Conf on Computer and Communications Security. New York: ACM, 2007: 456-465
[18]Tu Shanshan, Niu Shaozhang, Li Hui. A fine-grained access control and revocation scheme on clouds[J]. Concurrency & Computation Practice & Experience, 2012, 28(6): 1697-1714
[19]Lewko A, Okamoto T, Sahai A, et al. Fully Secure Functional Encryption: Attribute-based Encryption and (Hierarchical) Inner Product Encryption[M]. Berlin: Springer, 2010: 62-91
[20]Lynn B. The pairing-based cryptography (PBC) library[OL]. 2006 [2015-06-06]. http:crypto.stanford.edupbc
[21]Bethencourt J, Sahai A, Waters B. Advanced crypto software collection: The cpabetoolkit[OL]. 2011 [2015-06-06]. http:acsc.cs.utexas.educpabe
[22]Yamada S, Attrapadung N, Hanaoka G, et al. Generic constructions for chosen-ciphertext secure attribute based encryption[C]Proc of the 14th Int Conf on Practice and Theory in Public Key Cryptography. Berlin: Springer, 2011: 71-89

WangGuangbo, born in 1987. PhD. Engineer. His main research interests include cryptograph theory especially attribute-based encryption.

LiuHaitao, born in 1980. Master. Engineer. His main research interests include computer software and theory.

WangChenlu, born in 1990. Graduate. Assistant Engineer. Her main research interests include network security.
WangPengcheng, born in 1990. Graduate. Assistant Engineer. His main research interests include network security.

LianLin, born in 1990. Master. Engineer. Her main research interests include information security.

HuiWentao, born in 1990. Master. Engineer. His main research interests include network security.