徐 明,方 明
(上海海事大學(xué) 信息工程學(xué)院,上海 201306)
云計算是一種應(yīng)用前景廣闊的計算模式,擁有虛擬化、并行和分布式處理,網(wǎng)格計算以及面向服務(wù)(Service-Oriented Architecture,SOA)的體系結(jié)構(gòu).以其低計算代價,基礎(chǔ)設(shè)施要求低,高運行效率,強靈活性和可擴展性等優(yōu)勢吸引越來越多的用戶和機構(gòu)使用第三方來存儲數(shù)據(jù),但是敏感數(shù)據(jù)和使用者身份的隱私泄露問題隨之引起了廣泛的關(guān)注,成為阻礙云計算普及的主要原因.
屬性基加密(Attribute-based encryption,ABE)的概念于2005年由Sahai和Waters[1]提出.用于保護加密的敏感數(shù)據(jù),同時也解決了公鑰密碼體制的缺陷.Goyal等人[2]于2006年提出了密鑰策略屬性加密方案(Key-Policy Attribute Encryption,KP-ABE),將密文與屬性相關(guān),用戶私鑰和訪問策略相關(guān),只有密文相關(guān)的屬性滿足密鑰相關(guān)的訪問策略才能解密.Bethencourt等人[3]提出了密文策略屬性加密方案(ciphertext-policy attribute-based encryption ,CP-ABE),與KP-ABE相反,將密文與訪問策略相關(guān),用戶私鑰與用戶屬性集合相關(guān),當(dāng)且僅當(dāng)用戶屬性集合滿足密文中策略時,用戶才能解密.由于CP-ABE可以實現(xiàn)細粒度的訪問控制,且密鑰只與用戶屬性決定而與用戶身份無關(guān),因此被廣泛應(yīng)用到云計算環(huán)境中做屬性加密設(shè)計,所以研究更廣泛[4-6].本文提出的TA3ES方案就是一種CP-ABE方案.Wan等人[7]和Wang等人[8]提出了兩個在云計算中基于密文策略的屬性基加密方案,均同時實現(xiàn)了數(shù)據(jù)機密性和細粒度的訪問控制策略,但是沒有采取隱藏訪問結(jié)構(gòu),云服務(wù)端面臨著泄露用戶信息的風(fēng)險.隱藏訪問結(jié)構(gòu)的屬性加密方案也被稱為匿名的屬性加密方案,意思是將訪問結(jié)構(gòu)不明顯的部署在密文或者密鑰中.在隱藏訪問結(jié)構(gòu)的策略研究上,目前的成果還是比較少的.Kapadia等人[9]提出能夠?qū)崿F(xiàn)隱藏訪問結(jié)構(gòu)的CP-ABE方案,需要引入一個在線的半可信服務(wù)器用來給每位用戶進行重加密密文,然而此方案的安全性不足,安全和性能的瓶頸就在于該服務(wù)器.Nishide等人[10]提出兩種實現(xiàn)隱藏策略的CP-ABE的構(gòu)造方案,當(dāng)中訪問控制策略利用多值屬性間“與”邏輯來表示,但是算法都運用了較多的指數(shù)運算和雙線性對,相對拉低了算法的效率.Lai等人[11]在Waters等人[12]的雙系統(tǒng)加密技術(shù)的基礎(chǔ)上,提出了隱藏訪問結(jié)構(gòu)的CP-ABE方案,在安全性上得到了提升,但是增加了系統(tǒng)的通信代價,降低了系統(tǒng)效率.所以,設(shè)計出一種高效性和安全性相統(tǒng)一的匿名屬性加密方案成了研究的熱點.
本文提出一種高效的ABE云計算外包方案,即支持時效訪問的隱藏訪問結(jié)構(gòu)的密文策略屬性加密方案TA3ES(Time-limited access of anonymous attribute encryption scheme),實現(xiàn)細粒度訪問控制,并且隱藏了訪問結(jié)構(gòu),只有加密者和合格的解密者才能成功解密,降低了云服務(wù)器泄露隱私信息的風(fēng)險.TA3ES在ABE云外包方案基礎(chǔ)上新增DT算法,使用匹配密鑰HK,將密文解密為短密文發(fā)給用戶,大幅度減少用戶解密密文工作量,提高系統(tǒng)運行效率的同時降低了用戶的計算代價.另外,TA3ES在數(shù)據(jù)加密階段和密鑰生成階段新置時間期限T,使密文和解密的密鑰包含時間期限,實現(xiàn)云端的超期數(shù)據(jù)自我銷毀,且由數(shù)據(jù)擁有者靈活控制時間期限.本文對方案的正確性和安全性給出了分析證明,通過與現(xiàn)有優(yōu)秀方案對比,可以論證TA3ES方案能夠滿足安全性和高效性的統(tǒng)一.
如圖1所示,本文提出的TA3ES方案包含了四個實體:可信的授權(quán)中心TA、數(shù)據(jù)擁有者DO、云存儲服務(wù)提供商CSP和數(shù)據(jù)用戶DU.可信的授權(quán)中心TA負責(zé)分配與解密者的屬性相對應(yīng)的私鑰,數(shù)據(jù)擁有者DO設(shè)置訪問結(jié)構(gòu)控制可獲得解密密文的解密者的條件.這里認為云服務(wù)器提供商CSP是不完全可信的,存在隱私泄露的危險.
圖1 方案框架Fig.1 Scheme framework
TA3ES方案形式化描述如下:
1)開始階段,授權(quán)中心TA輸入屬性集合U和安全參數(shù)1λ,算法返回公鑰PK和一個主密鑰MSK.把公鑰PK向所有用戶公開,主密鑰MSK只由授權(quán)中心TA保管.
2)加密階段,這個過程由數(shù)據(jù)持有者DO完成,其指定訪問結(jié)構(gòu)W,同消息M、時間期限Ti和公鑰PK輸入進行加密,返回密文CT.將密文CT和時間期限Ti直接上傳至云端存放.
3)密鑰生成階段,由授權(quán)機構(gòu)TA執(zhí)行,將用戶的屬性列表L,主密鑰MSK,時間期限Ti和公鑰PK作為輸入,算法返回用戶的私鑰SK.把私鑰SK發(fā)送給用戶.
4)云平臺解密階段,云服務(wù)器把符合訪問結(jié)構(gòu)W的數(shù)據(jù)用戶DU挑選出來,即若L=W,輸出該用戶屬性,否則輸出⊥.對數(shù)據(jù)擁有者DO存儲的數(shù)據(jù)進行部分解密,然后把部分解密的密文PCT發(fā)送給數(shù)據(jù)用戶DU.
5)解密階段,數(shù)據(jù)用戶DU執(zhí)行剩下的一部分運算,即可得到信息明文m.
基于文獻[13,14],給出一個敵手和挑戰(zhàn)者的攻擊游戲來定義本方案的adaptively-CCA安全模型.
Setup:挑戰(zhàn)者運行系統(tǒng)建立算法,輸入安全參數(shù)1λ和系統(tǒng)屬性U,將算法輸出的公共參數(shù)PP和公鑰PK發(fā)送給敵手,自己保存主密鑰MSK.
Phase 1:敵手可以對多個屬性{S1,S2,S3,…,Sn}進行私鑰的詢問,整理出屬性集合的私鑰SK,并將私鑰SK返回給敵手.
Guess:敵手依據(jù)以上結(jié)構(gòu)給出k的一個猜測值k′.如果k=k′,則敵手獲勝.
定義:如果不存在多項式時間有界的攻擊者獲得成功的優(yōu)勢是不可忽略的,則這個隱藏訪問策略的屬性加密方案是adaptively-CCA安全的.
2.3.1Setup(1λ,U)初始化算法
令U={att1,att2,att3,…,attn}代表一個系統(tǒng)屬性空間,某個用戶的屬性列表為L={l1,l2,l3,…,ln},atti有l(wèi)i個值{atti,1,atti,2,atti,3,…,atti,li}.
輸入:安全參數(shù)1λ
過程:可信任授權(quán)中心TA選擇一個素數(shù)階p的乘法循環(huán)群G.g是G的生成元,雙線性對e:G×G→GT,再選擇一個散列函數(shù)H0:{0,1}*→G.系統(tǒng)選擇隨機數(shù)值a1,a2,b,c∈Zp,授權(quán)中心隨機生成元g0,v,v1,v2,u1,1,…,u1,li,…,un,1,…,un,ln∈G,計算π1=vv1a1,π2=vv2a2,Y=e(g,g)c·a1·b.
2.3.2Encrypt(W,PK,m,Ti)加密算法
輸入:訪問結(jié)構(gòu)W={w1,w2,w3,…,wn}(這里訪問結(jié)構(gòu)屬性具備多個值且支持與“與”操作)、公鑰PK、時間期限Ti和信息m.
輸出:密文CT,和時間期限Ti一起發(fā)送給云服務(wù)商.
2.3.3Kengen(L,MSK,PK,Ti)密鑰生成算法
輸入:用戶J的屬性列表L={l1,l2,l3,…,ln}、主私鑰MSK,時間期限Ti和公鑰PK.
輸出:私鑰SK,發(fā)送給用戶.
2.3.4 Dec-Tra(SK,CT)算法
不同于一般的云外包方案,這里新增一個DT算法將密文先在云端進行大部分的解密,把少部分的解密工作留給用戶,這樣大幅度減少用戶的計算量,也降低直接解密用戶身份被泄露的風(fēng)險.
輸入:私鑰SK=(x,HK)和密文CT
輸出:部分解密之后的密文CT′,發(fā)送給用戶.
2.3.5Decrypt(L,W)解密算法
這一階段由需要訪問數(shù)據(jù)的用戶來執(zhí)行.
輸入:用戶自身屬性L={l1,l2,l3,…,ln},訪問結(jié)構(gòu)W={w1,w2,w3,…,wn}
輸出:明文m
解密過程如下:
綜上,本方案的正確性可以得到驗證.
本文基于復(fù)雜性假設(shè),證明本文隱藏訪問策略的屬性加密方案在標(biāo)準模型中是adaptively-CCA安全的.
在上述安全模型中可以找到一個算法在對真實模型中的復(fù)雜性假設(shè)以不可忽略的優(yōu)勢ε進行解答.
Phase 1:私鑰查詢,挑戰(zhàn)者有主密鑰可以生成任意屬性集合私鑰.
Phase 2:步驟同第一階段,敵手繼續(xù)適應(yīng)性地進行密鑰查詢,查詢期間不能詢問和訪問結(jié)構(gòu)W0′={w0,1,…,w0,n} 和W1′={w1,1,…,w1,n}屬性集合相關(guān)的信息.
Guess:敵手根據(jù)上面的問詢信息提出對于信息k的猜測k′,如果T=πc1+c2,則密文CT為正常密文,其中的s1=s1′-c2,s2=s2′+c1+c2,否則密文CT為半功能密文.因此,挑戰(zhàn)者根據(jù)敵手的猜測輸出不可忽視的優(yōu)勢ε來解決模型中的復(fù)雜性假設(shè).
推論:如果復(fù)雜性假設(shè)成立,那么我們可以認為本文方案是adaptively-CCA安全的.
另外,時間期限Ti也是由數(shù)據(jù)加密者選定,Encrypt算法和Kengen算法生成帶有Ti的密文和密鑰,控制過期數(shù)據(jù)的自動銷毀.
本節(jié)給出TA3ES方案與現(xiàn)有其他優(yōu)秀的方案在計算開銷和功能上的對比.選取的對比方案是現(xiàn)有云外包方案、匿名和不匿名方案中一些具有代表性的方案.
本文提出的TA3ES方案與文獻[1,16,17]所提的方案進行了開銷對比.
表1 開銷對比Table 1 Comparison of computation cost
如表1所示,將各方案的開銷進行對比,表中的x表示矩陣M行數(shù),n表示用戶屬性個數(shù).三種運算中雙線性對計算開銷最大,然后是冪運算,線性乘法最小,主要考慮開銷最大的運算,四種方案中文獻[1]和文獻[16]用到的雙線性對運算比TA3ES方案多很多,我們的方案計算代價會小很多.TA3ES方案比文獻[17]少一個雙線性對運算,并且TA3ES方案帶有隱藏訪問結(jié)構(gòu)和數(shù)據(jù)時間期限可控,安全性相對較強.
本文提出的TA3ES方案與文獻[1,18,19,20]進行功能對比,主要比較了方案的能否隱藏訪問結(jié)構(gòu),訪問結(jié)構(gòu)的表達能力,是否支持外包等.
表2 功能對比Table 2 Comparison of function
如表2所示,文獻[18],文獻[19]和文獻[1]不能支持保護用戶隱私.文獻[20]雖然提供外包操作,但是接入結(jié)構(gòu)單一,沒有隱藏訪問結(jié)構(gòu),系統(tǒng)靈活性較弱.TA3ES方案不僅支持隱藏訪問結(jié)構(gòu),并且能夠支持外包大部分給云服務(wù)端,提高系統(tǒng)運行效率.
實驗重點考察TA3ES方案在計算開銷方面的表現(xiàn).為驗證TA3ES方案性能,評估方案的效率,選取文獻[1]和文獻[17]進行對比,考察指標(biāo)為加密和解密時間.實驗中硬件配置為Intel(R)Core(TM)i5-3230M CPU 2.6GHz,內(nèi)存4GB,仿真平臺:操作系統(tǒng)Ubuntu 10.04,使用開源代碼庫PBC.λ值設(shè)為150,屬性值測試數(shù)目定為5.分別給出方案加密、解密的計算開銷對比圖.
圖2表明三個方案在加密時間上都和系統(tǒng)屬性個數(shù)呈線性關(guān)系,文獻[17]的加密耗時增幅遠高于另外兩方案,TA3ES方案和文獻[1]在加密過程中時間接近.原因是TA3ES方案和文獻[1]都是采用素數(shù)階群,比采用合數(shù)階群的文獻[17]明顯省時高效.
圖2 加密算法計算開銷Fig.2 Computationcostofencryptionarithmetic圖3 解密算法計算開銷Fig.3 Computationcostofdecryptionarithmetic
從圖3看出文獻[1]的解密計算時間與系統(tǒng)屬性個數(shù)呈線性關(guān)系,但是TA3ES方案和文獻[17]的時間維持在常數(shù)范圍,且TA3ES方案更低.原因是我們的方案將大部分解密運算外包給了云服務(wù)器,用戶端只需要少量計算便可得到結(jié)果.以上仿真結(jié)果和理論分析相符合,證明TA3ES方案在加密和解密效率都優(yōu)于其他方案.
本文針對云端數(shù)據(jù)和訪問者屬性的安全問題提供了一個高效安全的解決方案TA3ES,并做了正確性分析和安全性證明.該方案采用隱藏訪問結(jié)構(gòu)的策略,分兩次解密得到明文,即使攻擊者對方案進行攻擊,也不會得到有用的信息.方案還能動態(tài)控制時間期限,實現(xiàn)已分享數(shù)據(jù)的超期自我毀滅.通過和其他優(yōu)秀方案在計算開銷和功能方面的對比,論證了此方案是高效,安全的.特別地,訪問結(jié)構(gòu)會隨多變的應(yīng)用環(huán)境越發(fā)復(fù)雜,加大解密難度的同時也會增加系統(tǒng)負擔(dān),所以尋求更簡單易行的訪問結(jié)構(gòu)便成為后續(xù)研究工作.
[1] Sahai A,Waters B.Fuzzy identity-based encryption[C].Advances in Cryptology-EUROCRYPT 2005,Lecture Notes in Comput Sci,2005,3494:457-473.
[2] Goyal V,Pandet O,Sahai A,et al.Attribute based encryption for fine-grained access control of encrypted data[C].ACM Conference on Computer and Communications Security,Alexandria:ACM,2006:89-98.
[3] Bethencourt J,Sahai A,Waters B.Ciphertext-policy attribute-based encryption[C].IEEE Symposium on Security and Privacy(SP07),Berkeley:IEEE,2007:321-334.
[4] Yuan Q,Ma C,Lin J.Fine-grained access control for big data based on CP-ABE in cloud computing [M].Proceeding of Intelligent Computation in Big Data Era,2015:344-352.
[5] Ji Y,Tan J,Liu H,et al.A privacy protection method based on CP-ABE and KP-ABE for cloud computing[J].Journal of Softw are,2014,9(6):1367-1375.
[6] Yang K,Jia X.Expressive,efficient,and revocable data access con-trol for multi-authority cloud storage[J].IEEE Transactions on Par-allel and Distributed Systems,2014,25(7):1735-1744.
[7] Wan Z,Liu J,Deng R.A hierarchical atttribute-based solution for flexible and scalable access control in cloud computing[J].IEEE Transactions on Information Forensics and Security,2012,7(2):743-754.
[8] Wang G,Liu Q,Wu J.Hierarchical attribute-based encryption for fine-hrained access control in cloud storage services [C].Proceedings of the 17th ACM Conference on Computer and Communications Security,2010:735-737.
[9] Kapadia A,Tsang P P,Smith S W.Attribute-based publishing with hidden credential and hidden policies[C].Proceedings of the 14th Annual Network and Distributed System Security Symposim(NDSS 2007),2007:179-192.
[10] Nishide T,Yoneyama K,Ohta K.Attribute-based encryption with partially hidden encryptor-specified access structures[C].Applied Cryptography and Network Security,Springer Berlin Heidelberg,2008,5037:111-129.
[11] Lai Jun-zuo,Deng Hui-jie,Li Ying-jiu.Fully secure cipertext-policy hiding CP-ABE [G].LNCS 6672:Proc of Information Security Practice and Experience,Berlin:Springer,2011,6672(2):24-39.
[12] Waters B.Dual system encryption:realizing fully secure IBE and HIBE under simple assumptions[C].Advances in Cryptology-CRYPTO,2009,5677:619-636.
[13] Feng Deng-guo,Chen Cheng.Research on attribute-based cryptography[J].Journal of Cryptologic Research,2014,1(1):1-12.
[14] Liu Xi-meng,Ma Jian-feng,Xiong Jin-bo,et al.Ciphertext-policy weighted attribute based encryption scheme[J].Journal of Xi’an Jiaotong University:Natural Science,2013(8):44-48.
[15] Li X,Gu D,Ren Y,et al.Effieient ciphertext-policy attribute based encryption with hidden policy [C].Proceeding of Internet and Distribute Computing System,2012,7646:146-159.
[16] Wang Hai-bin,Chen Shao-zhen.Hide the access structure based on the attribute encryption scheme[J].Journal of Electronics & Information Technology,2012,34(2):457-461.
[17] Green M,Hohenberger S,Waters B.Outsourceing the decryption of ABE ciphertexts[J].Proceedings of the Usenix Security Symposium,2011:34-34;2012,32(2):457-461.
[18] Yu Shu-cheng,Wang Cong,Ren Kui,et al.Attribute based data sharing with attribute revocation[C].Proc of the 5th ACM Symposium on Information,Computer and Communications Security,2010:261-270.
[19] Balu A,Kuppusamy K.Privacy preserving ciphertext policy attribute based encryption[G].CCIS 89:Proc of the Recent Trends in Network Security and Applicatings,2010:402-409.
[20] Green M,Hohenberger S,Waters B.Outsourceing the decryption of ABE ciphertexts[C].Proc of the USENIX Security Symp,2011:3-23.
附中文參考文獻:
[13] 馮登國,陳 成.屬性密碼學(xué)研究[J].密碼學(xué)報,2014,1(1):1-12.
[16] 王海斌,陳少真.隱藏訪問結(jié)構(gòu)的基于屬性加密方案[J].電子與信息學(xué)報,2012,34(2):457-461.