劉勇 李飛 高路路 徐翔
(成都信息工程大學,成都 610225)
智慧城市[1]是城市發展的高級產物,其核心理念是實現城市中各個物體的互聯、動態感知、智慧管理,為未來城市提供了一種新的發展方向。智慧交通作為智慧城市的核心之一,涉及物聯網、云計算、大數據等多項綜合技術,使人、車、路協調運轉[2]。而車聯網作為智慧交通的核心領域,以車內網、車際網和車載移動互聯網為基礎[3],實現車與車、車與建筑物、車與基礎設施單元之間的信息交換,甚至可以幫助實現汽車與行人、汽車與非機動車之間的“對話”[4]。
在車聯網中,由于車輛自身的移動特性,車載通信具有移動區域受限、網絡拓撲變化快、網絡頻繁接入和中斷、節點覆蓋范圍大、通信環境復雜等特點[5]。基于這些特點,目前車聯網的發展面臨幾個主要問題:
a.建設成本和能源消耗。在車載移動互聯網中,路邊設施單元(Road Side Unit,RSU)作為車輛自組織網(Vehicular Ad-hoc Network,VANET)無線接入點,將車輛和道路等信息上傳至互聯網并發布,這種車與基礎設施(Vehicle to Infrastructure,V2I)的協作通信模型需要大量的RSU支撐,增加了建設的成本和能源消耗[6-7]。
b.通信協議標準不統一。在車聯網中存在著多種網絡通信協議,不同網絡數據傳輸需要進行協議轉換,影響通信效率。此外,由于車輛高速行駛,需要快速可靠的網絡連接和數據傳輸,這對網絡通信時延有著極高的要求。
c.安全問題:由于車聯網采用無線通信,因此存在數據破壞、重放、假冒和監聽等安全及個人隱私問題[8-9],可能造成財產損失甚至危及駕乘人員的人身安全。
V2X(Vehicle to X)是自動駕駛的必要技術和智慧交通的重要一環,其中X可以表示基礎設施、車輛、行人或道路等。目前V2X技術的兩大陣營分別是由國內企業推動的車間通信長期演進(Long Term Evolution-Vehicle,LTE-V)技術和美國主導的專用短程通信(Dedicated Short Range Communications,DSRC)技術(基于IEEE 802.11p)。
現有的車聯網通信中依舊存在很多安全性問題,例如,Sybil攻擊[10-11]是一種基于假冒身份的車聯網攻擊方法,假冒節點通過偽造汽車身份標識控制車輛,發送虛假信息,偽造交通場景從而影響車輛的正常判斷,導致交通網絡運行癱瘓或引發交通事故等。
所有的用戶系統都有認證與授權功能[12]。在車輛身份認證領域,學者們提出了一些安全認證方案。王群[13]提出了基于射頻識別(RFID)的車輛身份信息識別方法,車輛經過閱讀器覆蓋區域時,其電子標簽被激活并被讀寫器識別,讀寫器將識別的車輛信息通過網絡發送到中心數據庫進行身份識別和驗證。Z Gao等人提出了基于公鑰基礎設施(Public Key Infrastructure,PKI)的認證方法[14],滿足了不同用戶甚至同一用戶在不同場景下的安全需求。王文駿提出了基于證書的車輛身份認證方法[15],車輛在區域服務器完成注冊后獲取證書,實現車輛身份匿名認證,并能夠獨立檢測Sybil攻擊,惡意車輛身份撤銷由區域服務器完成,避免使用撤銷列表,使車輛省去查找撤銷列表的開銷。Calandriello G等人提出了基于身份簽名(Identity-Based Signature,IBS)的認證方法[16],以確保合法節點可以匿名和更容易生成化名。此外還有基于群簽名(Group Signature)的認證方法[17-21]等。但這些認證方法適用于簡單通信環境,無法滿足復雜環境中多信道的安全需求。文獻[22]基于雙線性映射理論設計出能實現復雜通信場景認證的會話密鑰,通過優化通信負載、減少交互環節實現低時延的認證協議,使可信中心(Trusted Center,TC)能夠驗證車輛的合法性或對其授權。文獻[23]提出了一個輕量級的自愈群密鑰分配方案,該方案訪問控制多項式和群密鑰以指數的形式廣播,并在廣播消息中增加消息驗證碼,實現了群密鑰的保密性和廣播認證,利用滑動窗口機制恢復丟失的群會話密鑰,緩解了通信開銷,并針對車聯網的子群和群間通信場景,提出子群自愈群密鑰分配和安全群間通信方案,實現了子群之間的信息共享和信息保密。
隨著云計算和大數據技術的快速發展,為車輛提供的各種云服務不斷出現,但通常不同的云服務產品由不同的服務器維護,在傳統的單一服務注冊機制中,用戶使用任一服務前必須在相應服務提供商注冊,憑賬號和密碼登錄。但這需要用戶記住在每個服務商處的賬號信息才能通過相應系統的身份認證,這給用戶帶來了極大的困擾。因此,一般用戶為了避免記住大量的賬號和密碼,通常在眾多服務器中使用相同的賬號和密碼。然而,這產生了另外2個問題:如果某一服務器出現賬戶信息泄露,很可能導致用戶在其他服務器上的信息泄露[24];隨著用戶數量的急劇增加,每個服務器需要維護海量的賬戶信息,造成眾多服務器在用戶管理方面出現資源疊加浪費,也可能因此導致服務器性能瓶頸[25]。區塊鏈技術的去中心化、數據不可篡改等特點,可以使多個服務提供商共同維護一個賬戶信息賬本,用戶只需要記住該賬本上的賬戶信息便可在多個服務器上完成身份認證,因此,汽車身份認證可以借鑒區塊鏈技術。
區塊鏈作為比特幣系統的底層技術,主要包括對等網絡(Peer-to-Peer,P2P)技術、分布式賬本技術、非對稱加密技術、公式機制技術和智能合約技術[26-28]。區塊鏈目前分為公有鏈、聯盟鏈和私有鏈[29],其共同特點是公開透明、不可篡改、可追溯、時間序列和加密等[30],不同點在于去中心化的程度不同,共識機制和信任機制也不同。如圖1所示,區塊鏈系統由數據層、網絡層、共識層、激勵層、合約層和應用層組成[31-32]。

圖1 區塊鏈技術的基礎架構模型
圖1中,數據層包含數據的加密、封裝及區塊的打包;網絡層包含數據的傳播、驗證機制,如比特幣系統中采用拜占庭算法保證數據傳播的一致性;共識層主要解決記賬權問題,所有參與記賬節點都通過共識機制選出一個記賬節點,目前主要的共識機制有工作量證明(Proof-of-Work,PoW)、權益證明(Proof-of-Stake,PoS)、(Delegated Proof-of-Stake,DPoS)、瑞波共識(Ripple Consensus)算法等[33];激勵層主要用于設計獎勵機制,在比特幣系統中,礦工記入一個有效區塊時,系統會獎勵一定的比特幣作為獎勵,此外還有該區塊中所有的手續費作為獎勵轉給該礦工;合約層主要包含各類腳本、算法和智能合約,滿足合約的觸發條件時,系統會自動執行合約中的內容;應用層則封裝了區塊鏈的各種應用場景和案例。
區塊鏈的特點使其可以應用到數字貨幣、數據存儲、數據鑒證、金融交易、資產管理和選舉投票等場景。目前,區塊鏈技術主要應用在金融領域,如跨境支付、股權眾籌等。近年,有學者提出區塊鏈在物聯網中的相關研究[34-38],由于兩者都具有去中心化、分布式的特點,基于這些特點,將區塊鏈應用到物聯網中可以解決傳統中心化物聯網管理方案的弊端,提高物聯網的安全性。文獻[39]將DistBlockNet模型與軟件定義網絡(Software Defined Network,SDN)和區塊鏈相結合,提出了一種基于SDN架構的分布式區塊鏈安全物聯網網絡,在該網絡中,系統能夠自動適應危險環境。文獻[40]提出了一種基于區塊鏈的固件更新方案,嵌入式設備要求在區塊鏈網絡節點得到固件是否最新的確定信息,它可以安全地檢查固件版本,驗證固件的正確性,并能夠在物聯網環境中下載最新的嵌入式設備固件。車聯網作為物聯網的一部分,國內外目前暫無車聯網與區塊鏈結合的相關研究,本文對區塊鏈技術應用在車聯網汽車身份認證方面進行研究和分析。
汽車正在向智能化、無人駕駛的方向發展,對車輛進行管理,實現汽車安全行駛是車聯網的重要課題[41]。車聯網屬于物聯網的一部分,同樣具有分布式、去中心化等特點,因此,區塊鏈技術可以解決車聯網去中心化管理、隱私保護等問題。
本文設計的車聯網區塊鏈系統架構如圖2所示,將車、RSU、可信中心(云服務提供商)三者構建成一個區塊網絡,在該網絡中車輛節點不承擔數據計算工作,不參與工作量機制證明,只進行數據的加密和傳輸,把數據作為區塊鏈交易向RSU(或通信基站)進行傳輸,RSU(或通信基站)對接收到的數據進行驗證,通過后將數據傳送給可信中心,可信中心再根據共識機制選取其中一個中心進行記賬,其余可信中心負責校驗賬本信息。

圖2 車聯網區塊鏈系統架構
設現有的主要汽車生產商、政府管理機構為創世節點。為了保證新加入節點(如新加入的汽車生產商、云服務提供商等)身份的真實性、可靠性,共識機制采用瑞波共識算法。記賬節點對發起申請的節點身份資料進行審核,審核通過則進行簽名,當簽名數大于等于本系統中節點個數的51%時,系統自動認為該申請節點通過審核,將該節點加入記賬節點,并記錄到區塊鏈中,否則此次申請請求無效,可有效防止惡意節點隨意加入。新節點加入的智能合約設計如圖3所示。

圖3 新節點加入的智能合約
本文區塊鏈結構設計如圖4所示,包括區塊頭和區塊體兩部分內容。

圖4 區塊鏈結構
傳統的PKI認證技術的密鑰分配方案分為集中式和分散式兩種,其中集中式密鑰分配方案如圖5所示,由一個可信的中心節點負責密鑰的產生并分配給各通信方,其主要任務是數字證書的頒發和管理。

圖5 集中式密鑰分配方案
基于區塊鏈的車聯網汽車身份認證可在上述集中式密鑰分配方案基礎上進行改進。在圖2所示的框架中,上層各云服務提供商通過共識機制,代替傳統PKI中的密鑰分配中心(Key Distribution Center,KDC)進行數字證書的發放和管理,改進后的分配方案如圖6所示,其中發起方A為RSU,發起方B為汽車,創世節點和各服務商作為記賬節點,各節點之間通過共識機制構成“1個密鑰分配中心”。例如,汽車首先向具有記賬權的云服務商提交注冊申請,該服務商通過共識機制核實汽車身份后,自動產生包含汽車公鑰的數字證書并記入自己的賬本中,它包含汽車的真實身份,并證明汽車公鑰的有效期和作用范圍(交換密鑰或數字簽名),再將該信息通過P2P網絡發送給其他服務商節點,其他服務商節點只要能驗證證書的真實性,并信任所頒發證書的記賬者身份,就將該條信息記錄到自己的賬本。這種方案可以避免用戶多次在各服務器注冊身份信息,同時也避免了集中式密鑰分配帶來的效率低、管理難等問題。

圖6 改進的密鑰分配方案
車輛B向該系統注冊的具體流程為:
a.B→KDC:EPKDC(R1||M1),車輛B利用KDC的公鑰PKDC加密其注冊時提交的信息M1(包括唯一識別碼ID)和隨機數R1,并將加密結果發送給KDC;
b.KDC→B:ER1(KB||PB),KDC得到信息后,利用自己的私鑰KKDC進行解密,得到R1和M1,并對內容進行審核,若內容為真,則生成對應的公鑰PB和私鑰KB,并用隨機數R1加密后發送給車輛B。
其中,E為加密函數。此時,車輛B的注冊尚未完成,還需要同步至其他云服務提供商。
KDC將信息發送給車輛B后,會將該注冊信息寫入記錄,并廣播給其他記賬節點。區塊鏈認證記錄信息數據格式設置如表1所示。

表1 記錄信息的區塊數據格式
其他記賬節點收到該條記錄時,會對其中的內容進行檢查,核實版本信息、認證者列表信息的真實性等,若信息正確,將該條信息發送給其他節點,同時放入記錄隊列等待打包計入賬本區塊中,否則丟棄該記錄。
汽車身份認證分為汽車與云服務器之間的認證、汽車與RSU之間的認證和汽車與汽車之間的認證。
汽車與云服務提供商(亦密鑰分配中心)之間的認證流程為:
a.B→KDC:EPKDC(PB||M1||R||time),車輛B向云服務提供商發送自己的公鑰PB和請求的服務內容M1,并加隨機數R和時間戳time,利用對應服務商的公鑰PKDC加密這些內容,并發送出去;
b.KDC→B:EPB(M2||R),云服務提供商用私鑰KKDC進行解密,判斷時間戳time是否正確,并利用PB在區塊鏈上查找該汽車的身份信息,若信息核實為真,則利用PB加密返回服務內容M2和隨機數R,否則丟棄。
汽車與RSU之間的初始化認證流程為:
a.A→KDC:PA||PB||R1,RSU發送自己和車輛B的公鑰PA、PB以及隨機數R1給KDC;
b.KDC→A:EPA[Ks||PA||PB||R1||EPB[Ks||PA]],KDC收到2個公鑰,并在區塊鏈上查找對應信息,若核實為真,則產生會話密鑰Ks,并將該次認證記錄內容添加到區塊中,發送給RSU;
c.A→B:EPB[Ks||PA]||EKs[R2],RSU用私鑰解密后得到會話密鑰Ks、PB和EPB[Ks||PA],此時完成了對車輛B的認證,用Ks加密隨機數R2,一起發送給車輛B;
d.B→A:EKs[f(R2)],車輛B用自己的私鑰解密得到Ks和PA,即完成了對RSU的認證。
汽車和RSU初始化認證后,得到兩者之間的會話密鑰Ks,可設置Ks的有效時長,即每隔一定時間汽車和RSU更新一次Ks。
汽車與汽車之間的認證流程為:
a.B→C:PB||EKB(M1||R||time),汽車B向汽車C發送自己的公鑰PB和用自己的私鑰KB加密的請求服務內容M1、隨機數R和當前時間戳time;
b.C→B:PC||EKC(M2||R),汽車C用汽車B的公鑰PB進行解密,得到PB、M1、隨機數R和當前時間戳time,并判斷PB和time是否正確,若正確,則利用自己的私鑰KC加密返回服務內容M2和隨機數R,將公鑰PC一起發送給汽車B,并將該次記錄發送到區塊鏈網絡中,等待記賬節點寫入區塊中,否則丟棄。
綜上所述,區塊鏈技術結合PKI認證機制可以解決車聯網中汽車與服務器和RSU的身份認證問題,同時也解決了用戶賬號管理問題,可以實現同一賬號多處登錄。此外,區塊鏈自帶的加密技術可用于對汽車身份信息的加密,防止用戶信息泄露。總的來說,應用區塊鏈技術可以解決車聯網中多服務系統的身份認證問題和身份假冒問題。
目前,區塊鏈技術多應用于金融領域,現有的區塊鏈數據結構不能直接應用在車聯網中,本文研究了基于區塊鏈技術的車聯網汽車身份認證的可行性,總結了現有的車聯網認證方案,分析其各自的特點和不足,結合區塊鏈技術特點設計出車聯網區塊鏈系統架構和相關區塊鏈結構、完成節點加入的相關智能合約,在該框架上結合現有的PKI認證機制提出了新的修改思路,完成車輛的注冊、汽車與汽車、服務器和RSU相關認證功能,為車聯網區塊鏈技術的后續研究提供參考。
將區塊鏈技術應用于車聯網汽車身份認證,還需要解決汽車認證中的隱私保護問題。每輛汽車在區塊鏈網絡中只擁有唯一的公鑰P和對應的私鑰K,雖然本文采用聯盟鏈,對加入的記賬節點進行嚴格審查,以確保賬本的機密性,但汽車在認證或提供服務時,需要暴露自己的公鑰P,存在位置跟蹤的危險,如何保護汽車公鑰P,是解決隱私保護問題的首要任務。
此外,由于汽車數量多,通信頻繁,因此對身份認證的請求次數較多,建立高效、快速的共識機制是必然選擇,不過隨著區塊鏈技術的快速發展,交易處理速度不斷加快,目前可達到每秒處理百萬筆交易,未來,更多針對車聯網的研究將滿足更多場景的需求。
[1]Neirotti P,Marco A D,Cagliano A C,et al.Current Trends in Smart City Initiatives:Some Stylised Facts[J].Cities,2014,38(5):25-36.
[2]苑宇坤,張宇,魏坦勇,等.智慧交通關鍵技術及應用綜述[J].電子技術應用,2015,41(8):9-12.
[3]王良民,劉曉龍,李春曉,等.5G車聯網展望[J].網絡與信息安全學報,2016,2(6):1-12.
[4]惠偉,孫偉華,何蔚.車聯網發展中的機遇與挑戰[J].信息安全與技術,2015,6(12):5-7.
[5]Mershad K,Artail H.A Framework for Secure and Efficient Data Acquisition in Vehicular Ad Hoc Networks[J].IEEE Transactions on Vehicular Technology,2013,62(2):536-551.
[6]SharefB T,AlsaqourR A,IsmailM.Vehicular Communication Ad Hoc Routing Protocols:A Survey[J].Journal of Network&Computer Applications,2014,40(1):363-396.
[7]Mumtaz S,Huq K M S,Ashraf M I,et al.Cognitive Vehicular Communication for 5G[J].IEEE Communications Magazine,2015,53(7):109-117.
[8]Vinel A,Ma X,Huang D.Guest Editors’Introduction:Special Issue on Reliable and Secure VANETs[J].Dependable&Secure Computing IEEE Transactions on,2016,13(1):2-4.
[9]李馥娟,王群,錢煥延.車聯網安全威脅綜述[J].電子技術應用,2017,43(5):29-33.
[10]Druschel P,Kaashoek M F,Rowstron A I T.Revised Papers from the First International Workshop on Peer-to-Peer Systems[C]// Revised Papers from the First International Workshop on Peer-to-Peer Systems.Springer-Verlag,2002:1571-1572.
[11]鮑美英,馬禮,高玉斌.網格環境下授權策略的研究[J].微電子學與計算機,2010,27(3):43-46.
[12]李馥娟.基于OAuth的開放授權技術及在云計算中的應用[J].計算機系統應用,2015,24(4):228-232.
[13]王群,錢煥延,趙鋼.一種面向車聯網的身份識別與定位方法[J].計算機科學,2012,39(s3):131-134.
[14]Gao Z,Hu Y,Kai L.CPTIAS:A New Fast PKI Authentication Scheme Based on Certificate Path Trust Index[J].Journal of Ambient Intelligence&Humanized Computing,2015,6(6):721-731.
[15]王文駿,劉亞偉.車聯網中基于證書的車輛身份認證方案[J].無線通信技術,2015,24(2).
[16]Calandriello G,Papadimitratos P,Hubaux J P,et al.Efficient and Robust Pseudonymous Authentication in VANET[C]//International Workshop on Vehicular Ad Hoc Networks,Vanet2007,Montréal,Québec,Canada,September.OAI,2007:19-28.
[17]Zhu X L,Yang L U,Hou Z F,et al.Strong Privacy Protection Scheme Based on Oblivious Transfer and Group Signature in VANET[J].Application Research of Computers,2014.
[18]朱昶勝,劉鵬輝,王慶榮,等.適合移動Ad hoc網絡基于群簽名認證的彈性組密鑰管理方案[J].計算機應用研究,2011,28(10):3811-3816.
[19]李海峰,劉云芳.移動Ad Hoc網絡中應用自認證的(t,n)門限群簽名方案[J].北京聯合大學學報,2006,20(3):19-22.
[20]肖平安.基于群簽名的身份認證方案研究[D].蘭州大學,2013.
[21]劉輝,李暉.采用群組密鑰管理的分布式車聯網信息認證方案[J].西安交通大學學報,2013,47(2):58-62.
[22]劉宴兵,宋秀麗,肖永剛.車聯網認證機制和信任模型[J].北京郵電大學學報,2017,40(3):1-18.
[23]吳海云.面向車聯網的群密鑰管理方案的研究[D].安徽大學,2017.
[24]Wang D,Wang N,Wang P,et al.Preserving Privacy for Free: Efficient and Provably Secure Two-Factor Authentication Scheme with User Anonymity[J].Information Sciences,2015,321:162-178.
[25]Wang D,Wang N,Wang P,et al.Preserving Privacy for Free: Efficient and Provably Secure Two-Factor Authentication Scheme with User Anonymity[J].Information Sciences,2015,321:162-178.
[26]袁勇,王飛躍.區塊鏈技術發展現狀與展望[J].自動化學報,2016,42(4):481-494.
[27]朱巖,甘國華,鄧迪,等.區塊鏈關鍵技術中的安全性研究[J].信息安全研究,2016,2(12):1090-1097.
[28]Pilkington M.Blockchain Technology:Principles and Applications[J].Social Science Electronic Publishing,2016.
[29]Underwood S.Blockchain Beyond Bitcoin[J].Communications of the Acm,2016,59(11):15-17.
[30]張苑.區塊鏈技術對我國金融業發展的影響研究[J].國際金融,2016(5):41-45.
[31]WrightA,De FilippiP.Decentralized Blockchain Technology and the Rise of Lex Cryptographia[J].Social Science Electronic Publishing,2015.
[32]Pierro M D.What Is the Blockchain?[J].Computing in Science&Engineering,2017,19(5):92-95.
[33]王曉光.區塊鏈技術共識算法綜述[J].信息與電腦,2017(9):72-74.
[34]Christidis K,Devetsikiotis M.Blockchains and Smart Contracts for the Internet of Things[J].IEEE Access,2016,4:2292-2303.
[35]Kshetri N.Can Blockchain Strengthen the Internet of Things?[J].It Professional,2017,19(4):68-72.
[36]Zhang Y,Wen J.The IoT Electric Business Model:Using Blockchain Technology for the Internet of Things[J].Peerto-Peer Networking and Applications,2017,10(4):983-994.
[37]趙闊,邢永恒.區塊鏈技術驅動下的物聯網安全研究綜述[J].信息網絡安全,2017(5):1-6.
[38]何渝君,龔國成.區塊鏈技術在物聯網安全相關領域的研究[J].電信工程技術與標準化,2017,30(5):12-16.
[39]Sharma P K,Singh S,Jeong Y S,et al.DistBlockNet:A Distributed Blockchains-Based Secure SDN Architecture for IoT Networks[J].IEEE Communications Magazine,2017,55(9):78-85.
[40]Lee B,Lee J H.Blockchain-Based Secure Firmware Update for Embedded Devices in an Internet of Things Environment[J].Journal of Supercomputing,2016,73(3):1-16.
[41]杜玲利,程明敏,董偉.淺談車聯網[J].汽車實用技術,2017(1):58-60.