鄧君華,趙 磊,戴露露, 龔 賀,李麗君,劉鴻飛
(1.國網(wǎng)江蘇省電力有限公司電力科學(xué)研究院,南京 210000;2.福建億榕信息技術(shù)有限公司,福州 350003;3. 重慶理工大學(xué),重慶 400050)
作為移動(dòng)自組織網(wǎng)絡(luò)(Mobile Ad hoc Network, MANET)的特例,車聯(lián)網(wǎng)(Vehicular Ad Hoc Networks, VANETs)已受到商業(yè)和學(xué)術(shù)的廣泛關(guān)注。VANETs將移動(dòng)的車輛作為節(jié)點(diǎn)[1]。每輛車安裝了車載單元(On-Board Units, OBUs)。車輛利用OBUs實(shí)現(xiàn)車間通信(Vehicle-to-Vehicle, V2V)和車與路邊設(shè)備(Vehicle-to-Roadside Infrastructure,V2I)通信。VANETs典型的拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 VANETs的拓?fù)浣Y(jié)構(gòu)
由于VANETs是基于開放的無線網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu),VANETs容易遭受網(wǎng)絡(luò)攻擊。此外,VANETs的動(dòng)態(tài)拓?fù)浣Y(jié)構(gòu)加劇了維護(hù)VANETs安全的難度。車輛的快速移動(dòng),縮短了車間通信時(shí)間。在短的通信時(shí)間內(nèi),很難實(shí)現(xiàn)對(duì)消息有效認(rèn)證[2]。因此,如何提供VANETs安全已是VANETs的研究重點(diǎn)。
針對(duì)VANETs的安全,研究人員提出了一些安全策略。這些策略主要可分為:基于加密和基于信任管理兩類[3]?;诩用懿呗陨婕暗郊用?、數(shù)字簽名私鑰和公鑰的證書。文獻(xiàn)[4-5]研究表明,基于加密策略是防御外部攻擊的有效手段。
然而,對(duì)于內(nèi)部攻擊,基于加密的安全策略性能并不好。而基于信任管理策略更適合于防御內(nèi)部攻擊。當(dāng)一個(gè)節(jié)點(diǎn)廣播了消息后,接收此消息的節(jié)點(diǎn)依據(jù)此節(jié)點(diǎn)的信任值決定是否接受此消息。若此節(jié)點(diǎn)的信任值低于預(yù)設(shè)的值就丟棄此消息[6]。
但是在車聯(lián)網(wǎng)環(huán)境中,評(píng)估并管理節(jié)點(diǎn)的信任是非常復(fù)雜的。通常,利用節(jié)點(diǎn)間的直接接觸和間接接觸估計(jì)節(jié)點(diǎn)的信任值。文獻(xiàn)[7]提出了基于信譽(yù)系統(tǒng)。依據(jù)節(jié)點(diǎn)的信譽(yù)值,判斷該節(jié)點(diǎn)所發(fā)送消息真實(shí)性。而文獻(xiàn)[6]提出了基于接觸的信任方案。網(wǎng)內(nèi)節(jié)點(diǎn)通過直接和間接接觸計(jì)算消息發(fā)送者的信任。此外,文獻(xiàn)[8]提出了基于簇的信任機(jī)制。擁有更多資源的節(jié)點(diǎn)被選舉成簇頭,并且參與簇頭選擇的參與者能獲取一定的信譽(yù)分。若節(jié)點(diǎn)舉報(bào)了惡意節(jié)點(diǎn),則能獲取額外的信譽(yù)分。
然而,這些方案的通信成本較大。為此,提出基于加密的信任管理的安全通信(Cryptography based Trust Management, CBTM) 方案。CBTM方案通過哈希消息認(rèn)證編碼對(duì)車輛信任值進(jìn)行簽名,并依據(jù)安全消息的預(yù)警類型進(jìn)行分類,并依據(jù)此安全消息的類型賦予獎(jiǎng)賞分。性能分析表明,提出的CBTM方案能夠有效地降低通信開銷。
考慮如圖2所示的層次網(wǎng)絡(luò)結(jié)構(gòu),主要有四個(gè)元素組成:車載單元(On-Board Unit, OBU)、路邊單元(Road Side Unit, RSU)、代理的信任機(jī)構(gòu)(Agent of Trusted Authority, ATA)和信任機(jī)構(gòu)(Trusted Authority, TA)。
(1) OBUs:每輛車?yán)肙BU與鄰近的RSUs和鄰近車輛進(jìn)行通信。同時(shí)OBU也處理來自傳感節(jié)點(diǎn)產(chǎn)生的信息,并產(chǎn)生相關(guān)的預(yù)警安全消息;
(2)RSUs: RSUs部署于道路邊上。本文提出的CBTM方案利用RSU評(píng)估車輛的信任值。RSU通過安全通信信道將連通ATA。即RSU和ATA均屬VANET的信任實(shí)體;
(3) ATA: 區(qū)郵局辦公室(Area Post Offices, APOs)具有ATA的功能。ATA通過安全信道連通TA,進(jìn)而收集網(wǎng)絡(luò)內(nèi)已注冊(cè)車輛的所有證書;
(4) TA:TA具有系統(tǒng)中最高的信任實(shí)體,其負(fù)責(zé)網(wǎng)絡(luò)內(nèi)所有實(shí)體的注冊(cè),包括ATAs、RSUs和車輛,其也負(fù)責(zé)它們的私鑰和公鑰的產(chǎn)生。
圖2 VANETs結(jié)構(gòu)
整個(gè)機(jī)制由離線注冊(cè)、信任評(píng)估和更新三個(gè)階段構(gòu)成。
每個(gè)ATAs、RSUs和車輛均與信任的TA進(jìn)行注冊(cè)。
首先,ATA利用它的真實(shí)身份RIDATA向TA/RTO注冊(cè)。一旦注冊(cè), RTO就向ATA上傳系統(tǒng)證書,如式(1)所示:
ATA=(PrKATA,PuKATA,PuKRTO,SrK)
(1)
其中PrKATA、PuKATA表示ATA的私鑰、公鑰。而PuKRTO表示RTO的公鑰。而SrK表示系統(tǒng)內(nèi)的共享的系統(tǒng)私鑰[9]。
然后,RSU也依據(jù)它的真實(shí)身份RIDRSU向最近的ATA注冊(cè)。一旦注冊(cè)完畢,ATA就向RSU更新系統(tǒng)證書,如式(2)所示:
RSU=(PrKRSU,PuKRSU,PuKATA,SrK)
(2)
其中PrKRSU、PuKRSU表示RSU的私鑰、公鑰。
最后,車輛V再利用它的真實(shí)身份RIDV向RTO進(jìn)行注冊(cè)。一旦注冊(cè)完畢,RTO就更新車輛V的系統(tǒng)證書,如式(3)所示:
V=(PsIDV,PrKV,PuKV,TVV,HMACSrK(TVV),PuKRTO)
(3)
其中PsIDV表示車輛的偽身份。而PrKV、PuKV表示車輛V的私鑰、公鑰。而TVV表示車輛V的信任值。最初,TVV=0。HMAC表示哈希函數(shù)認(rèn)證編碼(Hashed Message Authentication Code, HMAC)。而HMACSrK(TVV)表示通過系統(tǒng)加密,給車輛V產(chǎn)生的HMAC。一旦注冊(cè)完成,RTO/TA就將向其覆蓋范圍內(nèi)所有ATA,傳輸車輛V的所有證書。
CBTM方案利用鄰居車輛的信任值和基于安全預(yù)警消息(Safety Alert Message, AltMsg)的類型的獎(jiǎng)賞。表1列舉了AltMsg的獎(jiǎng)賞信譽(yù)值。
假定剛注冊(cè)車輛Vi的信譽(yù)值為零(TVi=0)。它的鄰居車輛Vj的信譽(yù)值表示為TVj>0。
CBTM系統(tǒng)引用式(4)的安全消息格式:
SafMsgV=(AltMsg||TV||HMACSrK(AltMsg||TV)||
PsIDV||SIGPrKv(AltMsg||TV||TmSt)
(4)
其中SIGPrKv表示車輛V利用它的公鑰的簽名。TmSt表示時(shí)間戳。
表1 AltMsg的歸一化獎(jiǎng)賞信譽(yù)值
當(dāng)RSU從車輛(Vj和Vi)接收安全消息SafMsgV,它就計(jì)算這些車輛的信任值[10]。估計(jì)車輛的信任值過程如下:
最初,當(dāng)RSU接收安全消息SafMsgV,就設(shè)置將此安全消息TV=0。對(duì)于TV=0的車輛,引用Algorithm 1估計(jì)它的信任值。假定車輛Vi的信任值TVVi=0。車輛Vi的鄰居節(jié)點(diǎn)為Ni。對(duì)于任意一個(gè)鄰居節(jié)點(diǎn)Vj∈Ni,如果車輛Vj產(chǎn)生的預(yù)警消息與車輛Vi的預(yù)警消息相同,即AltMsgVi==AltMsgVj,鄰近車輛數(shù)CtNr就加1,如Algorithm 1內(nèi)Step4。則總的鄰居信任值:
SumTrustNr=SumTrustNr+TVVj
(5)
再依據(jù)所接收的SafMsgVi中預(yù)警消息AltMsg的類型,給車輛Vi賦予獎(jiǎng)賞信任值,如Algorithm 1內(nèi)Step 10所示。
最終,車輛Vi的信任值更新為:
(6)
其中RewardPoints表示獎(jiǎng)賞的信任分。
利用NS-3.23軟件、SUMO和MOVE仿真軟件建立仿真平臺(tái)。電腦參數(shù):Intel Core i3-3000、RAM 4GB、Linux Ubuntu 操作系統(tǒng)??紤]雙車道的高速場景,具體的仿真參數(shù)如表2所示。
表2 仿真參數(shù)
為了更好地分析CBTM方案的性能,選擇文獻(xiàn)[11]的面向代理汽車的基于身份消息認(rèn)證(Identity-Based Message Authentication using Proxy Vehicles, ID-MAP)。ID-MAP屬基于加密方案,并引用了batch-認(rèn)證,與CBTM方案具有可比性。
表3和表4顯示了CBTM和ID-MAP方案的已簽名-安全消息格式。
從表3和表4可知,CBTM和ID-MAP方案的安全消息尺寸分別為165字節(jié)和191字節(jié)。凈負(fù)荷(AltMsg)的尺寸是67B。車輛廣播的信任值TV達(dá)到4B。而HMAC和數(shù)據(jù)簽名分別達(dá)到6B和64B。安全消息尺寸的減少,有利于節(jié)省通信資源,提高數(shù)據(jù)傳輸效率。
表3 CBTM方案的已簽名-安全消息的格式
表4 ID-MAP方案的已簽名-安全消息的格式
通信開銷率(Communication Overhead Ratio, COR)是指總的開銷字節(jié)數(shù)與凈負(fù)荷字節(jié)數(shù)加開銷字節(jié)數(shù)之和的比,如式(7)所示:
(7)
其中OverheadBytes表示開銷字節(jié)數(shù)、PayloadBytes表示凈負(fù)荷字節(jié)數(shù)。
先分析通信開銷隨車輛數(shù)的變化情況。從圖3可知,通信開銷隨車輛數(shù)的增加而上升,且呈線性增長。原因在于:車輛數(shù)越多,車間通信次數(shù)也越頻繁,所產(chǎn)生的通信開銷肯定會(huì)增加。相比于ID-MAP方案,提出的CBTM方案的通信開銷得到控制。
圖3 通信開銷隨車輛數(shù)的變化情況
圖3顯示了通信開銷率隨車輛密度的變化情況,其中車輛密度是指系統(tǒng)內(nèi)的車輛數(shù)與100的比值。例如,若車輛密度是0.5,則表示系統(tǒng)有50輛車。
從圖4可知,通信開銷率隨車輛密度的增加而上升。相比于圖3,通信開銷率隨車輛密度的增加而上升較緩慢。相比于ID-MAP方案,提出的CBTM方案的通信開銷率降低了近6%。
圖4 通信開銷率
本文針對(duì)車聯(lián)網(wǎng)的通信安全問題,提出基于加密的信任管理的安全通信CBTM方案。CBTM方案從估計(jì)車輛的信任值角度,解決通信安全問題。CBTM方案充分利用HMAC和數(shù)字簽名,進(jìn)而確保消息發(fā)送者的安全,排除惡意車輛。性能分析表明,CBTM方案在維護(hù)通信安全的同時(shí),降低了通信開銷。同時(shí),通過數(shù)據(jù)簽名和偽身份保證車輛的隱私。