999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于云霧計算的可追蹤可撤銷密文策略屬性基加密方案

2021-07-02 08:54:26陳家豪殷新春
計算機應用 2021年6期
關鍵詞:用戶

陳家豪,殷新春,2*

(1.揚州大學信息工程學院,江蘇揚州 225127;2.揚州大學廣陵學院,江蘇揚州 225128)

(?通信作者電子郵箱xcyin@yzu.edu.cn)

0 引言

云計算[1]的廣泛應用使得用戶能夠以較低的成本存儲和共享數據。然而,隨著網絡邊緣設備數量的迅速增加,這些設備產生的數據量越來越大,集中的云服務器已經不能高效地處理邊緣設備產生的海量數據。霧計算[2]是對云計算的延伸,它是在邊緣設備和遠端云之間再擴展的一層,也可以叫作邊緣網絡層。在物聯網應用中有些請求的處理不需要放到遠端的云,而是可以直接在距離邊緣設備較近的霧端進行處理。霧計算將云提供的服務擴展到網絡邊緣來提供本地化的服務,這有效滿足了邊緣設備對低時延、移動性支持、位置感知的服務需求。Statista 的報告[3]顯示,全世界的霧計算規模將在2022年達到130億美元。

為了充分利用霧計算技術,Stojmenovic 等[4]引入了云霧設備(cloud-fog-device)體系來提供各種應用服務,包括智能城市、智能電網、智能交通和工業自動化。在該體系中,數以千計的云被用來存儲數據;數百萬個霧節點被用來減少數據傳輸期間的工作負載和帶寬;數十億個邊緣設備用于請求和上傳數據。其中,霧節點在維護高速緩存的數據方面發揮著重要作用,并為數據的智能處理提供了協同合作。霧節點的目的是幫助邊緣設備克服資源限制,以減少數據傳輸期間的帶寬成本。以智能交通為例,云霧設備體系實現了應用服務器與車輛之間的高效數據通信。具體而言,云從應用服務器接收消息,并轉發到相應的霧節點,霧節點將消息傳送到終端設備。

然而,云霧計算并不是完全可信的,如果不能很好地解決其中的安全和隱私保護問題,那么這將嚴重阻礙云霧計算的發展[5-8]。Stojmenovic 等[4]指出,霧節點在分發身份驗證信息和收集審核日志時,與遠程云的連接不穩定,因此容易遭受中間人攻擊。這種脆弱的連接降低了在遠程云服務器上執行身份驗證協議的可靠性。Huang 等[7]隨后引入了一種帶有獨立身份驗證(Stand-Alone Authentication,SAA)的新機制,以實現用戶身份驗證從而適應不穩定的連接情況。但是,要采用SAA,需要保護霧節點與用戶之間的身份驗證信息,這又帶來了額外的存儲開銷。數據加密是進行安全數據共享的常用方法,但是在傳統的云霧計算中,基于公鑰基礎設施的身份驗證困難且效率不高。屬性基加密(Attribute-Based Encryption,ABE)[9-11]機制能克服這一障礙,它無需事先知道數據接收者的具體身份,卻能夠實現靈活的一對多加密,同時能實現對數據的細粒度訪問控制。Sahai 等[9]首次提出了ABE 機制。隨后Goyal 等[10]首次提出了基于密鑰策略的屬性基加密(Key-Policy Attribute-Based Encryption,KP-ABE)方案,其中在密鑰中指定訪問策略,在密文中指定屬性集合,只有當密文的屬性集合滿足密鑰所指定的訪問策略時才能解密。Bethencourt等[11]首次提出基于密文策略的屬性基加密(Ciphertext-Policy Attribute-Based Encryption,CP-ABE)方案,與KP-ABE 構造相反,它在密文中指定訪問策略,在密鑰中指定屬性集合,只有當密鑰的屬性集合滿足密文指定的訪問策略時才能解密。因為CP-ABE 方案不僅可以對數據共享進行細粒度的訪問控制,而且數據加密者可以定義訪問策略,所以CP-ABE 得到了更廣泛的應用。

雖然屬性基加密具有廣闊的應用前景,但是在實際應用中,存在惡意用戶將解密密鑰泄漏給ABE 系統中的第三方的情況。由于解密密鑰與屬性相關聯,因此無法確定泄漏解密密鑰的用戶。例如,Alice 擁有屬性集{計算機系,教授,女性}而Bob 擁有屬性集{計算機系,教授,男性}。假設根據訪問策略{計算機系and 教授}生成一條密文,由于Alice 和Bob 都具有相同的屬性子集{計算機系,教授},他們都能夠解密這個密文,如果解密密鑰泄露,則無法確定是Alice 還是Bob 泄漏了密鑰。為了解決惡意用戶密鑰泄露的問題,Liu等[12]提出了第一個白盒可追蹤CP-ABE 方案,接著,Ning 等[13-14]提出了兩個白盒可追蹤CP-ABE 方案,它們分別支持大屬性空間和靈活的屬性集。盡管上述方案能夠追蹤到惡意用戶,但無法有效地撤銷他們的訪問權限。為滿足這一實際要求,文獻[15-18]提出了許多可撤銷的基于屬性的加密(Revocable Attribute-Based Encryption,RABE)方案。目前主要有兩種撤銷機制:間接撤銷和直接撤銷。對于前者,屬性權威機構需要與未撤銷的用戶通信并發送更新信息,系統中存在大量用戶時,這將導致大量的通信開銷。而對于后者,用戶不必與更新撤銷列表的屬性權威機構進行通信。高嘉昕等[16]提出了一個支持屬性撤銷的可追蹤外包屬性加密方案,其中屬性撤銷需要利用重加密方法更新用戶密鑰,這導致了大量的通信開銷。明洋等[18]提出了一個支持直接撤銷的可驗證外包的屬性加密方案,該方案為每個屬性引入了版本密鑰,增加了用戶的存儲開銷,且該方案只實現了屬性層面的撤銷,并未對用戶層面進行撤銷。目前,文獻[19-23]提出了許多可直接撤銷的屬性基加密方案。Shi等[22]提出了一個有效的撤銷方案,其中數據服務管理者只需更新與最新撤銷列表R'相關的部分密文。但Shi等[22]只是專注于KP-ABE的撤銷,且不支持外包解密。

為了解決上述問題,本文提出了一個在云霧環境下的支持用戶撤銷的可追蹤可外包解密的密文策略屬性基加密方案。本文的主要工作如下:

1)支持惡意用戶的追蹤和撤銷。在本文的方案中,解密密鑰分為兩部分:一部分與屬性集相關,另一部分與二叉樹中葉子節點存儲的用戶身份有關,與Liu 等[12]的方案相比,本文方案不需要額外的身份列表來存儲用戶的身份。密文分為兩部分:一個與訪問策略相關,另一個與撤銷列表相關。在解密密鑰泄露的情況下,可以從解密密鑰中追蹤到該用戶的身份,并將其添加到撤銷列表中,以此來撤銷其訪問權限。

2)支持霧計算與外包解密。本文方案針對實際應用中邊緣設備計算能力不足、通信延時較大等缺陷,在云計算技術和傳統的屬性基加密的基礎上,加入了霧計算與外包解密技術。在本文中,霧節點與云服務器進行通信,而邊緣設備只需與本地霧節點進行通信,從而能有效降低設備的通信延時與響應時間。同時,利用霧節點進行外包解密,能夠顯著減少解密的計算量,提高邊緣設備的解密效率。

安全性分析表明,本文方案在判定性q-BDHE(decisionalq-Bilinear Diffie-Hellman Exponent)假設下是 IND-CPA(INDistinguishability Chosen-Plaintext Attack)安全的,且在l-SDH(l-Strong Diffie-Hellman)假設下可抵抗密鑰偽造攻擊。性能分析表明,本文所提的方案在系統功能和計算開銷方面相較其他方案更具有優勢。

1 預備知識

1.1 符號介紹

本文方案中使用到的一些符號的定義如表1所示。

表1 相關符號及定義Tab.1 Related notations and their definitions

1.2 雙線性映射

令G和GT是兩個階為素數p的乘法循環群,g是G的一個生成元。存在一個雙線性映射e:G×G→GT,滿足如下性質:

1)雙線性性:?u,v∈G,?a,b∈Zp,有e(ua,vb)=e(u,v)ab。

2)非退化性:e(g,g) ≠1。

3)可計算性:對?u,v∈G,都存在有效算法去計算e(u,v)。

1.3 訪問策略

設{P1,P2,…,Pn}為n個參與者的集合。對于集合如果 ?B,C?{P1,P2,…,Pn},B∈C,B?C?C∈A,則稱集合A是單調的。其中屬于A的集合稱為授權集;否則,稱為非授權集[24]。

舉例來說,對于{A,B,C,D},單調集合{{A,B},{B,C},{C,D},{A,B,C},{A,B,D},{A,C,D},{B,C,D}}就是一個單調訪問策略,{A,B},{B,C},{C,D}是三個授權集合,而{A,D}則是一個非授權集合。通常來說,單調訪問策略可以表示成不包含“非”的布爾公式;非單調的訪問策略,可以用包含“非”的布爾公式來表示。

1.4 線性秘密共享方案

令V 表示屬性全集,p表示一個素數。秘密空間Zp上的秘密共享方案Π,實現了V 上的訪問策略。如果秘密分享方案Π滿足以下兩個性質[23],則Π是線性的。

1)秘密s∈Zp分割成的每一個部分對應了V 中的一個屬性,且每個部分構成Zp上的一個向量。

2)對于訪問策略S=(M,ρ),M是一個l×n的秘密分享矩陣。函數ρ將M的第i∈{1,2,…,l}行映射到全集V的一個屬性ρ(i)。通過這樣的映射,矩陣M的每一行都代表V 上的一個屬性。例如,構造一個列向量u=(s,y2,y3,…,yn)T,其中y2,y3,…,yn∈Zp是隨機數,用于隱藏要共享的秘密值s。則是l行1列的向量,也就是把秘密值s根據Π 分成了l個部分。(Mu)i對應屬性ρ(i),其中i∈[l]。

如文獻[24]中所示,符合以上定義的線性秘密共享方案(Linear Secret Sharing Scheme,LSSS)可以進行線性重構算法Recon。Recon 的具體定義如下:Π 為訪問策略S上的線性秘密共享方案,P∈S為任意授權集合,集合I={i∈[l]∧ρ(i)∈P}且I?{1,2,…,l}。對于秘密s的任意合法分享{λi=(Mu)i}i∈I,存在常量集合{σi∈Zp}i∈I可以在多項式時間內計算出來。而對于非授權集合p',則不存在{σi}i∈I這樣的常量集合。

1.5 二叉樹

令U為系統中的用戶集合,R為撤銷列表,則在二叉樹[25]中定義:

1)一個二叉樹T 的葉子節點只關聯一個用戶。令root為根節點,|U|為用戶數,則樹中的節點數為2|U|-1,使用寬度優先搜索為樹中節點編號。例如,根節點為1,最后一個節點為2|U|-1。

2)path(i)定義為從根節點到節點的路徑。

3)最小包含集合cover(R)是所有未在撤銷列表內的用戶的最小集合[26]。令ui為撤銷列表R中的用戶,xl和xr分別為x節點的左右孩子節點,定義一個可以以最少節點表示不在R中節點的算法使得cover(R)=Covernodes(T,R),其中Covernodes(T,R)定義如算法1所示。

4)若一個用戶不在撤銷列表中,則存在一個唯一的節點j=cover(R) ∩path(u)。

如圖1所示,撤銷列表為R={u5,u8}={11,14},所以cover(R)={1,12,13}。已知u3的路徑path(u3)=path(9)={0,1,4,9},因此這個唯一的節點j=cover(R)∩path(u8)={1}。

圖1 二叉樹Fig.1 Binary tree

算法1Covernodes。

1.6 復雜性假設

q-BDHE(q-Bilinear Diffie-Hellman Exponent)假設[27]:選取階為素數p的乘法循環群G和GT,g是群G的生成元,e為雙線性映射e:G×G→GT,隨機選取d,s∈Zp,隨機選取F∈GT。給定y=令,F為GT中的隨機元素,如果|Pr [B(y,T=Pr [B(y,T=F)=0]|≥ε,即B能夠在多項式時間內區分T和F,則稱B能以優勢ε解決q-BDHE假設。

定義1若不存在一個算法可以在多項式時間內以不可忽略的優勢解決q-BDHE問題,則稱q-BDHE假設成立。

l-SDH(l-Strong Deffie-Hellman)假設[19]:選取階為素數p的乘法循環群G,g是群G的生成元,隨機選取x∈Zp。給定一個l+1元組作為輸入,輸出一個配對如果(c,g1/(c+x))]|≥ε,即B能夠正確輸出配對則稱B能以優勢ε解決l-SDH假設。

定義2若不存在一個算法可以在多項式時間內以不可忽略的優勢解決l-SDH問題,則稱l-SDH假設成立。

2 系統和安全模型

在本文中,考慮如下應用場景。某地的汽車銷售服務公司(以下簡稱公司)為其售出的車輛提供基于云霧計算的數據共享服務。為了實現細粒度的訪問控制和支持一對多的通信模式,公司需要為加密數據制定靈活的訪問策略。在該項服務中,每個車輛會被分配一系列屬性,如{“2014 年生產”,“A品牌”,“SUV”}。作為一種強大的“一對多”加密機制,密文策略屬性基加密(CP-ABE)非常適合該應用場景。出于安全考慮,發送方需要先使用CP-ABE 技術加密其信息,然后再上傳至本地的霧節點,霧節點分析密文是否有長期用途(longterm),如果密文有長期用途,則由霧節點上傳至云服務器(以分擔霧節點存儲壓力),否則存在本地或者轉發給其他霧節點。如公司需要召回一批2014 年生產的A 品牌的運動型多用途汽車(Sport Utility Vehicle,SUV),這批車輛的剎車存在重大安全隱患,為了保障用戶隱私安全同時避免此安全隱患被不法分子獲悉,公司需要加密消息并嵌入訪問策略為“2014年生產∧A 品牌∧SUV”,以確保只有滿足此訪問策略的車輛才能解密該密文。此密文有長期用途,由公司上傳至本地霧節點并由霧節點上傳至云服務器。若該公司為了答謝客戶,準備在“雙十一”舉辦一個限時優惠活動。為了確保目標客戶能夠接收到消息且該消息不被其他汽車保養公司所獲得,該公司需要加密消息并嵌入訪問策略為“B品牌∧轎車”,以確保只有滿足此訪問策略的車輛才能解密該密文。此密文僅有短期用途(short-term),由發送方上傳至本地霧節點并存儲,若本地霧節點存儲能力不夠,則將此消息發送給相鄰的霧節點存儲。只要車輛的屬性滿足密文中嵌入的訪問策略,則由霧節點先進行密文的外包解密,之后將半解密密文發送回車輛,車輛利用自己的密鑰解密從而獲得明文。

2.1 系統模型

本文方案的系統模型一共包含5個部分,如圖2所示:

圖2 本文方案的系統模型Fig.2 System model of proposed scheme

1)可信權威機構負責生成系統公共參數和主私鑰,還負責車輛的注冊、密鑰分發。一旦發現有密鑰被泄露,可信權威機構就調用跟蹤算法對該密鑰進行追蹤,找到泄露解密密鑰的惡意用戶,并將惡意用戶的身份加入撤銷列表中。

2)車輛是資源受限的設備,主要進行以下工作:

①車輛向本地霧節點請求相關密文。

②車輛將需要分享的數據進行加密并且傳送給本地霧節點。

3)公司根據可信權威機構發布的公共參數和撤銷列表,制定相應訪問策略,并將消息加密后傳送給霧節點。

4)霧節點(Fog Node,FN)是邊緣服務器,負責以下工作:

①FNs充當高速緩存,存儲具有短期目的的數據和信息。

②FNs將具有長期目的的數據轉發到云服務器。

③在從車輛接收數據查詢之后,FNs 首先搜索本地存儲并與其他FNs 進行交互。如果請求不到查詢的密文,則FNs向云服務器請求密文。

值得注意的是,盡管允許車輛與云服務器直接通信,但是由于云服務器存在遠端而FNs 在實際情況下更接近車輛,因此車輛與云服務器直接通信會占用更多帶寬。

5)云服務器(Cloud Server,CS),具備大量存儲空間,可以容納數據,還可以通過公共通道將加密的數據共享給FNs。

2.2 形式化定義

本文方案主要由以下6 個算法組成,分別是系統初始化算法Setup、加密算法Encrypt、用戶密鑰生成算法KeyGen、外包解密算法Transform、解密算法Decrypt 和追蹤算法Trace。各算法分別定義如下:

1)Setup(λ,A,T) →(PP,MSK,R,List):該算法由可信權威機構執行,算法的輸入為安全參數λ、屬性全集A和二叉樹T,輸出系統公共參數PP和主私鑰MSK,并將PP公開??尚艡嗤C構還初始化一個空的撤銷列表R和一個空的追蹤列表List。

2)Encrypt(PP,m,(M,ρ),R) →CT:該算法由發送者執行,算法輸入公共參數PP、要發送的明文消息m、一個LSSS訪問策略(M,ρ)和撤銷列表R,輸出密文CT。

3)KeyGen(MSK,u,S) →SK:該算法由可信權威機構來執行,算法輸入主私鑰MSK、用戶身份u、用戶屬性集S,輸出用戶密鑰SK,并將SK發送給車輛。SK包含兩部分,分別是用戶轉換密鑰TK與用戶個人密鑰UK。

4)Transform(CT,TK) →CT':該算法由霧節點執行,該算法輸入密文CT和用戶轉換密鑰TK,輸出半解密密文CT',并將CT'發送給車輛。

5)Decrypt(UK,CT') →m:該算法由接收者執行,輸入用戶個人密鑰UK和半解密密文CT',輸出明文m。

6)Trace(PP,R,SK) →uoru?:該算法由可信權威機構執行,輸入公共參數PP、撤銷列表R、用戶密鑰SK,如果追蹤到了惡意用戶,則輸出該用戶的身份u,否則輸出u?。

2.3 密鑰偽造攻擊安全模型定義

本文采用文獻[28]定義的密鑰偽造攻擊模型,其中密鑰偽造攻擊定義可以通過一個挑戰者B和一個攻擊者Adv之間的安全游戲來描述,具體步驟如下所示:

1)初始化:挑戰者B運行Setup 算法,并將公共參數PP發送給攻擊者Adv。

2)密鑰詢問:攻擊者Adv向挑戰者B詢問與屬性集(u1,S1)(u2,S2)…(uq,Sq)相關的用戶密鑰,其中ui∈R或者SI?(M,ρ),i=1,2,…,q。B運行KeyGen 算法并返回相應的密鑰。

3)密鑰偽造:攻擊者Adv輸出一個用戶密鑰SK*。如果Trace(PP,R,SK*)≠⊥,并且Trace(PP,R,SK*)?{id1,id1,…,idq},其中idi(i=1,2,…,q)為用于詢問的用戶身份,攻擊者Adv贏得上述游戲。

攻擊者Adv贏得上述游戲的優勢定義為:

ε=Pr [Trace(PP,R,SK*)?{ ⊥,id1,id2,…,idq}]。

定義3若不存在多項式時間攻擊者能以不可忽略的優勢贏得上述游戲,那么稱本文提出的方案是可抵抗密鑰偽造攻擊的。

2.4 選擇明文攻擊安全模型定義

本文采用文獻[27]定義的安全模型,該模型定義為挑戰者B與攻擊者Adv之間交互的安全游戲,該游戲是選擇明文攻擊(Chosen Plaintext Attack,CPA)下的不可區分性(INDistinguishability,IND)游戲。具體描述如下:

1)初始化:攻擊者Adv選擇要挑戰的一個訪問策略(M*,ρ*)并將其發送給挑戰者B,其中M*是一個l*×n*的矩陣,函數ρ*把矩陣M*的一行映射成一個屬性ρ*(i)。

2)系統建立:挑戰者B運行Setup 算法,將公共參數PP發送給攻擊者Adv。

3)階段1:攻擊者Adv向挑戰者B詢問與屬性集(u1,S1)(u2,S2)…(uq,Sq)相關的用戶密鑰。

①若Si?(Μ*,ρ*)且ui?R*,則不做處理。

②若S?(M,ρ) 或ui∈R*,挑戰者B生成一個與屬性(ui,Si)相關的用戶轉換密鑰,并將它發送給攻擊者Adv。

4)挑戰:攻擊者Adv向挑戰者B提交2 個等長的消息m0和m1。挑戰者擲一枚均勻的硬幣η∈{0,1},并在訪問策略(Μ*,ρ*)和撤銷列表R*下加密mη生成挑戰密文CT*。挑戰者B將CT*發送給攻擊者Adv。

5)階段2:階段2重復階段1的步驟。

猜測:攻擊者Adv輸出對η的猜測η',若η=η',則攻擊者Adv贏得游戲。

攻擊者Adv贏得上述游戲的優勢定義為:

ε=|Pr [η'=η]-1/2|

定義4若不存在多項式時間攻擊者能以不可忽略的優勢贏得上述游戲,那么認為本文提出的方案是IND-CPA 安全的。

3 本文方案

3.1 方案工作流程

本文方案可分為4個階段:

1)系統初始化??尚艡嗤C構運行Setup 算法生成公共參數PP,并將PP發送給各個實體??尚艡嗤C構運行KeyGen算法為每個用戶生成密鑰SK,并通過安全信道發送給車輛。

2)數據上傳。數據發送者將數據加密并上傳至本地霧節點。FNs 分析密文是否具有長期用途,若密文僅有短期用途,則FNs將此密文存儲在本地,若本地節點存儲容量不夠,則將此密文轉存至相鄰的FNs。若密文具有長期用途,FNs將密文上傳至云服務器保存。

3)數據下載。當車輛向本地FNs請求密文時,FNS首先在本地尋找符合要求的密文,如果沒有找到,則此FNs 向其他FNs 與CS 請求密文,霧節點將獲取到的密文進行外包解密,并將半解密密文發送給車輛,由車輛進行最終解密。

4)惡意用戶追蹤與撤銷。在用戶密鑰泄露的情況下,可信權威機構可以從該密鑰中追蹤到惡意用戶的身份,并將其添加到撤銷列表中,以此來撤銷其訪問權限。

3.2 方案構造

本節主要展示方案的具體構造并對相關參數進行說明。在本文的方案中,二叉樹用于實現追蹤和撤銷,用戶密鑰分為兩個部分:一部分與用戶的身份有關,另一部分與用戶的屬性集有關。密文包含兩個部分:一部分與撤銷列表相關,另一部分與訪問策略相關。當且僅當用戶密鑰中的屬性滿足密文中的訪問策略并且用戶身份不在撤銷列表中時,該用戶才能解密密文。具體方案如下:

1)Setup(λ,A,T) →(PP,MSK,R,List)。

Setup 算法由可信權威機構執行,算法的輸入為安全參數λ、屬性全集A和二叉樹T,輸出系統公共參數PP、主私鑰MSK、撤銷列表R和追蹤列表List。該算法選取階為p的循環群G和GT,G的生成元為g,e:G×G→GT為雙線性映射。U為用戶集合,R是一個撤銷列表(初始化為空),List是一個追蹤列表(初始化為空),T 是一個滿二叉樹,樹上的每一個葉子節點分別對應一個用戶u,樹的深度為d。因此用戶數目最多為|U|=2d,樹中的節點數為2|U|-1。算法做如下運算:

①隨機選取α,α∈Zp,h∈G,一個抗碰撞的哈希函數H:{0,1}*→G。

②對?x∈A,選擇Ax∈G。

③對樹中的每一個節點,在Zp中隨機選取X={xi}i∈[2|U|-1],計算Y=

系統按照以下格式公布公共參數(PP)并保存主私鑰和追蹤列表(MSK,List):

PP=(g,h,e(g,g)α,ga,H,R,(Ax)x∈A,A)

MSK=(α,a,X)

List=?

2)Encrypt(PP,m,(M,ρ),R) →CT。

Encrypt 算法由公司執行,算法輸入公共參數PP、撤銷列表R、要發送的消息明文m和訪問策略(M,ρ),輸出密文CT。其中M是一個l×n的矩陣,函數ρ把矩陣M的一行映射成一個屬性ρ(i)。隨機選擇s,v2,v3,…,vn∈Zp,并設置向量μ=(s,v2,v3,…,vn)T,其中s是用于分享的隨機秘密值。對所有的i=1,2,…,l,計算λi=Mi×μ,其中Mi表示矩陣M的第i行。

①首先,設置如下與訪問策略關聯的部分密文:

②對?j∈cover(R),有path(j)={i0,i1,…,idept(j)},其中i0=root,idept(j)=j。然后,設置如下與撤銷列表R相關的部分密文:

③最后構成完整的密文如下:

CT=(C,C0,C0',{Ci}i∈[l],{Wj}j∈cover(R),(M,ρ),R)

3)KeyGen(MSK,u,S) →SK。

KeyGen 算法由可信權威機構來執行,算法輸入主私鑰MSK,身份u,用戶屬性集S,輸出用戶密鑰SK,SK由用戶轉換密鑰TK與用戶個人密鑰SK組成。隨機選擇r,t,z∈Zp。計算c=H(id),其中id是與用戶u相關聯的葉子節點的值,然后把二元組(c,id)加入列表List。

①首先,設置如下與用戶屬性集相對應的部分密鑰:

②令path(id)={i0,i1,…,id},i0=root,id是與用戶u相關聯的葉子節點。隨機選取b∈Zp,設置與用戶身份u關聯的部分密鑰,如下所示:

③用戶轉換密鑰TK與用戶個人密鑰UK如下所示:

④最后構成完整用戶密鑰如下:

SK=(TK,UK)

4)Transform(CT,TK) →CT'。

Transform 算法由霧節點執行,該算法輸入密文CT和用戶轉換密鑰TK,輸出半解密密文CT'。該算法的輸出存在以下兩種情況:

情況1 若用戶的身份u∈R或者用戶屬性集S不滿足密文的訪問策略(M,ρ),算法輸出⊥。

情況2 若用戶身份u?R且用戶屬性集S滿足密文的訪問策略(M,ρ),算法執行如下運算:

①因為u?R,所以存在一個節點j=cover(R) ∩path(u)。令path(j)={i0,i1,…,idept(j),…,id},其中,idept(j)=j,id是與用戶u相關聯的葉子節點。計算

②對于S∈(M,ρ),令I={i:ρ(i)∈S}?{1,2,…,l},存在{ci|i∈I}使得{ciMi=(1,0,…,0)},因此,有

③最終,計算:

系統輸出半解密密文CT'。

5)Decrypt(UK,CT') →m。

Decrypt 算法由車輛執行,輸入半解密密文CT'和用戶個人密鑰UK,輸出明文m:

6)Trace(PP,R,SK) →uoru?。

Trace 算法由可信權威機構執行,輸入公共參數PP,撤銷列R,用戶密鑰SK,輸出跟蹤到的惡意用戶u或u?。

若用戶密鑰SK符合以下三個檢測:

1)K'∈Zp,K,L,L',Kx,D,E∈G。

2)e(g,L')=e(ga,L) ≠1。

3)?x∈S,s.t.e(Ax,LK'L)=e(g,Kx)≠1。

那么用戶密鑰SK是完整的,否則算法直接輸出符號⊥表示密鑰不完整,無法進行追蹤。對于通過上一步完整性檢查的用戶密鑰,算法在列表List中根據密鑰中的K'查找對應的用戶u。如果找到了K',算法輸出K'對應的id,該用戶就是被追蹤的惡意用戶,并將其身份u加入撤銷列表R;否則,輸出u?表示沒有查找到惡意的用戶。

4 安全性分析

4.1 密鑰偽造攻擊

定理1令q為攻擊者Adv查詢密鑰的次數,若l-SDH 困難性假設成立,則方案在q<l的情況下是可抵抗密鑰偽造攻擊的。

證明 假設存在一個多項式時間的攻擊者Adv在經過了q(l=q+1)次密鑰查詢之后可以以不可忽略的優勢ε贏得密鑰偽造攻擊游戲。那么能夠構造一個概率多項式時間算法B以不可忽略的優勢攻破l-SDH 困難性假設。選取階為p的乘法循環群G和GT,G的生成元為g,e:G×G→GT為雙線性映射,g1∈G,a∈Zp。給出實例B的目標是輸出cr∈Zp和wr∈G并滿足,從而解決l-SDH 假設。令Ai=B以挑戰者的身份與Adv進行密鑰偽造攻擊游戲。

1)初始化。B隨機選取q個不同的值c1,c2,…,cq∈Zp,隨機選取α,θ∈Zp,u∈G。令多項式f(y)=展開f(y),可以得到形如f(y)=的表達式,其中αi∈Zp(i=0,1,…,q),是多項 式f(y) 展開式中各項的系數。B計算g和ga:

對每一個屬性x∈A,隨機選取ux∈Zp,令。對二叉樹T中的每個節點,在Zp中隨機選取X={xi}i∈[2|U|-1],計算i∈[2|U|-1]。公共參數如下所示:

PP=(g,h,e(g,g)α,ga,H,(Ax)x∈A,Y)

2)密鑰詢問。Adv提交(ui,Si)給B,詢問用戶ui的密鑰SKi。假設這是Adv的第i次詢問(i≤q)。令多項式fi(y)=B計算,然后B隨機選取t,r∈Zp并計算:K'=ci,K=(σi)α/z+αrhrt,L=grt,L'=(ga)rt,令path(ui)={i0,i1,…,id},其中i0=root,id是與用戶ui相關聯的葉子節點。B隨機選擇b∈Zp,令,E=gb。最終B將密鑰SKi=(K',K,L,L',,D,E,發送給Adv。SKi表示Adv第i次詢問得到的用戶密鑰。

3)密鑰偽造。Adv將用戶密鑰SK*提交給B,令εA表示Adv贏得密鑰偽造攻擊游戲。即SK*滿足用戶密鑰格式檢查的3個條件,并且K'?{c1,c2,…,cq}。存在以下兩種情況:

①假設εA未發生,則不作處理。

②假設εA發生了,B設置一個多項式f(y)=γ(y)·(y+K')+γ-1,其中γ(y)=且γ-1∈Zp,由于(y+ci),ci∈Zp,K'?{c1,c1,…,cq},即(y+K')不能整除f(y)。假設L=grt(r,t∈Zp且未知),可以得到L'=gart。根據e(LK'L',Λ)=e(L,gα),得到Λ=,令:

B計算一個二元組(cr,wr)如下所示:

以下論證B攻破l-SDH 困難性假設的優勢。令ξ表示(cr,wr)是l-SDH 挑戰問題的解決方案,可以通過檢查wr)=e(g1,g1)是否成立來進行驗證。當B隨機選擇(cr,wr)時,ξ的發生概率可以忽略不計。在(Adv·wins∧gcd(γ-1,p)=1)的情況下,(cr,wr)滿足=e(g1,g1)的概率為1。當B輸出(cr,wr)時,假設Adv贏得游戲的概率為ε。

所以,B以如下概率贏得了l-SDH游戲:

4.2 IND-CPA安全性分析

定理2假設判定性q-BDHE 困難性假設成立,那么在選擇訪問策略和選擇明文攻擊下,不存在多項式時間的攻擊者Adv能以不可忽略的優勢攻破本文的系統(q>2|U|-1,|U|是系統中用戶個數)。

證明 如果存在一個多項式時間攻擊者Adv能以優勢ε攻破本文的系統,那么本文能創建一個挑戰者B以優勢ε/2解決q-BDHE 問題。選取階為p的乘法循環群G和GT,G的生成元為g。令e:G×G→GT為雙線性映射。證明過程如下:

1)初始化。Adv選擇一個要挑戰的訪問策略(M*,ρ*),其中M*是一個l*×n*的矩陣,n*≤q。

2)系統建立。B執行如下操作:

①選擇α∈Zp使得e(g,g)α=·e(g,g)α',由此可得α=α'+dq+1。

②對x∈[|U|],隨機選擇一個值zx∈Zp。每個組元素Ux∈G定義如下。

若存在i∈{1,2,…,l*} 使得ρ*(i)=x,令Ux=。

若不存在i∈{1,2,…,l*}使得ρ*(i)=x,令Ux=。

③隨機選取a∈Zp,計算ga,令h=gd。

④給定撤銷列表R*,令={i∈path(u)|u∈R*}。每個組元素yi∈G(i=1,2,…,2|U|-1)定義如下:

若i∈IR*,隨機選取vi∈Zp,令yi=,令xi=di+vi;否則,令,令xi=dq+vi。

公共參數如下所示:

PP=(g,h,e(g,g)α,ga,H,(Ax)x∈A,Y)

3)階段1。在本階段,Adv向B詢問與一系列與(u,S)相關的用戶密鑰。

情況1 如果S?(Μ*,ρ*)且ui?R*,則不作處理。

情況2 如果S?(M,ρ)或ui∈R*,B隨機選取r,c∈Zp并計算K',K,L,L',Kx。

path(u)={i0,i1,…,id},其中i0=root,id是與用戶u相關聯的葉子節點。由于u∈R*,可以得到和,k=0,1,…,d,因此。B選取b'∈Zp,并計算D、E。

情況3 如果S?(M*,ρ*)且ui∈R*,B進行如下運算:

①令I={i:ρ*(i)∈S}?{1,2,…,l},ω1=-1,存在向量使得

②隨機選取r,c∈Zp,令K'=c。

③隨機選取β∈Zp,令:

④計算L,L',K。

⑤對?x∈S,計算Kx。若不存在i使得ρ*(i)=x,令Kx=;否則,存在i,使得ρ*(i)=x,設置Kx如下:

⑥按照情況2的步驟計算D、E。

情況4 如果S?(M*,ρ*)且ui?R*,B按照情況3 的步驟計算K',K,L,L',Kx,假設path(u)={i0,i1,…,id},其中i0=root,id是與用戶u相關聯的葉子節點。由于u?R*,則ik?和=dq+vi,k=0,1,…,d。因此。B隨機選取b'∈Zp并計算D、E。

4)挑戰。Adv向B提交2 個等長的消息m0,m1,B做如下運算:

①B擲一枚均勻的硬幣η∈{0,1}并計算Cη,C0,C0':

Cη=mη·W·e(gs,gα')

C0=gs

C0'=(ga)s

②隨機選取r2',r3',…,rn*'∈Zp,并計算v。

③計算Ci=

④對?j∈cover(R*),定義path(j)={i0,i1,…,idepth(j)},i0=root,idepth(j)=j。由于?j∈cover(R*),可得xj=aq+,yj=令Tj=

最終,B輸出密文CT并將它發送給Adv。

CT=(Cη,C0,C0',{Ci}i∈[l],{Wj}j∈cover(R))。

5)階段2。階段2重復階段1的步驟。

6)猜測。Adv輸出對η的猜測η',若η'=η,B輸出對v的猜測v'=1;否則,B輸出對v的猜測v'=1。

①當v=0 時,Z=且Adv獲取到了一個合法的密文。假定Adv的優勢ε=Pr [η=η'|v=0]-由于Pr [η=η'|v=0]=Pr [v=v'|v=0],因此B贏得游戲的概率是Pr [v=v'|v=0]=ε+

②當v=1時,Z是GT中的隨機元素,因此,Adv無法獲得η的任何信息。在此情況下,Adv沒有任何優勢,所以Pr [η≠η'|v=1]=由于Pr [η≠η'|v=1]=Pr [v=v'|v=1],因此B贏得游戲的概率是Pr [v=v'|v=1]=

最終,B解決q-BDHE困難性假設的總體優勢為:

5 方案對比

對本文方案和文獻[22]方案、文獻[29]方案、文獻[30]方案、文獻[31]方案、文獻[32]方案的功能和效率進行了評估和比較,由于此5 個方案與本文方案在系統功能上有部分相似點,故選擇此5 個方案進行對比。具體對比情況如表2~3所示。

在表2 中,進行了功能的對比,其中文獻[22]方案提出了一個可追蹤的屬性基加密方案。然而,該方案僅支持密鑰策略屬性基加密,且未實現用戶撤銷與外包解密的功能。文獻[29]方案雖然支持用戶的撤銷,與本文方案相比,文獻[29]方案僅通過密鑰更新來實現撤銷,發生撤銷時,需要更新所有未被撤銷的用戶的密鑰,這增加了系統的計算開銷與通信開銷。文獻[30]方案實現了支持外包解密的屬性基加密方案,但沒有實現用戶追蹤,當用戶泄露自己的密鑰給第三方時,無法有效追蹤到惡意的用戶。文獻[29]方案與文獻[31]方案實現了可追蹤可撤銷的屬性基加密方案,與本文方案相比,文獻[29]方案與文獻[31]的方案不支持外包解密。文獻[32]方案雖然也實現了云霧計算下的可撤銷屬性基加密方案,但是不支持惡意用戶追蹤,且僅可以抵抗選擇明文攻擊。本文方案可以抵抗選擇明文攻擊和密鑰偽造攻擊。考慮到本文應用場景中,車輛作為一個邊緣設備,并不具備強大的計算能力。因此,本文方案在保證數據機密性的前提下將部分解密計算外包給計算能力較強的霧節點,能夠有效減輕車輛的計算開銷。

表2 不同方案系統功能對比Tab.2 System function comparison of different schemes

表3 顯示了本文方案與其他方案在性能方面的比較。方便起見,令E表示G、GT中的指數運算;P表示雙線性配對操作;M表示G、GT中的乘法運算;l表示訪問策略中屬性的數目;r表示cover(R)的長度;s表示用戶屬性的數量;n表示解密密鑰中滿足訪問策略的屬性數。在密鑰生成和加密算法中,本文方案的指數運算和乘法運算的復雜度比其他方案低,因此效率更高。在解密算法中,由于文獻[22]方案、文獻[29]方案和文獻[31]方案不支持外包解密,所以用戶解密的計算開銷比本文方案要大得多,文獻[30]方案的用戶解密計算開銷與本文方案持平,皆為一個指數運算與一個乘法運算,文獻[32]方案的用戶解密由一個配對運算與兩個乘法運算組成,故本文的用戶解密計算開銷較小。與文獻[22]方案、文獻[29]方案和文獻[31]方案相比,由于本文方案在跟蹤方面具有更少的乘法運算與指數運算,因此本文方案在追蹤方面的效率更高。

表3 不同方案系統效率對比Tab.3 System efficiency comparison of different schemes

6 結語

為了滿足資源受限的邊緣設備的數據訪問需求,同時保證安全的數據共享,本文將云霧計算與密文策略屬性基加密相結合,設計了一個安全的云霧設備數據共享方案,并實現了細粒度的訪問控制。在本文方案中,車輛直接與本地霧節點進行通信,并將解密任務外包給霧節點執行,從而有效降低了用戶的計算開銷。由于霧節點只擁有外包解密密鑰,因此無法獲取明文,進而能夠保證用戶的隱私安全。本文方案還支持惡意用戶的追蹤與撤銷,在解密密鑰泄露的情況下,系統能夠根據密鑰追蹤到用戶的身份,進而將他加入撤銷列表,使其失去數據訪問權限。由于使用了直接撤銷的方法,所以相較于間接撤銷,本文方案能有效降低通信開銷。此外,本文方案在選擇明文攻擊和密鑰偽造攻擊下被證明是安全的。由于本文的方案只能實現白盒可追蹤性,不如黑盒可追蹤性強。因此,我們的未來工作是構建具有黑盒可追蹤性的基于密文策略的屬性基加密方案。

猜你喜歡
用戶
雅閣國內用戶交付突破300萬輛
車主之友(2022年4期)2022-08-27 00:58:26
您撥打的用戶已戀愛,請稍后再哭
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年5期)2016-11-28 09:55:15
兩新黨建新媒體用戶與全網新媒體用戶之間有何差別
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
挖掘用戶需求尖端科技應用
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
主站蜘蛛池模板: 日韩视频免费| 一本色道久久88综合日韩精品| 久久综合成人| 亚洲精品人成网线在线 | 日韩无码黄色| 欧美日本不卡| 麻豆国产精品| 一本综合久久| 国产精品成人一区二区不卡| 亚洲黄色网站视频| 国产精品人人做人人爽人人添| 亚洲欧美成人在线视频| 成人福利视频网| 亚洲精品男人天堂| 永久免费av网站可以直接看的| 99精品在线看| 国产精品免费p区| 成年人免费国产视频| 亚洲一级色| 精品国产免费观看一区| 青草视频在线观看国产| 波多野结衣一二三| 一级毛片免费的| 亚洲男人在线天堂| 老司机aⅴ在线精品导航| 中文字幕一区二区人妻电影| 无码精品一区二区久久久| 国产香蕉一区二区在线网站| 国产欧美日韩综合在线第一| 国产精品福利尤物youwu| 亚洲日本中文综合在线| 成人日韩精品| 国产精品第三页在线看| 亚洲清纯自偷自拍另类专区| 亚洲最大福利网站| 国产成人8x视频一区二区| 在线视频亚洲色图| 午夜三级在线| 久久婷婷综合色一区二区| 99热这里只有精品2| 亚洲国产中文精品va在线播放 | 亚洲精选无码久久久| 欧美不卡二区| 欧美国产精品不卡在线观看| 午夜日b视频| 大香网伊人久久综合网2020| 欧美成人免费午夜全| 精品乱码久久久久久久| 久久国产高潮流白浆免费观看| 精品少妇人妻av无码久久| 无码粉嫩虎白一线天在线观看| 亚洲成人播放| 天天综合网站| 日本在线欧美在线| 91亚洲影院| 亚洲女同欧美在线| 91极品美女高潮叫床在线观看| 九九久久精品免费观看| 国产精品久久久久久久久| 国产精品浪潮Av| 婷婷99视频精品全部在线观看| 国产成人免费手机在线观看视频 | 亚洲国产亚洲综合在线尤物| 91视频青青草| 72种姿势欧美久久久久大黄蕉| 欧美国产综合色视频| 亚洲美女AV免费一区| 亚洲精品手机在线| 亚洲成人一区二区| 亚洲欧美综合精品久久成人网| 日本一区二区三区精品视频| 伊人久久久大香线蕉综合直播| 欧美日韩高清在线| 色综合天天综合| 国产精品人人做人人爽人人添| 中国精品久久| 国产九九精品视频| 三上悠亚在线精品二区| 天堂av高清一区二区三区| 午夜视频日本| www.亚洲国产| 精品综合久久久久久97超人|