彭維平,熊長(zhǎng)可,賀軍義,宋 成
(河南理工大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,河南 焦作 454003)
車輛自組織網(wǎng)絡(luò)[1](Vehicular Ad-hoc Network,VANET)作為智能交通系統(tǒng)的一項(xiàng)核心技術(shù),在道路交通緊急事件信息實(shí)時(shí)傳播、輔助安全駕駛、車輛間信息交互和共享等領(lǐng)域發(fā)揮了重要作用.車輛間遵循專用短程通信協(xié)議[2](Dedicated Short-Range Communications,DSRC),但其位置、速度、方向及道路狀況等信息的傳輸采用廣播方式[3,4],使得用戶間傳輸?shù)碾[私信息極易被惡意者截獲導(dǎo)致信息泄露,并且由于車輛的高速移動(dòng)性和基礎(chǔ)設(shè)施的不完善,服務(wù)連接的可靠性較弱,也極易遭受重放及欺騙等攻擊.針對(duì)車聯(lián)網(wǎng)隱私信息保護(hù)問(wèn)題,文獻(xiàn)[5]介紹了基于加密的隱私保護(hù)技術(shù).Zhang[6]等人提出匿名認(rèn)證的方法,但該方案在保護(hù)信息安全的同時(shí)使得消息傳輸時(shí)/空間開(kāi)銷增加,實(shí)時(shí)性差,且過(guò)于依賴車輛的防篡改的硬件裝置.為降低時(shí)/空間開(kāi)銷、提高消息傳輸效率,Harn[7]提出批量認(rèn)證的思想,但僅能實(shí)現(xiàn)同一用戶的批量消息認(rèn)證.文獻(xiàn)[8]構(gòu)建了一個(gè)基于用戶身份隱私的VANET安全系統(tǒng),實(shí)現(xiàn)了對(duì)多車輛的多條消息批量認(rèn)證,但出現(xiàn)安全事故時(shí)TA無(wú)法獲取惡意者的真實(shí)身份,不能實(shí)現(xiàn)抗抵賴.為實(shí)現(xiàn)不依賴于車輛防篡改裝置等硬件設(shè)備的多種類型的批量消息驗(yàn)證,SPECS[9]等提出了一個(gè)基于軟件的批量消息認(rèn)證方案,該方案具有較低的消息傳輸時(shí)/空間開(kāi)銷,但b-SPECS+[10]證明SPECS方案不能抗偽裝攻擊.以上方案中TA通常為汽車制造商或者運(yùn)輸管理部門,認(rèn)證過(guò)程由TA完全掌控,存在權(quán)威欺騙.因此,文獻(xiàn)[11]提出了一個(gè)無(wú)可信中心的認(rèn)證方案,但該方案認(rèn)證步驟較為繁瑣,時(shí)/空間開(kāi)銷較大.
邊緣計(jì)算作為一種遠(yuǎn)離網(wǎng)絡(luò)中心處理數(shù)據(jù)的新型計(jì)算模型[12],采用靈活的任務(wù)卸載和資源共享機(jī)制,在邊緣終端節(jié)點(diǎn)上即可實(shí)現(xiàn)敏感信息的處理,數(shù)據(jù)無(wú)需遠(yuǎn)傳到云中心,為解決車聯(lián)網(wǎng)中實(shí)時(shí)性、隱私性和高移動(dòng)性的需求提供了一種有效途徑[13,14].但由于計(jì)算模式不同,傳統(tǒng)的基于云環(huán)境下的VANET模式無(wú)法直接移植到邊緣計(jì)算場(chǎng)景中,需結(jié)合邊緣計(jì)算的特性設(shè)計(jì)新的方案.另外,在車聯(lián)網(wǎng)應(yīng)用場(chǎng)景下,RSU部署區(qū)可能存在多個(gè)RSU服務(wù)范圍交叉重疊[15],當(dāng)車輛移動(dòng)速度較快,對(duì)于視頻等長(zhǎng)報(bào)文需要經(jīng)過(guò)多個(gè)RSU才能完成完整的服務(wù),因而還需要考慮RSU的安全.
基于車聯(lián)網(wǎng)隱私保護(hù)中存在的問(wèn)題,本文提出一種面向邊緣計(jì)算的車聯(lián)網(wǎng)身份隱私保護(hù)認(rèn)證方案.該方案首先選擇一個(gè)MEC服務(wù)器作為系統(tǒng)的TA;然后,運(yùn)用橢圓曲線上的雙線性對(duì)性質(zhì)對(duì)OBU及RSU等終端進(jìn)行匿名化、簽名等處理,針對(duì)不同的消息認(rèn)證類型,不僅實(shí)現(xiàn)單消息認(rèn)證還實(shí)現(xiàn)了批量消息認(rèn)證;最后,當(dāng)出現(xiàn)安全事故需TA對(duì)OBU及RSU去匿名時(shí),根據(jù)傳遞消息的時(shí)間戳定位到TA的真實(shí)身份MECi服務(wù)器,還原出惡意者的真實(shí)身份,且該惡意者無(wú)法抵賴.
本方案相關(guān)符號(hào)的代表含義如表1所示.
表1 符號(hào)說(shuō)明Table 1 The explanation of symbols
設(shè)G1為加法循環(huán)群,G2為乘法循環(huán)群,G1和G2的階均為大素?cái)?shù)q,雙線性對(duì)G1×G1→G2有以下性質(zhì):
對(duì)稱性:?P,Q∈G1,e(P,Q)=e(Q,P).
非退化性:?P,Q∈G1,滿足e(P,Q)≠1.
可計(jì)算性:?P,Q∈G1,存在一個(gè)有效的算法在多項(xiàng)式時(shí)間內(nèi)計(jì)算出e(P,Q).
為滿足邊緣計(jì)算場(chǎng)景下車聯(lián)網(wǎng)信息服務(wù)的實(shí)時(shí)性和可靠性,被服務(wù)車輛需在相鄰RSU服務(wù)覆蓋范圍邊緣完成高效切換,通常在部署RSU時(shí)采取邊緣交叉覆蓋的方式,構(gòu)建系統(tǒng)模型如圖1所示.
圖1 VANET系統(tǒng)模型Fig.1 System model of VANET
該模型的主要構(gòu)成部分及其功能如下所示:
TA:主要實(shí)現(xiàn)系統(tǒng)安全參數(shù)的生成和發(fā)布,OBU和RSU的注冊(cè)、管理、追溯等.
OBU:按照專用短程通信協(xié)議與RSU和其它OBU通信,實(shí)現(xiàn)節(jié)點(diǎn)密鑰存儲(chǔ)、消息加/解密等.
RSU:收集從OBU及其它RSU發(fā)送的信息,為OBU提供服務(wù),并對(duì)消息加/解密等.
在車聯(lián)網(wǎng)系統(tǒng)中,為保證被服務(wù)車輛在相鄰兩個(gè)RSU信號(hào)服務(wù)覆蓋范圍邊緣的高效切換,部署RSU時(shí)會(huì)采取邊緣交叉覆蓋的方式.
設(shè)RSU0,RSU1,RSU2的信號(hào)強(qiáng)度及其覆蓋范圍如圖2所示.從A點(diǎn)到B點(diǎn)RSU0的信號(hào)強(qiáng)度高于RSU1,從B點(diǎn)到C點(diǎn)RSU1的信號(hào)強(qiáng)度高于RSU0.從A點(diǎn)到C點(diǎn)是RSU0和RSU1的信號(hào)交叉覆蓋的范圍,理論上在此區(qū)間OBU會(huì)選擇當(dāng)前信號(hào)最強(qiáng)和計(jì)算能力最高的RSU服務(wù).
圖2 RSU0,RSU1,RSU2的信號(hào)強(qiáng)度和覆蓋范圍Fig.2 Signal strength and service coverage of RSU0,RSU1,RSU2
假設(shè)在某一時(shí)刻T=t0,MEC、RSU和OBU的服務(wù)覆蓋范圍如圖3所示.其中,RSU0,RSU1,…,RSUi在MEC0的服務(wù)覆蓋范圍內(nèi),OBU0,OBU1,OBU2,…,OBUi在RSU0的信號(hào)覆蓋范圍內(nèi),OBU3,OBU4,OBU5,…,OBUj在RSU1的信號(hào)覆蓋范圍內(nèi),OBU6,OBU7,OBU8,…,OBUk在RSU2的信號(hào)覆蓋范圍內(nèi),且OBU3,OBU4在RSU0和RSU1的信號(hào)覆蓋交叉范圍內(nèi), 假設(shè)OBU0,OBU3,OBU5,OBU7向右行駛,OBU1,OBU4,OBU6,OBU8向左行駛,OBU2停止不動(dòng).
圖3 T=t0時(shí)刻RSU0,RSU1,RSU2信號(hào)覆蓋范圍內(nèi)的OBUFig.3 OBU of RSU0,RSU1,RSU2signal coverage when T=t0
經(jīng)過(guò)Δt后,OBU5移動(dòng)到RSU2的信號(hào)覆蓋范圍內(nèi),OBU6移動(dòng)到RSU1的信號(hào)覆蓋范圍內(nèi),其他的OBU仍在T=t0時(shí)刻相應(yīng)RSU的信號(hào)覆蓋范圍內(nèi),如圖4所示.
圖4 T=t0+Δt時(shí)刻RSU0,RSU1,RSU2信號(hào)覆蓋范圍內(nèi)的OBUFig.4 OBU of RSU0,RSU1,RSU2signal coverage when T=t0+Δt
本方案主要分為5個(gè)部分:
1)從n個(gè)MEC服務(wù)器中選擇一個(gè)MECi服務(wù)器作為本周期系統(tǒng)的TA;
2) TA分配系統(tǒng)參數(shù),且對(duì)OBU及RSU做匿名處理;
3)發(fā)送消息者根據(jù)自身私鑰對(duì)消息簽名;
4)單消息簽名驗(yàn)證,若驗(yàn)證通過(guò)則接收此消息,否則丟棄此消息;批量消息驗(yàn)證,若驗(yàn)證通過(guò)則接受此批次所有消息,否則丟棄所有消息;
5)當(dāng)出現(xiàn)安全事故時(shí),由TA的真實(shí)身份MECi服務(wù)器對(duì)OBU及RSU去匿名,追蹤出惡意者.
算法 1.MECi服務(wù)器選擇為TA
//k個(gè)MEC服務(wù)器分別選擇自身公/私鑰
1. if(k>0 &&k<=n)
2. for(m=1;m<=k;m++)
4.Pum=xmP; //MECm的公鑰
5. end for;
6.R0={x1P,x2P,…,xkP}; //環(huán)公鑰
7. 選擇i;
8. if(i>0 &&i<=k)
12. end if;
14. if(v>0 &&v<=k)
15. for(s=0;s<=v;s++)
16. if(s!=i)
18. end if;
19. end for;
//xs為MECs服務(wù)器的私鑰
21.ξi=d-∑s≠iξs;
22.λ=t-ξixi;
24.k-1個(gè)服務(wù)器判斷(1)是否成立;
(1)
27. end if;
28. end if;
29. end if;
算法 2.系統(tǒng)初始化和消息簽名
輸入:TA生成的階為q的加法循環(huán)群G1和乘法循環(huán)群G2,且符合雙線性對(duì)G1×G1→G2,G1的兩個(gè)生成元P和Q.OBU的總數(shù)量a,RSU的總數(shù)量b.
輸出:OBUi的簽名{OIDi,Si,Mi,Ti}.
2.Ppub1=s1P;
3.Ppub2=s2P; //Ppub1和Ppub2是系統(tǒng)公鑰
4. TA發(fā)送系統(tǒng)參數(shù)(G1,G2,q,P,Q,Ppub1,Ppub2)給每一個(gè)OBU 和RSU
//為實(shí)現(xiàn)OBU和RSU的身份隱私保護(hù),本文通過(guò)TA為每一個(gè)設(shè)備進(jìn)行匿名處理
5. for(c=1;c<=a;c++)
//OBUc向TA提供自身的身份信息,且TA審核OBUc提供的身份信息,為其生成唯一的用戶名RIDc,同時(shí)保存該OBUc的用戶名到用戶信息列表L1
6.OIDc=RIDc⊕h1(s1Ppub2); //OBUc的匿名
7. end for;
8. for (d=1;d<=b;d++)
//RSUd向TA提供自身的身份信息, TA審核該身份信息,生成唯一用戶名SIDd,且保存該用戶名到用戶信息列表L2
12. end for;
//OBUi為消息發(fā)送者,(i<0≤a)
13.SKi=s2h1(OIDi‖Ti)Q;
//SKi是OBUi的私鑰,Ti系統(tǒng)當(dāng)前時(shí)刻
14.Si=σdSKi+h2(Mi)Q;
15.OBUi向RSUd發(fā)送Mi的簽名{OIDi,Si,Mi,Ti};
16. return{OIDi,Si,Mi,Ti};
17. end;
根據(jù)單次待驗(yàn)證消息的數(shù)量,消息驗(yàn)證可分為單消息驗(yàn)證和批量消息驗(yàn)證.根據(jù)批量待驗(yàn)證消息的類別[16],又可分為對(duì)同一車輛的不同消息認(rèn)證、對(duì)不同車輛的同一消息認(rèn)證和對(duì)不同車輛的不同消息認(rèn)證等三種類型.
本文提出的驗(yàn)證方案實(shí)現(xiàn)了單消息驗(yàn)證和批量消息驗(yàn)證,并且上述三種類型的批量消息驗(yàn)證在本文中均適用.
4.3.1 單消息簽名驗(yàn)證
接收者RSUd收到單條消息,則執(zhí)行單消息驗(yàn)證.單消息認(rèn)證的步驟如算法3所示.
算法 3.單消息簽名驗(yàn)證
輸入:OBUi對(duì)Mi的簽名{OIDi,Si,Mi,Ti},及簽名的接收者RSUd的匿名UIDd.
輸出:RSUd接收或丟棄此消息.
1. if(ΔT<=Tk-Ti)
//Tk為接收到消息的時(shí)刻,ΔT為允許消息時(shí)延
(2)
3.RSUd接收此消息;
4. else
5.RSUd丟棄此消息;
6. end if;
4.3.2 批量消息簽名驗(yàn)證
若RSUd同時(shí)收到多條消息,則執(zhí)行批量驗(yàn)證.批量驗(yàn)證的步驟如算法4所示.
算法 4.批量消息簽名驗(yàn)證
輸入:要驗(yàn)證消息的數(shù)量n,每一個(gè)消息的簽名{OIDi,Si,Mi,Ti},及簽名接收者RSUd的匿名UIDd.
輸出:RSUd接收或丟棄所有消息.
1. for(i=1;i<=n;i++)
2. if(ΔT<=Tk-Ti)
3. 選擇隨機(jī)數(shù)Vi;
//Vi∈[1-2x],x是一個(gè)很小的負(fù)數(shù),Vi的計(jì)算開(kāi)銷可忽略不計(jì)
4. end if;
5. end for;
(3)
8. if(A=B)
9.RSUd接收此批量消息;
10. else
11.RSUd丟棄此批量消息;
12. end;
當(dāng)出現(xiàn)安全事故需要追究責(zé)任時(shí),為了找出真正的惡意者,TA需還原出OBU和RSU的真實(shí)身份,撤銷其在車聯(lián)網(wǎng)中的匿名.
4.4.1 TA去匿名
(4)
(5)
(6)
4.4.2 OBU去匿名
Step 1.TA根據(jù)系統(tǒng)私鑰s1執(zhí)行運(yùn)算:
RIDi′=OIDi⊕h1(s1Ppub2)
(7)
Step 2.TA通過(guò)RIDi′的取值,查詢用戶信息列表L1即可獲得該用戶的真實(shí)身份信息.OBU的用戶名RIDi具備唯一性,因此惡意者無(wú)法抵賴,可實(shí)現(xiàn)追蹤.
系統(tǒng)私鑰由TA保存,除TA外其他任意者計(jì)算系統(tǒng)私鑰屬于離散對(duì)數(shù)難題.
4.4.3 RSU去匿名
與OBU去匿名同理,RSU去匿名如下所示:
Step 1.TA根據(jù)系統(tǒng)私鑰s2執(zhí)行以下運(yùn)算:
Step 2.TA通過(guò)SIDd′的取值,查詢用戶信息列表L2即可獲得該RSU的真實(shí)身份信息.RSU的用戶名SIDd也具備唯一性,因此可實(shí)現(xiàn)追蹤.
5.1.1 TA身份的正確性分析
本方案TA身份的正確性只需驗(yàn)證式(1)是否成立即可.
等式成立,因此該MECi服務(wù)器即為本周期的TA.
5.1.2 單車輛簽名驗(yàn)證的正確性分析
本方案單車輛認(rèn)證的正確性只需驗(yàn)證式(2)是否成立即可.
e(Si,P)=e(σdSKi+h2(Mi)Q,P)
=e(σds2h1(OIDi‖Ti)Q+h2(Mi)Q,P)
=e(σds2h1(OIDi‖Ti)P+h2(Mi)P,Q)
=e(σdPpub2h1(OIDi‖Ti)+h2(Mi)P,Q)
等式成立,故單車輛驗(yàn)證的正確性成立.
5.1.3 批量簽名驗(yàn)證的正確性分析
本方案批量認(rèn)證的正確性只需驗(yàn)證式(3)是否成立即可.
等式成立,故批量驗(yàn)證的正確性成立,在有且僅有每條消息都有效的情況下,批量驗(yàn)證才通過(guò).
5.1.4 OBU和RSU追溯的正確性
本方案OBU的匿名為OIDi=RIDi⊕h1(s1Ppub2),由TA根據(jù)車輛自身提供的相關(guān)身份證明生成,其中s1是系統(tǒng)私鑰,有且僅有TA擁有,且TA是安全的.因此,OBU追溯的正確性成立.
5.2.1 不可鏈接性
定義1.鏈接游戲
Step 1.挑戰(zhàn)者A根據(jù)密鑰生成算法計(jì)算得到系統(tǒng)的公鑰和私鑰組(Ppub1,s1),(Ppub2,s2)以及系統(tǒng)的公共參數(shù)(G1,G2,q,P,Q,Ppub1,Ppub2);
Step 2.挑戰(zhàn)者A選取兩個(gè)內(nèi)容完全不同但長(zhǎng)度相同的消息m0和m1;
Step 3.系統(tǒng)選擇隨機(jī)數(shù)a∈{0,1},將ma和m1-a分別通過(guò)安全信道秘密發(fā)送給A0和A1,且挑戰(zhàn)者無(wú)從獲取a;
Step 4.A0和A1分別執(zhí)行本文的簽名方案η;
Step 5.若A0和A1輸出的兩個(gè)有效簽名ωa和ω1-a分別與消息ma和m1-a對(duì)應(yīng),則將ωa和ω1-a按照隨機(jī)順序發(fā)送給挑戰(zhàn)者A;否則,返回給挑戰(zhàn)者符號(hào)$,表示無(wú)用消息;
Step 6.挑戰(zhàn)者A假定ωa是來(lái)自于a′,如果a′=a,則表明A贏得此場(chǎng)游戲.
定理1.設(shè)在多項(xiàng)式時(shí)間內(nèi),挑戰(zhàn)者A贏得該游戲的概率可忽略不記,則稱本方案具有不可鏈接性.
如果挑戰(zhàn)者A在執(zhí)行完上述鏈接游戲后得到是符號(hào)$,則表明A獲得的是無(wú)用消息.
綜上所述,本文方案實(shí)現(xiàn)了不可鏈接性.
5.2.2 不可偽造性
不可偽造性指攻擊者在多項(xiàng)式時(shí)間內(nèi)偽造出有效消息簽名的概率可忽略不記.
定義2.隨機(jī)預(yù)言機(jī)模型
隨機(jī)預(yù)言模型[17](Random oracle model,ROEM)有列表Lin和Lout,其中,Lin中包含所有可能的問(wèn)題,Lout中包含Lin問(wèn)題中的所有答案.隨機(jī)預(yù)言機(jī)模型是一種散列函數(shù)H:{0,1}*→{0,1}n,滿足下列性質(zhì):
1)一致性:輸入值與輸出值唯一對(duì)應(yīng);
2)均勻分布性:輸出值在取值空間呈均勻分布,且無(wú)碰撞;
3)可計(jì)算性:在多項(xiàng)式時(shí)間內(nèi)能夠計(jì)算得到輸出值.
定義3.多一偽造性
對(duì)于概率多項(xiàng)式隨機(jī)算法polynomial(k),存在任意整數(shù)l,有l(wèi)=polynomial(k),k是該算法絕對(duì)安全的參數(shù).多一偽造[18]指在一個(gè)簽名方案中,有一個(gè)概率多項(xiàng)式時(shí)間算法在與簽名者進(jìn)行l(wèi)次交換信息后能夠以不可忽略的概率計(jì)算出l+1個(gè)有效的簽名.
定義4.CDH假設(shè)
Diffie-Hellman算法中關(guān)于(Computational Diffie-Hellman,CDH)問(wèn)題的困難性,由有限循環(huán)群上的CDH假設(shè)(Computational Diffie-Hellman Assumption,CDHA)保證[19].即在有限循環(huán)群G上解決離散對(duì)數(shù)問(wèn)題理論上是不可實(shí)現(xiàn)的.
定義5.選擇目標(biāo)的CDH假設(shè)
目標(biāo)預(yù)言機(jī)(Target oracle, TOE):隨機(jī)選擇K∈G,將K作為輸出.
幫助預(yù)言機(jī)(Help oracle, HOE):輸入給定的元素K∈G,計(jì)算Z=aK,將Z作為輸出.
如果攻擊者B在詢問(wèn)qg次目標(biāo)預(yù)言機(jī)和qh次幫助預(yù)言機(jī)后,能以不可忽略的概率輸出j對(duì)元組{(K1,Z2),…,(Kj,Zj)},且滿足Zi=aKi,1≤i≤j,qh 假設(shè)證明,攻擊者B無(wú)從找到一個(gè)多項(xiàng)式時(shí)間算法能夠以不可忽略的概率解決CDH難題. 證明:本文方案具有不可偽造性. 假設(shè)攻擊者B能夠在本文方案中解決選擇目標(biāo)CDH假設(shè)難題,同時(shí)存在另一個(gè)攻擊者C與B有相同的能力.基于以上兩個(gè)預(yù)言機(jī),本文構(gòu)造出散列預(yù)言機(jī)O1和簽名預(yù)言機(jī)O2供攻擊者C查詢,步驟如下所: Step 1.初始化 設(shè)方案的公共參數(shù)為(G1,G2,q,P,Q,Ppub1,Ppub2).Ppub2=aP,(P,aP)是選擇目標(biāo)CDH假設(shè)的一個(gè)攻擊目標(biāo),Ppub1=s1P,攻擊者C擁有系統(tǒng)私鑰s1.C有權(quán)利訪問(wèn)TOE T1和HOE H1.攻擊者B借助HOE查詢散列值,借助TOE查詢簽名. Step 2.查詢散列預(yù)言機(jī)O1 攻擊者B向幫助預(yù)言機(jī)H1查詢列表(OID,S,M)的散列值,同時(shí)攻擊者C在列表Lin中查詢是否存在列表(OID,S,M),如果存在,則將其作為索引放在列表Lout中用以檢索K,且將K返回給B;否則C會(huì)通過(guò)查詢散列預(yù)言機(jī)O1,獲得隨機(jī)參數(shù)K∈G1發(fā)送給B,并將(OID,S,M)存儲(chǔ)在列表Lin中,將K作為(OID,S,M)的散列值存儲(chǔ)在Lout中. Step 3.查詢簽名預(yù)言機(jī)O2 攻擊者B將σ1、OID1、T1作為輸入以謀獲簽名消息,攻擊者C首先將OID1作為簽名O2的輸入,以得到T1=ah1(OID1‖T1)Q;接著,計(jì)算T=σ1T1+h2(M1)Q,將T作為輸出,且發(fā)送給B. 攻擊者B向TOE H1和HOE T1分別完成qr和qs次詢問(wèn)后,如果B能夠準(zhǔn)確輸出l個(gè)有效的簽名(OID1,S1,M1,T1),…,(OIDl,Sl,Ml,Tl),qr 因此,本方案具有不可偽造性,避免了攻擊者偽造認(rèn)證消息內(nèi)容擾亂認(rèn)證秩序的破壞. 5.2.3 前向安全性和后向安全性 5.2.4 抵抗重放攻擊 本方案中整個(gè)車載網(wǎng)系統(tǒng)的時(shí)鐘保持同步,OBU在發(fā)送認(rèn)證消息時(shí)每次都會(huì)產(chǎn)生一個(gè)時(shí)間戳,如果攻擊者重放此消息,則此時(shí)間戳?xí)鄬?duì)遠(yuǎn)離當(dāng)前時(shí)刻,接收者將會(huì)舍棄此條信息,從而達(dá)到抵抗重放攻擊的目的. 與現(xiàn)有典型文獻(xiàn)[20-22]對(duì)比可知,本文方案綜合實(shí)現(xiàn)了不可鏈接性、不可偽造性、保證了前向安全性和后向安全性、能夠抵抗重放攻擊且實(shí)現(xiàn)了OBU和RSU的可追溯性,如表2所示.其中,“√”表示該方案滿足所對(duì)應(yīng)的特性,“×”表示不滿足. 表2 安全性分析Table 2 Security analysis 5.3.1 時(shí)間復(fù)雜度分析 時(shí)間復(fù)雜度主要指方案中加密操作的時(shí)間成本,其他時(shí)間開(kāi)銷忽略不記.設(shè)n代表傳輸消息的數(shù)量,Tpar表示一次雙線性對(duì)運(yùn)算所用的時(shí)間,Tpar-bp表示一次雙線性對(duì)上的點(diǎn)乘運(yùn)算所用的時(shí)間,Tmul表示一次橢圓曲線上點(diǎn)乘運(yùn)算所用的時(shí)間,Tmtp表示一次哈希運(yùn)算所用的時(shí)間,Tmac表示一次計(jì)算消息驗(yàn)證碼運(yùn)算所用的時(shí)間.參照文獻(xiàn)[23],在Intel Core (TM) 2 Duo CPU @ 2.4GHz環(huán)境下,通過(guò)統(tǒng)計(jì)100次消息加密認(rèn)證后得到各類運(yùn)算所需的時(shí)間.其中,Tpar為40.7ms,Tpar-bp為17.1ms,Tmul為5.4ms,Tmtp為6us,Tmac為16.7us.單消息認(rèn)證時(shí)間復(fù)雜度分析和批量消息認(rèn)證時(shí)間復(fù)雜度分析如表3和表4所示. 表3 單消息認(rèn)證時(shí)間復(fù)雜度分析Table 3 Time complexity analysis of single message authentication 表4 批量消息認(rèn)證時(shí)間復(fù)雜度分析Table 4 Time complexity analysis of batch message authentication 由表3可知,本文方案在單消息驗(yàn)證方面相比于文獻(xiàn)[20-22],分別減少了176.1ms、5.4407ms、47ms.同等條件下本文的加密簽名方案使用的時(shí)間最短. 由表4可知,本文的批量消息驗(yàn)證方案在消息數(shù)量n≤4時(shí)優(yōu)于文獻(xiàn)[20],消息數(shù)量為任意多個(gè)時(shí)優(yōu)于文獻(xiàn)[21]、[22],在一定程度上解決了車聯(lián)網(wǎng)中短時(shí)間內(nèi)實(shí)現(xiàn)大量消息認(rèn)證耗時(shí)較長(zhǎng)的瓶頸. 5.3.2 通信復(fù)雜度分析 通信復(fù)雜度指發(fā)送消息的比特?cái)?shù),只包含通信消耗,不包含本地消耗.假設(shè)傳送的原始信息大小為20bytes.通信復(fù)雜度如表5所示,其中,“*”表示方案可根據(jù)簽名恢復(fù)出原消息. 表5 通信復(fù)雜度分析Table 5 Analysis of communication complexity 由表5可知,本文方案在通信復(fù)雜度方面相比于文獻(xiàn)[20-22]分別減少了102 bytes,148 bytes,133 bytes. 車聯(lián)網(wǎng)隱私保護(hù)方案中用戶之間傳遞的消息均具有時(shí)效性,一個(gè)高效的認(rèn)證方案需要有較低的消息丟失率和延遲.平均消息丟失率(Average Message Loss Rate,ALR)和平均消息延遲(Average Message Delay,AMD)是衡量車聯(lián)網(wǎng)效率優(yōu)劣的兩個(gè)重要因素[19].ALR和AMD的值越小,代表方案的性能越優(yōu)越.本方案中ALR和AMD的計(jì)算如公式(8)和公式(9)所示. (8) (9) 本方案所使用的仿真實(shí)驗(yàn)參數(shù)如表6所示. 表6 仿真實(shí)驗(yàn)參數(shù)Table 6 Parameters of simulation experiment 首先,分別設(shè)定不同的車輛節(jié)點(diǎn)數(shù)和車輛最大行使速度,根據(jù)表6中相關(guān)參數(shù)初始化實(shí)驗(yàn)?zāi)M場(chǎng)景,隨機(jī)生成各車輛節(jié)點(diǎn)的位置坐標(biāo),根據(jù)隨機(jī)種子確定所要傳輸數(shù)據(jù)包的總數(shù)量;然后,通過(guò)模擬某一設(shè)定時(shí)間段內(nèi)任意兩個(gè)車輛節(jié)點(diǎn)間的消息傳輸,得到所有成對(duì)車輛節(jié)點(diǎn)間消息是否成功傳輸標(biāo)識(shí)以及消息傳輸延遲時(shí)間的數(shù)據(jù)集;最后,統(tǒng)計(jì)得到平均消息丟失率ALR和平均消息延遲AMD. ALR、AMD隨著自組網(wǎng)內(nèi)車輛節(jié)點(diǎn)數(shù)量的變化情況分別如圖5和圖6所示. 圖5 平均消息丟失率與車輛個(gè)數(shù)的關(guān)系Fig.5 Relation between average message loss rate and number of vehicles 圖6 平均消息延遲與車輛個(gè)數(shù)的關(guān)系Fig.6 Relation between average message delay and number of vehicles 通過(guò)圖5中的對(duì)比可知當(dāng)車輛節(jié)點(diǎn)數(shù)量為40和120個(gè)時(shí),本方案中ALR相比于文獻(xiàn)[21],分別降低了2%和4%.本文方案優(yōu)于所對(duì)比的三篇文獻(xiàn),且隨著車輛節(jié)點(diǎn)的增加將保持此趨勢(shì). 當(dāng)車輛節(jié)點(diǎn)的數(shù)量在20個(gè)時(shí),本方案的平均消息延遲約為75ms,而文獻(xiàn)[21]的約為130ms.根據(jù)圖6的對(duì)比可知,車輛個(gè)數(shù)為0-120個(gè)之間時(shí),本文方案平均消息延遲方面均優(yōu)于所對(duì)比的三篇文獻(xiàn),且隨著車輛節(jié)點(diǎn)的增加將保持此趨勢(shì). 本文針對(duì)傳統(tǒng)的車聯(lián)網(wǎng)身份隱私保護(hù)方案中存在可信中心權(quán)威欺騙,無(wú)可信中心時(shí)通信復(fù)雜度及時(shí)間復(fù)雜度高及RSU被攻擊等問(wèn)題,結(jié)合邊緣計(jì)算低時(shí)延的優(yōu)點(diǎn),提出一種面向邊緣計(jì)算場(chǎng)景的車聯(lián)網(wǎng)應(yīng)用身份隱私保護(hù)方案.該方案用MEC服務(wù)器構(gòu)造可信中心,避免了傳統(tǒng)方案使用汽車制造商或交通運(yùn)輸部門管理時(shí)存在的權(quán)威欺騙,實(shí)現(xiàn)了車聯(lián)網(wǎng)中單消息認(rèn)證和批量消息認(rèn)證.在發(fā)生爭(zhēng)議時(shí),可提供OBU和RSU的可追溯.分析表明,本方案正確且在安全及效率方面都有進(jìn)一步的提升.未來(lái),將對(duì)該認(rèn)證方案做進(jìn)一步優(yōu)化,以實(shí)現(xiàn)更低的消息傳輸時(shí)延及更低的消息丟失率,并在真實(shí)環(huán)境中進(jìn)行驗(yàn)證.5.3 效率分析
6 仿真實(shí)驗(yàn)
7 結(jié) 論