劉輝,劉鑫衍,許艷,仲紅,王夢
(1.安徽大學計算機科學與技術學院,安徽 合肥 230601;2.安徽大學電子信息與工程學院,安徽 合肥 230601)
車載自組織網絡(VANET,vehicle ad-hoc network)是智能交通系統(ITS,intelligent traffic system)的核心組成部分[1],可幫助駕乘人員和交通管理人員獲得實時全面的交通信息,減少交通事故的發生。為了實現交通信息的交互,VANET 包含2 類通信節點:部署在車輛中的車載單元(OBU,on-board unit)和固定于路邊的基礎設施單元(RSU,road side unit)。OBU 和RSU 使用專用短程通信(DSRC,dedicated short range communication)協議[2],實現車車通信(V2V,vehicle-to-vehicle)、車輛與RSU 通信(V2I,vehicle-to-infrastructure)、RSU 與車輛通信(I2V,infrastructure-to-vehicle)。
然而,DSRC 協議是無線通信協議,傳輸的數據容易被監聽、修改和偽造[3]。車輛或RSU 在接收消息時需確認消息來源的合法性以及消息的完整性。此外,車輛身份關乎駕乘人員的生命財產安全,除了需要確認消息來源的合法性以及消息的完整性,VANET 還需保護車輛的身份隱私。同時,當車輛發生交通事故或產生違規行為時,還需要對惡意車輛進行追責。這種能夠保護車輛的身份隱私,但在必要時又可追蹤車輛真實身份的行為被稱為條件隱私保護。2007 年,Raya 等[4]提出了一種基于公鑰基礎設施(PKI,public-key infrastructure)的條件隱私保護認證方案來實現車輛身份和消息完整性的驗證。隨后,學者提出VANET 條件隱私保護協議,以實現安全的V2V 或V2I 認證。
已有的VANET 條件隱私保護協議多考慮對車輛發布的消息進行驗證[4-13]。然而,在VANET 中也需要考慮對RSU 發布的消息進行認證,因為交通管理部門(TMD,transportation manage department)可通過RSU 向車輛發布與車輛相關的交通信號、路況信息或者車輛的違章信息等。此外,在車輛行駛過程中TMD 捕獲到的是道路上行駛車輛的真實身份,如車牌號碼等。隨后,TMD 經由RSU 給車輛發送的警告信息,包含的也是車輛的真實身份。而在VANET 中,為了保護身份隱私,車輛往往使用假名進行通信。所以TMD 在經由RSU 向車輛發布警告消息之前需要根據車輛的真實身份獲取車輛的假名。但是,在VANET 中車輛的真實身份和假名應是難以相互推導的。已有的VANET 條件保護隱私協議,往往研究的是可信第三方可以根據假名追蹤出車輛的真實身份。而如何由真實身份推導出車輛的假名,目前的研究較少。
本文提出隱私保護的VANET 警告消息發布協議,TMD 在發布違章消息之前能夠根據車輛的真實身份及時獲取車輛假名,從而經由RSU 給車輛發送警告消息。
本文的主要貢獻如下。
1) 提出條件隱私保護的警告消息發布協議,該協議可以根據車輛的真實身份及時獲取車輛假名。此外,TMD 也可以通過車輛假名追蹤到車輛的真實身份,實現條件隱私保護。
2) 采用簽密技術實現I2V 認證,在實現車輛對RSU 身份認證的同時保護警告消息涉及車輛的身份隱私。
3) 采用橢圓曲線密碼體制(ECC,elliptic curve cryptography)實現車輛執行的驗證過程,不依賴于雙線性對,有較高的計算效率。實驗分析表明,所提協議有較低的計算開銷和通信開銷。
2008 年,Lu 等[5]提出了一個高效的條件隱私保護協議,實現了可追蹤的匿名認證。該協議能夠在OBU 和RSU 之間生成實時的臨時匿名密鑰,最小化存儲臨時匿名密鑰所需的存儲空間。但是在該協議中,車輛需要頻繁地向RSU 申請匿名證書,導致RSU 需要維護龐大的證書列表。同年,Zhang 等[6]采用假名技術來為車輛假名生成私鑰。該協議不需要向RSU 申請證書,減輕了RSU 的負擔。2011 年,Zhang 等[7]提出帶有群測試的支持批驗證的VANET 條件隱私保護協議。Lee 等[8]指出文獻[7]提出的協議不能抵抗重放攻擊,并提出一個新的基于身份的批驗證協議。文獻[9-11]指出Lee 等[8]方案也存在安全缺陷,即惡意車輛能夠偽造其他車輛的合法簽名。但是,文獻[9-11]采用耗時的雙線性對操作。為了減少計算開銷,文獻[12-13]提出無雙線性配對的面向車聯網高效安全的消息認證方案,這些方案基于ECC,具有較高的計算效率。然而,上述協議雖然保護了車輛的身份隱私、消息的完整性和消息來源的合法性,但沒有考慮到消息的機密性,未授權的車輛可能會獲取敏感的違章信息[5-13]。
為實現傳輸消息的機密性,Rabieh 等[14]使用同態加密技術構造了隱私保護的交通信息上報協議,但是加密后再進行簽名會造成很大的時延。為減少對消息加密和簽名的總計算開銷和通信開銷,Zheng[15]提出了簽密的概念,實現了在一個步驟內同時完成加密和簽名操作。2017 年,Basudan 等[16]將簽密技術于應用于路況監測。2019 年,Wang 等[17]提出基于源認證的隱私保護云路況監測方案,將路況信息以密文形式上報給云服務器,云服務器需要在路況信息是密文的情況下驗證消息來源,但該方案無法追蹤惡意車輛的真實身份。為解決文獻[17]無法追蹤惡意車輛真實身份的問題,韓牟等[18]提出一種VANET 高效群密鑰協商協議,但該協議使用了較耗時的雙線性對操作。2020 年,為提高計算效率,Xu 等[19]構造了車輛的身份可追蹤的路況檢測協議,該方案無雙線性對操作。2021 年,Elkhali等[20]提出一種適用于車聯網異構系統的高效簽密方案,但該方案未考慮車輛的匿名性。Ali 等[21]提出一種異構車聯網中條件保密的混合簽密方案,解決了文獻[20]中車輛的匿名性問題。
本文采用的系統模型包括4 個參與者:可信中心(TA,trusted authority)、TMD、車輛和RSU。如圖1所示,系統模型的上層由TA 和TMD 組成,底層由RSU 和若干車輛組成。TA、TMD 和RSU 可以通過安全套接字層(SSL,secure socket layer)協議進行安全通信。RSU 與車輛、車輛與車輛之間可以通過DSRC 協議進行通信。這些參與者的詳細情況介紹如下。

圖1 系統模型
TA 是可信第三方,具有較強的計算能力。負責生成系統參數,并為TMD、車輛等參與者進行注冊。
TMD 是高度可信的交通管理部門,可以捕獲車輛違章消息,并經由RSU 給車輛發送警告消息,是唯一能夠追蹤車輛真實身份的參與者。
RSU 是半可信的,誠實遵守協議但對車輛的隱私好奇。RSU 能夠使用DSRC 協議與車輛通信,驗證車輛發送的消息的有效性。TA、TMD 與車輛的通信通過RSU 進行消息傳遞。
車輛配備了支持DSRC 協議的OBU。車輛通過OBU 與RSU 進行無線通信。此外,車輛配有防篡改設備(TPD,temper-proof device)。
安全和隱私對VANET 通信都相當重要。基于VANET 安全和隱私研究的相關文獻[12-17,19],本文提出的VANET 警告消息發布協議應滿足以下安全要求:消息認證、身份隱私保護、可追溯性、保密性和抗攻擊性。
1) 消息認證。車輛能夠認證RSU 發送消息的有效性。此外,車輛能夠確認接收消息是否被修改,即車輛可以對收到消息的來源以及消息的完整性進行認證。
2) 身份隱私保護。RSU 與其他車輛無法獲得其他車輛的真實身份,即除TMD 外的任何第三方都無法通過分析截獲的信息獲得車輛的真實身份。
3) 可追溯性。TMD 可以在必要時追蹤車輛的真實身份。例如,當惡意車輛發送錯誤消息來誤導他人時,TMD 可以追蹤惡意車輛的真實身份。
4) 保密性。TMD 發送給車輛的消息是保密的,任何其他車輛都無法獲取TMD 發送給指定車輛的消息內容。
5) 抗攻擊性。本文提出的協議能夠抵御各種常見的攻擊,如偽造攻擊、修改攻擊以及重放攻擊。
本文主要用到橢圓曲線密碼學中的2 個困難問題,分別是橢圓曲線離散對數問題(ECDLP,elliptic curve discrete logarithm problem)和橢圓曲線Diffie-Hellman 問題(ECDHP,elliptic curve Diffie-Hellman problem)。
1) ECDLP。設G是階為q的橢圓曲線,存在,若P和Q是已知的,則計算出整數a屬于ECDLP。
2) ECDHP。P是階為q的群的生成元,對于任意,若P,aP,bP已知,則計算出abP屬于ECDHP。
本節給出“攻擊-挑戰”游戲的形式化定義,該模型可用于證明協議的不可偽造性和保密性。
3.4.1 不可偽造性
游戲由系統初始化、詢問和偽造3 個階段組成,參與者為敵手A 和挑戰者C,具體步驟如下。
1) 系統初始化。C 生成系統私鑰x和公開參數params,然后將params 發送給A,并維護查詢隊列記錄預言機詢問及密鑰生成詢問的數據。
2) 詢問。A 向C 發起hi(i=1,2,3)詢問,當A 調用hi并且使用參數m查詢時,C 選取h∈RZq,將(m,h)插入查詢隊列Lh,并將hi返回給A。以上詢問是自適應的,即執行每一次詢問時都可以根據前一次詢問的結果進行調整。
定義1對于任意敵手A,在多項式時間均不能以不可忽略的優勢贏得上述游戲,則稱協議在適應性選擇明文攻擊下具有不可偽造性(EUF-CMA,existentially unforgeable against chosen-message insider attack)。
3.4.2 保密性
游戲由系統初始化、詢問、挑戰和猜測4 個階段組成,參與者為敵手A 和挑戰者C,具體步驟如下。
1) 系統初始化。C 生成系統私鑰x和公開參數params,然后將params 發送給TMD,并維護各個查詢隊列記錄預言機詢問及密鑰生成詢問的數據。
2) 詢問。A 向C 發起如下詢問。
①密鑰生成詢問。A 輸入身份IDTMDi,C 查詢私鑰列表,產生私鑰xj發送給A。
② 簽密詢問。A 輸入發送者和接收者身份IDTMD、AIDi、明文mi,C 查找發送者的私鑰xj,并向預言機進行簽密詢問,最后將詢問結果σ返回給A。
③解簽密詢問。A 以IDTMD、AIDi和σ進行詢問,C 計算接收者秘密值vi,并以相同的輸入向預言機進行解簽密詢問,預言機將mi返回給C,C再發送給A。
以上詢問是自適應的,即執行每次詢問都可以根據前一次詢問結果調整。
3) 挑戰。
①A 選擇消息m0、m1和挑戰的身份IDTMD1、AIDi1,其中IDTMD1和 AIDi1未進行過密鑰生成詢問。
② C 隨選擇b∈R0,1,并將mb、IDTMD1、AIDi1及xj、params 作為預言機的輸入進行簽密詢問,預言機返回詢問結果σ*,并發送給A。
③A 可以進行多項式次詢問,但不能對IDTMD1和AIDi1進行密鑰生成詢問,也不可以對σ*進行解簽密詢問。
4)猜測。A輸出b∈R0,1作為對b的猜測,A贏得游戲的優勢為。等式b′=b成立的概率即為A 贏得游戲的概率。
定義2對于任意敵手A,在多項式時間內不能以不可忽略的優勢贏得上述游戲,則稱該協議是抗選擇密文內部攻擊安全(SC-IND-CCA,semantically secure against chosen ciphertext insider attack)。
本文提出隱私保護的VANET 警告消息發布協議包括5 個階段:系統設置、TMD 注冊、車輛注冊、警告消息發布、警告消息接收。車輛在VANET中使用的身份是其假名,而TMD 發布警告消息之前已經知道車輛的真實身份(如車牌號碼)。本文協議實現了通過車輛的真實身份獲取車輛的假名。
TA 在此階段執行以下步驟。
1) 設Fp是一個有限域,p是素數,TA 定義橢圓曲線E:y2=x3+ax+bmodp,其中。
2) TA 從E上選擇一個階為q、生成元為p的加法循環群G,它由橢圓曲線E和無窮遠點O組成。假設G中的每個元素都可以用l位長的二進制字符串表示。TA 選擇隨機數作為系統的私鑰,并計算系統公鑰Ppub=xP。
3) TA 選擇3 個安全的哈希函數h1:{0,1}→,其中n表示明文的長度,并且是k的多項式。
4) TA 為每個車輛分配一個真實身份RID 和一個密碼PWD,并{RID,PWD,}x預加載到其TPD 中。
TMD 使用其真實身份IDTMD向TA 注冊。
2) TA 通過安全信道將uj和xj發送到TMD。同時,TMD 通過RSU 廣播Uj和jα。TMD 定時生成有效期VPi,通過安全信道將VPi發送給車輛。
1) 車輛將真實身份RID(如車牌號碼)和密碼PWD 輸入OBU。OBU 檢查RID 和PWD 是否等于存儲的RID 和PWD。如果其中之一與相應存儲的不相等,則OBU 將要求所有者再次輸入正確的身份和密碼。
TMD 將違章消息發送給目標車輛RID。TMD 在發布違章消息前需要根據車輛的真實身份(如車牌號碼)計算出車輛假名。此階段TMD 執行以下步驟。


本節將證明在隨機預言機模型下本文提出的警告消息發布協議具有不可偽造性和保密性。
定理1不可偽造性。基于ECDLP 問題的困難性,本文提出的警告消息發布協議能夠抵抗自適應選擇消息偽造攻擊。


定理2保密性。設k為安全參數,在隨機預言模型下,如果存在一種多項式時間算法攻破加密方案的SC-IND-CCA 安全優勢是ρ(k),那么存在一種多項式時間算法求解ECDHP 問題的概率至少是,其中poly(·) 是多項式,p是SC-IND-CCA 安全模型中最大的解簽密查詢次數。




本節將分析證明提出的警告消息發布協議可以滿足3.2 節提出的安全需求。
1) 消息認證。根據定理1 可知,沒有敵手能在多項式時間內解決ECDLP 問題,因此,驗證者可以通過驗證等式VP=Uj+αjPpub+h2(mi,Rj,AIDi,Di)Rj是否成立來確認消息<mi,(Rj,AIDi,Di,V,αj,Uj)>是否具有合法性和完整性。因此,該協議具有消息認證功能。
2) 身份隱私保護。車輛在發送消息時使用假名AIDi=EIDTMD[RID⊕viUj,viUj],AIDi由隨機數和真實的身份RID 生成,其中。由于uj和vi的隨機性,會產生毫無關聯的假名。因此,敵手 A 想要從假名·Uj,viUj]中進行身份信息攻擊,就必須得求出ujP。依據ECDLP 問題假設可知,在隨機預言模型與未知uj和iv的情況下求解viUj,在多項式時間內是不可行的。因此,該協議具有身份隱私保護功能。
3) 可追蹤性。該協議的有效簽名<mi,(Rj,AIDi,Di,V,αj,Uj)>包含車輛的真實身份RID,當TMD 需要追蹤消息發送者的真實身份時,可以通過計算出消息發送者的真實身份。因此,該協議具有車輛身份可追蹤性。
5) 抗攻擊性。由定理1 可知,沒有任何一方可以偽造出TMD 的簽密消息,因此該協議可以抵抗偽造攻擊。而且任何中間人對消息的修改都可以被驗證出,因此該協議可以抵抗修改攻擊。此外,在TMD 每次發送警告信息都會附帶有時間戳,所以該協議可以抵抗重放攻擊。
安全級別為80 bit 的基于雙線性對的方案設置如下:e:G1×G1→G2,其中,加法群G1是由生成元生成的階為q的加法群,其中,是度為2 的超奇異曲線上的點,是512 bit 的素數,是160 bit 的素數。橢圓曲線密碼運算方案如下:G是由生成元P生成的階為q的加法群,P為非奇異橢圓曲線E:y2=x3+ax+bmodp上的點,其中p,q為160 bit 的素數,。表1給出了密碼運算及其對應的縮寫和執行時間。

表1 密碼運算及其對應的縮寫和執行時間
在文獻[16]中,消息生成過程包含7 個雙線性對標量乘法運算Tbm、3 個雙線性對加法運算Tba、一個單向哈希函數運算Th和2 個MapToPoint 哈希函數運算HT,此階段的總開銷為;解密和驗證過程包含4 個雙線性配對運算Tb、3 個雙線性對的標量乘法運算Tbm、一個雙線性對加法運算Tba、2 個MapToPoint 哈希函數運算TH和一個單向哈希函數運算Th,此階段的總開銷為。在文獻[17]中,消息生成的過程中主要包含4 個雙線性對上的冪運算Texp、一個MapToPoint 哈希函數運算TH和2 個單向哈希函數運算>Th,此階段的總計算開銷為2Th+4Texp+TH;解簽名、解密和驗證過程主要包含4 個雙線性對上的冪運算Texp、4 個雙線性配對運算>Tb、一個MapToPoint 哈希函數運算TH和4 個單向哈希函數運算Th,此階段的總開銷為4Texp+4Tb+4Th。在文獻[19]中,消息生成過程主要進行3 個橢圓曲線標量乘法運算Tem和7 個單向哈希函數運算Th,此階段總計算開銷為3Tem+7hT;解密和驗證過程包含5 個橢圓曲線標量乘法運算Tem,2 個橢圓曲線加法運算Tea和9 個單向哈希函數運算Th,此階段總計算開銷為5Tem+2Tea+9Th。在本文協議中,消息生成過程中包含3 個橢圓曲線的標量乘法運算Tem和2 個單向哈希函數運算Th,此階段的總開銷為2Th+3Tem;解密過程包括驗證,該過程包含2 個橢圓曲線的加法運算Tea、4 個橢圓曲線的標量乘法運算Tem和2 個單向哈希函數運算Th,此階段的總開銷為2Tea+2Th+4Tem。因此,如表2 所示,本文協議有著較低的計算開銷。

表2 計算開銷對比



圖2 各方案的通信開銷對比
本文提出VANET 中保護隱私的警告消息發布協議,其中TMD 可以根據車輛的真實身份獲取車輛的假名,必要時又可以通過車輛假名追蹤車輛的真實身份。所提協議采用橢圓曲線密碼體制,不依賴于雙線性對,具有較小的計算開銷和通信開銷。安全性分析和性能分析表明,所提協議可用于VANET實現保護隱私的警告消息發布。