陳錦宇,劉兆偉
(煙臺(tái)大學(xué)計(jì)算機(jī)與控制工程學(xué)院,山東煙臺(tái) 264005)
物聯(lián)網(wǎng)(Internet of Things,IoT)是一個(gè)能夠?qū)⒏黝愋畔鞲性O(shè)備與互聯(lián)網(wǎng)結(jié)合起來(lái)的巨大網(wǎng)絡(luò),其借助互聯(lián)網(wǎng)將現(xiàn)實(shí)世界中具有不同功能的實(shí)體串聯(lián)起來(lái)。物聯(lián)網(wǎng)將現(xiàn)實(shí)世界數(shù)據(jù)化,使得人、機(jī)、物能夠在任何時(shí)間任何地點(diǎn)進(jìn)行數(shù)據(jù)交互,因而具有深遠(yuǎn)的應(yīng)用前景。車聯(lián)網(wǎng)(Internet of Vehicles,IoV)是物聯(lián)網(wǎng)的重要子類,用于智能連接車輛[1],其本質(zhì)是一個(gè)由車輛位置、速度、行進(jìn)路線及周邊交通狀況等信息構(gòu)成的交互網(wǎng)絡(luò)。車聯(lián)網(wǎng)能夠根據(jù)收集到的信息做出相應(yīng)的決策,從而將車輛引導(dǎo)到正確的位置或路線上。除此之外,車聯(lián)網(wǎng)還具有以下技術(shù)優(yōu)勢(shì):可實(shí)時(shí)檢測(cè)車輛狀態(tài)并向車主匯報(bào),從而大大降低由于駕駛故障車輛而造成的安全隱患;可在駕駛過(guò)程中為車主提供實(shí)時(shí)的導(dǎo)航及道路狀況提示,在提高行進(jìn)效率的同時(shí)降低車禍的發(fā)生率;也可在車主因意外陷入險(xiǎn)境時(shí),迅速地發(fā)出求救信息并提供事故發(fā)生的具體位置,這樣車主就可以在盡可能短的時(shí)間內(nèi)得到救援。
然而在車聯(lián)網(wǎng)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)中也存在許多挑戰(zhàn)。例如,惡意攻擊者可以通過(guò)廣播虛假信息的方式來(lái)誤導(dǎo)其他車輛[2];也可以通過(guò)劫持車聯(lián)網(wǎng)節(jié)點(diǎn)來(lái)阻礙消息的傳遞,進(jìn)而影響車聯(lián)網(wǎng)的實(shí)際運(yùn)轉(zhuǎn)。除了惡意攻擊者引發(fā)的種種安全挑戰(zhàn)外,如何處理好車輛隱私與安全之間的矛盾也成為了車聯(lián)網(wǎng)在實(shí)現(xiàn)過(guò)程中的另一大難點(diǎn)。作為一門新興技術(shù),區(qū)塊鏈在解決車聯(lián)網(wǎng)的這些難題上有著顯著的優(yōu)勢(shì)。區(qū)塊鏈本質(zhì)上是一門數(shù)據(jù)庫(kù)技術(shù),是一個(gè)去中心化的分布式賬本數(shù)據(jù)庫(kù)。通過(guò)使用區(qū)塊鏈可以對(duì)設(shè)備進(jìn)行自動(dòng)化管理,也可以進(jìn)一步提高物聯(lián)網(wǎng)設(shè)備的數(shù)據(jù)同步管理效率[3]。
文獻(xiàn)[4]提出了一種基于表決機(jī)制和聯(lián)盟區(qū)塊鏈的共識(shí)協(xié)議。但是,該協(xié)議在角色分工上并不能與車聯(lián)網(wǎng)的參與者們相匹配,同時(shí)缺乏完善的獎(jiǎng)懲機(jī)制以應(yīng)對(duì)可能存在的惡意攻擊者。文獻(xiàn)[2]提出了一種基于區(qū)塊鏈的車聯(lián)網(wǎng)系統(tǒng),但其使用的共識(shí)協(xié)議是相對(duì)原始的工作量證明(Proof of Work,PoW)協(xié)議。PoW 是一種將算力作為主要競(jìng)爭(zhēng)手段來(lái)獲取區(qū)塊生成權(quán)的共識(shí)協(xié)議。該協(xié)議在生成區(qū)塊這一環(huán)節(jié)會(huì)消耗大量的時(shí)間和資源,因此會(huì)給車聯(lián)網(wǎng)帶來(lái)額外的負(fù)擔(dān)。
為了解決這些問(wèn)題,本文提出了一個(gè)基于區(qū)塊鏈技術(shù)的車聯(lián)網(wǎng)系統(tǒng),從而嘗試將區(qū)塊鏈與車聯(lián)網(wǎng)相結(jié)合。本文設(shè)計(jì)了一個(gè)改進(jìn)后的投票證明(Proof of Vote,PoV)共識(shí)協(xié)議,這種改進(jìn)后的PoV 協(xié)議更加貼合車聯(lián)網(wǎng)的實(shí)際需求,能夠更為高效準(zhǔn)確地達(dá)成共識(shí)。該協(xié)議會(huì)對(duì)車聯(lián)網(wǎng)的參與者進(jìn)行相應(yīng)的身份劃分,使其能夠分工明確地完成車聯(lián)網(wǎng)的各項(xiàng)功能。最后,本文設(shè)計(jì)的懲罰機(jī)制也可以有效地遏制惡意攻擊者的行為并降低其可能造成的損失。
車聯(lián)網(wǎng)通過(guò)安裝在車輛上的各類電子設(shè)備來(lái)實(shí)時(shí)獲取有關(guān)車輛的各類信息,這些信息包括車輛的狀態(tài)、速度、位置和路線等。在獲取到這些信息后,車聯(lián)網(wǎng)可以對(duì)所有車輛的運(yùn)行狀態(tài)進(jìn)行有效的監(jiān)管,同時(shí)提供綜合服務(wù)[5]。車聯(lián)網(wǎng)不僅僅是為車輛與車輛(Vehicles to Vehicles,V2V)提供信息交互渠道的網(wǎng)絡(luò),它還可以向車輛與行人(Vehicles to Person,V2P)、車輛與道路(Vehicles to Road,V2R)、車輛與路旁基礎(chǔ)設(shè)施(Vehicles to Infrastructure,V2I)、車輛與網(wǎng)絡(luò)(Vehicles to Network,V2N)等一系列組合提供服務(wù)。確切地說(shuō),車聯(lián)網(wǎng)不只是簡(jiǎn)單地將車輛與車輛進(jìn)行連接,它還將車輛與行人、道路等連接到一起。車聯(lián)網(wǎng)的示意圖如圖1所示。
圖1 車聯(lián)網(wǎng)示例Fig.1 IoV example
基于所使用的各項(xiàng)技術(shù),車聯(lián)網(wǎng)具有以下優(yōu)勢(shì):1)憑借車聯(lián)網(wǎng)技術(shù),車輛的當(dāng)前狀態(tài)信息會(huì)被實(shí)時(shí)收集、匯總和分析,這有助于車聯(lián)網(wǎng)更快地診斷出車輛存在的故障問(wèn)題,從而減少安全隱患;2)車聯(lián)網(wǎng)系統(tǒng)可以根據(jù)在各個(gè)區(qū)域中收集到的信息對(duì)區(qū)域的整體交通狀況做出判斷,這種判斷會(huì)借助導(dǎo)航系統(tǒng)反饋給行駛在該區(qū)域中的所有車輛,以便這些車輛合理地規(guī)劃行進(jìn)路線,從而提高出行效率;3)當(dāng)前方路段出現(xiàn)較危險(xiǎn)的道路狀況(比如車禍、道路坍塌等)時(shí),車聯(lián)網(wǎng)可以及時(shí)通知即將駛過(guò)該路段的所有車輛以避免事故發(fā)生;4)對(duì)于已經(jīng)陷入交通事故中的車輛來(lái)說(shuō),車聯(lián)網(wǎng)會(huì)在事故發(fā)生時(shí)立即采取相應(yīng)的反饋措施,這類反饋措施包括向車主預(yù)先設(shè)置的緊急聯(lián)系人發(fā)出求救報(bào)警信息等,因此車主可以在盡可能短的時(shí)間內(nèi)獲得救援。
車聯(lián)網(wǎng)技術(shù)作為物聯(lián)網(wǎng)中具有廣闊前景和實(shí)際應(yīng)用價(jià)值的一個(gè)成熟板塊,現(xiàn)已納入國(guó)家“十三五”重大建設(shè)項(xiàng)目庫(kù)中。管理者借助平臺(tái)可以實(shí)時(shí)獲取車輛分布、用戶畫像以及車輛軌跡等信息,從而掌握城市道路的基本交通狀況,進(jìn)而在城市規(guī)劃上采取相應(yīng)的舉措。
區(qū)塊鏈這一概念最初由“中本聰”于2008 年的論文《Bitcoin:A Peer-to-Peer Electronic Cash System》[6]7中提出。經(jīng)過(guò)十余年的發(fā)展,由區(qū)塊鏈衍生出的一系列技術(shù)、概念及產(chǎn)品迅速進(jìn)入人們的視野,區(qū)塊鏈所代表的“去中心化”“不可篡改”等特點(diǎn)也日益受到人們的追捧。區(qū)塊鏈技術(shù)本質(zhì)上是一種特殊的數(shù)據(jù)庫(kù)技術(shù)。每個(gè)區(qū)塊就像是一個(gè)硬盤,將信息保存下來(lái)后通過(guò)密碼學(xué)技術(shù)進(jìn)行加密,這樣被保存的信息就無(wú)法被篡改。而區(qū)塊鏈的本質(zhì)則是一個(gè)去中心化的分布式數(shù)據(jù)庫(kù),分布式數(shù)據(jù)庫(kù)的特點(diǎn)在于它的記錄方式并非只是將賬本數(shù)據(jù)簡(jiǎn)單地存儲(chǔ)在各個(gè)節(jié)點(diǎn),而是令所有節(jié)點(diǎn)同步的復(fù)制賬本數(shù)據(jù)并將其共享。也就是說(shuō),區(qū)塊鏈這一分布式數(shù)據(jù)庫(kù)會(huì)記錄所有曾經(jīng)發(fā)生并經(jīng)過(guò)系統(tǒng)一致認(rèn)可的交易。
相較于分布式,區(qū)塊鏈最具顛覆性的特點(diǎn)在于去中心化。這使得應(yīng)用區(qū)塊鏈技術(shù)的產(chǎn)品不再依賴中心化的代理方式,而是實(shí)現(xiàn)了一種點(diǎn)對(duì)點(diǎn)的直接交互。高效、大規(guī)模和去中心化的信息交互方式因此成為了現(xiàn)實(shí)。這些優(yōu)點(diǎn)使得區(qū)塊鏈成為當(dāng)前社會(huì)的一大熱點(diǎn),越來(lái)越多的行業(yè)開(kāi)始嘗試將區(qū)塊鏈與自己行業(yè)的技術(shù)相結(jié)合。
從結(jié)構(gòu)上來(lái)說(shuō),區(qū)塊鏈?zhǔn)且环N按照時(shí)間順序?qū)?shù)據(jù)區(qū)塊順序相連的鏈?zhǔn)綌?shù)據(jù)結(jié)構(gòu)。每個(gè)數(shù)據(jù)區(qū)塊從結(jié)構(gòu)上分成兩部分:區(qū)塊頭與區(qū)塊體。區(qū)塊頭共80 個(gè)字節(jié),通常分成6 個(gè)部分:版本號(hào)(4 B)、時(shí)間戳(4 B)、前區(qū)塊哈希值(32 B)、Merkle樹(shù)根節(jié)點(diǎn)(32 B)、難度值(4 B)以及Nonce 值(4 B)。區(qū)塊鏈的基本結(jié)構(gòu)如圖2所示。
圖2 區(qū)塊鏈結(jié)構(gòu)Fig.2 Blockchain structure
PoV 協(xié)議的全稱是投票證明。這種共識(shí)協(xié)議為區(qū)塊鏈的網(wǎng)絡(luò)參與者設(shè)置不同的安全身份,PoV 共識(shí)協(xié)議可以在不依賴第三方中介或公眾意識(shí)的情況下,根據(jù)機(jī)構(gòu)在聯(lián)盟中的投票結(jié)果對(duì)區(qū)塊的提交和驗(yàn)證做出決定[4]。通過(guò)與文獻(xiàn)[3]的研究相對(duì)比,可以證實(shí)PoV有更加出色的工作效率。
PoV協(xié)議的具體機(jī)制是將參與者劃分為4種不同的身份:專家、管家、管家候選者以及普通用戶。共識(shí)結(jié)果則在身份的交互下通過(guò)投票來(lái)決定。4 種身份的分工如下,其系統(tǒng)結(jié)構(gòu)設(shè)計(jì)如圖3所示。
圖3 PoV結(jié)構(gòu)Fig.3 PoV structure
1)專家。專家的主要職責(zé)是維護(hù)整個(gè)聯(lián)盟區(qū)塊鏈。專家們有權(quán)推薦指定的用戶成為管家候選人,并在隨后的管家選舉中行使投票權(quán);同時(shí),專家還會(huì)對(duì)當(dāng)前工作的管家進(jìn)行評(píng)估,并根據(jù)評(píng)估結(jié)果在下一輪投票選舉中決定自己的投票對(duì)象;此外,專家還負(fù)責(zé)核實(shí)區(qū)塊內(nèi)容,當(dāng)超過(guò)半數(shù)的專家對(duì)區(qū)塊中的信息表示認(rèn)可時(shí),該區(qū)塊會(huì)被標(biāo)記為有效區(qū)塊。
2)管家。管家只負(fù)責(zé)生成區(qū)塊,并不需要通過(guò)競(jìng)爭(zhēng)來(lái)獲取區(qū)塊的生成權(quán)。管家們通過(guò)收集消息池中的信息來(lái)制作區(qū)塊,但區(qū)塊是否有效由專家決定,因此,管家們不需要為了搶占區(qū)塊的生成權(quán)而浪費(fèi)計(jì)算資源和時(shí)間。管家只能從管家候選者中誕生。
3)管家候選者。一個(gè)節(jié)點(diǎn)想要成為管家候選者的話必須通過(guò)以下3 個(gè)步驟:首先,該節(jié)點(diǎn)必須在系統(tǒng)中注冊(cè)用戶身份;其次,該節(jié)點(diǎn)需要向系統(tǒng)申請(qǐng)成為管家候選者,提交申請(qǐng)的用戶必須獲得至少一名專家的支持;最后,該節(jié)點(diǎn)需要上繳一定數(shù)額的押金作為擔(dān)保。管家會(huì)在任期結(jié)束后卸任并以管家候選者的身份并加入下一輪選舉。
4)普通用戶。普通用戶不參與區(qū)塊的生成過(guò)程,僅負(fù)責(zé)消息的生成和轉(zhuǎn)發(fā)。
此外,PoV共識(shí)協(xié)議中的這4種身份在滿足一定條件的前提下可以進(jìn)行相互轉(zhuǎn)換,具體的轉(zhuǎn)換過(guò)程如圖4 所示,這在一定程度上提高了整個(gè)系統(tǒng)的靈活性。憑借明確的分工合作,PoV 共識(shí)協(xié)議具有良好的可靠性和優(yōu)異的共識(shí)效率,因此可以在不消耗大量時(shí)間及計(jì)算資源的前提下達(dá)成共識(shí)。
圖4 PoV中的身份轉(zhuǎn)換Fig.4 Role change in PoV
在PoV 共識(shí)協(xié)議中,網(wǎng)絡(luò)參與者按照各自的身份進(jìn)行不同的活動(dòng),在這些活動(dòng)的共同影響下,參與者會(huì)對(duì)某一觀點(diǎn)達(dá)成共識(shí)。此外,在滿足一定條件的情況下,參與者的身份可以發(fā)生轉(zhuǎn)換,這種身份轉(zhuǎn)換的主要目的是讓參與者能夠擔(dān)任更適合自己的角色,從而提高共識(shí)效率及結(jié)構(gòu)穩(wěn)定性。由于車聯(lián)網(wǎng)的主要用戶是處于不斷移動(dòng)中的車輛,因此車聯(lián)網(wǎng)中的參與者會(huì)具備更高的流動(dòng)性,而這種流動(dòng)性會(huì)導(dǎo)致車聯(lián)網(wǎng)中的參與者們不斷地發(fā)生更新變動(dòng),因而傳統(tǒng)PoV 共識(shí)協(xié)議中對(duì)于身份的轉(zhuǎn)換操作很難應(yīng)用在車聯(lián)網(wǎng)中。除此之外,在已知車聯(lián)網(wǎng)參與者數(shù)量可能極為龐大的現(xiàn)實(shí)情況下,如果繼續(xù)允許這些參與者們轉(zhuǎn)換身份,必然會(huì)給整個(gè)車聯(lián)網(wǎng)體系帶來(lái)巨大的額外負(fù)荷。綜上所述,本文最終選擇對(duì)傳統(tǒng)PoV 共識(shí)協(xié)議中關(guān)于身份轉(zhuǎn)換的部分進(jìn)行優(yōu)化,使其能更好地與車聯(lián)網(wǎng)相結(jié)合。
PoV 共識(shí)協(xié)議將參與者分為專家、管家、管家候選者以及普通用戶4 個(gè)部分,其中普通用戶負(fù)責(zé)消息的發(fā)送、接收及傳遞,管家負(fù)責(zé)將普通用戶發(fā)送的多條消息進(jìn)行歸納整理后轉(zhuǎn)交給專家,而專家則負(fù)責(zé)對(duì)這些消息進(jìn)行檢查和判斷。由于管家的人數(shù)受到限制[4],且PoV 共識(shí)協(xié)議中的參與者存在身份不固定這一特點(diǎn),因此,為了對(duì)申請(qǐng)成為管家的用戶們進(jìn)行篩選,PoV 設(shè)立了管家候選者這一身份,管家候選者身份的獲得必須由一名專家進(jìn)行擔(dān)保,并且需要交付一筆額外的押金來(lái)增加犯錯(cuò)成本。然而,結(jié)合上文中對(duì)于車聯(lián)網(wǎng)并不需要身份轉(zhuǎn)換的論證,管家候選者也成為了PoV 與車聯(lián)網(wǎng)相結(jié)合過(guò)程中的冗余部分。為了更好地服務(wù)于車聯(lián)網(wǎng),本文根據(jù)車聯(lián)網(wǎng)的實(shí)際需求對(duì)PoV 共識(shí)協(xié)議進(jìn)行了改進(jìn)。改進(jìn)后的PoV 共識(shí)協(xié)議重新對(duì)車聯(lián)網(wǎng)內(nèi)的節(jié)點(diǎn)賦予不同的功能,其系統(tǒng)結(jié)構(gòu)設(shè)計(jì)如圖5所示。
圖5 改進(jìn)的PoV結(jié)構(gòu)Fig.5 Improved PoV structure
圖5 主要由生產(chǎn)者、制造者和審核者組成,其具體分工如下。
生產(chǎn)者 生產(chǎn)者是信息產(chǎn)生的源頭,它們負(fù)責(zé)生成、接收和傳遞消息。生產(chǎn)者由連接在車聯(lián)網(wǎng)中的車輛及路邊的基礎(chǔ)設(shè)備組成,它們本身不會(huì)參與到區(qū)塊制作的過(guò)程。生產(chǎn)者會(huì)實(shí)時(shí)收集周圍車輛及環(huán)境的數(shù)據(jù),并在簽名后將這些消息發(fā)送出去。生產(chǎn)者總體上對(duì)應(yīng)傳統(tǒng)PoV 體系中的普通用戶身份,但考慮到車聯(lián)網(wǎng)在現(xiàn)實(shí)生活中可能會(huì)遇到的一些實(shí)際問(wèn)題,又對(duì)其做出了一定的改進(jìn)。為了能更加及時(shí)地處理行駛過(guò)程中遭遇的緊急事件,生產(chǎn)者除了周期性地發(fā)送常規(guī)信息外,還可以在特別標(biāo)注后發(fā)送緊急消息,這種緊急消息將在后續(xù)的流程中被優(yōu)先接收和處理,從而進(jìn)一步保障了車聯(lián)網(wǎng)用戶的安全。
制造者 制造者只負(fù)責(zé)生成區(qū)塊。它們類似于傳統(tǒng)虛擬貨幣(例如比特幣)中的礦工,但是車聯(lián)網(wǎng)并不會(huì)限制制造者們生成區(qū)塊的速度,因此它們無(wú)需消耗額外的計(jì)算資源和時(shí)間來(lái)?yè)寠Z區(qū)塊的生成權(quán)。制造者們隨機(jī)地收集生產(chǎn)者們發(fā)送的各類信息并將它們打包成區(qū)塊,隨后制造者會(huì)通過(guò)簽名的方式在自己的區(qū)塊上進(jìn)行署名,區(qū)塊最終是否有效將由審核者來(lái)進(jìn)行判斷。在區(qū)塊的制作過(guò)程中,帶有生產(chǎn)者標(biāo)記的緊急消息將會(huì)被制造者們優(yōu)先收集并提交給審核者。
審核者 審核者由專業(yè)團(tuán)隊(duì)組成,這些專業(yè)團(tuán)隊(duì)一般由車聯(lián)網(wǎng)所在地的交通部門負(fù)責(zé),審核者主要負(fù)責(zé)判斷區(qū)塊是否有效以及處理車聯(lián)網(wǎng)內(nèi)的惡意攻擊者或故障節(jié)點(diǎn)。車聯(lián)網(wǎng)中生成的每個(gè)區(qū)塊都需要發(fā)送給審核者們進(jìn)行投票表決,審核者們會(huì)根據(jù)區(qū)塊內(nèi)信息的真實(shí)性做出相應(yīng)判斷。區(qū)塊只有獲得半數(shù)以上的審核者認(rèn)可才會(huì)被認(rèn)為是有效的,有效的區(qū)塊將會(huì)被上傳至區(qū)塊鏈中并在生產(chǎn)者中廣泛傳播。此外,針對(duì)車聯(lián)網(wǎng)中可能存在的惡意攻擊者及故障節(jié)點(diǎn),審核者也會(huì)進(jìn)行及時(shí)處理。
綜上所述,本系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)如圖6所示。
圖6 整體系統(tǒng)的結(jié)構(gòu)設(shè)計(jì)Fig.6 Structure design of overall system
從圖6 中可以直觀地發(fā)現(xiàn),以車輛1、車輛2、路測(cè)單元(Road Side Unit,RSU)等為代表的生產(chǎn)者不停地收集著自身及周邊的各項(xiàng)消息及數(shù)據(jù),并將這些收集到的消息全部上傳至制造者處。制造者在接收到生產(chǎn)者發(fā)送的消息后將其打包至區(qū)塊,隨后發(fā)送到審核者處接收校驗(yàn),審核者會(huì)對(duì)制造者提交的區(qū)塊進(jìn)行校驗(yàn)并給出相應(yīng)的反饋。
生產(chǎn)者負(fù)責(zé)消息的生成,生產(chǎn)者主要由行駛在車聯(lián)網(wǎng)中的車輛及道路周邊的基礎(chǔ)設(shè)備(監(jiān)控設(shè)備、測(cè)速儀等)組成。生產(chǎn)者主要以兩種方式來(lái)生成消息:
1)生產(chǎn)者會(huì)周期性地匯報(bào)自身的狀況及周邊的路況,例如當(dāng)前車輛的各項(xiàng)基礎(chǔ)信息(油量、車速及故障問(wèn)題等)或所駕駛路段的基本信息(天氣情況、周圍的車輛數(shù)目等)。
2)當(dāng)遇到緊急情況時(shí),例如車輛突發(fā)故障或前方路段出現(xiàn)的事故等,生產(chǎn)者會(huì)立即對(duì)當(dāng)前情況進(jìn)行匯報(bào)。在消息生成后,生產(chǎn)者會(huì)對(duì)自身生成的消息進(jìn)行簽名以確定消息來(lái)源。
如果當(dāng)前生成的消息的方式屬于第2 種,那么生產(chǎn)者會(huì)在簽名后追加一個(gè)固定值,被標(biāo)注過(guò)的緊急消息會(huì)被制造者們優(yōu)先納入當(dāng)前正在制作的區(qū)塊并交由審核者判斷。
為了保證消息的及時(shí)性,生產(chǎn)者在生成消息的時(shí)候應(yīng)當(dāng)加入當(dāng)前的具體時(shí)間。這樣,簽名后的消息結(jié)構(gòu)應(yīng)為以下格式:
其中:message為具體的信息內(nèi)容,time為生成消息時(shí)的具體時(shí)間,pk為生產(chǎn)者的公鑰,k負(fù)責(zé)判定當(dāng)前消息是否緊急。
制造者負(fù)責(zé)區(qū)塊的制作,制造者的身份可由互聯(lián)網(wǎng)中的任意節(jié)點(diǎn)申請(qǐng)獲得,為了保證車聯(lián)網(wǎng)中時(shí)刻有人收集信息制作區(qū)塊,車聯(lián)網(wǎng)所在地的交通部門中應(yīng)當(dāng)有一批固定節(jié)點(diǎn)擔(dān)任最基礎(chǔ)的制造者。制造者從事務(wù)池中隨機(jī)地獲取消息并將它們打包到一個(gè)區(qū)塊中,其中的緊急消息會(huì)被優(yōu)先獲取。制造者不停地獲取這些消息直至本輪的工作時(shí)間ΔT1到期或收集到一條緊急消息,隨后制造者會(huì)停止收集消息并將裝有這些信息的區(qū)塊發(fā)送給所有審核者,含有緊急消息的區(qū)塊會(huì)被制造者特殊標(biāo)記出來(lái)。如果審核者對(duì)區(qū)塊中包含的消息認(rèn)同時(shí),會(huì)將自己的簽名反饋給制造者。具體的算法設(shè)計(jì)如下。
算法1 區(qū)塊制作算法。
審核者負(fù)責(zé)區(qū)塊的校驗(yàn),審核者由車聯(lián)網(wǎng)所在地的交通部門所指定的專業(yè)人員構(gòu)成,這里假設(shè)審核者的數(shù)量為N。審核者在接收到制造者生成的區(qū)塊后會(huì)通過(guò)投票來(lái)決定是否認(rèn)可區(qū)塊中的信息,當(dāng)審核者對(duì)當(dāng)前區(qū)塊中的所有信息都做出評(píng)價(jià)后,它們會(huì)對(duì)區(qū)塊頭進(jìn)行加密并將簽名返還給區(qū)塊的相應(yīng)制造者,簽名信息中包含審核者對(duì)于該區(qū)塊中具體消息的審核結(jié)果。在等待時(shí)間ΔT2到期或收到所有審核者的簽名反饋后,制造者會(huì)對(duì)收到的所有簽名信息進(jìn)行匯總統(tǒng)計(jì),當(dāng)存在至少N/2+1 個(gè)審核者在簽名中對(duì)區(qū)塊內(nèi)的某條消息表示認(rèn)可時(shí),制造者將該消息標(biāo)記為有效信息。統(tǒng)計(jì)結(jié)束后,制造者將此時(shí)區(qū)塊中的有效信息保留并刪除其余不實(shí)信息,具體的算法設(shè)計(jì)如下。
算法2 區(qū)塊校驗(yàn)算法。
在實(shí)際的執(zhí)行過(guò)程中,消息必然存在一定的時(shí)限性。因此,在對(duì)區(qū)塊頭的加密過(guò)程中,審核者會(huì)向區(qū)塊頭中添加一個(gè)值,用以表示該區(qū)塊內(nèi)消息的有效時(shí)間,根據(jù)區(qū)塊內(nèi)所包含消息內(nèi)容的不同,有效時(shí)間也會(huì)有出入。具體的有效時(shí)間由對(duì)區(qū)塊消息認(rèn)可的審核者共同決定,設(shè)最終有效時(shí)間為T,對(duì)區(qū)塊消息認(rèn)可的審核者數(shù)量為N1,第i個(gè)審核者提出的有效時(shí)間為ti,i∈{1,2,…,N1},則T的值為:
此外,對(duì)于等待時(shí)間ΔT2結(jié)束前仍未返還簽名反饋的審核者,系統(tǒng)會(huì)對(duì)其做出一定的懲罰,詳見(jiàn)3.4節(jié)的懲罰機(jī)制。
在區(qū)塊上傳至車聯(lián)網(wǎng)后,車聯(lián)網(wǎng)中的參與者將會(huì)根據(jù)這些區(qū)塊中的信息采取相應(yīng)的措施。但當(dāng)這些參與者發(fā)現(xiàn)區(qū)塊內(nèi)的信息與實(shí)際情況有出入時(shí),審核者會(huì)根據(jù)參與者反饋的信息做出判斷,從而決定是否對(duì)生產(chǎn)者進(jìn)行懲罰。如果匯報(bào)區(qū)塊信息不實(shí)的消息時(shí)間超過(guò)了區(qū)塊信息的有效時(shí)間,審核者不會(huì)對(duì)生產(chǎn)者進(jìn)行懲罰;否則,審核者會(huì)根據(jù)該消息對(duì)應(yīng)生產(chǎn)者的過(guò)失記錄做出不同級(jí)別的懲罰。
關(guān)于如何對(duì)生產(chǎn)者進(jìn)行懲戒,本文設(shè)立了如下機(jī)制:在審核者處存有一份加密過(guò)的生產(chǎn)者名單,這份加密名單的密鑰經(jīng)過(guò)拆分后由審核者各自保管一部分,這樣可以盡可能地保證用戶的個(gè)人隱私及安全。當(dāng)審核者中有人根據(jù)區(qū)塊信息對(duì)比發(fā)現(xiàn)存在惡意生產(chǎn)者發(fā)送虛假消息時(shí),審核者可以進(jìn)行投票,當(dāng)超過(guò)半數(shù)的審核者認(rèn)為之前通過(guò)的區(qū)塊信息為虛假信息時(shí),它們會(huì)將各自保管的密鑰進(jìn)行匯總以“拼接”出完整的密鑰。在使用密鑰獲取到生產(chǎn)者名單后,審核者根據(jù)惡意生產(chǎn)者的過(guò)往記錄進(jìn)行不同級(jí)別的懲罰:對(duì)于初犯或較長(zhǎng)時(shí)間內(nèi)無(wú)過(guò)錯(cuò)記錄的生產(chǎn)者,審核者借助車聯(lián)網(wǎng)對(duì)其進(jìn)行警告;對(duì)于多次存在過(guò)錯(cuò)記錄的生產(chǎn)者,審核者可以在一段時(shí)間內(nèi)取締其生產(chǎn)、傳遞消息的權(quán)力;對(duì)于造成較重后果的生產(chǎn)者,審核者應(yīng)當(dāng)將其信息移交至執(zhí)法部門進(jìn)行相應(yīng)的處理。
此外,對(duì)于3.3 節(jié)中提到的在等待時(shí)間結(jié)束前仍未返還校驗(yàn)結(jié)果的審核者以及在投票中對(duì)虛假信息表示認(rèn)可的審核者也應(yīng)給予懲戒,本文計(jì)劃使用一項(xiàng)單獨(dú)的指標(biāo)來(lái)評(píng)價(jià)審核者的可信度。每次懲罰都會(huì)扣除犯錯(cuò)審核者的一部分指標(biāo)分?jǐn)?shù),當(dāng)其可信度低于一個(gè)閾值時(shí),車聯(lián)網(wǎng)會(huì)取消其審核者的身份。
上述的所有懲罰內(nèi)容最終將會(huì)被制作在一個(gè)區(qū)塊內(nèi)并上傳至車聯(lián)網(wǎng)中。自此,對(duì)于懲罰機(jī)制的算法設(shè)計(jì)如下。
算法3 懲罰機(jī)制。
在上述的算法過(guò)程中,除在提出時(shí)就給出了詳細(xì)解釋的最終有效時(shí)間T外,本文還設(shè)置了兩個(gè)時(shí)間變量ΔT1和ΔT2,分別用來(lái)表示制造者在收集消息制作區(qū)塊時(shí)的時(shí)間上限以及在區(qū)塊校驗(yàn)時(shí)制造者等待審核者反饋的時(shí)間上限。
工作時(shí)間ΔT1的時(shí)長(zhǎng)根據(jù)制造者收集消息的效率發(fā)生變化,該時(shí)長(zhǎng)應(yīng)在保證制造者能夠收集到至少一條消息的同時(shí)對(duì)其收集消息的上限做出一定限制。之所以需要對(duì)收集的消息數(shù)做出限制,是為了盡可能地縮短包含有效信息的區(qū)塊上傳至車聯(lián)網(wǎng)的間隔時(shí)間,以便于保障消息的及時(shí)性,從而使得在車聯(lián)網(wǎng)覆蓋區(qū)域內(nèi)的車輛能夠更加及時(shí)地獲取第一手消息。這里,本文設(shè)制造者R在本輪區(qū)塊制造中擁有的工作時(shí)間為ΔT1(R),同時(shí)設(shè)其在上一輪區(qū)塊制造中擁有的工作時(shí)間為tb,并且在上一輪區(qū)塊中制造者R獲取的消息數(shù)為G。那么,該制造者在本輪區(qū)塊制造中獲得的工作時(shí)間應(yīng)為:
其中g(shù)為一個(gè)固定的正整數(shù),其具體的取值應(yīng)當(dāng)結(jié)合部署車聯(lián)網(wǎng)區(qū)域的實(shí)際情況來(lái)決定。
等待時(shí)間表示審核者在校驗(yàn)區(qū)塊時(shí)擁有的時(shí)間上限,超出這一時(shí)間上限會(huì)使下游的制造者不再等待區(qū)塊的校驗(yàn)結(jié)果。等待時(shí)間同審核者們的可信度存在直接關(guān)系,設(shè)編號(hào)為k的審核者可信度為λk,審核者k在校驗(yàn)區(qū)塊時(shí)擁有的等待時(shí)間會(huì)隨著可信度λk的變化而變化。當(dāng)可信度λk的數(shù)值低于閾值S時(shí),k會(huì)失去自己審核者的身份,其擁有的等待時(shí)間也隨之降為0。此外,為了防止審核者k擁有過(guò)長(zhǎng)的等待時(shí)間,應(yīng)對(duì)等待時(shí)間的上限做出一定的約束。綜上所述,本文將審核者k所擁有的等待時(shí)間ΔT2(k)設(shè)置如下:
采用對(duì)數(shù)函數(shù)既可以防止發(fā)生等待時(shí)間過(guò)長(zhǎng)影響消息的及時(shí)性,又對(duì)低可信度的審核者進(jìn)行限制。
假設(shè)當(dāng)前有車輛A駛?cè)氩渴鹆塑嚶?lián)網(wǎng)的區(qū)域,A在駛?cè)胲嚶?lián)網(wǎng)的時(shí)候會(huì)自動(dòng)地注冊(cè)成為車聯(lián)網(wǎng)的用戶,若A滿足成為生產(chǎn)者的條件,車聯(lián)網(wǎng)會(huì)將A的基本信息寫入生產(chǎn)者名單并賦予A生產(chǎn)者的身份和權(quán)限。車輛A在獲得生產(chǎn)者的認(rèn)證后會(huì)開(kāi)始周期性地發(fā)送自身信息及周邊路況的信息,假設(shè)車輛A在周期性地發(fā)送了消息M1后突然發(fā)現(xiàn)前方路段出現(xiàn)交通事故,那么車輛A會(huì)立即生成一條緊急消息M2來(lái)匯報(bào)事故的發(fā)生。具體的流程如圖7所示。
圖7 車輛A發(fā)送消息M1與M2Fig.7 Vehicle A sends messages M1 and M2
所有車輛發(fā)送的消息均會(huì)進(jìn)入一個(gè)公共事務(wù)池,制造者從這個(gè)事務(wù)池中獲取消息以制造區(qū)塊。公共事務(wù)池中各消息的具體信息如表1所示。
表1 消息信息表Tab.1 Message information table
制造者以ΔT1為工作周期不停地在公務(wù)事務(wù)池中遍歷并獲取各類信息。假設(shè)此時(shí)公共事務(wù)池中存在消息集合M={M1,M2,…,Mn},其中M2為車輛A發(fā)送的緊急消息,那么當(dāng)制造者獲取到緊急消息M2或本輪工作周期已結(jié)束時(shí),它們會(huì)將已經(jīng)收集到的所有信息打包至當(dāng)前正在制造的區(qū)塊中,隨后將其發(fā)送至審核者處。
審核者會(huì)對(duì)收到的區(qū)塊內(nèi)容進(jìn)行校驗(yàn),具體步驟同算法2的描述一致,校驗(yàn)過(guò)程如表2所示。審核者根據(jù)消息內(nèi)容中的信息對(duì)該消息是否有效做出評(píng)價(jià),同時(shí)指出該消息的有效時(shí)間,超出有效時(shí)間的消息將同樣被認(rèn)為失效。最后,審核者根據(jù)隸屬區(qū)塊的不同對(duì)這些消息的校驗(yàn)結(jié)果進(jìn)行歸類,歸好類的校驗(yàn)結(jié)果會(huì)反饋給區(qū)塊所屬的具體制造者。
表2 信息校驗(yàn)表Tab.2 Information checking table
在等待時(shí)間到期或獲取到所有審核者的反饋后,制造者對(duì)審核者的校驗(yàn)結(jié)果進(jìn)行匯總統(tǒng)計(jì),如表3 所示。在表3 中,使用T 來(lái)表示審核者對(duì)消息結(jié)果表示認(rèn)同,使用F 來(lái)表示審核者對(duì)消息表示否定,同時(shí)用tij來(lái)定義第j位審核者對(duì)審核區(qū)塊中的第i條消息的有效時(shí)長(zhǎng)建議。根據(jù)校驗(yàn)結(jié)果的匯總,制造者們可以快速地對(duì)區(qū)塊內(nèi)的消息進(jìn)行相應(yīng)的處理:對(duì)于被大多數(shù)審核者認(rèn)可的消息,制造者將其標(biāo)記為有效信息并借助式(2)計(jì)算其最終的有效時(shí)間;對(duì)于大多數(shù)審核者均不認(rèn)可的消息,制造者會(huì)將其從區(qū)塊及公共事務(wù)池中刪除。例如,在表3中,制造者根據(jù)匯總的結(jié)果判定該區(qū)塊中的第1、2、4條消息為有效信息,并計(jì)算出它們的最終有效時(shí)間T1、T2、T3。同時(shí),將第3、5 條消息從該區(qū)塊及公共事務(wù)池中刪除,最終將修改后的區(qū)塊上傳至整個(gè)互聯(lián)網(wǎng)。至此,該區(qū)塊的審核結(jié)束,整個(gè)審核過(guò)程可以用圖8來(lái)表示。
表3 校驗(yàn)結(jié)果匯總表Tab.3 Summary table of checking results
圖8 審核過(guò)程Fig.8 Verification process
經(jīng)過(guò)上述的審核過(guò)程,車輛A成功地將“前方路段發(fā)生車禍”這一消息上傳至整個(gè)車聯(lián)網(wǎng),那么后續(xù)的車輛在行駛或即將駛?cè)朐撀范螘r(shí)都會(huì)獲得該信息并采取相應(yīng)的措施,事故發(fā)生的現(xiàn)場(chǎng)也會(huì)獲得及時(shí)的救援。
而假如車輛A是車聯(lián)網(wǎng)中的一名惡意攻擊者,前方路段事實(shí)上并沒(méi)有發(fā)生車禍,那么下一輛駛?cè)朐撀范蔚能囕v所匯報(bào)的信息必然會(huì)與之發(fā)生沖突。這種情況下,審核者們會(huì)對(duì)之前車輛A發(fā)送的消息進(jìn)行復(fù)核,在確定車輛A所發(fā)送的消息不實(shí)后,審核者們會(huì)對(duì)發(fā)布虛假消息的車輛A以及認(rèn)可該虛假消息的其他審核者們做出相應(yīng)的懲戒。
本章借助邏輯分析及模擬實(shí)驗(yàn)對(duì)以下兩個(gè)方面進(jìn)行證明:1)改進(jìn)后的PoV 共識(shí)協(xié)議在共識(shí)效率上擁有更出色的表現(xiàn);2)改進(jìn)后的PoV 共識(shí)協(xié)議依然具有較高的可靠性及安全性。
本章的具體實(shí)驗(yàn)內(nèi)容是在個(gè)人計(jì)算機(jī)上通過(guò)模擬該算法進(jìn)行測(cè)試來(lái)完成的。測(cè)試環(huán)境為操作系統(tǒng)64 位Windows10、CPU 型號(hào)為i5、主頻3.2 GHz,內(nèi)存8 GB DDR4,編程語(yǔ)言為Go和Python,集成開(kāi)發(fā)環(huán)境為GoLand2019和Pycharm2019。
PoV 共識(shí)協(xié)議誕生的初衷就是為了加速區(qū)塊的生產(chǎn)。為了使區(qū)塊能夠更快速地生成,PoV 的設(shè)計(jì)者并沒(méi)有采用傳統(tǒng)共識(shí)機(jī)制(例如PoW)中通過(guò)工作量比較來(lái)爭(zhēng)奪區(qū)塊生成權(quán)的做法,而是將生產(chǎn)區(qū)塊的權(quán)利開(kāi)放給獲得了生產(chǎn)權(quán)限的每個(gè)節(jié)點(diǎn)(在PoW 中,即使獲得了生產(chǎn)權(quán)限,礦工們?nèi)孕枰揽克懔?lái)爭(zhēng)奪區(qū)塊),因此它擁有較短的延遲事務(wù)驗(yàn)證時(shí)間和較高的吞吐量。PoV 在開(kāi)放區(qū)塊生產(chǎn)權(quán)限的同時(shí)借助管家—專員的監(jiān)督體系有效地保證了區(qū)塊的有效性,管家并不負(fù)責(zé)區(qū)塊內(nèi)容的可靠性,而是通過(guò)專員之間的投票機(jī)制來(lái)達(dá)成最終共識(shí),這使得PoV 在保證區(qū)塊生成效率的同時(shí)維持了區(qū)塊信息的可靠性,區(qū)塊的確認(rèn)時(shí)間也因此縮短。
本文在嘗試將PoV 與車聯(lián)網(wǎng)結(jié)合的過(guò)程中也根據(jù)車聯(lián)網(wǎng)的實(shí)際情況對(duì)PoV 做出相應(yīng)的改進(jìn)。改進(jìn)后的PoV 共識(shí)協(xié)議去除了在車聯(lián)網(wǎng)中并不需要的冗余部分——身份轉(zhuǎn)換功能,這是由于車聯(lián)網(wǎng)自身的高流動(dòng)性帶來(lái)的用戶不固定問(wèn)題所導(dǎo)致的必然選擇。此外,本文還對(duì)PoV 的模型進(jìn)行了一定的精簡(jiǎn),主要體現(xiàn)在進(jìn)一步放開(kāi)了節(jié)點(diǎn)獲取區(qū)塊生產(chǎn)權(quán)的條件。傳統(tǒng)PoV 中用戶想要獲得具有生產(chǎn)區(qū)塊功能的“管家”一職需要在高權(quán)限者的擔(dān)保下贏得選舉才可以,而無(wú)論是獲取擔(dān)保還是選舉過(guò)程都需要耗費(fèi)額外的時(shí)間及計(jì)算資源;在改進(jìn)后的PoV 共識(shí)協(xié)議中這種限制被取消,“管家候選人”這一身份同樣被取締,生產(chǎn)者身份的獲得難度也因此進(jìn)一步下降。綜上所述,本文所設(shè)計(jì)的改進(jìn)后的PoV 共識(shí)協(xié)議在車聯(lián)網(wǎng)中擁有更高的共識(shí)效率。
雖然區(qū)塊生成者的身份獲得變得更加容易,但由于新增了監(jiān)督及懲罰功能,改進(jìn)后的PoV 共識(shí)協(xié)議并沒(méi)有失去安全性及可靠性。憑借普通用戶對(duì)于區(qū)塊信息真實(shí)性的及時(shí)反饋和審核者的監(jiān)督懲罰,改進(jìn)后的PoV 共識(shí)協(xié)議依然可以有效地防止錯(cuò)誤信息的傳播,而車聯(lián)網(wǎng)本身高流動(dòng)性的現(xiàn)實(shí)特點(diǎn)也使得整套系統(tǒng)難以被攻擊。
本文通過(guò)設(shè)計(jì)實(shí)驗(yàn)對(duì)改進(jìn)PoV 擁有更高共識(shí)效率這一點(diǎn)加以證明:對(duì)諸如Ethereum、Litecoin、Bitcoin、Degecoin 等傳統(tǒng)區(qū)塊鏈進(jìn)行模擬實(shí)驗(yàn),記錄實(shí)驗(yàn)結(jié)果并將其同基于傳統(tǒng)PoV的區(qū)塊鏈以及基于改進(jìn)PoV 的區(qū)塊鏈在相同實(shí)驗(yàn)上的表現(xiàn)做比較。該實(shí)驗(yàn)分別計(jì)算每種區(qū)塊鏈生成1 000 個(gè)區(qū)塊所需要消耗的時(shí)長(zhǎng),通過(guò)當(dāng)前生成的區(qū)塊與上個(gè)生成的區(qū)塊之間的時(shí)間差來(lái)獲得區(qū)塊生成的間隔時(shí)間數(shù)據(jù)。隨后,實(shí)驗(yàn)將上述實(shí)驗(yàn)過(guò)程中得到的實(shí)驗(yàn)數(shù)據(jù)與不同區(qū)塊鏈所要求的確認(rèn)函數(shù)次數(shù)結(jié)合,計(jì)算出這些區(qū)塊鏈的確認(rèn)交易時(shí)長(zhǎng)。最終,借助實(shí)驗(yàn)?zāi)M獲得了基于改進(jìn)PoV 的區(qū)塊鏈與基于傳統(tǒng)PoV 的區(qū)塊鏈及一些基于PoW的區(qū)塊鏈的共識(shí)效率對(duì)比圖,如圖9所示。
圖9 中曲線表示基于不同共識(shí)算法的區(qū)塊鏈在確認(rèn)交易時(shí)間及區(qū)塊間隔時(shí)間上的表現(xiàn)。從圖9 中可以較為直觀地看出,基于改進(jìn)PoV 的區(qū)塊鏈及基于傳統(tǒng)PoV 的區(qū)塊鏈在共識(shí)效率上明顯高于使用其他共識(shí)算法的區(qū)塊鏈。而由于改進(jìn)后的PoV 共識(shí)協(xié)議在模型、程序上的精簡(jiǎn),它擁有比傳統(tǒng)PoV 共識(shí)協(xié)議更高的共識(shí)效率,確認(rèn)交易時(shí)長(zhǎng)和區(qū)塊間隔時(shí)長(zhǎng)也由0.25 min降低至0.2 min。
對(duì)于具有監(jiān)督及懲罰功能的改進(jìn)PoV 共識(shí)協(xié)議在維護(hù)系統(tǒng)安全性及可靠性上的表現(xiàn),同樣借助一組對(duì)比實(shí)驗(yàn)來(lái)進(jìn)行說(shuō)明,該實(shí)驗(yàn)對(duì)比結(jié)果如表4所示。
該實(shí)驗(yàn)將1 000 條消息分別導(dǎo)入兩個(gè)使用改進(jìn)PoV 共識(shí)協(xié)議系統(tǒng),這些消息中存在部分假消息。兩個(gè)系統(tǒng)的其中一個(gè)具有監(jiān)督及懲罰功能,另一個(gè)則將這些功能刪除。在運(yùn)行一段時(shí)間后,分別檢索這兩個(gè)系統(tǒng)中被認(rèn)證為有效信息的消息,統(tǒng)計(jì)其中的真消息及假消息數(shù)量并進(jìn)行比較。
圖9 基于不同共識(shí)算法的區(qū)塊鏈在共識(shí)效率上的對(duì)比Fig.9 Comparison of consensus efficiency of blockchains based on different consensus algorithms
表4 不同的改進(jìn)PoV共識(shí)協(xié)議在可靠性上的對(duì)比Tab.4 Comparison of reliability of different improved PoV consensus protocols
從表4 中可以直觀地看出,兩個(gè)改進(jìn)的PoV 共識(shí)協(xié)議以是否具有監(jiān)督及懲罰機(jī)制作為區(qū)分,在可靠性上有著明顯的差異。顯然,添加了監(jiān)督及懲罰機(jī)制的改進(jìn)PoV 共識(shí)協(xié)議所通過(guò)的假消息數(shù)量要少于沒(méi)有這種機(jī)制的另一方。因此得出結(jié)論:新增的監(jiān)督及懲罰功能使得改進(jìn)后的PoV 共識(shí)協(xié)議同樣具有較高的可靠性及安全性。
本文嘗試對(duì)現(xiàn)有的PoV 共識(shí)協(xié)議進(jìn)行了一定的改進(jìn),使其能夠更好地滿足車聯(lián)網(wǎng)的各項(xiàng)現(xiàn)實(shí)需求。改進(jìn)后的PoV 共識(shí)協(xié)議去除了現(xiàn)有PoV 共識(shí)協(xié)議中的身份轉(zhuǎn)換功能及一項(xiàng)身份分工,令其在更適配車聯(lián)網(wǎng)的同時(shí)進(jìn)一步提高了共識(shí)效率。此外,本文還在這種改進(jìn)的PoV 共識(shí)協(xié)議中增添了監(jiān)督和懲罰機(jī)制,以保證消息的真實(shí)性、有效性。借助實(shí)驗(yàn)本文證明了這種改進(jìn)共識(shí)算法的有效性。實(shí)驗(yàn)結(jié)果表明,改進(jìn)后的PoV共識(shí)協(xié)議可以進(jìn)一步提高區(qū)塊鏈的共識(shí)效率。