安 濤 馬文平 劉小雪
(西安電子科技大學綜合業務網國家重點實驗室 陜西 西安 710071)
車輛自組織網(Vechicular Adhoc Network,VANET)是物聯網在公共交通領域上的一種應用,車輛可以傳輸周邊的交通信息至交通指揮中心服務器,交通指揮中心服務器可以對交通信息進行分析,并及時對交通路況進行優化。車輛自組織網由靜態節點和動態節點組成,靜態傳感器部署在道路周圍基礎設施上的路側單元(Road Side Unit,RSU)充當靜態節點,用于收集周邊行駛車輛發送的信息,車輛上的車載單元(On Board Units,OBU)充當動態節點。車輛自組織網中,通過動態節點間通信(車輛與車輛)和動態節點與靜態節點間通信(車輛與基礎設施),實現信息共享[1]。
在實際應用中,車輛可以從VANET中獲得實時的路況信息、擁塞避免、緊急情況和導航服務等。車輛在行駛過程中,會將周圍的路況信息通過無線信道廣播給周圍的車輛和RSU,但是由于信息在VANET中是在不可信的信道上傳輸,會產生如下一系列的數據隱私安全問題:(1)敵手可以惡意修改、偽造、丟棄信息,造成交通事故;(2)通過對車輛發送的信息進行分析,從而獲取車輛的隱私,如車牌照、行駛路線等,導致違法行為的發生。因此,研究一種VANET中的車輛信息認證方案是很有必要的。
目前,有效的認證方案就是采用數字簽名技術,但是在車流量大、交通擁堵的情況下,RSU要驗證大量的簽名,這會出現資源受限而導致驗證效率低下的情況。針對這種情況,采用聚合簽名這種具有“批量驗證”特性的簽名技術會大大提高驗證效率。
聚合簽名的概念由Boneh等[2]首次提出。簡單來說,聚合簽名就是將多個簽名壓縮聚合成為一個簽名,驗證者只需一次操作就可驗證多個簽名,大大降低了計算復雜度,適合用于資源受限和計算能力較弱的網絡環境中。Gong等[3]首次提出了在隨機預言機(Random Oracle)模型下的可證明安全的無證書聚合簽名算法。Xiong等[4]提出了更為高效的方案,但He等[5]發現文獻[4]的方案在第 Ⅱ 類攻擊下是不安全的。侯紅霞等[6]在文獻[5]的基礎上,提出了更為安全的方案。王大星等[7]提出了一種適用于VANET的無證書聚合簽名方案,但是無法抵抗內部簽名者的聯合攻擊。
本文采用國產密碼SM9[8]建立一種基于身份的聚合簽名方案,解決了證書管理問題。車輛采用假名進行通信,保證了匿名性和可追蹤性,方案采用了聚合簽名技術,大大降低了RSU驗證負擔,加快了VANET的通信速率。通過安全性證明,驗證了本文方案的安全性。
VANET認證系統模型由認證中心、車載單元、路側單元和服務器組成,如圖1所示。

圖1 VANET認證系統模型
認證中心(Trusted Authority,TA)是車載網的安全認證中心,是可信的第三方,用于管理VANET中車輛的身份信息。當有新的車輛加入到車聯網中,TA會為車輛分配假名并進行注冊。
OBU是部署在汽車上的通信節點,是車聯網的重要組成部分。車載單元在車聯網中主要充當動態節點,負責收集本車的數據信息,并將采集到的數據信息發送到車載網中。車載單元也可以作為傳輸節點負責轉發車載網信息,實現車載網的信息傳播。
RSU是路側單元,也是車載網的重要組成部分。路側單元作為固定的網絡節點,一般部署在紅綠燈、停車場、路邊,也被稱為基礎設施。路側單元可以作為傳輸節點,將車輛接入到車聯網中,將車載單元收集的數據信息上傳給服務器,或者傳輸給其他車輛,提供交通信息服務,同時也可以作為認證節點,對車輛的信息進行身份認證,實現標識驗證服務。
服務器負責數據信息處理。路側單元將收集到的車聯網的數據信息進行匯總上傳到服務器。服務器對收集到的交通信息進行分析和處理,實現路徑優化,解決交通擁堵問題,避免事故發生。
整個認證流程為:
(1)注冊。車輛加入VANET之前要先向TA發起注冊請求,TA為車輛分發假名和密鑰。
(2)簽名。車輛使用TA分發的假名和密鑰對通信的信息進行聚合簽名。
(3)認證。RSU接收到周邊車輛發來的信息和聚合簽名,進行批量驗證,將通過認證的信息上傳到服務器。
(4)追蹤。當RSU驗證簽名失敗或對車輛進行追責時,RSU將車輛的假名發送給TA,TA查詢真正的車輛身份。
設(G1,+)為一個階為素數q的循環群,P為其生成元;(G2,+)為一個階為素數q的循環群,定義雙線性映射e:G1×G1→G2有以下三條性質。

(2)非退化性。對任意的X,Y∈G1,e(X,Y)≠1。
(3)可計算性。對任意的X,Y∈G1,存在一個有效的算法計算e(X,Y)。

首先生成系統參數組,密鑰生成中心(KGC)選擇3個階數是素數N(N>2λ)的循環群(G1,+),(G2,+),(G3,·)。P1是G1的生成元,P2是G2的生成元;存在從G2到G1的同態映射ψ,使得ψ(P2)=P1,并且有雙線性對e:G1×G2→G3。定義哈希函數Hv(Z,n)輸出的是長度為v(單位為b)的散列值。哈希函數H1(Z,n)的輸入為比特串Z和整數n,輸出整數h1∈[1,n-1],H2(Z,n)的輸入為比特串Z和整數n,輸出整數h2∈[1,n-1]。
KGC將隨機選擇的s∈[1,n-1]作為系統主私鑰,并將s和P2的乘積作為系統主公鑰Ppub,Ppub=s·P2。
TA為認證中心,主要負責對車輛進行注冊,并且為注冊的車輛分發密鑰。車輛向TA發送注冊請求,為了保護車輛的隱私,TA為車輛分配假名PIDi,只有當車輛發生不法行為被追責時,TA才會公布車輛真實身份IDi。TA選擇一個字節表示的私鑰生成識別符hid。車輛的真實身份標識為IDi,計算PIDi=h1i,h1i=H1(IDi‖hid,N),若TA審核通過,則為可信的車輛分發密鑰。

di=t2·P1=[s/(PIDi+s)]P1
(1)
車輛公鑰為:
Qi=PIDi·P2+Ppub
(2)
車輛在行駛過程中,會對周圍的交通路況信息進行收集并發送給交通信息平臺,交通信息平臺會對收集到的信息進行分析從而對當前的交通情況進行優化。交通信息平臺收到的信息要確保可信,防止有敵手篡改車輛發送的消息干擾信息平臺的決策,于是對車輛發送的信息進行數字簽名。
設待簽名的消息為mi,簽名者為車輛PIDi,簽名過程如下:
(1)計算群G3中的元素g=e(P1,Ppub);
(2)隨機選擇ri∈[1,N-1],計算群G3中的元素wi=gri;
(3)計算整數h2i=H2(mi‖wi,N),計算整數Li=(ri-hi)modN,若L=0則重新選擇隨機數;
(4)計算群G1中的元素Si=Li·di,Ui=Si·PIDi,消息mi的簽名為(Si,Ui,wi)。
為了檢驗收到的消息mi及其數字簽名(Si,Ui,wi),過程如下:
(1)計算群G3中的元素g=e(P1,Ppub),整數h2i=H2(mi‖wi,N),ti=gh2i;
(2)計算群G3中的元素vi=e(Si,Qi)·ti,檢驗vi是否等于wi,若成立,則驗證成功。


通過計算驗證因子vi=wi來檢驗簽名是否合法,其證明過程如下:
vi=e(Si,Qi)·ti=
e(Li·di,PIDi·P2+Ppub)·e(P1,Ppub)h2i=
e(Li·t2·P1,PIDi·P2+Ppub)·e(P1,Ppub)h2i=
e(Li·t2·P1,PIDi·P2)·e(Li·t2·P1,Ppub)·
e(P1,Ppub)h2i=
e(P1,Ppub)h2i=
e(P1,Ppub)(ri-h2i)modNe(P1,Ppub)h2i=
e(P1,Ppub)(ri-h2i)modN+h2imodN=wi


(1)Setup。C運行Setup算法Ppub=R=sP2,s充當系統主密鑰,s對C是未知的,C挑選身份IDi作為挑戰身份,發送系統參數{P1,P2,Ppub,H1,H2}給A。






下面分析C在這個游戲中的優勢:

(2)除非事件E1或E2發生,否則對于私鑰提取預言機和簽名預言機的回答是有效的。
(3)如果A偽造了一個有效的簽名和事件E3沒有發生,則C能解決qE-CAA問題的一個實例。所以整體來說,如果事件E1、E2和E3都不發生,則C就能解決qE-CAA問題的一個實例。
這些事件發生的概率計算如下:

而C的運行時間為:
t′ 綜上所述,有挑戰者C解決了qE-CAA,這與qE-CAA問題的假設矛盾,因此本文方案的聚合簽名是安全的。 由安全性證明得知,本文基于SM9簽名算法的聚合簽名方案在適應性選擇消息攻擊和身份攻擊下是能夠抵抗存在性偽造的,因此本方案具有不可偽造性。 車輛在加入VANET前,要先將自己的真實身份IDi作為申請注冊的請求信息發送給認證中心TA,TA執行h1i=H1(IDi‖hid,N)操作計算假名PIDi=h1i,并將假名PIDi返回給車輛。除了TA之外不會有任何第三方知道車輛的真實身份,在之后的通信過程中,車輛將使用假名PIDi參與聚合簽名過程,因此本方案保護了車輛的隱私。 當RSU驗證簽名失敗或者因為車輛發生交通事故而被執法部門追責時,RSU會將追責車輛的假名PIDi發送給TA,TA利用假名PIDi查詢車輛的注冊信息,從而追蹤到車輛的真實身份IDi,因此本方案具有可追蹤性。 下面將對本文提出的基于SM9的聚合簽名方案與目前幾種性能較好的方案進行比對。表1列舉了幾種現存的聚合簽名方案,主要對單個簽名驗證和批量驗證的效率進行對比,其中:PB表示一個雙線性對運算;M表示一個標量乘法;n表示車輛數目。 表1 不同聚合簽名方案的計算量 文獻[12]采用了處理器為Pentium Dual CPU e2200 2.2 GHz,內存為2 048 MB的實驗平臺進行測試,計算出PB運行時間為5.811 ms,M的運行時間為2.226 ms。幾種聚合簽名方案的計算開銷對比如圖2所示。 圖2 不同車輛密度下各方案批量驗證計算開銷 由圖2可見,本文方案在隨著車流量n增大后,批量驗證的計算開銷在幾種方案中是最少的,可見本文方案在性能上有很大優勢。 本文基于國產密碼SM9算法設計了一種聚合簽名方案。本文方案適用于車輛自組織網絡,通過設置假名保護車輛的隱私,采用聚合簽名降低了RSU的驗證負擔。在證明了方案的正確性和安全性之后,通過和現有的幾種聚合簽名方案的計算量進行對比,證明了本文方案在性能上有著一定的優勢。但本文方案產生的聚合簽名長度與參與簽名的車輛呈線性關系,未來可以對方案進行進一步的優化,使簽名長度為一常量值,以節省通信開銷。3.3 不可偽造性
3.4 隱私性
3.5 可追蹤性
4 性能分析


5 結 語