?

自動車輛排中可撤銷可追溯的訪問控制方案

2024-02-28 01:41李宇昕孫建偉
計算機工程與科學 2024年2期
關鍵詞:密文解密密鑰

李宇昕,王 崢,王 惠,孫建偉

(太原理工大學計算機科學與技術學院,山西 晉中 030600)

1 引言

隨著5G技術[1,2]、自動駕駛[3]和物聯網[4]的快速發展,智能交通將取代傳統的駕駛方式。自動車輛排AVP(Autonomous Vehicle Platoon)[5]取代單車駕駛模式可以有效減少交通事故,降低燃油污染,提高貨運效率。AVP由一個排長和一些排成員組成,排長負責向后面的車輛傳遞當前的交通信息,排成員之間保持一定的短距離[6,7]。自動車輛排通過車間通信IVC(Inter-Vehicle Communication)[8]將車輛本地傳感器的數據共享給同排組其他車輛,并通過邊緣計算和云端智能決策,綜合研判交通信息,實現車輛排組的行車控制,從而在保證安全行駛的基礎上,達到減少風阻[9]、降低能耗[10]、緩解交通擁堵的目的。

車輛資源有限且移動快速,缺乏對大量數據的存儲和處理能力。邊緣計算[11]將計算數據、應用程序和服務從云服務器轉移到網絡邊緣,通過在邊緣網絡中提供資源和服務來最小化云的負載,使服務接近最終用戶來減少數據時延。邊緣計算更加適用于自動車輛排這種對服務的實時性要求較高的應用。

自動車輛排使用開放式的無線網絡環境IVC定期傳播消息,消息暴露在公開信道上,容易被惡意車輛截取,造成敏感數據泄漏,暴露車輛用戶的隱私;惡意車輛可以偽造車輛身份,在車輛排中發送虛假消息,導致交通事故的發生,危害車輛用戶的生命和財產安全。因此,在實現靈活的數據共享的同時,如何保證敏感數據的保密性和消息的真實性,是一個關鍵而緊迫的挑戰。屬性基加密ABE(Attribute Based Encryption)[12]是一個應對這些安全隱患的理想方案。ABE包括基于密鑰策略[13]和基于密文策略CP-ABE(Ciphertext-Policy Attribute Based Encryption)[14]2種方案。在CP-ABE方案中,數據擁有者根據自身需求制定訪問策略用于密文的加密,數據訪問者根據自身屬性集合生成密鑰,這樣更加符合實際應用場景。

雖然CP-ABE方案可以保護數據的機密性,實現更為靈活的數據共享,但在車輛用戶撤銷、惡意用戶追溯、計算效率方面仍然存在許多問題需要解決。AVP中車輛頻繁地進出車隊,車輛用戶頻繁變化,導致訪問權限發生變化,存在安全隱患。用戶撤銷通常通過限制被撤銷用戶更新私鑰或解密密文來實現。Tu等[15]利用復合階雙線性群構造了一個可撤銷的CP-ABE,密文可以嵌入任意數量的撤銷列表及用戶屬性,但是由于密文長度較長導致該方案效率不高。Guo等[16]提出的CP-ABE方案第一次利用變色龍哈希函數構造了具有抗碰撞性、不暴露密鑰的數據用戶私鑰來實現撤銷,但該方案的系統屬性數量會影響密鑰、密文的大小以及操作的運行時間。Zhao等[17]通過嵌入密文組件中的撤銷列表實現用戶撤銷,降低了屬性數量對方案的影響,但該方案存在撤銷列表的維護問題。Zhao等[18]利用中國剩余定理實現了用戶撤銷,提升了撤銷運算的效率,同時避免了撤銷列表的維護問題,但車輛側的解密運算負擔較大。Wang等[19]提出了基于標準模型的自適應安全的外包CP-ABE方案,降低了車輛側的解密負擔,但該方案只考慮將解密外包給云服務器,并未考慮外包結果的驗證。由于云服務器不可信,Sethi等[20]建立了一個可驗證的外包解密ABE方案,該方案使用外包解密改進ABE。

在AVP中,開放式的無線網絡環境使得車輛用戶的隱私容易受到威脅,進而危及駕駛員和乘客的生命財產安全。Raya等[21]首先設計了一個匿名隱私保護認證方案,要求發送者匿名后再發送消息,然后車輛使用其私鑰對將要發送的消息進行簽名,接收者使用匿名證書來驗證匿名消息,追溯惡意用戶,但該方案并未考慮撤銷問題。Bayat等[22]提出的安全方案中,基于橢圓曲線提出了一種簽名認證方案,可以抵抗惡意車輛冒充排內車輛發起的攻擊,但不具備細粒度的訪問控制?;陔p線性配對,Jiang等[23]提出了一種條件隱私保護認證方案,具備細粒度訪問控制并采用假名來實現隱私保護,利用基于身份的簽名實現批量認證,具有較低的驗證開銷。但是,由于可信機構TA(Trust Authority)為車輛和路邊基礎設施RSU(Road-Side Unit)生成了大量假名、相關證書和驗證消息,因此具有較高的傳輸開銷。Malhi等[24]設計了一種新的數字簽名方案和聚合驗證方案,并將基于身份的簽名方案用于車到RSU的通信,但驗證方案的負擔較大。Guo等[25]提出了車輛撤銷和惡意車輛追溯2個功能相結合的方案,車輛的屬性密鑰及其密鑰分發結果以交易的形式記錄在區塊鏈上,用以追溯惡意車輛,并在RSU的輔助下實現車輛撤銷。但是,該方案的計算開銷與其管理的屬性數量成比例,存儲成本較高,不適用于資源有限的自動車輛排。

基于上述考慮,本文在邊緣計算環境下構建了一種支持用戶撤銷、惡意用戶追溯、適用于車輛排的CP-ABE方案。該方案引入外包解密以降低車輛側的計算負擔,利用中國剩余定理構建可撤銷訪問列表,實現車輛的直接撤銷,以降低TA的計算復雜度;基于橢圓曲線加密實現隱私保護認證,保證車輛的匿名和惡意車輛的追蹤。

2 基礎知識

2.1 雙線性映射

2.2 線性秘密共享方案

P代表一個集合,定義在域Zp上的一個線性秘密共享方案∏(M,ρ)需滿足以下條件[26]:參與者關于秘密值s的共享值構成了域Ζp上的一個向量;存在一個l行n列的訪問矩陣M,ρ為屬性映射函數,將矩陣的第i∈{1,2,…,l}行唯一映射為屬性ρ(i)。隨機選取向量v=(s,v2,…,vn)T,s是參與者共享的秘密值,v2,…vn∈Ζp。M·v則是根據秘密共享方案∏生成關于秘密值s的l個份額。

秘密值重構:假設∏是訪問結構M′的一個線性秘密共享方案,S是授權集合,集合I是索引集合,I={i∈[1,2,…,l]},并滿足ρ(i)∈S。若{λi=(M′·v)i}是關于秘密值s的共享值,則存在{ωi∈Ζp}i∈I,使得∑ωiλi=s,i∈I。而對于非授權集合,則不成立。

2.3 中國剩余定理

中國剩余定理[27,28]指出,假設θ1,θ2,θ3,…,θn為兩兩互質的一組正整數,則對任意給定的整數a1,a2,a3,…,an,就可以唯一確定如式(1)所示的方程組的解X:

(1)

X可通過以下方法構造:

那么對于兩兩互質的整數θi,可通過式(2)所示的方程獲得解決方案的唯一解X:

X≡(a1+a2+…+an) modθg=

(2)

2.4 橢圓曲線離散對數ECDL問題

2.5 決策性q-BDHE假設

(3)

3 系統概述

3.1 符號說明

本文所使用的符號及其定義如表1所示。

Table 1 Symbols description

3.2 系統模型

車聯網體系結構由3個實體組成:可信機構、路邊基礎設施和車輛。系統模型如圖1所示。

(1)可信機構TA(Trust Authority):TA為每輛車生成系統參數和密鑰。在本文方案中,每個城市都有一個專門的TA。假設TA具有足夠的存儲容量,被敵手破壞的概率可以忽略不計。

(2)路邊基礎設施RSU:RSU具有強大的計算、存儲和管理能力通過有線連接到TA。RSU的主要功能相當于中介,在車輛、TA和其他RSU之間存儲和轉發信息并承擔最復雜的解密計算。

(3)車輛:車輛通過無線網絡連接到TA。帶有車載單元OBU(On-Board Unit)的車輛可以看作是一個高速移動的節點。車輛可以與RSU或其他車輛聯系,共享信息。每個OBU都存有車主的真實身份、匿名身份和私鑰。每一條來自車輛的原始信息在發送到附近的車輛或RSU之前都需要被簽名。車輛既可以是數據擁有者DO(Data Owner),也可以是數據使用者DU(Data User)。

在本文方案中,小間距的實現依賴于協同自適應巡航控制CACC(Cooperative Adaptive Cruise Control)的自動駕駛。CACC既可以實現單跳單播,也可以實現單跳廣播。車輛可以通過單跳廣播接收到多輛車輛的信息,但最近的前車信息會直接影響車輛的行駛行為,而其他車輛的信息只是作為輔助工具,幫助車輛了解周圍的交通環境。因此,本文方案使用單跳單播來描述隊列內的通信,即后面的車輛只能接收到前面車輛的信息并將其發送給后面的成員,而不能將信息發送給前面的車輛。即排頭可以接收和轉發來自其他實體的消息,而排成員可以接收消息,但只能轉發來自前面車輛的消息。

3.3 系統流程

本文方案的系統流程分2個階段:系統初始化和數據傳播。系統初始化階段如圖2所示,數據傳播階段如圖3所示。其中,TA負責安全信道的計算,包含系統初始化、密鑰生成、車輛注冊、車輛撤銷和惡意車輛追溯;RSU負責公開信道的計算,包含數據上傳、外包解密和數據發送。

Figure 2 System initialization圖2 系統初始化

Figure 3 Data propagation圖3 數據傳播

每個階段的具體描述如下所示:

(1) 系統初始化。TA執行Setup(1λ)算法完成系統的初始化,輸出系統公鑰PK與主密鑰MSK并完成公鑰的廣播。

(2) 車輛注冊。TA在收到車輛的屬性集S和身份信息id后,首先,執行Sign算法實現車輛的匿名;其次,執行KeyGen算法生成車輛解密所需的屬性密鑰SK、外包解密所需的盲密鑰BK及恢復密鑰RK;最后,TA將密鑰及簽名傳播回車輛。

(3) 數據加密。DO根據自身數據訪問需求定義訪問策略W′后執行Encrypt算法輸出密文CT并將其上傳至RSU。

(4) 數據解密。DU向RSU發送密文下載請求和盲密鑰BK。RSU驗證DU是否滿足訪問結構且未被TA撤銷。通過驗證后,RSU執行Transform算法輸出部分解密密文K1和簽名R。DU接收到反饋后,向TA發送驗證請求,TA執行Verify算法驗證其完整性并反饋結果。驗證通過后,DU執行DU.Decrypt算法解密得明文m。

(5) 車輛撤銷與追溯。車輛離開排時,TA執行Revocable算法更新排內成員并生成新的公共參數γ′d。若因惡意消息的出現引起交通事故時,TA執行Traceable算法從車輛匿名身份IDi中追溯其真實身份id。

3.4 算法實現

(4)KeyGen(PK,MSK,S)→SK:由TA執行,輸入公鑰PK、主密鑰MSK及車輛屬性集S={s1,s2,…,sk}∈Ζp,隨機生成參數r,r1,r2,…,rk∈Ζp計算D0=μrgα,D1=gr,{Di,2=gri,Di,3=(γhiσ)rik-r}1≤i≤k,生成屬性密鑰SK=(S,D0,D1,{Di,2,Di,3})。

(5)Encrypt(PK,m,(M,ρ),IDi)→CT:由DO執行,輸入公鑰PK、明文數據m、訪問策略(M,ρ)和匿名身份IDi,生成密文CT。DO根據數據訪問需求制定訪問策略,利用線性秘密共享技術將其轉化為l行n列的訪問矩陣M,ρ是屬性映射函數,將矩陣M的某一行映射為具體的系統屬性ρ(i),隨機選取s,v2,v3,…,vn∈Ζp并定義向量v=(s,v2,v3,…,vn)T與u=(0,v2,v3,…,vn)T,s為用戶間共享的秘密值,λi=Mi·v為共享的秘密值份額。用戶的屬性滿足訪問策略時,可計算{ωi∈Ζp}i∈I,重構秘密值s=∑ωiλi,其中i∈{1,…,l},Mi代表矩陣的第i行。隨機選擇t,t1,t2,…,tl∈Ζp,密文CT計算如式(4)所示:

(4)

(6)Decrypt(CT,BK)→m:

Transform(CT,BK)→K1:由RSU執行,輸入密文CT和盲密鑰BK,根據式(5)進行解密:

(5)

DU.Decrypt(RK,K1,R)→m:由用戶執行,輸入恢復密鑰RK,部分解密密文K1和密文CT,計算如式(6)所示:

(6)

DU利用排密鑰kd計算m=C0⊕H4(kd)。

正確性可以通過式(7)驗證:

σi·E1=(Si+βi·ri)·E1=Si·E1+

βi·ri·E1=αi·kd·E1+

βi·IDi,1=αi·Kp+βi·IDi,1

(7)

(8)Traceable(IDi,s)→id:由TA執行,可從匿名身份IDi中提取車輛的真實身份,其中包含IDi,1和IDi,22個部分,其中IDi,1=ri·E1,IDi,2=id⊕H1(ri·Pp)。TA根據式(8)計算:

id=IDi,2⊕H1(ri·Pp)=

IDi,2⊕H1(ri·s·E1)=

(8)

IDi,2⊕H1(s·IDi,1)

(9)Revocable(η,ξi,k′d)→γ′d: 在車輛排中有車輛加入或離開時,需更新排密鑰。

當車輛加入排時,TA執行以下過程:首先為加入車輛選取相應的簽名者密鑰θi,執行Register過程:計算參數η′和γ′d=kd×η′。

車輛接收到參數γ′d時,通過一次取模操作即可獲得與車輛排已有成員相同的排密鑰kd。

當車輛離開排時,TA必須更新排密鑰,防止舊車輛使用新排的密鑰。當車輛離開排時,TA執行以下過程:從η中減去ξi,即η′=η-ξi,然后,TA隨機選擇k′d,并將其乘以η′,即γ′d=k′d×η′,當車輛接收到新的排密鑰γ′d時,通過一次取模運算即可獲得k′d。

4 安全性分析

4.1 CP-ABE安全分析

本文基于q-BDHE(q-Billinear Diffie-Hellman Exponent)困難假設證明本文方案的安全性。

定理1若q-BDHE假設成立,則表明敵手找不到一個多項式算法以不可忽略的優勢解決q-BDHE問題。

證明假設存在敵手Α,能在多項式時間內以不可忽略的優勢ξ攻破本文方案,則同樣可構造一個挑戰者Β以相同的優勢解決q-BDHE問題。

初始化:敵手Α選定挑戰的訪問結構(M*,ρ*),挑戰者Β接受一個q-BDHE挑戰(y,T)。其中M*是l*×n*的訪問矩陣且n*≤q。

系統建立:挑戰者Β選擇隨機數α′∈Ζp使得α=α′+pq+1。然后Β隨機選擇γ′,κ′,σ′∈Ζp,根據式(9)為Α提供參數:

(9)

(10)

其中,r=(t+v1aq+v2aq-1+…+vn*aq-n*+1)。

X表示滿足ρ*(i)=x的所有i值的集合,挑戰者B對所有x分別計算Di,2和Di,3,如式(11)~式(14):

Di,2=gri

(11)

Di,3= (γhiσ)riκ-r=

(12)

(13)

(14)

最后挑戰者Β把SK=(S,D0,D1,{Di,2,Di,3})發送給敵手Α。

挑戰:敵手Α向挑戰者Β提交2條信息m0和m1,挑戰者Β選取參數β∈{0,1},并對信息mβ加密。構造向量u=(s,sa+y′2,sa2+y′3,…,san*-1+y′n*),其中y′2,…,y′n*∈Ζp。計算式(15):

(15)

根據式(16)生成挑戰密文發送給敵手?。?/p>

CT=〈(M,ρ),C1,C2,{Ci,1,Ci,2,Ci,3}1≤i≤l,R〉

(16)

階段2:重復階段1。

若T=R′,此時敵手Α沒有任何優勢,則可表示為pr[Β(y,T=R)=0]=1/2。

4.2 簽名安全性分析

車輛與各實體間都采用無線通信技術,通信信道可能被惡意攻擊者攻擊,導致出現漏洞。為此,本節將證明本文簽名方案是安全的,可以抵抗自適應選擇消息攻擊。

(17)

其中i*∈{1,2,…,n}。

模擬者Β選擇隨機數kd,計算公鑰Kp=kdE′1。然后,B發送公共參數params=(G,E′1,Kp,H1,H2)和匿名集SID給Α。

σi·E′1=αi·Kp+βi·IDi,1=

αi·Kp+σi·E′1-αi·Kp=σi·E′1

(18)

反之,若i≠i*,那么Β具有一個有效簽名并直接輸出這個有效簽名。

σi·E′1=αi·Kp+βi·IDi,1

(19)

(20)

根據式(19)和式(20),可以簡化推導出式(21):

(21)

基于上述模擬,下面給出事件R1和R2的定義:

(1)事件R1:Α返回一個有效的偽造簽名;

(2)事件R2:Α能夠偽造匿名身份IDi≠IDi*。

因為pr[R1]=ε和pr[R2]=1/q可以得到式(22):

(22)

5 性能評估

5.1 理論分析

本文方案與其他方案的功能比較如表2所示。其中,文獻[17]方案即時撤銷的實現存在撤銷列表的維護問題,文獻[18]方案不需維護撤銷列表但排密鑰的更新仍存在較大的計算負擔,文獻[23]方案不具備細粒度的訪問控制。而本文提出的方案在自動車輛排中實現了細粒度的訪問控制,優化了文獻[18]方案中排密鑰的更新算法,降低了計算負擔且加入了消息驗證和可追溯功能,進一步提升了方案安全性。

Table 2 Function comparison

首先給出本文關于存儲成本和執行時間的符號定義:

(3)Tm和Te:分別代表在群中進行一次乘法運算、指數運算的時間。

(5)Th:表示執行一次哈希函數操作的時間。

(6)Ta′·G′:表示執行一次與橢圓曲線有關的標量乘法運算a′·G′所消耗的時間,其中G′∈G,a′∈Ζq。

存儲成本是決定訪問控制方案能否適用于資源有限車輛的重要因素。本文方案與其他方案的存儲成本比較如表3所示。用戶端的存儲成本主要來源于密文和密鑰。由表3可以看出,其他方案中用戶密鑰長度隨用戶屬性個數線性增長,此長度相比文獻[17]方案和文獻[18]方案的較短,故存儲成本較低。

Table 3 Comparison of storage cost 表3 存儲成本比較 B

本文方案與其他方案各階段計算開銷的比較如表4和表5所示。

Table 4 Computational complexity comparison of open channels

Table 5 Computational complexity comparison of secure channels

在密鑰生成階段,各方案計算開銷均與屬性數量呈正相關,但本文方案具有比文獻[17]方案更低的增長速度。在用戶加密階段,本文方案的計算開銷低于文獻[17]方案和文獻[18]方案的。文獻[17]方案和文獻[18]方案同樣支持解密外包,但本文方案中外包解密的計算開銷更低。在用戶解密階段,本文將絕大部分解密運算移至RSU進行,解密計算開銷不會隨著屬性數量的增加而線性增加,在本地僅需進行1次乘法和1次指數運算,運算效率更高。

在簽名和驗證階段,本文方案相較于文獻[23]方案刪減了乘法運算。在可撤銷階段,其余方案都與排內成員數或撤銷列表數相關,而本文方案不隨車輛排成員的更改而變化,僅需進行1次標量乘法運算和1次哈希運算,運算效率更高。同樣在可追溯階段,本文方案相較于文獻[23]方案也將運算固定為1次乘法和1次哈希運算,降低了計算成本。

5.2 實驗及結果分析

本文方案使用JPBC庫計算基本加密操作的執行時間。為了便于方案之間的比較分析,本文方案將采用與文獻[23]方案相同的執行時間,如表6所示。

Table 6 Execution time of encryption operations

相關方案密鑰生成時間的比較如圖4所示。

Figure 4 Comparison of key generation time圖4 密鑰生成時間比較

方案的加密時間均隨著屬性數量的增加而線性增加,其中文獻[17]方案隨著屬性數量的增加,加密時間的增長速度最快,消耗時間也最長,而本文方案加密所耗時間低,適合于資源有限的車輛。DO加密時間的比較如圖5所示。與密鑰生成時間的比較類似,其中文獻[17]方案所消耗的時間與屬性數量的增加呈正相關,而本文方案降低了加密所需的時間,更適用于對實時性要求較高的自動車輛排。

Figure 5 Comparison of DO encryption time圖5 DO加密時間比較

本文方案與文獻[17]方案外包解密時間的比較如圖6所示。相較于文獻[17]方案,本文方案具有更低的解密時間,增長速率也更低,因此具有更高的外包運算效率。單次簽名和消息驗證的時間比較如圖7所示,相較于文獻[22]方案和文獻[24]方案,本文方案所用時間顯著增加,相較于文獻[23]方案單次提升并不明顯,但在批量驗證階段,車流量提升時具備更低的計算開銷。

Figure 6 Comparison of outsourced decryption time圖6 外包解密時間比較

本文方案與其余方案車輛撤銷時間的比較如圖8所示。文獻[17]與文獻[23]的撤銷方案是通過管理撤銷列表控制車輛的訪問,撤銷時間長且與撤銷列表長度的增加成正比,還存在撤銷列表的維護問題。文獻[18]方案與本文方案同樣采取中國剩余定理管理車輛排,但文獻[18]方案的撤銷時間會隨著排內車輛的增長而增加,而本文方案的撤銷成本是固定的,降低了撤銷開銷。

Figure 8 Comparison of revocation time圖8 撤銷時間比較

6 結束語

針對自動車輛排訪問控制,本文提出了一種邊緣計算中支持外包解密的可撤銷可追溯訪問控制方案。首先,將雙線性解密運算外包給邊緣計算單元,降低了車輛側的計算成本。其次,基于中國剩余定理實現了車輛的即時撤銷,避免了撤銷列表的維護問題。接著,利用橢圓曲線點乘法降低簽名的負擔,實現了惡意用戶的追溯。最后,對本文方案進行了安全性分析、功能比較以及實驗結果分析。分析結果表明,本文方案在保證安全的前提下運算效率較高,完成了邊緣計算下自動車輛排中安全高效的細粒度訪問控制。但是,整個方案中密鑰均由TA生成,存在單點故障問題,因此下一步的工作可在增加屬性密鑰機構、實現本文方案的多授權功能方面進行進一步分析研究。

猜你喜歡
密文解密密鑰
探索企業創新密鑰
解密“熱脹冷縮”
一種針對格基后量子密碼的能量側信道分析框架
一種支持動態更新的可排名密文搜索方案
基于模糊數學的通信網絡密文信息差錯恢復
解密“一包三改”
密碼系統中密鑰的狀態與保護*
炫詞解密
一種對稱密鑰的密鑰管理方法及系統
基于ECC的智能家居密鑰管理機制的實現
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合