王春東,郭茹月
天津理工大學(xué) 計算機(jī)科學(xué)與工程學(xué)院 天津 300384
隨著各種車載傳感、計算和通信設(shè)備[1]的發(fā)展,車輛獲得了越來越多的自主權(quán)。所有的基礎(chǔ)設(shè)施和智能車輛構(gòu)成的車聯(lián)網(wǎng)已成為第五代移動網(wǎng)絡(luò)的重要場景。車聯(lián)網(wǎng)為車輛提供了一個可以與鄰居共享道路相關(guān)信息的平臺,例如路況、交通擁堵等信息。這些信息有助于車輛及時了解交通狀況,從而提高交通安全和效率[2]。
然而,隨著人為因素在車聯(lián)網(wǎng)中的參與,社會特征和人的行為在很大程度上影響著信息在網(wǎng)絡(luò)中的傳播。因此,對于駕駛員來說,區(qū)分可信信息和不可信信息是非常重要的[3]。以往的研究大多依賴傳統(tǒng)的安全技術(shù)來建立對非法車輛的防御[4],例如:公鑰基礎(chǔ)設(shè)施(public key infrastructure,PKI)。然而,合法車輛仍有可能由于自私或惡意的意圖而發(fā)送不可信的信息。因此,如何有效地識別惡意車輛是車聯(lián)網(wǎng)中的一個重要問題。
信任管理系統(tǒng)使車輛能夠判斷接收到的信息是否可信,也為網(wǎng)絡(luò)運營商提供了對特定車輛的獎懲依據(jù)[5]。通常情況下,車輛的信任值可以通過對歷史行為的評分來計算,這些評分由相關(guān)節(jié)點生成?,F(xiàn)有的信任管理(trust management,TM)模型可分為集中式和分布式兩類[6]。在集中式TM 模型中,所有信任評級都在中央服務(wù)器(如云服務(wù)器)中存儲和處理。由于車輛通常必須在短時間內(nèi)做出決策,集中式TM模型不能滿足車聯(lián)網(wǎng)嚴(yán)格的服務(wù)質(zhì)量要求,同時還容易成為攻擊者的攻擊目標(biāo),一旦發(fā)生單點故障,將造成災(zāi)難性的后果。為了克服集中式模型帶來的缺陷,一些研究者提出了分布式TM 模型。其核心是每個路邊單元(road side unit,RSU)主要負(fù)責(zé)其通信范圍內(nèi)的車輛的信任評估。分布式TM 模型大大提高了效率,解決了單點故障的問題。然而,由于車聯(lián)網(wǎng)的高速移動性和復(fù)雜性,如何有效地在車聯(lián)網(wǎng)中實施信任評估并維護(hù)多個RSU之間的信任值的一致性和即時更新是一個不容忽視的問題。
作為比特幣的核心技術(shù),區(qū)塊鏈具有去中心化、開放性、防篡改性、匿名性和可追溯性[7]等特點,可以合理地解決車聯(lián)網(wǎng)的信任管理問題。此外,由于區(qū)塊鏈的分布式共識算法,使得RSUs 可以協(xié)同工作,維護(hù)一致的數(shù)據(jù)庫,以保證信任評估消息的即時同步。區(qū)塊鏈在部分節(jié)點被入侵或失效的情況下,仍然能夠保持可靠運行,有效抵御RSUs 被攻擊。因此,本文提出了一種基于邏輯回歸與區(qū)塊鏈的車聯(lián)網(wǎng)信任管理方案。主要貢獻(xiàn)如下:
(1)根據(jù)通信車輛的歷史行為,除了考慮目標(biāo)車輛的直接信任值,還考慮了基于PageRank 算法的推薦信任值,并基于邏輯回歸算法計算該車輛在此階段的綜合信任值來判別其可靠性,最后將車輛的綜合信任值上傳到附近的RSUs。
(2)提出基于權(quán)益證明(proof of stake,PoS)和實用拜占庭容錯(practical Byzantine fault tolerance,PBFT)的混合共識算法,優(yōu)化礦工節(jié)點的選擇策略,使得權(quán)益越大的RSUs 更容易找到下一個區(qū)塊而贏得選舉(即更快地發(fā)布信任值變化較大的區(qū)塊),然后礦工將與授權(quán)的RSUs 一起工作驗證區(qū)塊的正確性,最終將正確的區(qū)塊存儲到區(qū)塊鏈中。
(3)通過安全性分析及性能仿真表明本文提出的信任管理方案在車聯(lián)網(wǎng)環(huán)境中是有效可行的。
車聯(lián)網(wǎng)中的集中式信任管理使用一個中央服務(wù)器來收集、計算和存儲所有車輛的信任值。中央服務(wù)器通常被認(rèn)為是完全受信任的實體,攻擊者無法破壞它。文獻(xiàn)[8]提出了一種基于聲譽的車載網(wǎng)絡(luò)公告方案。車輛感知與交通相關(guān)的事件并向相鄰車輛發(fā)布公告。接收者需要評估信息的可信度并生成反饋報告,所有的反饋都是由一個集中的信譽服務(wù)器收集的?;谶@些數(shù)據(jù),服務(wù)器能夠更新信譽值,并為網(wǎng)絡(luò)中的所有車輛頒發(fā)證書。文獻(xiàn)[9]提出了一種基于軟件定義信任的深度強化學(xué)習(xí)框架,該框架將深度Q-learning 算法部署到軟件定義網(wǎng)絡(luò)(software defined network,SDN)邏輯集中控制器中。其基本思想是將SDN 控制器作為代理,通過卷積神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)車輛網(wǎng)絡(luò)環(huán)境中路由路徑的最高信任值,并設(shè)計信任模型來評估相鄰車輛轉(zhuǎn)發(fā)報文的行為。如果信任值大于或等于閾值,則表示信任該車輛。否則,該車輛將被視為惡意車輛。文獻(xiàn)[10]提出了一種抗新來者攻擊、抗開關(guān)攻擊和抗共謀攻擊的信任管理方案來評估車聯(lián)網(wǎng)中的車輛的可信度。利用基于貝葉斯推理的方法和基于TrustRank算法分別計算車輛的局部信任值和全局信任值。此外,為了防止車輛的信任值快速上升和快速下降,還采用自適應(yīng)遺忘因子和自適應(yīng)衰減因子更新局部和全局信任值。
以上這些方案都利用一個完全受信任的中央服務(wù)器進(jìn)行信任管理。然而,隨著智能交通系統(tǒng)的快速發(fā)展,使用一個集中的節(jié)點來處理大量的車輛是不現(xiàn)實的,過多的請求可能會帶來較大的延遲甚至阻塞。此外,單點故障也是集中式網(wǎng)絡(luò)面臨的一大挑戰(zhàn)。
為了解決上述集中化問題,一些學(xué)者引入了分布式系統(tǒng)進(jìn)行信任管理。文獻(xiàn)[11]提出了一種分散式態(tài)勢感知的車載網(wǎng)絡(luò)信任體系結(jié)構(gòu)。文獻(xiàn)[12]提出了一種針對自組網(wǎng)的以數(shù)據(jù)為中心的信任管理方案,該方案中每個節(jié)點首先以分布式的方式計算信任積分,然后通過特定的算法聚合信任積分。文獻(xiàn)[13]還研究了車載自組網(wǎng)的聯(lián)合隱私和聲譽保障問題。該方案采用分散式聲譽管理模型,每個節(jié)點的聲譽評估由其自身及其鄰居共同完成。文獻(xiàn)[14]提出了一種用于車聯(lián)網(wǎng)的去中心化TM方案??紤]到協(xié)作性、誠實性和責(zé)任性等因素,采用一種基于模糊邏輯的方法,根據(jù)單跳鄰居車輛的行為和其他鄰居的報告評估其直接信任。此外,提出了一種Q-learning方法來評估非直接連接到評估者的車輛的間接信任,通過平均來自多輛車輛的評估報告來進(jìn)行評估。但是,分布式RSUs中存儲的信任信息可能不一致。以上文獻(xiàn)都與支持信任評估的去中心化架構(gòu)有關(guān),它滿足了分布式應(yīng)用場景的需求。然而,這些去中心化的方案并不是完全去中心化的,因為大多數(shù)方案都需要中央服務(wù)器的協(xié)助來完成最終的計算或維護(hù)信任積分。因此,在這種信任管理系統(tǒng)中仍然需要可信的第三方。然而,如果第三方不總是受到所有用戶的信任,則必須采用完全分布式的信任管理體系結(jié)構(gòu)。有鑒于此,一些研究者通過引入?yún)^(qū)塊鏈技術(shù),開創(chuàng)了去中心化信任管理的新方向。
文獻(xiàn)[15]利用將位置證明替換工作量證明的區(qū)塊鏈來保存更新車輛的信譽值。文獻(xiàn)[16]采用聯(lián)盟鏈中的PBFT機(jī)制及公有鏈中的工作量證明(proof of work,PoW)機(jī)制來選擇主節(jié)點。文獻(xiàn)[17]提出一種基于聯(lián)盟鏈的車聯(lián)網(wǎng)管理方法,利用改進(jìn)的代理權(quán)益證明(delegated proof of stake,DPoS)共識為車輛數(shù)據(jù)的安全分享提供保障,但是沒有對車輛的可靠性進(jìn)行分析,進(jìn)而影響了對礦工的判定。在文獻(xiàn)[18]中,基于車載網(wǎng)絡(luò)中區(qū)塊鏈的分散性提出了一種交通事件驗證和信任驗證機(jī)制,其中RSUs首先利用車輛的合作交通信息,一旦采集到的數(shù)據(jù)達(dá)到相應(yīng)的閾值,就會啟動所提出的過路車輛之間的事件證明(proof of event,PoE)共識算法。如果PoE 的結(jié)果被確認(rèn)為事件,RSU 將通過廣播通知相鄰區(qū)域的車輛,存儲在區(qū)塊鏈上的事件將被永久保留,供公眾訪問。此外,文獻(xiàn)[19]研究了一種基于區(qū)塊鏈的可信數(shù)據(jù)管理方案,為解決邊緣計算環(huán)境下的數(shù)據(jù)信任和安全問題提出了認(rèn)證協(xié)議、靈活共識、智能合約、交易數(shù)據(jù)管理、區(qū)塊鏈節(jié)點管理和部署方案。
上述文獻(xiàn)通過區(qū)塊鏈與車聯(lián)網(wǎng)的結(jié)合,在一定程度上解決了車聯(lián)網(wǎng)內(nèi)部信任及信息存儲問題,但是由于車聯(lián)網(wǎng)的高速移動性和復(fù)雜性,如何保障車輛信任值評估的可靠性,以及使車聯(lián)網(wǎng)信任值的更新更具有時效性仍然是具有挑戰(zhàn)性的問題。
本文主要研究的是車聯(lián)網(wǎng)中的信任管理方案,系統(tǒng)模型如圖1所示。其主要流程可以分為三個階段:首先是信任評估階段。進(jìn)入車聯(lián)網(wǎng)的車輛可以通過目標(biāo)車輛的歷史行為計算其直接信任值,如果兩個車輛節(jié)點之間沒有直接交互或者直接交互次數(shù)過少時,基于PageRank 算法計算其推薦信任值,然后基于邏輯回歸算法對車輛的綜合信任值進(jìn)行評估并上傳到附近的RSU;其次是礦工選舉及區(qū)塊的生成階段。RSU把從車輛得到的信任值進(jìn)行打包,然后基于PoS 和PBFT 的混合共識機(jī)制,使得權(quán)益越大的RSUs 更容易找到下一個區(qū)塊而贏得選舉,即更快地發(fā)布信任值變化較大的區(qū)塊;最后是分布式共識階段。由礦工與授權(quán)的RSUs 一起擔(dān)任共識節(jié)點,驗證區(qū)塊的正確性。
圖1 系統(tǒng)模型Fig.1 System model
在該方案中存在以下兩個實體。
RSU:RSU 是停留在路邊的固定基礎(chǔ)設(shè)施,在TM系統(tǒng)[20]中具有較好的存儲和計算能力。RSUs需要收集并更新其通信范圍內(nèi)的車輛的信任值。此外,所有RSUs共同維護(hù)一個一致的總賬本,部分授權(quán)的RSUs 在構(gòu)建區(qū)塊鏈時承擔(dān)共識工作。
車輛:車聯(lián)網(wǎng)中的每輛車都安裝有裝載在車輛上的通信單元(on board unit,OBU),其具有無線通信能力,可以通過專用短程通信(dedicated short-range communication,DSRC)協(xié)議與其他車輛(vehicle-to-vehicle,V2V)和RSU(vehicle-to-RSU,V2R)進(jìn)行通信,共享信息[21]。
(1)惡意車輛:有時車聯(lián)網(wǎng)中可能存在多個惡意車輛,他們通常會進(jìn)行消息欺騙攻擊,即攻擊者可能故意廣播虛假消息,以降低交通安全或交通效率。例如,一輛惡意車輛可能在路上發(fā)現(xiàn)了交通事故,但卻對附近的車輛廣播一條消息,聲稱“道路暢通!”。
(2)受損的RSUs:RSUs沿道路分布,有時缺乏網(wǎng)絡(luò)運營商的保護(hù)。因此,假定這些實體是半信任的,可能會被攻擊者破壞。攻擊者一旦入侵RSUs,就能夠添加、刪除和篡改存儲在其中的數(shù)據(jù)。然而,由于攻擊者的能力有限,大規(guī)模入侵攻擊的可能性極低。此外,由于網(wǎng)絡(luò)運營商定期對RSUs 進(jìn)行安全檢查,因此,被破壞的RSUs 無法長期被攻擊者控制?;谶@些事實,可以假設(shè)只有一小部分RSUs能夠被成功入侵。
去中心化:隨著智能車輛的快速增長,中心化的信任管理方案可能不現(xiàn)實。因此,信任管理系統(tǒng)需要充分利用分布式節(jié)點,即RSUs 和車輛。信任值由通信雙方計算并存儲在RSUs中。
一致性:由于車輛的高速移動性特點,其通常需要在多個RSUs 之間行駛。在這種情況下,如何在車聯(lián)網(wǎng)中交換信任數(shù)據(jù)并保持?jǐn)?shù)據(jù)庫的一致性成為車聯(lián)網(wǎng)去中心化信任管理的一個難題。
時效性:在該方案中,信任值是基于車輛的歷史行為對其進(jìn)行的綜合評價。這個值可能會隨著時間的推移,根據(jù)該車輛最近發(fā)送的消息的可信度而變化。除此之外,惡意車輛可能會到達(dá)不同的區(qū)域,因此需要確保所有區(qū)域的RSUs都有該惡意車輛最新的信任值。
基于邏輯回歸與區(qū)塊鏈的車聯(lián)網(wǎng)信任管理的主要流程可以分為以下三個步驟:信任值評估機(jī)制;礦工選舉和區(qū)塊的生成以及分布式共識算法。
(1)直接信任值。計算在s時段車輛節(jié)點i的直接信任值,主要考慮在之前時間段,車輛節(jié)點i與j的交互情況。因此,當(dāng)前時段車輛節(jié)點i的直接信任值Rs(i,j)計算如式(1)所示:
其中,qs(i,j)表示車輛節(jié)點i與j交互的消息總數(shù),cs(i,j)表示其中正確的消息條數(shù)。如果車輛節(jié)點i與j沒有交互,那么其直接信任值為初始信任值,即rs(0)。
(2)推薦信任值。如果兩個車輛節(jié)點之間沒有直接交互或者直接交互次數(shù)過少時,那么車輛節(jié)點j需要通過在車聯(lián)網(wǎng)中其他與節(jié)點i進(jìn)行交互過的車輛節(jié)點集合來計算推薦信任值。在這里,推薦信任值也可以看作是對車聯(lián)網(wǎng)環(huán)境內(nèi)積極交互車輛的信任值獎勵。如果在一段時間內(nèi)車輛進(jìn)入車聯(lián)網(wǎng)系統(tǒng),但是沒有與任何其他車輛交互,那么該車輛只能獲得較小的推薦信任值。如果與其他車輛節(jié)點交互越多,獲得的推薦信任值在一定程度上會越大[22]。改進(jìn)PageRank 算法的推薦信任值計算如式(2)所示:
其中,K(k1,k2,…,kn)表示在s-1 時段與車輛節(jié)點i交互過的所有節(jié)點的集合;α是阻尼系數(shù),PR表示在s-1時段車輛節(jié)點k的PageRank 值;L(k)表示車輛節(jié)點k在s-1 時段的總交互次數(shù);M表示此時段的車輛總數(shù)。車輛節(jié)點的推薦信任值由與車輛節(jié)點i交互過的車輛節(jié)點集合K(k1,k2,…,kn)共同決定。如果有車輛節(jié)點在當(dāng)前時段離開車聯(lián)網(wǎng)或者是因為信譽問題被強制注銷,那么此節(jié)點不包括在K集合中。同樣,如果在當(dāng)前s時段有新的車輛節(jié)點加入并與節(jié)點i進(jìn)行交互,那么對節(jié)點i的推薦要等到s+1 時段才能生效。
當(dāng)車輛節(jié)點k在s-1 時段的總交互次數(shù)小于等于1 次(即L(k)≤1)時,系統(tǒng)只賦予車輛節(jié)點i一個較小的推薦信任值,即
(3)車輛節(jié)點i的綜合信任值可以用邏輯回歸算法計算,如式(3)所示:
其中,X表示為如下式(4):
A表示加權(quán)向量,可以用線性最小二乘法求值,A0表示偏差值,其為了調(diào)整車輛的初始信任值rs(0) 。rs-1(i)為車輛節(jié)點i上次計算的信任值。如果最新計算的信任值rs(i)低于閾值λ,則該車輛將被標(biāo)記為惡意車輛,同時標(biāo)志值fs(i)將上升,該標(biāo)志表示發(fā)起者可能存在惡意行為。只有當(dāng)該車輛在一段時間內(nèi)持續(xù)具有誠實行為時,標(biāo)志值才會下降。
由于分布式的網(wǎng)絡(luò)結(jié)構(gòu),不存在固定的中心節(jié)點來管理區(qū)塊鏈。因此,為了生成新的區(qū)塊,會周期性地從所有RSU中選出一個礦工節(jié)點。基于PoW的礦工選舉方法通常用于基于區(qū)塊鏈的系統(tǒng),如比特幣。在這些系統(tǒng)中,所有節(jié)點不斷地改變nonce,然后計算包含nonce的塊的哈希值。得到哈希值低于哈希閾值的那個節(jié)點被選為礦工,并能夠發(fā)布它的區(qū)塊。所有節(jié)點都具有相同的哈希閾值,使得計算能力更強的節(jié)點更容易獲得正確的nonce并贏得選舉[23]。本文在PoW的基礎(chǔ)上,采用不同節(jié)點具有不同哈希閾值的PoS算法選取礦工節(jié)點,從而實現(xiàn)不同的塊生成速度。
在該方案中,以相對信任值的絕對值之和作為權(quán)益證明來選舉礦工節(jié)點,挖礦的難度取決于權(quán)益證明。權(quán)益越大的RSUs可以更容易地找到下一個區(qū)塊而贏得選舉(即更快地發(fā)布自己的區(qū)塊),從而保證了區(qū)塊鏈中存儲的數(shù)據(jù)的即時更新。提出的礦工選舉方法如式(5)所示:
其中,Mi是RSUi的哈希閾值。所有RSUs 不斷改變nonce,根據(jù)式(5)計算哈希值,得到滿足上述條件的nonce的RSU被選為礦工。Mi與Si正相關(guān),Si定義為相對信任值絕對值之和,如式(6)所示:
其中,Δr(i)=rs(i)-rs-1(i),Oi是RSUi的當(dāng)前相對信任值集合。因此,具有較大Si的RSU更有可能贏得選舉,然后公布其區(qū)塊。這樣可以即時更新區(qū)塊鏈中信任值變化較大的情況。Smax為Si的上界,用于避免具有最大Si的RSU持續(xù)獲勝的情況。因此,RSUs之間實現(xiàn)了相對公平。一旦RSU 將區(qū)塊成功添加到區(qū)塊鏈中,就會清除Oi中的元素。
Mi的結(jié)構(gòu)如圖2所示,Mi是由幾個連續(xù)的零開始的一組二進(jìn)制序列,其對每個RSU 生成區(qū)塊的速度有很大的影響。在本方案中,Mi與Si之間的關(guān)系定義如式(7):
圖2 Mi 的結(jié)構(gòu)Fig.2 Construction of Mi
其中,Nz是在Mi頂部連續(xù)零的個數(shù);Nm與哈希算法的哈希值位數(shù)有關(guān)(例如,SHA-1 為160,SHA-256 為256,等等)。
區(qū)塊的格式如圖3 所示,由區(qū)塊頭和區(qū)塊體兩部分組成。其中,區(qū)塊頭存儲:塊的基本信息,如Block ID、RSU ID、生成時間;用于將該塊鏈接到現(xiàn)有的區(qū)塊鏈的前一個區(qū)塊的哈希值;證明該塊有效性的信息,即nonce 和哈希閾值。區(qū)塊體部分主要包含車輛節(jié)點ui在s時段的綜合信任值rs(i),標(biāo)志值fs(i),相對信任值Δrs(i)。
圖3 區(qū)塊結(jié)構(gòu)Fig.3 Format of block
基于PoS 完成礦工節(jié)點的選舉后,由授權(quán)的RSUs和礦工節(jié)點RSU(記作leader)基于PBFT算法實現(xiàn)協(xié)商一致的過程。在這里,由授權(quán)的RSUs充當(dāng)共識節(jié)點(記作ASUs)。其步驟如下:
步驟1leader將帶時間戳的塊數(shù)據(jù)(記作Blocknew)、它的簽名和它的權(quán)益證明廣播給ASUs進(jìn)行驗證。
步驟2在ASUs 確認(rèn)來自leader 的消息是有效的之后,這些ASUs將用他們的簽名互相廣播他們的審計結(jié)果。
步驟3ASU 從其他節(jié)點收集審計結(jié)果,并與其他節(jié)點進(jìn)行比較。如果匹配的審計結(jié)果個數(shù)大于2f(f是拜占庭節(jié)點個數(shù)),則會向所有ASUs發(fā)送確認(rèn)消息。
步驟4如果任意一個ASU 收集到超過2f+1 的確認(rèn)消息,則Blocknew可以存儲到區(qū)塊鏈中。如果沒有達(dá)成共識,leader將會對審計結(jié)果進(jìn)行分析,必要時再進(jìn)行一輪共識。
(1)數(shù)據(jù)完整性:在基于區(qū)塊鏈的信任管理模型中,記錄在區(qū)塊鏈中的車輛信任數(shù)據(jù)已經(jīng)得到了所有授權(quán)的RSUs的一致認(rèn)可。塊的序列和數(shù)據(jù)通過使用哈希鏈來保護(hù)。每個塊的哈希值是唯一的,一旦任何塊的任何內(nèi)容被修改[24],其他塊的哈希值將被更改。因此,如果對手想要執(zhí)行消息修改攻擊,他不僅需要修改當(dāng)前塊的內(nèi)容,還需要重新計算所有塊的哈希值。
(2)防御受損的RSU:如果有惡意RSU想要向區(qū)塊鏈廣播一個偽造的塊,在協(xié)商一致階段,每個被授權(quán)的RSU都會檢查該塊的有效性,防止非法的塊被寫入?yún)^(qū)塊鏈。此外,攻擊者可能已經(jīng)成功捕獲了多個授權(quán)的RSU。然而,由于PBFT 對失敗或惡意節(jié)點的容錯率約為33%,即使對手成功入侵了多個授權(quán)的RSU,它也不能將錯誤的塊存儲到區(qū)塊鏈中。
(3)抵抗重放攻擊:在基于邏輯回歸算法的信任評估方法中,每個車輛的信任數(shù)據(jù)都有一個唯一的時間參數(shù),它與信任數(shù)據(jù)的內(nèi)容相關(guān)聯(lián)。因此,通過比較參數(shù)與信任數(shù)據(jù)對應(yīng)的內(nèi)容,可以有效地防止重放攻擊。
(4)抵抗消息欺騙攻擊:如果目標(biāo)車輛最新計算的信任值低于閾值,且仍然在繼續(xù)廣播虛假消息,則該車輛將被標(biāo)記為惡意車輛,同時標(biāo)志值將上升。此時他們將無法從車輛網(wǎng)絡(luò)接收任何服務(wù),只有當(dāng)該車輛在一段時間內(nèi)持續(xù)具有誠實行為時,標(biāo)志值才會下降,從而可以有效抵抗消息欺騙攻擊。
為了驗證所提方案的可靠性和有效性,采用基于OMNeT++的車聯(lián)網(wǎng)仿真平臺和基于Golang 的區(qū)塊鏈仿真平臺進(jìn)行了性能評估。關(guān)鍵參數(shù)配置如表1 所示。本節(jié)分為三部分。第一部分研究了信任評估方案的可靠性。第二部分提供了隨相對信任值的絕對值之和變化的塊的生成時間間隔。第三部分分析了所提共識算法的平均時延。
表1 關(guān)鍵參數(shù)Table 1 Key parameters
(1)信任評估的可靠性
為了驗證基于邏輯回歸的信任值計算的可靠性,假設(shè)以下情景:在2 000 m×2 000 m 的網(wǎng)格區(qū)域內(nèi)均勻分布有100輛車。每輛車的通信距離為200 m,速度在10~25 m/s 之間,車速過快會導(dǎo)致車輛反應(yīng)時間較短,與中速車輛相比,車輛錯過一些事故并參與信息驗證的概率較小。車輛在十字路口隨機(jī)改變方向,暫停時間為零。在路網(wǎng)中隨機(jī)分布15 個RSUs,設(shè)置5~30 個惡意車輛,總仿真時間為1 h。
首先,對車輛的初始信任值進(jìn)行了分析,當(dāng)初始信任值較小時,將惡意車輛與誠實車輛區(qū)分開來需要很長時間;當(dāng)初始信任值較大時,惡意車輛會花費更多的時間來降低其信任值,這意味著識別惡意車輛需要更長的時間。因此將初始信任值設(shè)置為0.5更適合區(qū)分誠實車輛和惡意車輛。觀察到,惡意車輛及誠實車輛的信任值隨時間變化如圖4 所示,隨著時間段的增加,誠實車輛綜合信任值不斷增加,惡意車輛的綜合信任值不斷減小。
圖4 車輛的信任值隨時間的變化Fig.4 Reputation value of vehicles over time
除此之外,將該解決方案與傳統(tǒng)主觀邏輯(traditional subject logic,TSL)方法[25]和多權(quán)重主觀邏輯(multiweight subjective logic,MWSL)方法[26]的性能進(jìn)行了比較??紤]惡意車輛發(fā)送虛假消息的概率p的影響。觀察p=20%、p=50%、p=80%時,1 個惡意車輛的信任值在1小時內(nèi)的變化情況,分別如圖5所示,當(dāng)p=80%時,所有方法都能快速降低惡意車輛的信任值。然而,觀察到,當(dāng)p=20%和p=50%時,TSL 和MWSL 缺乏足夠的證據(jù)來識別惡意車輛。
圖5 惡意車輛的信任值隨時間的變化Fig.5 Reputation value of one malicious vehicle over time
最后,比較了惡意車輛的識別率隨著p的增加而變化的情況。如圖6 所示,當(dāng)p較低時,基于邏輯回歸的方法對惡意車輛的識別率較好,因為它將直接信任與推薦信任相結(jié)合來進(jìn)行決策。當(dāng)p越來越大時,三種方法的性能越來越相似,因為車輛惡意行為的不斷增加可以幫助TSL 和MWSL 識別惡意車輛。因此,提出的信任評估方案的可靠性是可以驗證的,因為即使發(fā)送惡意消息的概率很低,也能有效識別惡意車輛。
圖6 惡意車輛的識別率隨p 的變化Fig.6 Recognition rate of malicious vehicles with p
(2)區(qū)塊的生成時間
在獲得車輛的信任值后,RSUs 試圖成為礦工并發(fā)布他們的區(qū)塊。在本文共識算法中,每個RSU 的塊生成時間主要受兩個參數(shù)的影響,即相對信任值的絕對值之和Si與哈希率H(與RSU的計算能力有關(guān))。Si越大表示其具有更大的哈希閾值Mi,從而更容易獲得正確的nonce,通常情況下,RSUs具有相同的哈希率,因此假設(shè)H=500。而在PoW 共識算法中,所有節(jié)點具有相同的哈希閾值,塊生成時間只取決于一個參數(shù),即哈希率。假設(shè)所有RSU的Nz=24。從圖7可以清楚地看到,PoW 的塊生成時間不隨Si的變化而變化;而在本文方案中,隨著Si的增加,塊生成時間逐漸降低。因此,該方案能夠更快地更新變化較大的信任值,從而使車聯(lián)網(wǎng)信任值的更新更具有時效性,同時降低了網(wǎng)絡(luò)帶寬損耗與算力損耗。
圖7 區(qū)塊的生成時間隨Si 的變化Fig.7 Generation time of blocks with Si
(3)共識算法的平均時延
比較了提出的共識算法、傳統(tǒng)的以太坊[27]的區(qū)塊鏈共識算法PoW 以及文獻(xiàn)[16]中提出的PoW 和PBFT 的聯(lián)合共識算法之間更新信任值消息的反應(yīng)時間。在本文實驗中,更新消息請求的數(shù)量設(shè)置為1、10、100、1 000和10 000,每個實驗結(jié)果在10 次獨立運行中取平均值。預(yù)選的ASUs 的總數(shù)為30臺。從圖8可以看出,當(dāng)更新信譽數(shù)據(jù)的消息數(shù)量增加時,傳統(tǒng)的區(qū)塊鏈共識算法和聯(lián)合PoW 和PBFT 共識算法的延遲時間都比本文的共識算法長得多。當(dāng)消息總數(shù)達(dá)到10 000條時,傳統(tǒng)的區(qū)塊鏈共識算法的平均延遲達(dá)到1 423.22 s,遠(yuǎn)遠(yuǎn)超過本文的共識算法的延遲。這是因為本文算法只在預(yù)先選擇的ASUs 上執(zhí)行共識過程,而不是在所有連接的節(jié)點上。結(jié)果表明,提出的共識算法更適配復(fù)雜的車聯(lián)網(wǎng)環(huán)境。
圖8 共識算法的平均時延Fig.8 Average latency of consensus algorithms
本文提出了一種基于邏輯回歸與區(qū)塊鏈的車聯(lián)網(wǎng)信任管理方案。通過該方案,車聯(lián)網(wǎng)中的車輛可以通過目標(biāo)車輛的歷史行為,計算其直接信任值和推薦信任值,并基于邏輯回歸算法對車輛的綜合信任值進(jìn)行評估,從而可以進(jìn)一步方便惡意車輛的識別。同時還提出了一種基于PoS 和PBFT 的混合共識機(jī)制,優(yōu)化礦工節(jié)點的選擇策略和共識過程,從而提高了主節(jié)點選擇的合理性,降低了網(wǎng)絡(luò)帶寬損耗和時延。通過安全性分析和性能分析表明,該方案對于復(fù)雜的車聯(lián)網(wǎng)環(huán)境是有效可行的。然而,如何共同保證信任管理和隱私保護(hù),建立安全高效的車聯(lián)網(wǎng)環(huán)境是一個有待深入研究的課題,這也是今后的研究工作。