蘇 航 朱智強(qiáng) 孫 磊
(解放軍信息工程大學(xué) 鄭州 450000) (Suhang_039@163.com)
2017-06-12;
2017-07-27
國(guó)家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2016YFB0501900) This work was supported by the National Key Research and Development Program of China (2016YFB0501900).
適合移動(dòng)云存儲(chǔ)的基于屬性的關(guān)鍵詞搜索加密方案
蘇 航 朱智強(qiáng) 孫 磊
(解放軍信息工程大學(xué) 鄭州 450000) (Suhang_039@163.com)
近年來(lái),隨著移動(dòng)設(shè)備性能的不斷提升和移動(dòng)互聯(lián)網(wǎng)的迅猛發(fā)展,越來(lái)越多的移動(dòng)終端參與云端數(shù)據(jù)存儲(chǔ)與共享.為了更好地解決資源受限的移動(dòng)設(shè)備參與云端數(shù)據(jù)共享的安全和效率問(wèn)題,基于支持通配符的與門訪問(wèn)結(jié)構(gòu),提出了一種高效的基于屬性的關(guān)鍵詞搜索加密方案,并證明了其在標(biāo)準(zhǔn)模型下滿足選擇關(guān)鍵詞明文攻擊的不可區(qū)分安全性和關(guān)鍵詞安全性.該方案采用韋達(dá)定理使得每個(gè)屬性僅需用一個(gè)元素表示,方案中索引長(zhǎng)度固定,陷門和密鑰的長(zhǎng)度及陷門算法和搜索算法的計(jì)算復(fù)雜度與訪問(wèn)結(jié)構(gòu)中可使用的通配符數(shù)量上限成正比,同時(shí),移除了索引和陷門傳輸過(guò)程中的安全信道,進(jìn)一步降低了開(kāi)銷.效率分析表明:與其他方案相比,該方案的計(jì)算開(kāi)銷和通信開(kāi)銷較小,更加適用于移動(dòng)云存儲(chǔ)環(huán)境.
移動(dòng)云存儲(chǔ);可搜索加密;屬性基加密;移除安全信道;韋達(dá)定理
便捷的移動(dòng)終端已成為人們生活中不可或缺的一部分,移動(dòng)用戶可通過(guò)移動(dòng)游戲、移動(dòng)支付等移動(dòng)應(yīng)用獲取多種服務(wù).由于移動(dòng)終端在存儲(chǔ)空間、通信帶寬及電池容量等多方面存在限制,移動(dòng)應(yīng)用提供的服務(wù)質(zhì)量難以獲得顯著提升.為更好地支持日益復(fù)雜的移動(dòng)應(yīng)用并提升用戶體驗(yàn),云計(jì)算被引入到移動(dòng)環(huán)境中[1].移動(dòng)云計(jì)算作為一種將移動(dòng)終端上復(fù)雜的數(shù)據(jù)存儲(chǔ)和處理操作置于云端的應(yīng)用模式,可較好地解決移動(dòng)終端資源受限的問(wèn)題.
移動(dòng)云存儲(chǔ)作為一種移動(dòng)云計(jì)算的核心應(yīng)用,具有容量可擴(kuò)展、成本費(fèi)用低、便于統(tǒng)一管理等諸多優(yōu)勢(shì),受到越來(lái)越多用戶的青睞.通過(guò)移動(dòng)云存儲(chǔ),用戶可高效便捷地在云端存儲(chǔ)和共享數(shù)據(jù),包含個(gè)人隱私等信息的敏感數(shù)據(jù)往往也會(huì)存儲(chǔ)到云端,但數(shù)據(jù)上傳云端后,其實(shí)際物理控制權(quán)交由第三方云服務(wù)提供商.為防止云中存儲(chǔ)的敏感數(shù)據(jù)被云服務(wù)提供商或其他惡意用戶竊取,數(shù)據(jù)擁有者通常會(huì)在上傳敏感數(shù)據(jù)前對(duì)其進(jìn)行加密處理.傳統(tǒng)的加密方式可保護(hù)數(shù)據(jù)的安全性,但是無(wú)法對(duì)數(shù)據(jù)實(shí)施靈活的訪問(wèn)控制.Sahai和Waters[2]提出的屬性基加密(attribute-based encryption, ABE)方案可較好地同時(shí)解決數(shù)據(jù)安全性和數(shù)據(jù)訪問(wèn)控制問(wèn)題.在ABE方案中,密文和密鑰分別與一組屬性相關(guān)聯(lián),加密者基于接收者的屬性特征制定相應(yīng)的訪問(wèn)策略,當(dāng)且僅當(dāng)解密者的屬性集合滿足訪問(wèn)策略時(shí)可完成解密,ABE方案可有效實(shí)現(xiàn)一對(duì)多應(yīng)用場(chǎng)景下細(xì)粒度的非交互訪問(wèn)控制.
當(dāng)數(shù)據(jù)以密文形式存儲(chǔ)在云端后,云服務(wù)提供商不能有效地為用戶提供數(shù)據(jù)檢索服務(wù)[3],極大降低了云端數(shù)據(jù)的取用效率.Dan等人[4]提出了公鑰關(guān)鍵詞搜索加密(public key encryption with key-word search, PEKS)方案可實(shí)現(xiàn)密文數(shù)據(jù)檢索,但該方案僅支持一對(duì)一應(yīng)用場(chǎng)景,不適用于云存儲(chǔ)環(huán)境.為了對(duì)云端數(shù)據(jù)實(shí)施細(xì)粒度的訪問(wèn)控制并提供高效的密文檢索服務(wù),Sun等人[5]、Zheng等人[6]、Qiu等人[7]結(jié)合ABE方案和PEKS方案,提出了多種基于屬性的關(guān)鍵詞搜索(attribute-based encryp-tion with keyword search, ABKS)方案.
現(xiàn)有的ABKS方案效率較低,對(duì)計(jì)算能力和通信帶寬有限的移動(dòng)設(shè)備的影響尤為明顯,不能較好地適用于移動(dòng)云存儲(chǔ)環(huán)境.主要表現(xiàn)在2個(gè)方面:1)在ABE方案中,隨著屬性數(shù)量增多,加解密算法計(jì)算復(fù)雜度和密文長(zhǎng)度隨之線性增長(zhǎng),這就造成ABKS方案中索引和陷門算法計(jì)算復(fù)雜度以及索引和陷門長(zhǎng)度隨屬性數(shù)量線性增長(zhǎng);2)在ABKS方案中,為保證方案的安全性,搜索服務(wù)器和用戶之間需要通過(guò)安全信道傳輸索引、陷門和搜索結(jié)果,而使用安全信道也將加重移動(dòng)用戶端的計(jì)算和通信開(kāi)銷.
針對(duì)ABE方案效率受屬性數(shù)量增加影響的問(wèn)題,2007年Cheung等人[8]基于支持通配符的與門訪問(wèn)結(jié)構(gòu),提出首個(gè)在標(biāo)準(zhǔn)模型下可證明安全的ABE方案,該方案具有較低的計(jì)算復(fù)雜度.Emura等人[9]、Zhang等人[10]和肖思煜等人[11]提出基于與門訪問(wèn)結(jié)構(gòu)的ABE方案,上述方案中的密文長(zhǎng)度與解密算法中雙線性對(duì)運(yùn)算量恒定,但不支持通配符,導(dǎo)致訪問(wèn)策略的數(shù)量呈指數(shù)增長(zhǎng),且要求解密者屬性與訪問(wèn)策略完全匹配,方案靈活性較差.Nishide等人[12]和Lai等人[13]的方案支持通配符,但方案中單個(gè)屬性需要用若干個(gè)元素表示,效率較低.Phuong等人[14]的方案支持通配符,該方案采用韋達(dá)定理使得各屬性只需用單個(gè)元素表示,此外方案還具有密文定長(zhǎng),解密算法中雙線性對(duì)運(yùn)算量固定的優(yōu)勢(shì).Phuong等人[14]方案是選擇安全的,為提高方案安全性,Jin等人[15]對(duì)文獻(xiàn)[14]中的方案進(jìn)行改進(jìn),基于合數(shù)群提出一種完全安全的ABE方案.
Baek等人[16]首次指出安全信道問(wèn)題,他們指出在PEKS方案中,陷門和搜索結(jié)果易遭受惡意攻擊,為保證其安全,需要在搜索服務(wù)器和用戶之間建立安全信道.為移除安全信道,他們提出一種指定測(cè)試者的PEKS方案(PEKS with a designated tester, dPEKS),通過(guò)使用指定搜索服務(wù)器的公鑰加密陷門和索引從而移除了安全信道.Rhee等人[17]考慮到來(lái)自惡意服務(wù)器和惡意接收者的攻擊,增強(qiáng)了Baek等人[16]方案的安全模型,并提出一種在隨機(jī)預(yù)言機(jī)模型下可證明安全的dPEKS方案.Fang等人[18]給出選擇密文攻擊安全、選擇關(guān)鍵詞攻擊安全并且可抵抗關(guān)鍵詞攻擊的安全模型,基于上述模型提出在標(biāo)準(zhǔn)模型下可證明安全的dPEKS方案.林鵬等人[19]提出一種通過(guò)指定搜索服務(wù)器從而移除安全信道的ABKS方案.
本文構(gòu)造了一種適用于移動(dòng)云環(huán)境的ABKS方案,其主要優(yōu)勢(shì)體現(xiàn)在4個(gè)方面:
1) 方案采用支持通配符的與門訪問(wèn)結(jié)構(gòu),受到Phuong等人[14]方案的啟發(fā),使用不同屬性出現(xiàn)的“位置”匹配訪問(wèn)策略與用戶屬性,并基于韋達(dá)定理實(shí)現(xiàn)解密過(guò)程中通配符的移除.傳統(tǒng)方案為支持通配符需要用多個(gè)元素表示一個(gè)屬性,而本方案一個(gè)屬性只需要用一個(gè)元素表示,效率更高.
2) 無(wú)需建立用戶列表.在Sun[5]與Qiu[7]的方案中,數(shù)據(jù)擁有者需要建立一個(gè)合法數(shù)據(jù)使用者列表,當(dāng)系統(tǒng)中加入新用戶時(shí)數(shù)據(jù)擁有者需要更新該列表,即要求數(shù)據(jù)擁有實(shí)時(shí)在線.本文采用不同的索引生成方式,無(wú)需建立用戶列表.
3) 移除安全信道.授權(quán)機(jī)構(gòu)為用戶選擇相對(duì)可信的搜索服務(wù)器,搜索過(guò)程中使用該搜索服務(wù)器的公鑰加密索引或陷門,即使惡意用戶截獲索引或陷門也無(wú)法從中獲取關(guān)鍵詞信息,移除了索引和陷門傳輸過(guò)程中的所需的安全信道,減輕了用戶的通信開(kāi)銷.
4) 計(jì)算與通信開(kāi)銷低.方案中索引和陷門算法的計(jì)算復(fù)雜度較小,索引長(zhǎng)度固定,陷門長(zhǎng)度較短,降低了用戶在搜索過(guò)程中的計(jì)算開(kāi)銷和通信開(kāi)銷.
1.1雙線性映射及復(fù)雜性假設(shè)
定義1. 非對(duì)稱雙線性映射.令G1,G2,GT表示階為素?cái)?shù)p的乘法循環(huán)群,若e:G1×G2→GT為有效的雙線性映射,則其滿足性質(zhì):
1) 雙線性.?g∈G1,h∈G2,a,b∈p,e(ga,hb)=e(gb,ha)=e(g,h)a b.
2) 非退化性.?g∈G1,h∈G2,e(g,h)≠1.
3) 可計(jì)算性.?g∈G1,h∈G2,存在多項(xiàng)式時(shí)間算法計(jì)算e(g,h).
若G1≠G2,該映射為非對(duì)稱雙線性映射.
定義3. DDDH(divisible decision Diffie-Hellman)假設(shè).令G表示階為素?cái)?shù)p的乘法循環(huán)群,g為群G的生成元,給定元組yDDDH=(g,ga,gb,Z),其中a,b∈p,Z∈G.在多項(xiàng)式時(shí)間內(nèi)判定是否成立是困難的.
1.2訪問(wèn)結(jié)構(gòu)
定義4. 支持通配符的與門訪問(wèn)結(jié)構(gòu).系統(tǒng)屬性集合為U={Att1,Att2,…,AttL},其中屬性Atti的屬性值為Ai.系統(tǒng)中用戶的屬性集合為S={S1,S2,…,SL},Si的取值有2種,即“+”和“-”.訪問(wèn)結(jié)構(gòu)為W={W1,W2,…,WL},Wi的取值有“+”,“-”和“*”3種,其中“*”表示通配符,當(dāng)屬性取值為“*”時(shí)表示訪問(wèn)結(jié)構(gòu)對(duì)此屬性不做要求.S|=W表示屬性集合S滿足訪問(wèn)結(jié)構(gòu)W.
1.3韋達(dá)定理[15]
向量A=(v1,v2,…,vL),B=(z1,z2,…,zL),A中包含字符和通配符,B中僅包含字符.向量A中通配符的數(shù)量為n,集合J={j1,j2,…,jn}表示通配符在A中出現(xiàn)的位置.
命題?i∈[1,L],v1=zi∨vi=*,可表述為
).
(1)
(2)
將式(2)代入式(1)中可得:
(3)
引入隨機(jī)群元素Hi隱藏式(3)中的運(yùn)算,可得:
(4)
2.1系統(tǒng)模型
Fig. 1 System model圖1 系統(tǒng)模型
系統(tǒng)中包含4類實(shí)體,即授權(quán)機(jī)構(gòu)(authorized authority, AA)、搜索服務(wù)器(search server, SS)、數(shù)據(jù)擁有者(data owner, DO)和數(shù)據(jù)使用者(data user, DU),系統(tǒng)結(jié)構(gòu)如圖1所示:
1) 授權(quán)機(jī)構(gòu)
授權(quán)機(jī)構(gòu)是系統(tǒng)中唯一的可信第三方,負(fù)責(zé)系統(tǒng)建立和密鑰生成工作.
2) 搜索服務(wù)器
搜索服務(wù)器是“誠(chéng)實(shí)但具有好奇心的”,為用戶提供關(guān)鍵詞搜索服務(wù).
3) 數(shù)據(jù)擁有者
從授權(quán)機(jī)構(gòu)處獲取公開(kāi)參數(shù)后,數(shù)據(jù)擁有者為敏感數(shù)據(jù)選取關(guān)鍵詞,對(duì)該關(guān)鍵詞加密生成索引并上傳至云端.
4) 數(shù)據(jù)使用者
從授權(quán)機(jī)構(gòu)獲取密鑰后,通過(guò)生成搜索陷門,數(shù)據(jù)使用者可從搜索服務(wù)器處獲取關(guān)鍵詞搜索服務(wù).
2.2算法定義
定義5. 本文提出的方案包括6個(gè)算法,定義為
Setup(1λ)→(PP,MSK)系統(tǒng)建立算法由授權(quán)機(jī)構(gòu)運(yùn)行.算法輸入為安全參數(shù),輸出為系統(tǒng)公開(kāi)參數(shù)PP以及系統(tǒng)主密鑰MSK.
SSKeyGen(PP)→(SKS,PKS)搜索服務(wù)器密鑰生成算法由授權(quán)機(jī)構(gòu)運(yùn)行.算法輸入為系統(tǒng)公開(kāi)參數(shù)PP,輸出為搜索服務(wù)器公私鑰對(duì)(SKS,PKS).
KeyGen(PP,MSK,S)→SK密鑰生成算法由授權(quán)機(jī)構(gòu)運(yùn)行.算法輸入為系統(tǒng)公開(kāi)參數(shù)PP、系統(tǒng)主密鑰MSK以及用戶屬性集S,輸出為用戶密鑰SK.
EncIndex(PP,KW,W,PKS)→IX索引算法由數(shù)據(jù)所有者運(yùn)行.算法輸入為系統(tǒng)公開(kāi)參數(shù)PP、數(shù)據(jù)擁有者為數(shù)據(jù)選取的關(guān)鍵詞KW、為索引制定的訪問(wèn)結(jié)構(gòu)W以及搜索服務(wù)器公鑰PKS,算法輸出為索引IX.
GenTrapdoor(PP,SK,SKW)→TR陷門算法由數(shù)據(jù)使用者運(yùn)行.算法輸入為系統(tǒng)公開(kāi)參數(shù)PP、數(shù)據(jù)使用者的密鑰SK和待搜索關(guān)鍵詞SKW,算法輸出為陷門TR.
Search(IX,TR,SKS)→SR搜索算法由搜索服務(wù)器運(yùn)行.算法輸入為索引IX、陷門TR及搜索服務(wù)器私鑰SKS,算法輸出為搜索結(jié)果SR.
2.3安全模型
定義6. 選擇關(guān)鍵詞攻擊安全游戲[6].為保證索引不會(huì)泄漏數(shù)據(jù)擁有者為云端存儲(chǔ)數(shù)據(jù)選取的關(guān)鍵詞信息,方案需要達(dá)到選擇關(guān)鍵詞明文攻擊的不可區(qū)分性安全(IND-CKA).攻擊者和挑戰(zhàn)者之間在選擇模型下的攻擊游戲定義如下:
初始化:敵手選取待挑戰(zhàn)的訪問(wèn)結(jié)構(gòu)W*.
系統(tǒng)建立:挑戰(zhàn)者運(yùn)行系統(tǒng)建立算法,將系統(tǒng)公開(kāi)參數(shù)PP交給敵手.
階段1:敵手發(fā)起多項(xiàng)式次數(shù)的密鑰查詢.敵手向挑戰(zhàn)者提交待查詢的屬性集合S,若S不滿足W*,挑戰(zhàn)者運(yùn)行密鑰生成算法,將該屬性集合對(duì)應(yīng)的密鑰SK交給敵手;否則,挑戰(zhàn)者不響應(yīng)此次查詢.
階段2:階段2與階段1相同,敵手不能查詢滿足訪問(wèn)結(jié)構(gòu)W*的屬性集合S對(duì)應(yīng)的密鑰.
猜測(cè):敵手輸出對(duì)rand的猜測(cè)rand′.
定義7. 關(guān)鍵詞安全性游戲[6].為保證數(shù)據(jù)使用者生成的陷門不會(huì)泄漏其搜索的關(guān)鍵詞信息,方案需要保證陷門中關(guān)鍵詞的安全性.攻擊者和挑戰(zhàn)者之間在選擇模型下的攻擊游戲定義如下:
系統(tǒng)建立:挑戰(zhàn)者運(yùn)行系統(tǒng)建立算法,將系統(tǒng)公開(kāi)參數(shù)PP交給敵手.
階段1:敵手發(fā)起多項(xiàng)式次數(shù)的密鑰和陷門查詢.
OKeyGen敵手向挑戰(zhàn)者提交待查詢的屬性集合S,挑戰(zhàn)者運(yùn)行密鑰生成算法,將該屬性集合對(duì)應(yīng)的密鑰SK交給敵手.
OTrapdoor敵手向挑戰(zhàn)者提交待查詢的屬性集合S和待查詢關(guān)鍵詞,挑戰(zhàn)者運(yùn)行密鑰生成算法與陷門生成算法,將相應(yīng)的陷門TR交給敵手.
階段2:階段2與階段1相同,敵手不能查詢屬性集合S*對(duì)應(yīng)的密鑰及陷門.
猜測(cè):敵手輸出對(duì)rand的猜測(cè)rand′.
3.1ABKS方案
本節(jié)提出一種高效的基于屬性的關(guān)鍵詞搜索加密方案,具體設(shè)計(jì)如下:
Setup(1λ)→(PP,MSK).
系統(tǒng)屬性集合為U,定義訪問(wèn)結(jié)構(gòu)中通配符的最大數(shù)量為N1,正屬性的最大數(shù)量為N2,負(fù)屬性的最大數(shù)量為N3.輸入安全參數(shù)后,授權(quán)機(jī)構(gòu)按照下列步驟執(zhí)行系統(tǒng)建立算法:
1) 選取階為素?cái)?shù)p的乘法循環(huán)群G1,G2,GT,存在雙線性映射e:G1×G2→GT,生成元g1∈G1,g2∈G2.
2) 隨機(jī)選取α,β,γ∈p,計(jì)算
3) 對(duì)屬性集合中的所有屬性,隨機(jī)選取?i∈Uai∈p,計(jì)算Ai,1=,Ai,2=.
4) 選取密碼學(xué)散列函數(shù):H:{0,1}*→p.
SSKeyGen(PP)→(SKS,PKS).
搜索服務(wù)器選取b∈p,其私鑰為公鑰PKS={PKS,1,PKS,2},秘密保存私鑰,并公開(kāi)其公鑰.
KeyGen(PP,MSK,S)→SK.
授權(quán)機(jī)構(gòu)審核用戶提交的屬性集合S,若通過(guò)審核,授權(quán)機(jī)構(gòu)按照下述步驟執(zhí)行密鑰生成算法:
通過(guò)安全信道將密鑰SK={K1,K2,K3}發(fā)送給用戶.
EncIndex(PP,KW,W,PKS)→IX.
索引為
IX={J,IX1,IX2,IX3,IX4}.
GenTrapdoor(PP,SK,SKW)→TR.
數(shù)據(jù)使用者輸入密鑰SK和待搜索關(guān)鍵詞SKW.選取隨機(jī)數(shù)s∈p,計(jì)算搜索陷門為TR={T1,T2,T3}.
Search(IX,TR,SKS)→SR.
搜索服務(wù)器根據(jù)索引中通配符出現(xiàn)的位置J={w1,w2,…,wn1},通過(guò)韋達(dá)定理計(jì)算1.3節(jié)式(2)中的λ={λ0,λ1,…,λn1},計(jì)算:
R=e(IX3,T3)e(IX4,T3),
測(cè)試L=R是否成立,若成立,SR=1,否則SR=0.
3.2正確性分析
分別計(jì)算等式左側(cè)和右側(cè),可得:
R=e(IX3,T3)e(IX4,T3)=
4.1安全性證明
敵手A與仿真器B之間的游戲如下:
初始化:敵手A選取待挑戰(zhàn)的訪問(wèn)結(jié)構(gòu)W*,W*中包含n1個(gè)通配符、n2個(gè)正屬性和n3個(gè)負(fù)屬性,其中,通配符出現(xiàn)的位置為J={w1,w2,…,wn1},正屬性出現(xiàn)的位置為V={v1,v2,…,vn2},負(fù)屬性出現(xiàn)的位置為Z={z1,z2,…,zn3}.
根據(jù)通配符出現(xiàn)位置J={w1,w2,…,wn1}計(jì)算λ={λ0,λ1,…,λn1}.
系統(tǒng)建立:仿真器B運(yùn)行系統(tǒng)建立算法,設(shè)置訪問(wèn)結(jié)構(gòu)中通配符數(shù)量最多為N1≥n1個(gè).選取β,γ∈p,對(duì)系統(tǒng)中的屬性選取ai∈p,Ai,2=.令
將密鑰SK={K1,K2,K3}發(fā)送給用戶;若S滿足W*,仿真器B不響應(yīng)此次查詢.敵手A進(jìn)行多項(xiàng)式次數(shù)的查詢.
階段2:階段2與階段1相同,敵手A不能查詢滿足訪問(wèn)結(jié)構(gòu)W*的屬性集合S對(duì)應(yīng)的密鑰.
1) 若rand′≠rand,則:
2) 若rand′=rand,敵手的優(yōu)勢(shì)為ε,則:
故挑戰(zhàn)者C在DLIN游戲中的優(yōu)勢(shì)為
證畢.
證明. 挑戰(zhàn)者C通過(guò)構(gòu)造仿真器B來(lái)模擬不可區(qū)分游戲.挑戰(zhàn)者C將將群G1中的DDDH數(shù)組yDDDH=(g,ga,gb,Z)交給仿真器B.
敵手A與仿真器B之間的游戲如下:
系統(tǒng)建立:仿真器B運(yùn)行系統(tǒng)建立算法.選取β,γ∈p,y=ga,令f1=gβ,f2=gγ,選取ai∈p,Ai=gai.選取b′∈p令搜索服務(wù)器公鑰為PKS=(gb)b′.將系統(tǒng)公開(kāi)參數(shù)PP交給敵手A.
階段1:敵手A發(fā)起多項(xiàng)式次數(shù)的密鑰和陷門查詢.
OKeyGen:敵手A向仿真器B提交待查詢的屬性集合S,仿真器B按照正負(fù)屬性出現(xiàn)的位置,將S解
將密鑰SK={K1,K2,K3}發(fā)送給用戶.敵手A進(jìn)行多項(xiàng)式次數(shù)的查詢.
OTrapdoor:敵手A向仿真器B提交待查詢的屬性集合S和關(guān)鍵詞SKW,仿真器B運(yùn)行密鑰生成算法與陷門生成算法,選取隨機(jī)數(shù)s∈p,計(jì)算:
將相應(yīng)的陷門TR交給敵手A.
挑戰(zhàn):敵手A向仿真器B提交待挑戰(zhàn)的屬性集合S*及關(guān)鍵詞SKW1,SKW2,階段1中敵手A未查詢S*對(duì)應(yīng)的密鑰及陷門.仿真器B選取隨機(jī)數(shù)rand∈{0,1},運(yùn)行密鑰生成算法與陷門生成算法.選取隨機(jī)數(shù)s′∈p,令s=,計(jì)算:
階段2:階段2與階段1相同,敵手A不能查詢屬性集合S*對(duì)應(yīng)的密鑰及陷門.
1) 若rand′≠rand,則:
2) 若rand′=rand,敵手的優(yōu)勢(shì)為ε,則:
故挑戰(zhàn)者C在DDDH游戲中的優(yōu)勢(shì)為
證畢.
4.2效率分析
方案效率對(duì)于資源受限的移動(dòng)設(shè)備具有重要影響,表1從計(jì)算開(kāi)銷和通信開(kāi)銷2個(gè)方面將本文方案與近年來(lái)的經(jīng)典方案[5,7,19]進(jìn)行效率對(duì)比.
表1中E1,E2分別表示執(zhí)行一次群G,GT上指數(shù)運(yùn)算的時(shí)間,P表示執(zhí)行一次雙線性對(duì)運(yùn)算的時(shí)間,由于上述運(yùn)算的計(jì)算復(fù)雜度遠(yuǎn)遠(yuǎn)高于算法中的其他運(yùn)算,因此計(jì)算復(fù)雜度對(duì)比主要考慮上述運(yùn)算;N表示系統(tǒng)中的屬性總數(shù),ni表示多值與門結(jié)構(gòu)中每個(gè)屬性的屬性值數(shù)量,M表示訪問(wèn)結(jié)構(gòu)中使用的通配符數(shù)量上限,其中M?N;|G|表示群G中元素的長(zhǎng)度,|GT|表示群GT中元素的長(zhǎng)度.
計(jì)算開(kāi)銷對(duì)比如表1中的列2~4所示.由于索引算法、陷門算法由用戶在移動(dòng)終端上執(zhí)行,搜索算法需要搜索服務(wù)器與多個(gè)用戶進(jìn)行交互,這3個(gè)算法的計(jì)算開(kāi)銷對(duì)用戶體驗(yàn)的影響最大,因此主要對(duì)比這3個(gè)算法的計(jì)算復(fù)雜度.如表1所示,本文方案中索引算法的計(jì)算復(fù)雜度與系統(tǒng)屬性線性相關(guān),較文獻(xiàn)[7,19]中的方案具有一定的優(yōu)勢(shì),陷門算法和搜索算法與訪問(wèn)結(jié)構(gòu)中可使用的通配符數(shù)量上限成正比,由于訪問(wèn)結(jié)構(gòu)中可使用的通配符數(shù)量往往遠(yuǎn)小于系統(tǒng)中的屬性數(shù)量,因此較其他方案本文方案中的陷門算法和搜索算法較其他方案具有較低的計(jì)算復(fù)雜度.
通信開(kāi)銷對(duì)比如表1中的后4列所示.在搜索過(guò)程中,移動(dòng)終端用戶與授權(quán)機(jī)構(gòu)、搜索服務(wù)器之間需要傳輸密鑰、索引等參數(shù),這些參數(shù)的長(zhǎng)度將給帶寬受限的移動(dòng)設(shè)備帶來(lái)一定的負(fù)擔(dān),通信開(kāi)銷主要對(duì)公開(kāi)參數(shù)、密鑰、索引和陷門的長(zhǎng)度進(jìn)行對(duì)比.本文方案中索引長(zhǎng)度定長(zhǎng),密鑰長(zhǎng)度和陷門長(zhǎng)度與訪問(wèn)結(jié)構(gòu)中可使用的通配符數(shù)量上限成正比,由于M?N,本文方案中密鑰長(zhǎng)度和陷門長(zhǎng)度較其他方案也具有較短的長(zhǎng)度.此外,本文與文獻(xiàn)[19]移除了安全信道,進(jìn)一步降低了通信開(kāi)銷.
本文通過(guò)仿真實(shí)驗(yàn)對(duì)算法進(jìn)行評(píng)估,實(shí)驗(yàn)的硬件環(huán)境為Intel Core i5,2.4 GHz處理器,操作系統(tǒng)為環(huán)境為64位Windows10操作系統(tǒng),實(shí)驗(yàn)基于Charm[20]架構(gòu),選用JPBC中的D類橢圓曲線.選取系統(tǒng)屬性總量N=50,令通配符總量M從1~10變化.實(shí)驗(yàn)結(jié)果如圖2所示,索引算法隨通配符數(shù)量增加呈線性減少趨勢(shì),而陷門和搜索算法隨之呈線性增長(zhǎng)趨勢(shì).
Fig. 2 The influence of wildcards number on running time圖2 通配符數(shù)量對(duì)方案運(yùn)行時(shí)間的影響
針對(duì)現(xiàn)有ABKS方案計(jì)算開(kāi)銷和通信開(kāi)銷較大,不能較好地支持移動(dòng)設(shè)備的問(wèn)題,本文提出一個(gè)適用于移動(dòng)云存儲(chǔ)環(huán)境的ABKS方案,該方案在標(biāo)準(zhǔn)模型下滿足IND-CKA安全性和關(guān)鍵詞安全性.與經(jīng)典方案相比,本方案具有較低的計(jì)算開(kāi)銷和通信開(kāi)銷.本文的IND-CKA安全性證明是在選擇模型下進(jìn)行的,在未來(lái)研究中將對(duì)方案的安全性進(jìn)行進(jìn)一步提升,構(gòu)造標(biāo)準(zhǔn)模型下完全安全的新方案.
[1] Cui Yong, Song Jian, Miao Congcong, et al. Mobile cloud computing research progress and trends[J]. Chinese Journal of Computers, 2017, 40(2): 273-295 (in Chinese)
(崔勇, 宋健, 繆蔥蔥, 等. 移動(dòng)云計(jì)算研究進(jìn)展與趨勢(shì)[J]. 計(jì)算機(jī)學(xué)報(bào), 2017, 40(2): 273-295)
[2] Sahai A, Waters B. Fuzzy identity-based encryption[G] //LNCS 3494: Proc of the 24th Int Conf on the Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2005: 457-473
[3] Li Hui, Sun Wenhai, Li Fenghua, et al. Secure and privacy-preserving data storage service in public cloud[J]. Journal of Computer Research and Development, 2014, 51(7): 1397-1409 (in Chinese)
(李暉, 孫文海, 李鳳華, 等. 公共云存儲(chǔ)服務(wù)數(shù)據(jù)安全及隱私保護(hù)技術(shù)綜述[J]. 計(jì)算機(jī)研究與發(fā)展, 2014, 51(7): 1397-1409)
[4] Dan B, Crescenzo G D, Ostrovsky R, et al. Public key encryption with keyword search[G] //LNCS 3027: Proc of the 23rd Int Conf on the Theory and Applications of Cryptographic Techniques. Berlin: Springer, 2004: 506-522
[5] Sun Wenhai, Yu Shucheng, Lou Wenjing, et al. Protecting your right: Verifiable attribute-based keyword search with fine-grained owner-enforced search authorization in the cloud[J]. IEEE Trans on Parallel & Distributed Systems, 2016, 27(4): 1187-1198
[6] Zheng Qingji, Xu Shouhuai, Ateniese G. VABKS: Verifiable attribute-based keyword search over outsourced encrypted data[C] //Proc of the 33rd IEEE Int Conf on Computer Communications. Piscataway, NJ: IEEE, 2014: 522-530
[7] Qiu Shuo, Liu Jiqiang, Shi Yanfeng, et al. Hidden policy ciphertext-policy attribute-based encryption with keyword search against keyword guessing attack[J]. Science China Information Sciences, 2017, 60(5): 052105
[8] 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
[9] Emura K, Miyaji A, Omote K, et al. A ciphertext-policy attribute-based encryption scheme with constant ciphertext length[J]. International Journal of Applied Cryptography, 2010, 2(1): 46-59
[10] Zhang Yinghui, Dong Zheng, Chen Xiaofeng, et al. Computationally efficient ciphertext-policy attribute-based encryption with constant-size ciphertexts [G]//LNCS 8782: Proc of the 8th Int Conf on Provable Security. Berlin: Springer, 2014: 259-273
[11] Xiao Siyu, Ge Aijun, Ma Chuangui. Decentralized attribute-based encryption scheme with constant-size ciphertexts[J]. Journal of Computer Research and Development, 2016, 53(10): 2207-2215 (in Chinese)
(肖思煜, 葛愛(ài)軍, 馬傳貴. 去中心化且固定密文長(zhǎng)度的基于屬性加密方案[J]. 計(jì)算機(jī)研究與發(fā)展, 2016, 53(10): 2207-2215)
[12] Nishide T, Yoneyama K, Ohta K. Attribute-based encryption with partially hidden encryptor-specified access structures [G]//Proc of the 5th Int Conf on Applied Cryptography and Network Security. Berlin: Springer, 2008: 111-129
[13] Lai Junzuo, Deng R H, Li Yingjun. Fully secure cipertext-policy hiding CP-ABE [G]//LNCS 6672: Proc of the 7th Int Conf on Information Security Practice and Experience. Berlin: Springer, 2011: 24-39
[14] Phuong T V X, Yang Guomin, Susilo W. Hidden ciphertext policy attribute-based encryption under standard assumptions[J]. IEEE Trans on Information Forensics & Security, 2015, 11(1): 35-45
[15] Jin Cancan, Feng Xinyu, Shen Qingni. Fully secure hidden ciphertext policy attribute-based encryption with short ciphertext size[C] //Proc of the 16th Int Conf on Communication and Network Security. New York: ACM, 2016: 91-98
[16] Baek J, Safavinaini R, Susilo W. Public key encryption with keyword search revisited [G] //LNCS 5072: Proc of the 6th Int Conf on Computational Science and Its Applications. Berlin: Springer, 2008: 1249-1259
[17] Rhee H S, Susilo W, Kim H. Secure searchable public key encryption scheme against keyword guessing attacks[J]. IEICE Electronics Express, 2009, 6(5): 237-243
[18] Fang Liming, Susilo W, Ge Chunpeng, et al. Public key encryption with keyword search secure against keyword guessing attacks without random oracle[J]. Information Sciences, 2013, 238(7): 221-241
[19] Lin Peng, Jiang Jie, Chen Tieming. Application of keyword searchable encryption in cloud[J]. Journal on Communications, 2015, 36(S1): 259-265 (in Chinese)
(林鵬, 江頡, 陳鐵明. 云環(huán)境下關(guān)鍵詞搜索加密算法研究[J]. 通信學(xué)報(bào), 2015, 36(S1): 259-265)
[20] Akinyele J A, Garman C, Miers I, et al. Charm: A framework for rapidly prototyping cryptosystems[J]. Journal of Cryptographic Engineering, 2013, 3(2): 111-128
Attribute-BasedEncryptionwithKeywordSearchinMobileCloudStorage
Su Hang, Zhu Zhiqiang, and Sun Lei
(PLAInformationEngineeringUniversity,Zhengzhou450000)
In recent years, with the further improvement of mobile devices’ performance and the rapid development of mobile Internet, more and more mobile terminals participate in cloud data storage and data sharing. In order to support mobile devices with constrained resource effectively in terms of sharing data safely and efficiently in the cloud, a secure and efficient attribute-based encryption scheme with keyword search (ABKS) is proposed in this paper. The proposed scheme is based on the AND gate access structure with wildcards, which is proven to be IND-CKA (indistinguishable against chosen keyword attack) secure and achieves keyword security under the standard model. The scheme adopts the Viète’s formulas to make each attribute only be represented by one element, and the length of index is constant, the length of trapdoor and secret key and the computation complexity of trapdoor algorithm and search algorithm grow linearly with the maximum number of wildcards that can be used in the access structure, in addition, the scheme removes the secure channel, which reduces the communication overhead further during the transmission process of index and trapdoor. Efficiency analysis shows that compared with other schemes, the proposed scheme has less computation overhead and communication overhead, which is more suitable for mobile cloud storage environment.
mobile cloud storage; searchable encryption; attribute-based encryption (ABE); secure-channel free; Viète’s formulas
TP390
SuHang, born in 1994. Master candidate. Her main research interests include public key encryption.
ZhuZhiqiang, born in 1961. PhD, professor. His main research interests include cloud computing and information security (zhiqiang_zhu_zz@163.com).
SunLei, born in 1973. PhD, professor. His main research interests include cloud computing and information security (sl0221@sina.com).