• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于信任值的車聯(lián)網(wǎng)分層共識優(yōu)化協(xié)議

    2022-06-24 02:35:46翟寶琴王健韓磊劉吉強(qiáng)何嘉豪劉天皓
    關(guān)鍵詞:共識消息基站

    翟寶琴,王健,韓磊,劉吉強(qiáng),何嘉豪,劉天皓

    (1. 北京交通大學(xué)智能交通數(shù)據(jù)安全與隱私保護(hù)技術(shù)北京市重點(diǎn)實(shí)驗(yàn)室,北京 100044; 2. 北京計(jì)算機(jī)技術(shù)及應(yīng)用研究所,北京 100854)

    0 引言

    融合物聯(lián)網(wǎng)、人工智能等技術(shù)的智能交通技術(shù)為交通管理、自動(dòng)駕駛、物流服務(wù)等提供了有力支撐。智能交通應(yīng)用通過車聯(lián)網(wǎng)[1]可以實(shí)現(xiàn)車輛間和車路間通信,支持車輛及時(shí)獲取環(huán)境信息,以提供各種智能交通服務(wù)。

    與此同時(shí),車聯(lián)網(wǎng)面臨諸多安全問題。且隨著車聯(lián)網(wǎng)節(jié)點(diǎn)增多,信息存儲增加,車聯(lián)網(wǎng)存在單點(diǎn)信息負(fù)載、信息安全、信息更新效率等問題[2]。區(qū)塊鏈[3]具有透明性、匿名性、分布式等特點(diǎn)受到廣泛關(guān)注,特別在交通領(lǐng)域,利用區(qū)塊鏈技術(shù)可構(gòu)建一個(gè)安全可靠的交通系統(tǒng),解決數(shù)據(jù)存儲、隱私安全、數(shù)據(jù)篡改和身份驗(yàn)證等問題[4-5]。同時(shí)可結(jié)合信任機(jī)制、智能合約、機(jī)器學(xué)習(xí)等第三方技術(shù)進(jìn)一步解決安全等問題。Chen[6]等利用信任管理構(gòu)建雙層區(qū)塊鏈進(jìn)行數(shù)據(jù)共享,確保數(shù)據(jù)傳輸安全并提出相關(guān)激勵(lì)措施鼓勵(lì)節(jié)點(diǎn)間信息共享,同樣Yang[7]等為車輛賦予信任值,并以此判斷信息虛假情況且利用節(jié)點(diǎn)信任值激勵(lì)車輛表現(xiàn)良好;可在傳輸存儲數(shù)據(jù)時(shí),保證數(shù)據(jù)安全的前提下,通過智能合約[8-9]、機(jī)器學(xué)習(xí),合理分配共享數(shù)據(jù)。

    引入?yún)^(qū)塊鏈解決系統(tǒng)安全性問題時(shí),系統(tǒng)需要消耗大量計(jì)算開銷、數(shù)據(jù)存儲等滿足數(shù)據(jù)共享服務(wù)。其中對于數(shù)據(jù)存儲更新問題,當(dāng)全網(wǎng)信息同步更新時(shí),隨著車聯(lián)網(wǎng)節(jié)點(diǎn)增多,車輛速度變化快,當(dāng)數(shù)據(jù)共享網(wǎng)絡(luò)信息同步速度不匹配車輛節(jié)點(diǎn)移動(dòng)速度時(shí),時(shí)延問題可能會造成不同區(qū)域信息不一致、車輛得到無意義舊數(shù)據(jù)等問題。

    綜合上述車聯(lián)網(wǎng)中安全性與信息更新等問題,本文主要工作如下。

    1) 提出基于區(qū)塊鏈與信任值的RSU分層代理框架,在網(wǎng)絡(luò)結(jié)構(gòu)分組的基礎(chǔ)上,將區(qū)塊鏈應(yīng)用于車聯(lián)網(wǎng)中,解決單點(diǎn)信息存儲及安全等問題。

    2) 提出基于信任值的RSU鏈分層代理信任共識優(yōu)化,在信任值的基礎(chǔ)上通過選舉組領(lǐng)導(dǎo)節(jié)點(diǎn),并在領(lǐng)導(dǎo)間進(jìn)行全網(wǎng)信息同步更新,提升信息更新效率,減少系統(tǒng)時(shí)延,滿足車輛節(jié)點(diǎn)獲取最新信息的需求。

    3) 從通信復(fù)雜度、算法時(shí)延、容錯(cuò)率和安全性等方面進(jìn)行實(shí)驗(yàn)分析,驗(yàn)證本文提出方案的正確性。

    本文對比了4種共識結(jié)構(gòu)后挑選出最符合場景需求的共識結(jié)構(gòu)——自下而上的共識結(jié)構(gòu),并提出分層共識中領(lǐng)導(dǎo)節(jié)點(diǎn)選取算法,保證系統(tǒng)安全性,實(shí)驗(yàn)證明所提方案在通信復(fù)雜度、時(shí)延、容錯(cuò)率及安全方面均表現(xiàn)良好。

    1 相關(guān)技術(shù)研究現(xiàn)狀

    車聯(lián)網(wǎng)作為互通網(wǎng)絡(luò),可通過感知層收集、上傳各類交通數(shù)據(jù)來服務(wù)于數(shù)據(jù)共享。為進(jìn)一步加強(qiáng)車輛間合作共享道路信息,提升交通效率,研究者采用集群方式增強(qiáng)溝通[9-10],并設(shè)計(jì)相應(yīng)安全協(xié)議。但交通道路中車輛數(shù)目、交通數(shù)據(jù)增加,將造成存儲壓力、數(shù)據(jù)安全等問題。將區(qū)塊鏈技術(shù)應(yīng)用在車聯(lián)網(wǎng)中[6-8],可解決隱私安全問題[11],緩解存儲壓力等,同時(shí)也可利用共識等機(jī)制安全完成信息共識。

    在引入?yún)^(qū)塊鏈技術(shù)的基礎(chǔ)上,為進(jìn)一步提升系統(tǒng)可靠性及效率,研究者將區(qū)塊鏈進(jìn)行分層操作,在分層方面,主要有網(wǎng)絡(luò)結(jié)構(gòu)分層及共識分層。Singh等[12]基于區(qū)塊鏈構(gòu)建多級網(wǎng)絡(luò)模型用于安全監(jiān)控,確保身份信息安全,增強(qiáng)系統(tǒng)可靠性,但增加了系統(tǒng)管理開銷。Rashid等[13]提出基于區(qū)塊鏈技術(shù)的多層安全網(wǎng)絡(luò)模型,利用遺傳算法、粒子群優(yōu)化算法等,將網(wǎng)絡(luò)劃分為K個(gè)集群,并選舉出群領(lǐng)導(dǎo)組成公有鏈同步信息,但在具體物聯(lián)網(wǎng)場景下隨著網(wǎng)絡(luò)規(guī)模增大,公有鏈進(jìn)行共識則會造成一定網(wǎng)絡(luò)時(shí)延。Hou等[14]構(gòu)建多層區(qū)塊鏈,將用戶根據(jù)一定安全級別進(jìn)行分組,將不同層級的數(shù)據(jù)存儲至相應(yīng)層級的鏈中,從而實(shí)現(xiàn)安全的數(shù)據(jù)訪問控制。同樣,為保證數(shù)據(jù)安全、可追溯,Aujla等[15]和丁慶洋等[16]針對車聯(lián)網(wǎng)和市場產(chǎn)品將區(qū)塊鏈分層,減少系統(tǒng)時(shí)延開銷。但是目前研究大多數(shù)針對網(wǎng)絡(luò)結(jié)構(gòu)分層,為進(jìn)一步減少時(shí)延,可以在結(jié)構(gòu)分層的基礎(chǔ)上進(jìn)行共識優(yōu)化。

    在針對共識優(yōu)化的研究中,為進(jìn)一步保證共識算法安全性、伸縮性,符合不同場景需求,將需解決問題及解決方案總結(jié),如表1所示。

    表1 共識優(yōu)化解決方案Table1 Solution of consensus optimization

    針對共識問題的探討主要分為兩部分,即系統(tǒng)性能與安全性。在性能方面,有研究者關(guān)注到共識順序[10],傳統(tǒng)拜占庭協(xié)議要求正確節(jié)點(diǎn)達(dá)成一致,但忽略具體達(dá)成協(xié)議的順序,研究者賦予節(jié)點(diǎn)信任值,依據(jù)信任值對順序進(jìn)行探究;在針對共識中帶寬與存儲的要求,PoS(proof of stake)的多重簽名算法Pixel[17]可大幅度減少開銷;為進(jìn)一步降低共識復(fù)雜度,研究者對共識結(jié)構(gòu)做出優(yōu)化,利用聚類算法[18]將節(jié)點(diǎn)進(jìn)行分組并選出組領(lǐng)導(dǎo)節(jié)點(diǎn),組內(nèi)共識后,領(lǐng)導(dǎo)節(jié)點(diǎn)進(jìn)行共識。利用相同思路,可將雙層共識結(jié)構(gòu)推廣至多層,Li等[19]在提出雙層協(xié)議后,探究其可伸縮性。在提升系統(tǒng)性能的同時(shí),仍需確保安全性,由于異步協(xié)議相較于同步協(xié)議更能保證系統(tǒng)安全性,如在抵抗DDoS攻擊時(shí)具有更強(qiáng)的魯棒性,因此Duan等[20]進(jìn)一步提出異步共識協(xié)議,并在吞吐量、時(shí)延方面做優(yōu)化;推廣后做出分析。在上述方案中仍需考慮具體場景的結(jié)構(gòu)問題。

    本文主要解決車聯(lián)網(wǎng)場景中高效共識問題,隨著車輛節(jié)點(diǎn)增多,如何在車輛高速移動(dòng)環(huán)境下完成信息共識,即車輛在區(qū)域間移動(dòng)時(shí)可保證數(shù)據(jù)同步更新且一致成為關(guān)鍵。其中共識結(jié)構(gòu)優(yōu)化可減少全局共識時(shí)延,提升信息共識效率。針對共識結(jié)構(gòu)分層,當(dāng)前解決方案主要有:雙層結(jié)構(gòu)[19](可拓展至多層)、聚類結(jié)構(gòu)[18]、樹形結(jié)構(gòu)[23]等,為進(jìn)一步篩選出適應(yīng)本場景的結(jié)構(gòu),本文對具體結(jié)構(gòu)進(jìn)行了分析比較。

    2 基于信任值的RSU鏈分層代理共識優(yōu)化協(xié)議

    本節(jié)首先介紹系統(tǒng)模型,在對比傳統(tǒng)結(jié)構(gòu)后,為本場景選擇最適合結(jié)構(gòu),并介紹了分層中組領(lǐng)導(dǎo)節(jié)點(diǎn)選取算法,最后給出了分層協(xié)議流程。

    2.1 基于區(qū)塊鏈的車聯(lián)網(wǎng)系統(tǒng)模型

    由于協(xié)議主要研究車聯(lián)網(wǎng)共享信息時(shí)同步更新效率,因此該車聯(lián)網(wǎng)系統(tǒng)主要由兩部分組成,即路邊單元(RSU,road side unit),以及裝備車載單元(OBU,on-board unit)。系統(tǒng)模型如圖1所示,車輛可從授權(quán)信任中心注冊并獲取初始信任值,在信息共享過程中,基站可根據(jù)車輛表現(xiàn)情況進(jìn)行信任值更新,為確保車輛進(jìn)入下一個(gè)區(qū)域前,基站維護(hù)的車輛信任表得到及時(shí)更新,基站鏈需快速安全地實(shí)現(xiàn)信息共識。

    圖1 系統(tǒng)模型Figure 1 Model of system

    本文主要研究信息同步問題,因此將圍繞如下主體進(jìn)行研究。

    OBU:在車聯(lián)網(wǎng)中代表車輛,是分享交通信息的主體,車輛每次采取就近原則與距離最近的RSU通信。

    RSU:在系統(tǒng)設(shè)計(jì)中,在關(guān)鍵路口處會放置RSU,用來收集車輛發(fā)送來的關(guān)于此路口的交通信息,并且所有的RSU組成基站鏈,用來同步RSU維護(hù)的車輛信任列表,在區(qū)塊鏈技術(shù)的基礎(chǔ)上,同步車輛信任值列表。這些基站都擁有相同的計(jì)算力。

    信任管理:在車聯(lián)網(wǎng)中車輛共享交通信息時(shí),為確保共享信息過程中車輛的隱私安全性,可為每輛車頒發(fā)假名保證通信匿名,并為每輛車設(shè)置信任值,輔助判斷交通信息的正確性。本文考慮車輛信任值保存在RSU鏈中利用區(qū)塊鏈去中心化、可追溯性等特點(diǎn)做網(wǎng)絡(luò)統(tǒng)一管理,與其他方案不同的是,本文系統(tǒng)模型的車輛不知道本身信任值,信任值只存于RSU鏈中,可繼續(xù)服務(wù)于輔助交通信息判斷等。由于本文以共識結(jié)構(gòu)優(yōu)化為主,因此以RSU鏈為主要介紹對象,對其中的全網(wǎng)共識統(tǒng)一信任信息做出研究。

    2.2 分層共識結(jié)構(gòu)對比

    在當(dāng)前共識結(jié)構(gòu)中,所有節(jié)點(diǎn)為一組共同參與PBFT算法;也有采用分層類型、樹形結(jié)構(gòu)等來優(yōu)化共識協(xié)議,以適應(yīng)各種場景達(dá)到高效需求。在車聯(lián)網(wǎng)協(xié)議中,需考慮如下指標(biāo)。

    (1)速度

    由于車輛移動(dòng)速度快,在到達(dá)下一個(gè)基站,車主有可能上傳交通信息,因此時(shí)延為重要參考因素。

    (2)網(wǎng)絡(luò)容錯(cuò)率

    在車聯(lián)網(wǎng)交通數(shù)據(jù)共享協(xié)議中,在保證安全的前提下,使更多節(jié)點(diǎn)參與。

    (3)通信復(fù)雜度

    隨著通信復(fù)雜度的增加,時(shí)延成正比增加。

    本文將從上述3個(gè)方面展開與其他方法中所提模型進(jìn)行對比,從而為本場景提出最佳共識結(jié)構(gòu)。

    (1)兩層PBFT共識協(xié)議

    兩層共識協(xié)議分為自下而上和自上而下兩種共識結(jié)構(gòu)。

    1)自下而上的兩層協(xié)議共識結(jié)構(gòu),如圖2所示。

    圖2 自下而上兩層協(xié)議共識結(jié)構(gòu)Figure 2 The structure of bottom-up two-layer consensus protocol

    首先進(jìn)行區(qū)域劃分,在確定組領(lǐng)導(dǎo)節(jié)點(diǎn)后,所有組領(lǐng)導(dǎo)節(jié)點(diǎn)在組成第二層即領(lǐng)導(dǎo)層。采取此種方式共識,需先在組內(nèi)進(jìn)行共識,當(dāng)組領(lǐng)導(dǎo)節(jié)點(diǎn)在第一輪共識確認(rèn)階段收到了超過2/3的節(jié)點(diǎn)消息時(shí),向領(lǐng)導(dǎo)主節(jié)點(diǎn)發(fā)出請求,領(lǐng)導(dǎo)主節(jié)點(diǎn)將請求排序后廣播進(jìn)行第二輪共識。在第二輪共識中,組領(lǐng)導(dǎo)節(jié)點(diǎn)在確認(rèn)階段收到2/3節(jié)點(diǎn)消息時(shí),即可回復(fù)與廣播至組內(nèi)。

    2)自上而下的兩層共識結(jié)構(gòu),有學(xué)者提出自上而下共識協(xié)議[19],具體應(yīng)用在本場景中,其結(jié)構(gòu)如圖3所示。

    圖3 自上而下兩層共識協(xié)議結(jié)構(gòu)Figure 3 The structure of top-down two-layer consensus protocol

    對于自上而下共識來說,與本文分層(自下而上)一樣首先要進(jìn)行區(qū)域劃分,并且在區(qū)域劃分時(shí),要考慮通信復(fù)雜度問題。從理論上分析,采取自上而下共識時(shí),基站首先將更新信息打包,向領(lǐng)導(dǎo)主節(jié)點(diǎn)發(fā)出申請,在領(lǐng)導(dǎo)層共識完成后,各個(gè)組領(lǐng)導(dǎo)節(jié)點(diǎn)仍需將更新信息廣播至域內(nèi)進(jìn)行第二次共識,假設(shè)有m組,則共需要進(jìn)行m+1次共識操作。但是在自下而上協(xié)議中,考慮到可信度問題,即組領(lǐng)導(dǎo)節(jié)點(diǎn)在域內(nèi)共識完成后需交給領(lǐng)導(dǎo)主節(jié)點(diǎn)進(jìn)行第二次共識,在領(lǐng)導(dǎo)層共識中,當(dāng)其他域組領(lǐng)導(dǎo)節(jié)點(diǎn)接收到2f+1個(gè)確認(rèn)信息后,可直接向域內(nèi)廣播,不再進(jìn)行共識,即本文提出的自下而上的協(xié)議只需要兩次共識,因此在通信復(fù)雜度方面優(yōu)于前者。

    (2)基于樹形網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)PBFT共識算法

    樹形共識協(xié)議[23]結(jié)構(gòu)如圖4所示,在樹形共識協(xié)議中,只有最底層子網(wǎng)運(yùn)行完整的PBFT協(xié)議,高層子網(wǎng)在共識時(shí),將準(zhǔn)備階段與確認(rèn)階段結(jié)合。樹形結(jié)構(gòu)的提出可以降低通信復(fù)雜度。但是在樹形結(jié)構(gòu)中,可靠性成為關(guān)鍵問題,并仍然存在下述問題。首先,樹形結(jié)構(gòu)確認(rèn),樹形結(jié)構(gòu)建立在全網(wǎng)的基礎(chǔ)上,依據(jù)信任值進(jìn)行統(tǒng)一劃分,但在實(shí)際車聯(lián)網(wǎng)場景中,按照區(qū)域(地理位置)劃分更符合實(shí)際場景需求。其次,參數(shù)確定,在構(gòu)建網(wǎng)絡(luò)時(shí),假設(shè)每個(gè)子網(wǎng)中有k個(gè)節(jié)點(diǎn),則樹形結(jié)構(gòu)為滿k?1叉樹,文獻(xiàn)[23]給出通信復(fù)雜度公式,但對于層數(shù)確定和子網(wǎng)內(nèi)節(jié)點(diǎn)數(shù)目的確定,以達(dá)到最小通信量,文中沒有給出解決方案。最后,動(dòng)態(tài)調(diào)整問題,在車聯(lián)網(wǎng)場景下,基站是確定因素,但車輛是不可預(yù)測性因素,因此基站可信度一直處于動(dòng)態(tài)變化中,如果采用樹形結(jié)構(gòu),則每完成一次共識,需要重新評估各個(gè)基站信任值,進(jìn)行動(dòng)態(tài)調(diào)整。

    圖4 樹形共識協(xié)議結(jié)構(gòu)Figure 4 Tree consensus protocol structure

    (3)基于聚類算法的K-PBFT共識機(jī)制

    在聚類算法K-medoids的基礎(chǔ)上,與PBFT相結(jié)合形成K-PBFT機(jī)制[18],其思想為:首先將社會公信度較高的節(jié)點(diǎn)作為集群中心點(diǎn),并且中心節(jié)點(diǎn)改動(dòng)概率較小,其余節(jié)點(diǎn)則根據(jù)聚類中心,采用相似度(距離等)算法,找到所屬中心,完成聚類工作;其次,在聚類完成后,節(jié)點(diǎn)首先向各個(gè)集群中心點(diǎn)提出申請,在組內(nèi)完成共識后,在主節(jié)點(diǎn)層進(jìn)行第二次共識操作,當(dāng)主節(jié)點(diǎn)層達(dá)成共識后,主節(jié)點(diǎn)廣播至集群內(nèi)。聚類共識協(xié)議結(jié)構(gòu)如圖5所示。

    圖5 聚類共識協(xié)議結(jié)構(gòu)Figure 5 Clustering consensus protocol structure

    在具體車聯(lián)網(wǎng)場景下,按照聚類思想可以將距離較近的基站聚為一類。其優(yōu)點(diǎn)為在兩層共識結(jié)構(gòu)的基礎(chǔ)上,可以加一層監(jiān)管機(jī)構(gòu),使得每一次信任值得到監(jiān)督,但存在中心節(jié)點(diǎn)更換問題與聚類參數(shù)確定問題。原始方案中可以根據(jù)相似度進(jìn)行聚類,但在車聯(lián)網(wǎng)中,基站之間在地理位置、完成度方面可能存在差異,在計(jì)算能力方面相當(dāng),并且可信度還與周圍車輛有關(guān),因此在相似度方面,距離因素占主導(dǎo)地位,即聚類退化為按照區(qū)域劃分。

    不同共識協(xié)議結(jié)構(gòu)性能對比如表2所示。

    表2 不同共識協(xié)議結(jié)構(gòu)性能對比Table 2 Comparison of structure and performance of different consensus protocols

    其中,m代表組數(shù),n代表組內(nèi)節(jié)點(diǎn)個(gè)數(shù),s'代表最底層子網(wǎng)樹,s代表總子網(wǎng)數(shù),k為子網(wǎng)中節(jié)點(diǎn)個(gè)數(shù)。不同共識協(xié)議結(jié)構(gòu)優(yōu)缺點(diǎn)對比如表3所示。

    表3 不同共識協(xié)議結(jié)構(gòu)優(yōu)缺點(diǎn)對比Table 3 Comparison of advantages and disadvantages of different consensus protocol structures

    在優(yōu)化單層結(jié)構(gòu)的基礎(chǔ)上,考慮到容錯(cuò)性、速度以及基站可信度等問題,K-PBFT及樹形結(jié)構(gòu)存在參數(shù)不確定、動(dòng)態(tài)結(jié)構(gòu)調(diào)整復(fù)雜等問題,造成一定系統(tǒng)時(shí)延開銷,考慮到車聯(lián)網(wǎng)場景對時(shí)延要求較高,因此從雙層結(jié)構(gòu)進(jìn)行考察。在兩種雙層結(jié)構(gòu)中,為保證速度快、擴(kuò)展性強(qiáng),即隨車輛高速運(yùn)動(dòng),網(wǎng)絡(luò)結(jié)構(gòu)需有良好擴(kuò)展性以適應(yīng)拓?fù)浣Y(jié)構(gòu)的快速變化,本文采用自下而上的雙層共識協(xié)議。

    2.3 基于信任值的RSU組領(lǐng)導(dǎo)節(jié)點(diǎn)選舉

    綜合車輛與基站考慮,其組領(lǐng)導(dǎo)選舉主要因素有節(jié)點(diǎn)參與程度、工作完成情況及消息價(jià)值度。相關(guān)定義如下。

    定義1節(jié)點(diǎn)參與程度b,其中每個(gè)基站的活躍程度,都由其參與節(jié)點(diǎn)決定,車輛活躍度可與其發(fā)送消息頻率有關(guān),則對于第i個(gè)基站RSUi,其參與程度集合為β={b1,b2,b3,…,bn},其中bn表示在Δt時(shí)間內(nèi)第n輛參與車輛的發(fā)送消息頻率,則每個(gè)基站的參與程度指標(biāo)B計(jì)算如式(1)所示。

    定義2節(jié)點(diǎn)共識完成率C,表示基站在共識中表現(xiàn)情況,假設(shè)RSU基站完成事件個(gè)數(shù)為s,未完成事件個(gè)數(shù)為f,則節(jié)點(diǎn)共識完成率C計(jì)算如式(2)所示。

    定義3平均每條消息價(jià)值度V,在固定的選舉周期Δt內(nèi),假設(shè)RSU共處理事件n件,其事件集合為:MΔt={M1,M2,M3,…,Mn},對于每個(gè)事件發(fā)生概率,根據(jù)貝葉斯公式評定集合為PΔt={P1,P2,P3,…,Pn},并且所有參與車輛的信任值集合為TΔt={T1,T2,T3,…,Tn},其中Tn代表對于事件n,參與車輛信任值集合,假設(shè)參與事件共i輛車,表示為Num_of_i,則Tn={t1,t2,t3,…,ti}。在知道上述條件情況下,基站RSU的平均每條消息價(jià)值度表示如下。

    定義4區(qū)域i的基站j的可信度Dij,將上述可信度影響因子綜合起來,在每次選舉領(lǐng)導(dǎo)節(jié)點(diǎn)時(shí),區(qū)域i的基站j的可信度如式(4)所示,其中n代表基站j收集交通信息的參與車輛集,共處理事件m個(gè),ijV′表示前一次可信度的測量值。

    2.4 分層共識過程

    在實(shí)際車聯(lián)網(wǎng)運(yùn)行環(huán)境中,考慮車輛活動(dòng)范圍,離車輛較遠(yuǎn)地區(qū)的基站,則可以暫時(shí)不更新。因此分層共識協(xié)議中,事務(wù)排序需增加距離、信任度等進(jìn)行衡量,并在分層共識選舉領(lǐng)導(dǎo)時(shí),引入可信度,基站可信度的衡量主要依賴車輛與基站本身,其分層共識協(xié)議流程(如圖6所示)如下。

    圖6 分層共識協(xié)議流程Figure 6 Process of hierarchical consensus protocol

    選舉組領(lǐng)導(dǎo)節(jié)點(diǎn),進(jìn)行局部共識,局部共識后,在組領(lǐng)導(dǎo)節(jié)點(diǎn)中選舉可信度最高節(jié)點(diǎn)作為領(lǐng)導(dǎo)主節(jié)點(diǎn)(見2.3節(jié)),進(jìn)行全局共識。

    1)區(qū)域劃分:根據(jù)通信復(fù)雜度計(jì)算公式,計(jì)算出最佳分組數(shù)目。

    2)選舉組領(lǐng)導(dǎo)節(jié)點(diǎn):依據(jù)信任度影響因子進(jìn)行可信度評估,選舉出每個(gè)區(qū)域可信度最高的RSU基站作為組領(lǐng)導(dǎo)節(jié)點(diǎn)。

    3)局部共識。

    ① 提出請求,假設(shè)對于基站i有n輛車需要進(jìn)行信任值更新,則申請消息為:,其中σi為簽名。

    ② 預(yù)準(zhǔn)備階段,領(lǐng)導(dǎo)節(jié)點(diǎn)對收到的請求分配序列號,向組內(nèi)所有節(jié)點(diǎn)群發(fā)預(yù)準(zhǔn)備消息,其中m表示請求消息,v表示視圖編號,n表示序列號,d表示請求消息的摘要,組領(lǐng)導(dǎo)節(jié)點(diǎn)將上述消息簽名打包后進(jìn)行簽名,并附上消息m,廣播至組內(nèi)。

    ③ 準(zhǔn)備階段,當(dāng)節(jié)點(diǎn)接受預(yù)準(zhǔn)備消息時(shí),信息驗(yàn)證準(zhǔn)確后節(jié)點(diǎn)接受預(yù)準(zhǔn)備消息進(jìn)入準(zhǔn)備階段。此時(shí)節(jié)點(diǎn)向組內(nèi)所有節(jié)點(diǎn)廣播準(zhǔn)備消息。

    ④ 確認(rèn)階段,當(dāng)節(jié)點(diǎn)收到來自2f+1個(gè)準(zhǔn)備消息時(shí)對每條消息做上述驗(yàn)證,驗(yàn)證均正確時(shí),進(jìn)入確認(rèn)階段。此時(shí)節(jié)點(diǎn)將廣播到域內(nèi),當(dāng)組領(lǐng)導(dǎo)節(jié)點(diǎn)收到超過2f+1個(gè)確認(rèn)消息,且驗(yàn)證通過時(shí),完成確認(rèn)階段,此時(shí)組領(lǐng)導(dǎo)節(jié)點(diǎn)將向領(lǐng)導(dǎo)主節(jié)點(diǎn)發(fā)出申請。

    4)選取領(lǐng)導(dǎo)主節(jié)點(diǎn),領(lǐng)導(dǎo)主節(jié)點(diǎn)的選取與組領(lǐng)導(dǎo)選舉相同,即選取可信度最高的節(jié)點(diǎn)作為領(lǐng)導(dǎo)主節(jié)點(diǎn)。

    5)進(jìn)入全局共識,在全局共識中,與局部共識相似,組領(lǐng)導(dǎo)節(jié)點(diǎn)將一定時(shí)間此區(qū)域內(nèi)需要更新的信任值列表打包發(fā)出申請,,。其中σleader為領(lǐng)導(dǎo)主節(jié)點(diǎn)簽名。并且在領(lǐng)導(dǎo)層進(jìn)行全局共識,同樣經(jīng)過預(yù)準(zhǔn)備階段、準(zhǔn)備階段、確認(rèn)階段。詳細(xì)過程與組內(nèi)共識類似,不再贅述。

    6)回復(fù)消息與域內(nèi)廣播,當(dāng)?shù)诙庸沧R節(jié)點(diǎn),即各個(gè)域組領(lǐng)導(dǎo)節(jié)點(diǎn)收到2f+1條確認(rèn)消息,并且消息均通過驗(yàn)證,向提出申請基站進(jìn)行回復(fù),同時(shí)各個(gè)組領(lǐng)導(dǎo)節(jié)點(diǎn)進(jìn)行域內(nèi)信任值列表更新廣播。

    3 實(shí)驗(yàn)結(jié)果與分析

    本文實(shí)驗(yàn)將從安全性、通信復(fù)雜度、時(shí)延、容錯(cuò)率方面對車聯(lián)網(wǎng)所需指標(biāo)進(jìn)行分析。

    3.1 安全性分析

    (1)安全目標(biāo)

    1) 基于RSU身份簽名消息的不可偽造性,在共識過程中,請求、預(yù)準(zhǔn)備、準(zhǔn)備等階段中, RSU為身份唯一的半可信實(shí)體且簽名采用其私鑰,因此基于RSU簽名具有不可偽造性。

    2) 對安全攻擊的抵抗性。本文所提共識協(xié)議,可抵抗重放攻擊、中間人攻擊、女巫攻擊、日蝕攻擊、竊聽及篡改攻擊等。

    3) RSU身份不可偽造性。RSU作為半可信實(shí)體,不會借用其身份主動(dòng)發(fā)起攻擊,且TA與RSU間傳輸信道安全,在初始TA為其頒發(fā)身份時(shí),敵手無法獲取。

    4)RSU共識數(shù)據(jù)不可篡改性。當(dāng)RSU被敵手控制時(shí),篡改數(shù)據(jù)庫,將虛假消息進(jìn)行共識請求,RSU在擺脫攻擊后應(yīng)能恢復(fù)數(shù)據(jù)庫并進(jìn)行正確信息共識,覆蓋原有錯(cuò)誤信息。

    (2)攻擊模型

    從攻擊者角度分析,下面將從兩類攻擊模型展開討論。

    1) 底層節(jié)點(diǎn),由于節(jié)點(diǎn)分層時(shí)以地理位置劃分,因此底層攻擊者可根據(jù)實(shí)際地理位置,控制鄰近RSU,且由于節(jié)點(diǎn)在參與程度、工作完成情況、消息價(jià)值度等衡量指標(biāo)中是不確定且動(dòng)態(tài)改變的,因此底層節(jié)點(diǎn)共識與普通拜占庭容錯(cuò)共識一樣。二者容錯(cuò)率都為1/3,所以當(dāng)敵手控制組內(nèi)2/3以上節(jié)點(diǎn)時(shí),即可完成組內(nèi)攻擊;如果敵手控制底層節(jié)點(diǎn)被選舉成組領(lǐng)導(dǎo)節(jié)點(diǎn),即可對更新數(shù)據(jù)進(jìn)行篡改攻擊等,并擾亂第二輪共識。

    2) 領(lǐng)導(dǎo)層節(jié)點(diǎn),當(dāng)敵手控制組領(lǐng)導(dǎo)節(jié)點(diǎn),此時(shí)在第一輪共識的基礎(chǔ)上,敵手可更改信息,擾亂第二次共識;領(lǐng)導(dǎo)層節(jié)點(diǎn)完成共識后,敵手在組內(nèi)廣播信息時(shí)展開攻擊。

    (3)正確性分析

    對本協(xié)議進(jìn)行正確性分析時(shí),主要判斷所提共識協(xié)議結(jié)構(gòu)是否滿足安全目標(biāo)。

    1) 基于RSU身份簽名消息的不可偽造性、RSU身份具有不可偽造性。由于共識算法中消息包含公鑰簽名、消息驗(yàn)證編碼及基于哈希函數(shù)生成的消息摘要,因此可防止消息被破壞;由于共識算法中消息包含公鑰簽名、消息驗(yàn)證編碼及基于哈希函數(shù)生成的消息摘要,因此可防止消息被破壞。由于TA和RSU之間信道安全,因此敵手無法竊聽其身份信息,同時(shí)不會發(fā)動(dòng)與身份相關(guān)類型攻擊。

    2) 抗攻擊分析包括對重放攻擊、中間人攻擊、女巫攻擊、日蝕攻擊的分析。由于PBFT共識算法本身在接受消息時(shí),判斷消息來自不同RSU簽名消息即消息數(shù)量增一,多次重復(fù)發(fā)送無意義。針對每個(gè)RSU,由于其作為半可信實(shí)體,簽名消息無法偽造,因此可抵抗有關(guān)身份的中間人攻擊與女巫攻擊。并且RSU分組依據(jù)地理位置,因此受地理位置約束,可抗日蝕攻擊。

    當(dāng)敵手控制底層節(jié)點(diǎn)時(shí),敵手需控制組內(nèi)大多數(shù)節(jié)點(diǎn)才可以完成篡改后消息的共識,增加敵手攻擊難度,并且敵手無法提前預(yù)知。當(dāng)敵手控制組領(lǐng)導(dǎo)節(jié)點(diǎn),擾亂組內(nèi)共識時(shí),即收到組內(nèi)大多數(shù)節(jié)點(diǎn)確認(rèn)節(jié)點(diǎn),但不上報(bào),由于敵手控制短暫且組領(lǐng)導(dǎo)節(jié)點(diǎn)會進(jìn)行更換,基站在一定時(shí)間內(nèi)收不到回復(fù),可再次發(fā)起共識申請;由于節(jié)點(diǎn)參與程度、工作完成情況、消息價(jià)值度等衡量指標(biāo)為不確定因素,因此敵手無法準(zhǔn)確鎖定組領(lǐng)導(dǎo)節(jié)點(diǎn);當(dāng)敵手?jǐn)_亂領(lǐng)導(dǎo)層共識時(shí),敵手想控制大多數(shù)領(lǐng)導(dǎo)節(jié)點(diǎn)難度較高,因此系統(tǒng)可避免此類攻擊情況。

    3) 共識數(shù)據(jù)不可篡改性:當(dāng)敵手控制RSU節(jié)點(diǎn)時(shí),如果敵手篡改數(shù)據(jù)并將虛假消息進(jìn)行共識,但敵手很難控制組內(nèi)大多數(shù)節(jié)點(diǎn),因此共識失敗。敵手難以獲取RSU身份信息,偽造共識發(fā)起請求;當(dāng)RSU擺脫敵手控制,發(fā)現(xiàn)與鏈上多數(shù)節(jié)點(diǎn)數(shù)據(jù)不一致時(shí),進(jìn)行改正。

    因此,本文所提共識協(xié)議結(jié)構(gòu)可實(shí)現(xiàn)安全目標(biāo),確保系統(tǒng)安全性。

    3.2 通信復(fù)雜度分析

    在RSU數(shù)量一定的情況下,如何分組,即分多少組,每組多少個(gè)RSU,才可以在總數(shù)確定的情況下盡量減少通信次數(shù)。為了找到最小值,并與原有PBFT方案進(jìn)行對比,本文將通信過程次數(shù)做出如下假設(shè):

    假設(shè)一共分為m個(gè)共識小組,每組中有n個(gè)RSU,則在PBFT的3個(gè)階段中,每個(gè)階段的開銷分析如下。

    子群在第一次共識時(shí),首先進(jìn)行PBFT共識。

    (1)預(yù)準(zhǔn)備階段,每小組主節(jié)點(diǎn)將消息廣播至各個(gè)節(jié)點(diǎn),此時(shí)通信開銷為n?1。

    (2)準(zhǔn)備階段,此時(shí)各個(gè)收到消息的RSU節(jié)點(diǎn)會向組內(nèi)除了自己節(jié)點(diǎn)外發(fā)送驗(yàn)證消息,此時(shí)開銷為(n?1)(n?1)。

    (3)確認(rèn)階段,在這個(gè)階段中,所有節(jié)點(diǎn)收到了上一個(gè)階段中其他節(jié)點(diǎn)發(fā)來的驗(yàn)證消息,節(jié)點(diǎn)進(jìn)行確認(rèn),并統(tǒng)計(jì)收到消息數(shù)量,此時(shí)開銷為

    n(n?1)。

    進(jìn)行第二層節(jié)點(diǎn)共識,由于有m個(gè)小組參與共識,因此在第二層中共有m個(gè)節(jié)點(diǎn)參與。

    (1)預(yù)準(zhǔn)備階段,當(dāng)每個(gè)小組信任度最高的主節(jié)點(diǎn)接收到小組內(nèi)的確認(rèn)反饋時(shí),將此條消息廣播至第二層所有節(jié)點(diǎn)中,此時(shí)通信開銷為m?1。

    (2)準(zhǔn)備階段與確認(rèn)階段的通信開銷與底層第一輪共識類似,則其通信開銷為m(m?1)+ (m?1)(m?1)。

    (3)回復(fù)與廣播階段,當(dāng)各個(gè)組領(lǐng)導(dǎo)節(jié)點(diǎn)完成共識需要回復(fù)請求基站,通信量為m,且各個(gè)組領(lǐng)導(dǎo)節(jié)點(diǎn)需要在域內(nèi)進(jìn)行共識,則開銷為mn。

    將兩輪共識完整實(shí)現(xiàn)之后,從客戶端向主節(jié)點(diǎn)發(fā)出請求到主節(jié)點(diǎn)完成共識廣播至域內(nèi),總通信復(fù)雜度如式(5)所示。

    其中,假設(shè)總節(jié)點(diǎn)數(shù)為T,則T=mn,將m用T/n替換,則可得式(6)。

    此時(shí)根據(jù)求導(dǎo)公式,求出極值點(diǎn)找到其中最合適的點(diǎn),即可在確保通信復(fù)雜度最低的情況下獲得最佳小組RSU數(shù)目。

    在分層數(shù)目與組內(nèi)成員個(gè)數(shù)相同的情況下,本文進(jìn)一步與文獻(xiàn)[19]提出的自上而下分層結(jié)構(gòu)方案進(jìn)行通信復(fù)雜度比較,對比結(jié)果如圖7所示。從圖7中可以看出,自下而上的方案更有利于通信復(fù)雜度的降低。

    圖7 通信復(fù)雜度對比實(shí)驗(yàn)示意Figure 7 Comparison experiment of communication complexity

    3.3 分層共識算法時(shí)延對比

    為了實(shí)際研究分層共識的速度提升變化,本實(shí)驗(yàn)采用Java環(huán)境模擬兩層協(xié)議,實(shí)驗(yàn)硬件配置如表4所示。在Java環(huán)境模擬中,節(jié)點(diǎn)位置在一定范圍內(nèi)隨機(jī)生成,并且節(jié)點(diǎn)間通信時(shí)延與節(jié)點(diǎn)間距離成正比。本實(shí)驗(yàn)將分組設(shè)定為3,然后與原協(xié)議時(shí)間對比。本文提出的雙層共識協(xié)議與單層PBFT協(xié)議在時(shí)間上的對比如表5所示。

    表4 實(shí)驗(yàn)硬件環(huán)境配置Table 4 Experimental hardware environment configuration

    表5 雙層共識協(xié)議與PBFT協(xié)議時(shí)間對比Table 5 Time comparison between two-layer consensus protocol and PBFT protocol

    雙層共識協(xié)議與PBFT協(xié)議時(shí)延對比如圖8所示。

    圖8 雙層共識協(xié)議與PBFT協(xié)議時(shí)延對比Figure 8 Comparison diagram between the two-layer consensus protocol and PBFT protocol

    可以看出,采用分層結(jié)構(gòu),可大幅度減少時(shí)間開銷,在最后一組實(shí)驗(yàn)中,201個(gè)節(jié)點(diǎn)的不分層時(shí)間比183個(gè)節(jié)點(diǎn)多,這是因?yàn)殡S著節(jié)點(diǎn)個(gè)數(shù)增加,在模擬實(shí)驗(yàn)中,當(dāng)每次通信超過一定時(shí)間限制時(shí)則認(rèn)為超時(shí),即認(rèn)為投票失效,所以在節(jié)點(diǎn)數(shù)量多的情況下,應(yīng)采用分層結(jié)構(gòu),這樣不僅能縮短時(shí)間,還能降低節(jié)點(diǎn)超時(shí)率。

    3.4 容錯(cuò)率分析

    采用兩層共識協(xié)議,達(dá)成共識的條件為:在底層組內(nèi)達(dá)成共識的前提下,領(lǐng)導(dǎo)層也完成共識。因此,假設(shè)事件P(A)為底層組內(nèi)達(dá)成共識,事件P(B)為領(lǐng)導(dǎo)層達(dá)成共識,事件P(C)為最終達(dá)成共識,則P(C)=P(A)P(B|A)。

    在本文協(xié)議提出的兩層共識中,底層執(zhí)行經(jīng)典的PBFT協(xié)議,即只要有不超過1/3的失效節(jié)點(diǎn),即可成功達(dá)成共識。而對于領(lǐng)導(dǎo)層節(jié)點(diǎn)來說,在第二層共識時(shí),只要對應(yīng)組領(lǐng)導(dǎo)節(jié)點(diǎn)共識通過,那么組內(nèi)不需要再進(jìn)行共識,可以直接廣播信任更新信息。因此對于領(lǐng)導(dǎo)層節(jié)點(diǎn)來說,其是否接受共識,取決于其失效概率。事件A的概率值如式(7)所示。

    其中,Pf為節(jié)點(diǎn)失效概率。

    假設(shè)在m個(gè)組中,有j組完成了共識,即第二層共識中,有j個(gè)組領(lǐng)導(dǎo)節(jié)點(diǎn)參與,則進(jìn)入第二輪共識的條件為m/3

    事件A發(fā)生概率如圖9所示(n=30)。

    圖9 事件A發(fā)生概率Figure 9 The probability of event A

    根據(jù)式(8)可推得式(9)。

    事件C發(fā)生概率(m=30,n=30)如圖10所示,將自下而上方案與自上而下方案[19]進(jìn)行比較,如圖11所示。

    圖10 事件C發(fā)生概率Figure 10 The probability of event C

    圖11 事件C發(fā)生概率對比Figure 11 Comparison of the probability of event C

    從圖中可看出,本文方案的容錯(cuò)率更高。在節(jié)點(diǎn)失效率達(dá)到0.4時(shí),成功率趨于0,但在自上而下方案中,當(dāng)節(jié)點(diǎn)失效率為0.3時(shí),成功率趨于0。由于在車聯(lián)網(wǎng)中,基站需要完成收集交通信息,計(jì)算信息發(fā)生概率以及信任更新共識等任務(wù),在共識過程中,考慮到信任值更新需要從一個(gè)基站出發(fā),更新至全網(wǎng),即需要盡可能多的節(jié)點(diǎn)參與并成功達(dá)成共識,因此,需要容錯(cuò)率高的協(xié)議。

    4 結(jié)束語

    車聯(lián)網(wǎng)作為智能交通基礎(chǔ)平臺,為解決其數(shù)據(jù)安全問題,可引入?yún)^(qū)塊鏈技術(shù),針對實(shí)際場景應(yīng)用中,為了符合速度、容錯(cuò)率以及減少通信量的需求,在原有共識結(jié)構(gòu)上進(jìn)行改造。在對比4種典型結(jié)構(gòu)后,挑選出最符合場景需求的共識結(jié)構(gòu)——自下而上的共識結(jié)構(gòu)。并且劃分區(qū)域,引入車輛信任值、車輛活躍度等因素,提出了相關(guān)領(lǐng)導(dǎo)節(jié)點(diǎn)選取算法等。在上述基礎(chǔ)之上,設(shè)計(jì)具體分層共識步驟。實(shí)驗(yàn)驗(yàn)證本文所提雙層共識結(jié)構(gòu)符合本場景安全需求;在確定通信復(fù)雜度情況下優(yōu)于自上而下方案,同樣相較于此方案,確保安全的前提下,增大容錯(cuò)率盡量讓盡可能多的節(jié)點(diǎn)參與,更適合本場景;相較于原共識方案,隨著節(jié)點(diǎn)數(shù)量增多,可將時(shí)延縮短1/2以上。綜上所述相較于其他結(jié)構(gòu),本文提出的自下而上的分層共識結(jié)構(gòu)最適用于本場景。在今后工作中,可將雙層協(xié)議拓展至多層,同時(shí),也可根據(jù)周圍車輛信任值考慮共識順序問題,進(jìn)一步提升共識效率,并對基站進(jìn)行統(tǒng)一管理工作,提升系統(tǒng)整體安全性。

    猜你喜歡
    共識消息基站
    共識 共進(jìn) 共情 共學(xué):讓“溝通之花”綻放
    論思想共識凝聚的文化向度
    一張圖看5G消息
    商量出共識
    可惡的“偽基站”
    基于GSM基站ID的高速公路路徑識別系統(tǒng)
    小基站助力“提速降費(fèi)”
    基站輻射之爭亟待科學(xué)家發(fā)聲
    別讓“PX共識”在爆炸中瓦解
    消息
    万荣县| 梨树县| 大港区| 枣强县| 台东市| 富阳市| 乐平市| 洛浦县| 扶沟县| 高州市| 嘉义市| 茌平县| 襄城县| 牟定县| 西平县| 邯郸县| 中西区| 奉化市| 乌苏市| 金阳县| 兴宁市| 汾西县| 绥滨县| 砚山县| 曲阜市| 桂东县| 弥渡县| 谢通门县| 靖州| 中江县| 石狮市| 阿拉善左旗| 上虞市| 曲周县| 湖南省| 台前县| 赣州市| 三原县| 望江县| 沅江市| 新泰市|