石琴 朱俊杰 程騰 楊澤 王川宿
(1.合肥工業(yè)大學(xué),自動駕駛汽車安全技術(shù)安徽省重點實驗室 安徽省智慧交通車路協(xié)同工程研究中心,合肥 230009;2.奇瑞汽車股份有限公司,蕪湖 241006)
主題詞:身份認證 訪問控制 量子保密通信 車輛自組網(wǎng)
隨著智能網(wǎng)聯(lián)汽車的快速發(fā)展,車輛所產(chǎn)生的數(shù)據(jù)量越來越豐富[1],這些數(shù)據(jù)不僅涉及車輛信息,也包括車輛所有者的私人敏感信息[2]。因此,車輛面臨著私人信息未經(jīng)車輛所有者授權(quán)而被不當(dāng)開放的威脅[3]。為此,車輛數(shù)據(jù)的安全傳輸和云存儲數(shù)據(jù)的限制性訪問需要得到重視。
在數(shù)據(jù)傳輸過程中,攻擊者可能通過對傳輸?shù)南⑦M行修改、模仿或重放等手段威脅通信安全[4];在訪問控制方面,車輛敏感信息可能受到未經(jīng)授權(quán)的訪問[5]。因此,身份認證和密鑰協(xié)商機制是車聯(lián)網(wǎng)信息安全中重要的一環(huán)[6]。現(xiàn)有的車輛安全通信方案大多通過有條件的身份認證來識別未經(jīng)授權(quán)的數(shù)據(jù)訪問[7-9]。這些方案雖然可以在一定程度上保護車輛數(shù)據(jù)在傳輸過程中不會受到未經(jīng)批準(zhǔn)的訪問,但并未考慮數(shù)據(jù)在云端存儲后的隱私數(shù)據(jù)訪問限制與管控。
隨著量子計算研究的不斷深入,大型量子計算機一旦出現(xiàn),許多常用的密碼系統(tǒng)將被快速破解,當(dāng)前的加密方案面臨著嚴(yán)峻的挑戰(zhàn)[4],車聯(lián)網(wǎng)的通信安全也將受到威脅[10]。量子保密通信是在抗量子計算攻擊的特定需求下的全新的、有效的密碼學(xué)補充手段[11]。常見的是量子密鑰分發(fā)(Quantum Key Distribution,QKD)與其他能夠抵抗量子計算攻擊的對稱密鑰加密算法結(jié)合使用,從而形成安全的量子保密通信系統(tǒng)[12]。
針對車聯(lián)網(wǎng)數(shù)據(jù)在傳輸和存儲過程中面臨的攻擊者惡意侵入與非授權(quán)訪問的問題,本文提出一種基于車端量子密鑰的車聯(lián)網(wǎng)數(shù)據(jù)訪問控制方案,包括基于預(yù)充注量子密鑰的身份認證和密鑰協(xié)商機制,以及基于量子隨機數(shù)發(fā)生器的車輛數(shù)據(jù)訪問控制方案,通過在車載通信終端集成量子隨機數(shù)發(fā)生器生成量子加密密鑰,由車輛所有者管理外部訪問者對車輛隱私數(shù)據(jù)的訪問請求,防止非授權(quán)訪問和高權(quán)限人員的惡意侵入。方案融合了量子密鑰進行加密通信,可應(yīng)對以量子計算為代表的超能力計算機的威脅。最后對方案與其他主要研究方案進行安全性與性能對比分析。
本文系統(tǒng)的通信架構(gòu)如圖1所示,包括集成量子隨機數(shù)發(fā)生器(Quantum Random Number Generator,QRNG)的車載通信終端(Telematics BOX,T-BOX)、量子密服平臺(Quantum Security Server,QSS)、車輛信息服務(wù)提供平臺(Telematics Service Provider,TSP)、車輛電子控制單元(Electronic Control Unit,ECU)、車輛所有者(Owner)、訪問者(Visitor)。

圖1 系統(tǒng)通信架構(gòu)
T-BOX負責(zé)接收車輛數(shù)據(jù)MData,并將其加密生成密文(CData)上傳到TSP。T-BOX可以與QSS進行通信完成量子會話的密鑰加密密鑰(Key Encryption Key,KEK)生成,即會話密鑰的協(xié)商,并通過預(yù)充注量子密鑰(Pre-Fill quantum Key,PFK)保護KEK的安全傳輸。T-BOX通過集成的QRNG 提取內(nèi)容加密密鑰(Contents Encryption Key,CEK),并加密車輛數(shù)據(jù)。T-BOX使用KEK對CEK進行加密獲得加密會話密鑰(Keyed CEK,KCEK)。最后,根據(jù)車輛所有者授權(quán)的指令將KCEK分發(fā)到TSP。
TSP的安全存儲芯片(Secure Memory Chip,SMC)中存有大量預(yù)充注量子密鑰PFK。TSP 接收到QSS 分發(fā)的KCEK 后,從SMC 中取出對應(yīng)的PFK,解密后得到會話密鑰KEK。當(dāng)TSP 收到T-BOX 發(fā)送的KCEK 后,用KEK 解密得到量子加密密鑰CEK,并使用CEK 將車輛數(shù)據(jù)密文(CData)解密生成車輛明文數(shù)據(jù)(MData)發(fā)送給訪問者。TSP以有線方式連接到互聯(lián)網(wǎng),為車輛提供各種網(wǎng)絡(luò)接入服務(wù)。
QSS存儲所有注冊T-BOX和TSP平臺的信息,從而能夠?qū)-BOX 和TSP 的身份合法性進行認證。QSS 還集成了量子密鑰分發(fā)系統(tǒng)(Quantum Key Distribution,QKM)和電子密碼機(Electronic Code Machine,ECM)。ECM 從QKM 獲取量子隨機數(shù),生成PFK 和KEK。QSS負責(zé)將KEK分發(fā)到T-BOX和TSP。
訪問者意圖讀取車輛隱私數(shù)據(jù),并發(fā)送數(shù)據(jù)請求到TSP。車輛所有者接收TSP 轉(zhuǎn)發(fā)的車輛數(shù)據(jù)讀取請求,完成車輛隱私數(shù)據(jù)讀取的授權(quán)。
本文方案包括注冊階段、身份認證和密鑰協(xié)商階段、數(shù)據(jù)訪問控制階段,相關(guān)協(xié)議參數(shù)定義如表1所示。

表1 協(xié)議參數(shù)及其定義
注冊階段由QSS、T-BOX、TSP 在可信環(huán)境下進行。QSS 負責(zé)管理所有注冊體的身份信息。T-BOX 在交付前,由TSP 后臺將T-BOX 的數(shù)據(jù)(SN、ICCID)錄入數(shù)據(jù)庫并在平臺上完成T-BOX的注冊。注冊階段需要TSP 和T-BOX 在QSS 處注冊。本文方案中的T-BOX、TSP 均安裝了SMC。整車生產(chǎn)線上使用量子密鑰預(yù)充注設(shè)備對T-BOX的安全芯片進行密鑰充注;TSP后臺的SMC 預(yù)充注量子密鑰。QSS 中記錄了所有預(yù)充注量子密鑰信息。TSP需要提前在QSS進行注冊,注冊流程如下:
a.TSP 選取唯一的TID,計算h(TID)并將結(jié)果組包消息mR1={h(TID)}發(fā)送到QSS。
b.QSS收到消息mR1后,首先,從ECM中隨機提取預(yù)充注量子密鑰PFKT用于生成TSP 的注冊信息。然后,驗證h(TID)是否已經(jīng)注冊,若沒有注冊,計算NID=h(h(TID)||PFKT),并記錄NID。組包消息mR2={NID⊕PFKT},發(fā)送到TSP。
c.TSP 收到消息mR2后,從SMC 中提取預(yù)充注量子密鑰,計算NID=(NID⊕PFKT)⊕,最后TSP存儲注冊信息。
同理,如果車輛終端意圖加入車聯(lián)網(wǎng)使用某些服務(wù)提供商提供的某些服務(wù),需要提前向QSS 注冊,執(zhí)行以下步驟:
a.T-BOX 提取內(nèi)存中的SN、ICCID,并計算h(SN||ICCID),然后組包消息mR4={h(SN||ICCID)},發(fā)送到QSS。
b.QSS 收到消息mR4后,首先從ECM 中提取PFKV,然后檢索h(SN||ICCID)是否已經(jīng)注冊,若沒有注冊,生成新的用戶信息VID=h(h(SN||ICCID)||PFKV),將VID記錄到注冊表中,最后,組包消息mR5={VID⊕PFKV},發(fā)送到TBOX。
c.T-BOX 收到消息mR5后,從SMC 提取出PFKV,計算VID=(VID⊕PFKV)⊕。最后,T-BOX 存儲注冊信息。
如圖2所示,身份認證和密鑰協(xié)商流程為:

圖2 身份認證和密鑰協(xié)商流程
a.T-BOX 向QSS 發(fā)起身份認證,計算Qi=h(PFKV⊕VID),生成時間戳tSi,并組包消息mA1發(fā)送到QSS:
b.QSS 接收到mA1后,生成時間戳tRi。定義超時時間Δt,通過計算tRi-tSi<Δt檢驗消息的有效性;通過計算對比h(|)=h(Qi||tSi)校驗消息的完整性,若消息不匹配,則退出會話。然后,計算T-BOX 的身份信息VID*=Qi⊕h(PFKV)并驗證其合法性。隨機選擇新的預(yù)充注密鑰PFKVi,計算加密后的會話密鑰KKEKVi=EPFKVi(KEKi)⊕VID*。接著,計算哈希值Ri=h(KKEKVi||PFKVi||tSi),其中tSi為當(dāng)前發(fā)送消息的時間戳。最后,組包消息mA2到T-BOX:
c.T-BOX 收到mA2的同時產(chǎn)生時間戳tRi,通過計算tRi-tSi<Δt檢驗消息時效性。然后,通過校驗h(||PFKVi||tSi)=Ri檢查完整性,其中為從mA2中解析或計算獲得的加密后的會話密鑰。最后,通過SM4 解密算法計算QSS 分發(fā)的會話密鑰=DPFKVi(KKEKVi⊕VID) 。計 算Wi=h(SN||ICCID)⊕后,組包消息mA3發(fā)送到QSS:
d.QSS提取mA3的消息內(nèi)容,并通過計算h(||KEKi)=h(Wi||)檢驗消息的完整性,其中為從mA3中解析或計算獲得的哈希結(jié)果。若消息完整,則計算Si=h(PFKTi)⊕NID用于驗證TSP 的身份,其中PFKTi為從QSS 本地存儲的預(yù)充注量子密鑰隨機取出的密鑰。計算KKEKTi=EPFKTi(KEKi)⊕NID進行量子保護密鑰的分發(fā),并組包消息mA4發(fā)送到TSP:
e.TSP 提取消息mA4的內(nèi)容。首先,TSP 驗證等式Si⊕h(PFKTi)=NID是否成立,若成立,則表明QSS是受信任的平臺。然后,通過解密計算得到=DPFKTi(KKEKTi⊕VID) 并存儲。接著,TSP 計算h(SN||ICCID)*=⊕,并從注冊信息中提取T-BOX的序列號和集成電路卡標(biāo)識SN*、ICCID*驗證T-BOX 的身份信息,h(SN||ICCID)=h(SN||ICCID)*,若驗證通過,計算Vi=h(||SN*||ICCID*||tSi),并組包消息mA5發(fā)送到TBOX:
f.T-BOX 收到mA5后,通過計算tRi-tSi<Δt驗證消息的時效性。然后,計算=h(||SN||ICCID||tSi)并驗證等式=Vi,若等式成立,則T-BOX、QSS、TSP 間完成了身份認證。
如果訪問者意圖獲取車輛信息,需要生成請求信息VInf,等待車輛所有者授權(quán),只有獲得授權(quán)后,T-BOX才會將量子加密密鑰的加密結(jié)果KCEKi發(fā)送到TSP,TSP解密后最終得到數(shù)據(jù)明文MData,數(shù)據(jù)訪問控制流程如圖3所示:

圖3 數(shù)據(jù)訪問控制流程
a.T-BOX 向QRNG 獲取16 B(本方案中的CEK 長度為16 B)的量子隨機數(shù)QR作為量子加密密鑰CEKi,CEKi=Str16(QR),用CEKi對車輛數(shù)據(jù)進行加密,CData=ECEKi(MData⊕CTRi)。CTRi為加密會話的計數(shù)器,防止密鑰與其加密密鑰泄露時攻擊者偽造數(shù)據(jù)。然后,通過T-BOX 與QSS 協(xié)商的量子會話密鑰密鑰KEKi加密量子加密密鑰CEKi,KCEKi=EKEKi(CEKi)⊕CTRi。KCEKi為加密后的密鑰。最后,生成消息mk1,并發(fā)送到TSP:
b.TSP 接收T-BOX 發(fā)送的mk1,提取密文數(shù)據(jù)CData,并進行存儲。
c.T-BOX 內(nèi)部的數(shù)據(jù)訪問處理模塊(Data Request Handler,DRH)根據(jù)訪問者的,生成訪問請求者的信息VInf。T-BOX將消息組包發(fā)送mk2到車輛所有者:
d.車輛所有者根據(jù)T-BOX 發(fā)送的VInf,對訪問者的請求進行授權(quán),提供請求通過信息(Approval,APR)。同時,車輛所有者設(shè)定本次授權(quán)的有效時長TSi,計算Yi=h(APR||TSi||tUi),其中tUi為車輛所有者進行授權(quán)操作的時間戳。消息組包mk3發(fā)送并到T-BOX:
e.T-BOX 接收到車輛所有者對數(shù)據(jù)讀取請求的授權(quán)后,判斷授權(quán)操作是否超時TSj-tUi≤Δt與h(APR||TSi||tUi)=Yi是否成立,其中TSj為T-BOX 接收到消息mk4的時間戳。如滿足,檢查車輛所有者是否授權(quán)訪問者的訪問請求,若未授權(quán)則退出當(dāng)前會話。然后,計算用戶授權(quán)的失效時間TSij=TSi*+TSj,生成摘要Zi=h(KCEKi||CTRi||TSij)。最后,組包消息mK4,發(fā)送消息TSP:
f.TSP 收到來自T-BOX 的mK4后,先計算=h(KCEKi||CTRi||TSij),驗證條件=Zi是否成立,若不成立,說明消息內(nèi)容不準(zhǔn)確,結(jié)束會話,驗證通過后,TSP 計算出量子加密密鑰CEKi=DKEKi(KCEKi⊕CTRi)。最后,通過計算MData=DCEKi(CData⊕CTRi)得到解密后的車輛數(shù)據(jù)明文MData,通過安全通信通道發(fā)送給訪問者。
本文使用真實或隨機(Real Or Random,ROR)模型進行形式化分析,驗證所提出的方案中會話密鑰的安全性。基于ROR模型的會話密鑰的安全性證明已經(jīng)用于多個研究者提出的認證協(xié)議[13-15]。同時,分析本文方案可以抵御的典型的攻擊。
假設(shè)本文方案中身份認證和密鑰協(xié)商協(xié)議有Vi(T-BOX)、QSS、TSP 3 種類型的實體,這些實體包含了多個實例并能夠同時進行身份認證。每一個實例都能視為一個獨立的預(yù)言機。預(yù)言機的狀態(tài)有3種:接受(Accept),預(yù)言機接收到正確的信息;拒絕(Reject),預(yù)言機接收到錯誤信息;空(⊥),預(yù)言機輸出為空。設(shè)為車輛i的第a個實例,TSPb、QSSc分別為TSP 的第b個實例和QSS 的第c個實例。狀態(tài)變?yōu)榻邮芎螅蚑SPb之間協(xié)商獲得相同的會話密鑰。但是,車輛所有者和訪問者對會話密鑰的安全不產(chǎn)生影響。同時,他們不參與加密操作,也不存儲任何有效信息,故不考慮車輛所有者和訪問者。
定義攻擊者A 可以執(zhí)行以下查詢來分析得到會話密鑰:
a.Execute(Via,TSPb,QSSc):此查詢?yōu)楦`聽模式。攻擊者A通過執(zhí)行此查詢能夠獲得、TSPb、QSSc間的所有信息{mA1,mA2,mA3,mA4,mA5}。
b.Send(,TSPb):此查詢?yōu)橹鲃庸簟H绻粽逜意圖攔截并修改Via發(fā)出的消息,A需要執(zhí)行此查詢。
c.Reveal():當(dāng)攻擊者A 執(zhí)行此查詢時,會將會話密鑰CEK發(fā)送給A。
d.Test():此查詢模擬會話密鑰的語義安全性。在游戲開始前,將硬幣翻轉(zhuǎn),并且只有A 了解硬幣的值d,這個值決定了此預(yù)言機的輸出。如果A 執(zhí)行此查詢并建立了新的會話密鑰:當(dāng)d=1 時,Test 返回正確的會話密鑰;當(dāng)d=0時,Test輸出隨機值,否則輸出為空(⊥)。
e.Corrupt(,TSPb):通過執(zhí)行該查詢,攻擊者A 可以獲得存儲在注冊的參與者實例、TSPb的SMC 中的所有秘密參數(shù)。
定理:設(shè)A 是針對本方案在多項式時間t內(nèi)運行的攻擊者,若A不能以可忽略的優(yōu)勢AdvA(t)成功攻擊本方案,那么提出的方案是安全的。設(shè)qs、qe、qh和qh1分別表示發(fā)送查詢、執(zhí)行查詢、h查詢和h1查詢的數(shù)量,|H|、|H1|分別表示哈希值的范圍空間,A在破解會話密鑰安全性方面的優(yōu)勢可以估計為:
式中,L為密鑰長度;Lc為計數(shù)器的最大長度。
通過5個連續(xù)的博弈(Gm0~Gm4)來證明方案的安全性。用來表示在博弈Gmi中,A 猜測了d′=d。定義攻擊者A 在博弈Gmi中的獲勝優(yōu)勢。
Gm0:A在ROR模型中對本文方案執(zhí)行的實際攻擊對應(yīng)于游戲Gm0。在這個游戲中,硬幣d在開始時被選擇。因此:
Gm1:Gm1 對應(yīng)竊聽攻擊。A 通過Execute 查詢來獲取身份認證和密鑰協(xié)商的過程中的mA1={Qi,h(Qi||tSi),tSi}、mA2={KKEKVi,Ri,tSi}、mA3={Wi,h(Wi||KEKi*)}、mA4={KKEKTi,Si,Wi,tSi}和mA5={Vi}。此詢問結(jié)束后,A執(zhí)行Reveal和Test查詢,驗證獲取的CEK是真實密鑰或隨機數(shù)。然而,會話密鑰CEK 通過h(QR||KEK||VID)得到,A無法獲得生成會話密鑰CEK 的參數(shù)。因此,通過竊聽消息,A 不能增加其在Gm1 中獲勝的概率。所以,Gm0 與Gm1 是不可區(qū)分的。得到以下結(jié)果:
Gm2:Gm2 和Gm1 的區(qū)別是增加了Send 和Hash 預(yù)言器的模擬。Gm2模擬了一種主動攻擊,A試圖欺騙參與者接受其編造的消息。A 反復(fù)查詢哈希預(yù)言機以查找沖突。根據(jù)生日悖論可得:
事件E1:認證協(xié)議中用到的2 個散列函數(shù)h、h1 發(fā)生碰撞的最大概率為:。
事件E2:認證協(xié)議中隨機數(shù)QR、PFKi是隨機均勻分布的,因此QR和PFKi碰撞的概率為。
如果事件E1 和事件E2 都發(fā)生,Gm2和Gm1則是不可區(qū)分的。因此可得:
Gm3:Gm3 模擬了Gm2 中的所有預(yù)言。若A 不通過隨機預(yù)言查詢可以偽造身份認證流程中的關(guān)鍵參數(shù)(Qi,Ri,Wi,Si,Vi),則方案終止運行。但是這種情況只會出現(xiàn)在Send查詢中,故A無法區(qū)分Gm3和Gm2,因此:
Gm4:Gm4模擬Gm3中所有預(yù)言。攻擊者A意圖獲取會話密鑰CEK=h(QR||KEKi||VID),A 需要執(zhí)行Corrupt()查詢獲得SMC 中PFK、VID、NID 和KCEK。攻擊者A 可以通過執(zhí)行以下2 個獨立的事件來獲取會話密鑰CEK:
a.通過執(zhí)行qs次Send詢問獲得(QR,KEKi),對應(yīng)的可能性為qs/22L。
b.對稱加密后的會話密鑰KCEKi=EKEKi(CEKi)⊕CTRi獲得會話密鑰。攻擊者A 通過執(zhí)行qs次Send 詢問得到(CTRi,KEKi),對應(yīng)的可能性為。
因此,可得:
分析本文所提出方案對典型攻擊的抵御情況:
a.根權(quán)限內(nèi)部攻擊:假設(shè)攻擊者A可以獲得開發(fā)根(root)權(quán)限,從而通過身份認證與密鑰協(xié)商。A 意圖讀取車輛數(shù)據(jù),需要得到加密后的會話密鑰KCEK。然而,KCEK只有在車輛所有者本人授權(quán)讀取請求后才會發(fā)送到云端,攻擊者無法在未經(jīng)授權(quán)的情況下獲得車輛數(shù)據(jù)明文信息。所以,本文方案可以抵抗根權(quán)限內(nèi)部攻擊。
b.重放攻擊:假設(shè)攻擊者A 可以監(jiān)視并獲取TBOX、QSS、TSP 之間的通信,并在一段時間后重放該條消息。但是在密鑰協(xié)商和數(shù)據(jù)加密消息中包含時間戳,并且在數(shù)據(jù)加密后加密會話計數(shù)器的計數(shù)值會更新,A無法獲得有效的信息。假設(shè)攻擊者A 記錄所有的身份認證請求消息mA1,并將其重播到密鑰管理服務(wù)器QSS,以模擬T-BOX 獲取保護密鑰。然而,VID 受到單向哈希函數(shù)和對稱量子密鑰加密保護,A 不能通過mA1獲得T-BOX 的假名,無法通過身份認證。因此本文方案能夠抵抗重放攻擊。
c.前向安全:本文方案中內(nèi)容加密密鑰CEK 由加密會話密鑰 KEK 進行加密后傳輸,即KCEKi=EKEKi(CEKi)⊕CTRi。在車輛所有者授權(quán)的有效期限內(nèi),每次會話的CTRi都會進行更新。因此,對于車輛數(shù)據(jù)加密,每一次會話密鑰是無關(guān)聯(lián)的,本文方案具有前向安全。
d.模擬攻擊:在本方案中,認為TSP、所有者、QSS三者之間的通信通道是安全可信的。因此,本文方案面臨QSS模擬攻擊和T-BOX的模擬攻擊。T-BOX模擬攻擊中,攻擊者A 劫持T-BOX 發(fā)送的消息mA1={Qi,h(Qi||tSi),tSi}、mA3={Wi,h(Wi||KEKi*)}。同時,A 試圖從劫持的消息中獲得有效參數(shù)來生成合法的請求消息mA1和mA3來欺騙與QSS 的身份驗證。但是,消息mA1和mA3中包含參數(shù)VID、PFK、KEK,A無法獲得,因此,A不能生成有效的請求消息mA1和mA3。同樣,QSS 的消息mA2中包含了參數(shù)PFKi、VID、NID,攻擊者也無法獲取這些參數(shù)。因此本文方案可以抵抗模擬攻擊。
e.中間人攻擊:本方案中量子會話密鑰CEK 是通過KEK 加密進行傳輸?shù)摹R虼耍粽逜 意圖獲取會話密鑰CEK,需要通過QSS 與T-BOX 之間的身份認證。而PFK 存儲在SMC 中,A 無法獲取,故A 無法通過身份認證。因此本文方案可以抵御中間人攻擊。
本文將所提出的方案與現(xiàn)有的相關(guān)方案在認證和密鑰協(xié)商階段的計算和通信開銷進行對比。
對本文方案的身份認證部分的通信開銷和計算開銷進行測試。由于車輛所有者授權(quán)操作只在有訪問請求時才會進行,所以,車輛所有者的授權(quán)時間與訪問者的訪問時間不進行計算。使用一臺計算機作為QSS 來統(tǒng)計計算開銷。該主機具有AMD Ryzen 5 5600H with Radeon Graphics 處理器、16 GB 內(nèi)存和Ubuntu 18.04 操作系統(tǒng)。用T-BOX 統(tǒng)計車輛端的計算開銷,實物圖如圖4 所示,該T-BOX 包括移遠AG35-GEN 通信模組、KF32MCU以及量子安全模塊等硬件資源。

圖4 T-BOX實物圖
通過對每種計算開銷進行統(tǒng)計,以10 000次計算為一組,計算10 組取其平均值。Th、Ts,m、Tm,e、Tbp、TW.m、TM.m、Te/d、Tmtp分別為單向Hash函數(shù)、標(biāo)量乘法運算、模指數(shù)運算、雙線性對運算、魏爾斯特拉斯(Weierstrass)橢圓曲線點乘操作、蒙哥馬利(Montgomery)橢圓曲線點乘操作、對稱密鑰加/解密操作、加密Hash運算的時間消耗,異或(exclusive OR,XOR)操作忽略不計。具體時間開銷如表2所示。

表2 不同操作的開銷 ms
在本文提出的方案中,從開始登錄到完成認證,車輛端需要進行1 次對稱加密計算和6 次單向Hash 計算,車端計算開銷為Te/d+6Th≈0.306 ms。服務(wù)端需要進行3 次對稱加密和14 次單向Hash 計算,服務(wù)端計算開銷為3Te/d+14Th≈0.089 ms。因此,方案計算共消耗0.395 ms。表3 列出了各方案的計算開銷,其中使用的哈希算法為SHA-256,對稱加密密算法為SM4。

表3 各方案計算開銷 ms
本文方案采用預(yù)充注量子密鑰和對稱加密的方法進行身份認證,因此認證過程中的計算開銷更小,可以更快完成身份認證。
假設(shè)哈希函數(shù)的輸出大小為32 B、時間戳大小為4 B、對稱加密輸出大小為16 B。本文方案的通信開銷總數(shù)為300 B+120 B=420 B。同理,文獻[16]、文獻[14]、文獻[17]、文獻[18]方案的通信開銷分別為216 B、2 296 B、668 B、544 B。顯然,文獻[14]、文獻[17]、文獻[18]方案要比文獻[16]方案通信開銷高。這是因為其身份認證的消息中包含了較多密鑰相關(guān)的MAC 值。然而,本文方案中采用預(yù)充注密鑰進行對稱加密,認證消息中減少了大量的密鑰相關(guān)的信息,故具有更小的通信開銷。
本文提出了一種基于車端量子密鑰的車聯(lián)網(wǎng)數(shù)據(jù)訪問控制方案,設(shè)計并詳細分析了基于預(yù)充注量子密鑰的T-BOX、量子密服平臺(QSS)、車輛信息服務(wù)云平臺(TSP)之間的身份認證和密鑰協(xié)商流程,以及基于量子隨機數(shù)發(fā)生器的車輛數(shù)據(jù)的訪問控制流程。對所提出的方案進行形式化安全分析并論證了其可以抵御的典型攻擊,通過試驗對所提出的方案進行性能分析,并與其他相關(guān)方案進行對比,結(jié)果表明,本文方案具有更高的安全性和更好的性能。