摘 要:針對車聯(lián)網(wǎng)復(fù)雜高速變化的網(wǎng)絡(luò)環(huán)境以及開放網(wǎng)絡(luò)中惡意攻擊和隱私泄露的威脅,為保障車聯(lián)網(wǎng)通信過程中的高安全、低時延與信息的隱私性,文中設(shè)計并實現(xiàn)了一種新型的基于國密算法SM9的輕量級認證密鑰協(xié)商協(xié)議,在保證本協(xié)議可以抵御車聯(lián)網(wǎng)中假冒與偽造攻擊、重放攻擊、中間人攻擊等惡意攻擊的同時,降低了認證密鑰協(xié)商過程中的計算開銷與通信時延,極大程度提高了認證密鑰協(xié)商效率。本協(xié)議的輕量級特性適用于車聯(lián)網(wǎng)中車輛高速行駛的復(fù)雜環(huán)境,滿足了車聯(lián)網(wǎng)環(huán)境對于認證密鑰協(xié)商協(xié)議的低時延與高安全要求,具備較高的可行性。
關(guān)鍵詞:車聯(lián)網(wǎng);密鑰協(xié)商;SM9;輕量級;身份認證;隱私保護
中圖分類號:TP393 文獻標(biāo)識碼:A 文章編號:2095-1302(2024)06-00-04
0 引 言
近年來,隨著現(xiàn)代物聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展,汽車聯(lián)網(wǎng)化滲透不斷加強,車聯(lián)網(wǎng)(Internet of Vehicles, IoV)已成為物聯(lián)網(wǎng)領(lǐng)域的關(guān)鍵技術(shù)節(jié)點。車聯(lián)網(wǎng)即能夠?qū)崿F(xiàn)車輛與車輛V2V(Vehicle-to-Vehicle)、車輛與路側(cè)設(shè)備V2I(Vehicle-to-Infrastructure)、車輛與行人V2P(Vehicle-to-Pedestrian)、車輛與互聯(lián)網(wǎng)V2N(Vehicle-to-Network)等終端之間交互的動態(tài)移動通信系統(tǒng),屬于國家“十四五”規(guī)劃的重點項目?!丁笆奈濉毙畔⑼ㄐ判袠I(yè)發(fā)展規(guī)劃》中提出了要加快車聯(lián)網(wǎng)部署應(yīng)用、支持新型城市基礎(chǔ)設(shè)施建設(shè)和加強網(wǎng)絡(luò)安全保障體系等車聯(lián)網(wǎng)發(fā)展措施,以促進車、路、網(wǎng)的協(xié)同發(fā)展。
車聯(lián)網(wǎng)的發(fā)展使汽車逐步具備了交互和服務(wù)的能力,促進了其由簡單的交通工具向連接萬物的超級智能終端的進化,推進了智慧交通的發(fā)展;但同時,也讓原本相對封閉的汽車暴露在開放的網(wǎng)絡(luò)環(huán)境中,隨時可能受到來自惡意攻擊以及隱私泄露的威脅。
因此,如何在復(fù)雜高速變化的車聯(lián)網(wǎng)環(huán)境中保障車聯(lián)網(wǎng)系統(tǒng)通信的安全性與信息的隱私性,將成為未來智慧交通發(fā)展過程中首要解決的問題[1-2]。
目前,車聯(lián)網(wǎng)領(lǐng)域主要采用認證密鑰協(xié)商協(xié)議構(gòu)建安全加密信道的方法來保證車輛行駛過程中信息的隱私性和安全性。認證密鑰協(xié)商協(xié)議主要分為基于公鑰加密基礎(chǔ)設(shè)施(Public" Key Infrastructure, PKI)的方案和基于標(biāo)識密碼技術(shù)(Identity-Based Cryptograph, IBC)的方案,其中應(yīng)用最為廣泛的是基于PKI的認證協(xié)議[3]。
然而,基于PKI機制的認證方案往往需要依賴證書管理機構(gòu)進行數(shù)字證書的分發(fā)與管理,這將造成較大開銷,降低認證密鑰協(xié)商過程的效率;而基于IBC系統(tǒng)的認證方案往往需要在各認證終端進行多次雙線性對運算和至少兩輪通信交互,可能導(dǎo)致認證密鑰協(xié)商環(huán)節(jié)的時延較長[4]。
基于此,文中提出了一種車聯(lián)網(wǎng)環(huán)境下的基于國密算法SM9的輕量級認證密鑰協(xié)商協(xié)議,為車聯(lián)網(wǎng)中信息數(shù)據(jù)的傳輸提供了安全加密信道的保護;此外,鑒于車輛高速行駛的車聯(lián)網(wǎng)環(huán)境要求,文中協(xié)議同時保證了密鑰協(xié)商過程的低時延,以完成節(jié)點間快速高效的交互與傳輸[5]。
相較于傳統(tǒng)的PKI機制,文中協(xié)議減少了注冊階段需要預(yù)先存儲的信息,降低了內(nèi)存成本;同時相比于基于IBC系統(tǒng)的方案,文中協(xié)議減少了認證密鑰協(xié)商過程中所需的通信交互輪數(shù)與雙線性對運算次數(shù),實現(xiàn)了更高效率的車聯(lián)網(wǎng)認證密鑰協(xié)商方案。
1 協(xié)議系統(tǒng)架構(gòu)
1.1 系統(tǒng)架構(gòu)
根據(jù)車聯(lián)網(wǎng)通信環(huán)境,文中設(shè)計系統(tǒng)的測試網(wǎng)絡(luò)拓撲圖如圖1所示。在注冊階段,車輛節(jié)點與路側(cè)設(shè)備節(jié)點均與車聯(lián)網(wǎng)數(shù)據(jù)管理系統(tǒng)進行安全物理信道中的信息交互;在車輛行駛過程中,車輛節(jié)點可以與路側(cè)設(shè)備節(jié)點或其他車輛節(jié)點進行認證與密鑰協(xié)商[6]。
1.2 威脅模型
針對車聯(lián)網(wǎng)中實際存在的安全風(fēng)險和安全需求,文中設(shè)計的威脅模型如下:
(1)攻擊者能夠竊聽開放信道中車聯(lián)網(wǎng)節(jié)點發(fā)送的信息;
(2)攻擊者能夠?qū)Ω`聽的信息進行篡改或重放;
(3)攻擊者能夠利用竊聽得到的信息實施各類安全攻擊,如假冒攻擊、偽造消息攻擊、重放攻擊、中間人攻擊等。
2 協(xié)議設(shè)計與實現(xiàn)
在傳統(tǒng)的SM9密鑰交換協(xié)議中,通常采用數(shù)字簽名與驗簽方式進行公私鑰分發(fā),由于數(shù)字簽名算法的復(fù)雜性,這種分發(fā)方式會導(dǎo)致計算開銷增大以及交互輪數(shù)增加,無法滿足低通信時延的要求,因此不適用于車聯(lián)網(wǎng)高速變換的環(huán)境。
基于此,在文中所設(shè)計的協(xié)議中加入了車輛注冊階段以完成公私鑰分配,在減少傳統(tǒng)SM9標(biāo)識密碼算法中雙線性對運算次數(shù)與計算開銷的同時,也減少了通信交互輪數(shù),使協(xié)議更加輕量級,更符合車聯(lián)網(wǎng)環(huán)境對于通信過程低時延的要求。
2.1 車輛注冊階段
在車輛注冊階段,由計算能力更強的車聯(lián)網(wǎng)數(shù)據(jù)管理中心為車輛節(jié)點,路側(cè)設(shè)備節(jié)點生成認證密鑰對。
步驟C1:數(shù)據(jù)管理中心C選擇SM9國標(biāo)中推薦的25位
BN曲線及一個階為素數(shù)N、生成元為P的加法循環(huán)群G和雙線性對及階為素數(shù)N的乘法循環(huán)群G1,其中:
(1)
通過安全的隨機數(shù)發(fā)生器生成PKG的加密主私鑰s∈Z*N以及加密主公鑰P0,其中P0=s·P,并為路側(cè)設(shè)備節(jié)點A生成可辨別標(biāo)識IDA。
步驟C2:數(shù)據(jù)管理中心C為車輛節(jié)點B分配IDB,并為節(jié)點B生成一對認證密鑰對(PrB, qB),其中私鑰PrB和公鑰qB表示為:
(2)
(3)
式中:Hash()函數(shù)選擇國密SM3密碼雜湊算法。
步驟C3:數(shù)據(jù)管理中心C為路側(cè)設(shè)備節(jié)點A分配IDA,并為其生成認證密鑰對(PrA, qA),其中私鑰PrA和公鑰qA表示為:
(4)
(5)
步驟C4:數(shù)據(jù)管理中心C通過安全的物理信道將認證密鑰對與相應(yīng)摘要信息發(fā)送給車輛節(jié)點B:
(6)
步驟C5:數(shù)據(jù)管理中心C通過安全的物理信道將認證密鑰對與相應(yīng)摘要信息發(fā)送給路側(cè)設(shè)備節(jié)點A:
(7)
車輛注冊完成。
2.2 密鑰協(xié)商階段
步驟B1:車輛節(jié)點生成素數(shù)隨機數(shù)nB∈Z*N,并計算:
(8)
(9)
將(IDB, ψB, σB)發(fā)送至路側(cè)設(shè)備A。
步驟A1:路側(cè)設(shè)備A接收到車輛節(jié)點B發(fā)送的(IDB, ψB, σB)后,由IDB計算其公鑰qB,并生成素數(shù)隨機數(shù)nA∈Z*N,計算:
(10)
(11)
將(ψA, σA)發(fā)送至車輛節(jié)點B,然后提取消息中的(ψB, σB)驗證雙線性對是否符合條件:
(12)
若驗證合格,則計算會話密鑰SKA:
(13)
式中:
步驟B2:車輛節(jié)點接收到路側(cè)設(shè)備節(jié)點A回復(fù)的(ψA, σA)消息后,驗證雙線性對是否符合條件:
(14)
若驗證合格,則計算會話密鑰:
(15)
式中:。
可以證明SKA=SKB,會話密鑰相等,因此車輛節(jié)點與路側(cè)設(shè)備節(jié)點的密鑰協(xié)商成功,加密信道建立。此后車輛節(jié)點B與路側(cè)設(shè)備節(jié)點A即可進行加密通信。
車輛節(jié)點之間密鑰協(xié)商與加密信道的建立基礎(chǔ)是兩車輛節(jié)點M、N均與路側(cè)設(shè)備節(jié)點A建立了安全信道。
步驟M1:車輛節(jié)點M發(fā)起認證請求,生成素數(shù)隨機數(shù)nM∈Z*N,并計算:
(16)
(17)
通過安全加密信道將(IDN, ψM, σM)用會話密鑰加密后發(fā)送給路側(cè)設(shè)備節(jié)點A。
步驟A1:路側(cè)設(shè)備節(jié)點A收到車輛節(jié)點M發(fā)送的認證請求后,解密獲得(IDN, ψM, σM),即完成路側(cè)設(shè)備節(jié)點A對車輛節(jié)點M的身份代認證。然后路側(cè)設(shè)備節(jié)點分別向車輛節(jié)點M和車輛節(jié)點N發(fā)送密鑰協(xié)商所需要的相關(guān)信息,由于車輛節(jié)點N可通過加密信道正確解密得到相關(guān)信息,即等同于完成路側(cè)設(shè)備對車輛節(jié)點N的身份代認證。路側(cè)設(shè)備向車輛M發(fā)送qN,向車輛N發(fā)送{qM, ψM, σM}。
步驟N1:車輛節(jié)點N向車輛節(jié)點M發(fā)送隨機信息。車輛N生成素數(shù)隨機數(shù)nN∈Z*N,并計算:
(18)
(19)
將(ψN, σN)用密文發(fā)送給車輛節(jié)點M。
步驟N2:車輛節(jié)點N根據(jù)云平臺發(fā)送的信息{qM, ψM, σM}驗證雙線性對是否符合條件:
(20)
若驗證合格,計算會話密鑰SKN:
(21)
式中:。
步驟M2:車輛節(jié)點M接收由路側(cè)設(shè)備發(fā)送的消息并解密后,得到qN;接收車輛節(jié)點N從公共信道傳遞的信息(ψN, σN),驗證雙線性對:
(22)
若驗證合格,計算會話密鑰SKM:
(23)
式中:。
可以驗證得出,車輛節(jié)點M與車輛節(jié)點N各自計算出的會話密鑰SKM和SKN相等。兩車輛節(jié)點的密鑰協(xié)商完成,安全加密信道建立完成。
2.3 密鑰更新階段
在車聯(lián)網(wǎng)的開放網(wǎng)絡(luò)環(huán)境中,長期使用相同的密鑰容易造成密鑰泄露風(fēng)險,因此,為防止密鑰信息被破解,文中設(shè)計了密鑰更新階段來對各節(jié)點所持有的密鑰對進行定時更新。
當(dāng)路側(cè)設(shè)備節(jié)點A向車輛節(jié)點B請求密鑰更新時:
步驟A1:路側(cè)設(shè)備節(jié)點A向車輛節(jié)點B生成新的可辨別標(biāo)識IDB,并據(jù)此計算出車輛節(jié)點B的密鑰對:
(24)
(25)
將{qrB, qB, IDB}已經(jīng)建立的加密信道發(fā)送給車輛節(jié)點B。
步驟B1:車輛節(jié)點B由加密信道接收消息并解密,根據(jù)秘密消息內(nèi)容對自己的ID以及密鑰對進行更新,密鑰更新階段完成。
3 協(xié)議仿真與功能測試
3.1 時延性能測試
3.1.1 計算開銷
文中首先通過C/C++語言miracle庫對協(xié)議中需要用到的各類基礎(chǔ)密碼學(xué)運算耗時進行了仿真運算,運算10次的平均結(jié)果見表1所列。
表1中,tbp,th,texp,tmul,txor分別表示雙線性對操作、SM3密碼雜湊函數(shù)、基于橢圓曲線的模冪操作、基于橢圓曲線的模乘操作和基于橢圓曲線的點加操作的平均運算耗時。
在車聯(lián)網(wǎng)認證密鑰協(xié)商過程中,協(xié)議的計算開銷通常發(fā)生在車輛節(jié)點與路側(cè)設(shè)備節(jié)點。經(jīng)過研究現(xiàn)有車聯(lián)網(wǎng)認證密鑰協(xié)商協(xié)議文獻[7]和文獻[8],依據(jù)表1中各類密碼學(xué)運算的計算開銷,對比得出文獻[7]、文獻[8]所用協(xié)議以及傳統(tǒng)SM9密鑰交換協(xié)議和文中所用協(xié)議在不同節(jié)點處的計算開銷對比情況,見表2所列。
可以看出,相較于文獻[7]和文獻[8]所設(shè)計的協(xié)議,文中所設(shè)計并使用的新型認證密鑰協(xié)商協(xié)議可以很大程度降低車聯(lián)網(wǎng)中車輛節(jié)點與路側(cè)設(shè)備節(jié)點認證密鑰協(xié)商過程中產(chǎn)生的計算開銷,極大提高了認證密鑰協(xié)商過程的效率,在時延性能上有所提升,因此在車聯(lián)網(wǎng)環(huán)境中更具優(yōu)勢。
3.1.2 仿真測試
在Intel(R) Core(TM) i5-1035G1 CPU @ 1.00 GHz設(shè)備中,對該協(xié)議進行了10次仿真實現(xiàn),仿真測試時延結(jié)果如圖2所示。
3.1.3 通信開銷
對比了文獻[7]、文獻[8]所設(shè)計的協(xié)議與文中所設(shè)計協(xié)議的通信開銷與交互輪數(shù),得到表3所列數(shù)據(jù)。文中協(xié)議與文獻[7]和文獻[8]所設(shè)計的協(xié)議相比,分別降低了約60%和79%的通信開銷;同時,本協(xié)議實現(xiàn)過程中僅需一輪通信交互,大幅削減了認證密鑰協(xié)商協(xié)議的通信時延,更加適用于復(fù)雜的車聯(lián)網(wǎng)環(huán)境。
3.2 安全性證明
為驗證本協(xié)議具備抵御車聯(lián)網(wǎng)中各類惡意攻擊的能力,通過AVISPA形式化驗證工具對協(xié)議進行了形式化驗證。
3.2.1 抵抗假冒攻擊
由于秘密信息X不經(jīng)過無線信道傳輸,攻擊者不具備猜測或從車輛與路側(cè)設(shè)備節(jié)點直接獲得信息X的能力,因此攻擊者無法經(jīng)過單向哈希運算計算出與SKA相等的會話密鑰,故攻擊者無法通過假冒身份的方式獲得正確的會話密鑰,因此本協(xié)議具備抵抗假冒攻擊的能力。
3.2.2 抵抗重放攻擊
在認證密鑰協(xié)商階段,路側(cè)設(shè)備節(jié)點會對接收的認證請求信息中的IDB進行驗證,若其發(fā)現(xiàn)IDB短時間內(nèi)已認證過,將丟棄數(shù)據(jù),重放攻擊不成功;若其通過驗證,則路側(cè)設(shè)備節(jié)點生成會話密鑰SKB。
攻擊者由于無法獲取秘密信息X,因此無法計算得出相同的會話密鑰SKA。
攻擊者無法通過重放攻擊獲得與路側(cè)設(shè)備節(jié)點相同的會話密鑰,本協(xié)議具備抵抗重放攻擊的能力。
3.2.3 抵抗中間人攻擊
之前已證得攻擊者無法通過假冒攻擊生成與路側(cè)設(shè)備節(jié)點或車輛節(jié)點相同的會話密鑰,由于攻擊者無法獲得未公開的生成元P和路側(cè)設(shè)備節(jié)點的認證公鑰P0,因此攻擊者無法構(gòu)造虛假信息{IDA, ψA, σA}和(ψA, σA)以通過車輛節(jié)點或路側(cè)設(shè)備節(jié)點的雙線性對檢測;同時由于攻擊者無法獲知秘密信息X,故攻擊者無法生成與任一節(jié)點相同的會話密鑰,因此本協(xié)議具備抵抗中間人攻擊的能力[9-10]。
4 結(jié) 語
針對車聯(lián)網(wǎng)環(huán)境對于通信的高安全和低時延的要求,為完成車聯(lián)網(wǎng)中各節(jié)點間的相互認證,建立各節(jié)點之間的安全加密信道,保證信息傳輸?shù)碾[私性和高效性,文中設(shè)計了一種基于國密算法SM9的輕量級認證密鑰協(xié)商協(xié)議。該協(xié)議通過注冊減少了后續(xù)所需的交互輪數(shù),同時通信開銷較低,降低了通信時延,提高了通信效率;此外,減少了協(xié)議中復(fù)雜密碼運算的次數(shù),同時保證了協(xié)議抵御各類惡意攻擊的能力,即在降低計算開銷的同時保持了協(xié)議的高安全性,適用于車聯(lián)網(wǎng)通信環(huán)境。
參考文獻
[1]陳滏媛,董振江,董建闊,等.車聯(lián)網(wǎng)安全防護技術(shù)綜述[J].電信科學(xué),2023,39(3):1-15.
[2] XU Z S,LI X,XU J B,et al. A secure and computationally efficient authentication and key agreement scheme for Internet of Vehicles [J]. Computers and electrical engineering,2021.
[3] BIDI Y,AMIYA N. Anonymous and lightweight authentication for secure vehicular networks [J]. IEEE transactions on vehicular technology,2017.
[4]王俊,田永春.移動通信安全技術(shù)發(fā)展綜述[J].通信技術(shù),2021,54(10):2291-2300.
[5] AGILANDEESWARI L,SWAPNIL P,ANVITA C,et al. A new lightweight conditional privacy preserving authentication and key- agreement protocol in social internet of things for vehicle to smart grid networks [J]. Multimedia tools and applications,2022,81(19).
[6]羅婉薇. 基于車聯(lián)網(wǎng)的安全認證協(xié)議研究[D].天津:天津理工大學(xué),2022.
[7] HE D B,ZEADALLY S,KUMAR N,et al. Efficient and anonymous mobile user authentication protocol using self-certified public key cryptography for multi-server architectures [J]. IEEE trans. information forensics and security,2016.
[8] CHEN C M,XIANG B,LIU Y N,et al. A secure authentication protocol for internet of vehicles [J]. IEEE access,2019.
[9] DHARMINDER C,TANMAY S,LAKSHMI K V,et al. A modified lightweight authenticated key agreement protocol for Internet of drones [J]. Internet of things,2023.
[10] UPENDRA V,DIWAKAR B. A secure lightweight anonymous elliptic curve cryptography‐based authentication and key agreement scheme for fog assisted‐internet of things enabled networks [J]. Concurrency and computation: Practice and experience,2022.
作者簡介:曹晗,本科,研究方向為信息安全。