賴成喆,陳 瑤,郭奇立,鄭 東
(1.西安郵電大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院,陜西 西安 710121;2.廣西密碼學(xué)與信息安全重點(diǎn)實(shí)驗(yàn)室,廣西壯族自治區(qū) 桂林 541000)
車聯(lián)網(wǎng)在通信技術(shù)迅速發(fā)展的大背景下已經(jīng)成為了一個(gè)新的研究熱點(diǎn)。近幾年,車聯(lián)網(wǎng)通信面臨著以下幾個(gè)問題:① 無線數(shù)據(jù)流量呈指數(shù)增長(zhǎng)對(duì)蜂窩網(wǎng)絡(luò)造成了巨大的挑戰(zhàn);② 路邊單元部署具有盲區(qū),用戶不能獲得良好的內(nèi)容下載體驗(yàn);③ 多媒體文件普遍需要占用很大的存儲(chǔ)空間,容易在復(fù)雜的交通環(huán)境和不穩(wěn)定的網(wǎng)絡(luò)鏈路造成的網(wǎng)絡(luò)負(fù)荷變大。針對(duì)上述問題,文獻(xiàn)[1]提出了合作下載的概念。
合作下載作為未來無線網(wǎng)絡(luò)的傳輸策略已經(jīng)受到了相當(dāng)多的關(guān)注。該技術(shù)不僅可以減少媒體訪問控制(MAC)層沖突,而且能增強(qiáng)車聯(lián)網(wǎng)的網(wǎng)絡(luò)可靠性和傳輸吞吐量[2-3]。合作下載有兩個(gè)階段,第一階段為車輛從路邊單元(RSU)得到部分文件,第二階段為使用車與車(V2V)通信進(jìn)行合作多跳傳輸。上述兩個(gè)階段對(duì)應(yīng)的兩個(gè)核心問題分別是合作車輛選擇和數(shù)據(jù)轉(zhuǎn)發(fā)。
對(duì)于整個(gè)合作下載系統(tǒng),如何激勵(lì)車輛參與合作是一個(gè)值得探究的問題。拍賣作為一種交換機(jī)制能夠有效地分配重要資源,反向拍賣機(jī)制則是一種由一位買方和許多潛在賣方組成的拍賣方式。買方發(fā)布任務(wù)需求,供應(yīng)者在有效時(shí)間內(nèi)通過專門的網(wǎng)絡(luò)平臺(tái)進(jìn)行交互實(shí)時(shí)競(jìng)價(jià),競(jìng)價(jià)結(jié)束后通過綜合評(píng)價(jià)模型為買方確定獲勝的供應(yīng)者[4]。該機(jī)制能解決合作下載車輛選擇的問題。演化博弈論被許多學(xué)者認(rèn)為是把博弈論理論分析和動(dòng)態(tài)演化過程分析結(jié)合起來的一種理論,在車聯(lián)網(wǎng)中用演化博弈解決車輛是否參與數(shù)據(jù)包轉(zhuǎn)發(fā)問題的優(yōu)勢(shì)是:高度移動(dòng)的車輛節(jié)點(diǎn)會(huì)動(dòng)態(tài)根據(jù)網(wǎng)絡(luò)狀況調(diào)節(jié)自身策略實(shí)現(xiàn)利益最大化,節(jié)點(diǎn)通信鏈路不一定穩(wěn)定且完整,車輛節(jié)點(diǎn)無法實(shí)現(xiàn)完全理性。當(dāng)車輛得到自身感興趣的數(shù)據(jù)后,應(yīng)當(dāng)對(duì)合作車輛進(jìn)行獎(jiǎng)勵(lì),基于信譽(yù)和基于貨幣的激勵(lì)方式能夠?qū)囕v的行為進(jìn)行公平的獎(jiǎng)懲。
此外,車輛節(jié)點(diǎn)多跳轉(zhuǎn)發(fā)數(shù)據(jù)包時(shí)應(yīng)考慮數(shù)據(jù)安全問題。聚合簽名(AS)[5]作為一種有前景的關(guān)鍵密碼部件近些年受到了很多關(guān)注,它能同時(shí)將任意用戶的簽名σ1,σ2,…壓縮成一個(gè)簽名σ,很大程度上提高了簽名的驗(yàn)證和傳輸效率。有序聚合簽名(SAS)[6]是一種特殊的聚合簽名,允許簽名者按順序?qū)⑵浜灻砑拥街暗木酆虾灻?。該技術(shù)滿足合作車輛轉(zhuǎn)發(fā)數(shù)據(jù)包的安全需求。
筆者的主要工作如下:首先,設(shè)計(jì)了一種雙重博弈激勵(lì)車輛參與合作下載,在數(shù)據(jù)下載階段,提出一種基于反向拍賣的車輛選擇方案,在數(shù)據(jù)轉(zhuǎn)發(fā)階段,利用演化博弈論描述數(shù)據(jù)轉(zhuǎn)發(fā)過程中車輛節(jié)點(diǎn)的策略動(dòng)態(tài)演化過程,最終所有車輛都趨于“合作”; 其次,考慮到數(shù)據(jù)傳輸過程中的安全問題,引入有序聚合簽名技術(shù),提供數(shù)據(jù)完整性、身份認(rèn)證和不可抵賴等性能;最后,將基于電子貨幣(比特幣)的激勵(lì)與基于信譽(yù)的激勵(lì)相結(jié)合,用雙重激勵(lì)方式使車輛達(dá)到協(xié)作的可能,同時(shí)引用定時(shí)承諾機(jī)制保證公平支付問題。
移動(dòng)互聯(lián)網(wǎng)的增長(zhǎng)速度十分迅猛,用戶隨時(shí)都有獲取互聯(lián)網(wǎng)信息的需求,車聯(lián)網(wǎng)網(wǎng)絡(luò)快速動(dòng)態(tài)的拓?fù)渥兓瓦B接短暫性顯然不能滿足車輛用戶的需求,迫切需要一個(gè)高性能的合作下載機(jī)制來獲得大規(guī)模的互聯(lián)網(wǎng)數(shù)據(jù)。一些學(xué)者已經(jīng)針對(duì)合作下載問題展開了研究。文獻(xiàn)[7]提出安全激勵(lì)的方案(SIRC)以在高速公路車載自組織網(wǎng)絡(luò)(VANET)中實(shí)現(xiàn)公平可靠的協(xié)作下載,并采用部分預(yù)付款策略來最小化客戶車輛的支付風(fēng)險(xiǎn)。在數(shù)據(jù)共享中,由于傳感器故障,病毒感染,甚至出現(xiàn)自私的原因,車輛可能會(huì)散布虛假信息[8]。文獻(xiàn)[9]研究車載社及網(wǎng)絡(luò)(VSN)中基于區(qū)塊鏈和基于密文策略的屬性加密(CP-ABE)的安全可驗(yàn)證數(shù)據(jù)共享方案。文獻(xiàn)[10]在車載命名數(shù)據(jù)網(wǎng)絡(luò)中提出基于雙層區(qū)塊鏈的數(shù)據(jù)共享系統(tǒng),底層請(qǐng)求服務(wù),上層將需求提交給RSU進(jìn)行匹配。文獻(xiàn)[11]提出了一種適用于高速公路環(huán)境下合作下載車輛選擇方案,最大程度地把潛在的車輛都選擇了進(jìn)來,能夠一定程度保證下載消息的完整性。
除此之外,還有一些學(xué)者研究了博弈論在車聯(lián)網(wǎng)中的應(yīng)用。文獻(xiàn)[12-13]用聯(lián)盟博弈論模型模擬內(nèi)容下載。文獻(xiàn)[14]提出基于無限重復(fù)博弈的車聯(lián)網(wǎng)合作下載激勵(lì)系統(tǒng),將激勵(lì)系統(tǒng)分為清算部分和獎(jiǎng)勵(lì)部分以最大程度地保障系統(tǒng)的高效性與公平性。文獻(xiàn)[15]中用博弈論解決節(jié)點(diǎn)自私行為以優(yōu)化自身性能。文獻(xiàn)[16]針對(duì)車聯(lián)網(wǎng)十字路口地情況,提出一種基于競(jìng)價(jià)博弈的車聯(lián)網(wǎng)網(wǎng)絡(luò)擁塞控制機(jī)制,該方案能在高密度的場(chǎng)景中讓數(shù)據(jù)傳輸更流暢。
第一個(gè)聚合簽名方案可以追溯到FIAT提出的RSA方案[17],接著就有大量相關(guān)的研究涌現(xiàn)。 文獻(xiàn)[6]在Eurocrypt 2004上提出有序聚合簽名陷門置換有序聚合簽名(TP-SAS)方案。文獻(xiàn)[18]在Eurocrypt 2006上提出第一個(gè)在標(biāo)準(zhǔn)模型下可證安全的有序聚合簽名(ST-SAS)方案,該方案基于Brent Water的IBE方案[19],并提出第一個(gè)以發(fā)全密鑰知識(shí)(KOSK)為假設(shè)的無隨機(jī)預(yù)言機(jī)的SAS方案(LOSSW)。文獻(xiàn)[20]在CCS 2007上提出一個(gè)基于身份的聚合(BGOY-IBAS),克服了文獻(xiàn)[19]的共享問題。文獻(xiàn)[21]提出在NTRU格上的無證書有序聚合簽名方案,該方案在量子時(shí)代也是安全的。
公平且安全的支付在交易中尤為重要。文獻(xiàn)[22]為了打破數(shù)據(jù)交易中雙方互不信任的這一僵局,提出基于比特幣的數(shù)據(jù)交易公平協(xié)議。文獻(xiàn)[23]提出基于比特幣可延時(shí)交易的特性,并提出了時(shí)間承諾機(jī)制。文獻(xiàn)[24]中為了解決傳統(tǒng)委任計(jì)算中需要借助第三方保證支付過程公平性這一問題,提出基于比特幣的時(shí)間承諾的公平支付協(xié)議。
如圖1所示,車聯(lián)網(wǎng)合作下載主要分為兩個(gè)階段,合作車輛選擇階段和數(shù)據(jù)轉(zhuǎn)發(fā)階段。系統(tǒng)主要包含2個(gè)主要實(shí)體:路邊單元(RSU)和車輛。
(a) 合作車輛選擇階段 (b) 數(shù)據(jù)轉(zhuǎn)發(fā)階段
路邊單元(RSU):路邊單元部署在路邊,主要負(fù)責(zé)為附近的車輛提供網(wǎng)絡(luò)訪問服務(wù),交通相關(guān)信息和娛樂內(nèi)容可以通過路邊單元傳輸?shù)杰囕v。
車輛:車輛扮演著最核心的角色,每輛車都配備車載單元(OBU)以提供一定的存儲(chǔ)和計(jì)算能力。在筆者給定的模型中,車輛分為四種類型:請(qǐng)求車輛(vr)、普通車輛(vo)、合作下載車輛(vd)和合作轉(zhuǎn)發(fā)車輛(vt)。
當(dāng)請(qǐng)求車輛vr想要下載一些大文件(如視頻、高質(zhì)量圖片)時(shí),他會(huì)向RSU發(fā)出下載請(qǐng)求,然后RSU將其需要的數(shù)據(jù)類型廣播以尋找合適的合作下載車輛,這些合作下載車輛會(huì)分別下載一部分?jǐn)?shù)據(jù),最后通過多跳轉(zhuǎn)發(fā)將其傳輸給請(qǐng)求車輛。
文中所提出的方案可以實(shí)現(xiàn)如下目標(biāo):
(1) 激勵(lì)性:為了確保合作車輛能高水平地下載和轉(zhuǎn)發(fā)數(shù)據(jù),引入雙重博弈和基于信譽(yù)和電子貨幣的雙重激勵(lì),既保證了能選到信譽(yù)高且有能力的合作下載車輛,又能讓道路上的車輛都趨于合作轉(zhuǎn)發(fā);
(2) 安全性:數(shù)據(jù)轉(zhuǎn)發(fā)過程中每一跳車輛對(duì)消息進(jìn)行驗(yàn)證以確保其完整性且未被篡改,并且實(shí)現(xiàn)對(duì)自私和惡意車輛的可追蹤性,同時(shí)實(shí)現(xiàn)抗合謀攻擊,使得幾個(gè)車輛不能串通偽造數(shù)據(jù);
(3) 公平性:為了保證交易各方的公平,將交易建立在區(qū)塊鏈上;此外,根據(jù)“多勞多得”的原則分配合作下載車輛和合作轉(zhuǎn)發(fā)車輛的報(bào)酬值。
本節(jié)將用非合作博弈論的一個(gè)分支——反向拍賣來描述我們的系統(tǒng)是如何為請(qǐng)求車輛(vr)尋找合適的合作下載的車輛(vd)。首先建立路邊單元與道路上普通車輛(vo)進(jìn)行反向拍賣的模型,接著提出完美反向拍賣算法和隨機(jī)分組反向拍賣算法。
在拍賣開始之前,首先采用基于信譽(yù)的激勵(lì)機(jī)制對(duì)道路上的車輛進(jìn)行信譽(yù)評(píng)估[25],將不良節(jié)點(diǎn)排除在此次拍賣之外。反向拍賣中包括請(qǐng)求車輛(vr),路邊單元(RSU)和普通車輛(vo),拍賣流程如圖2所示。
圖2 反向拍賣流程圖
圖2中vr擁有比特幣資金,這些資金來源于先前幫助其他車輛下載或轉(zhuǎn)發(fā)數(shù)據(jù)包獲得的報(bào)酬。反向拍賣即RSU充當(dāng)拍賣師(Auctioneer),vo充當(dāng)競(jìng)買人(Bidder),RSU用有限的資金購(gòu)買vo的數(shù)據(jù)。假設(shè)RSU是可信的,并且其與合作下載車輛之間的數(shù)據(jù)傳輸信道是一個(gè)安全信道。具體的拍賣流程[26]如下:
(1) 路邊單元接收到vr的數(shù)據(jù)下載請(qǐng)求(數(shù)據(jù)類型和預(yù)算R)后,將向道路上行駛的vo廣播所需的數(shù)據(jù)類型;感興趣的車輛向路邊單元提供給報(bào)價(jià)bi=
(2) 路邊單元根據(jù)vr提供的資金預(yù)算R和vo的報(bào)價(jià)b決定獲勝者集合vv(vv?vo)。
(3)vv從道路上部署的路邊單元下載部分?jǐn)?shù)據(jù)di,記d=(d1,d2,…,dk)。
(4) 當(dāng)vv將所有數(shù)據(jù)下載完并通過多跳通信傳輸給vr后,vr將在區(qū)塊鏈平臺(tái)向這些車輛支付報(bào)酬ri,我們記r=(r1,r2,…,rk)。
定義1合作下載車輛vd的收益為
(1)
定義2vr的收益來自于合作下載車輛的數(shù)據(jù)總量
(2)
3.1.1 完美反向拍賣PRA(vo,R)
將完美拍賣定義為車輛用戶和路邊單元都能真實(shí)參與拍賣,路邊單元不會(huì)欺騙車輛用戶的數(shù)據(jù)而不付報(bào)酬,同時(shí),車輛用戶也會(huì)誠(chéng)實(shí)提供報(bào)價(jià),不會(huì)惡意抬高或降低自己的報(bào)價(jià)而獲取額外報(bào)酬。
算法1計(jì)算RSU在完美拍賣中獲得的數(shù)據(jù)量的算法。
輸入:
用戶集合vo;
所有用戶報(bào)價(jià)b;
RSU資金R。
輸出:
① 將所有用戶按單位成本c非降序的順序重新排列。
3.1.2 隨機(jī)分組反向拍賣RRA(T,R/2)
本節(jié)設(shè)計(jì)了一個(gè)隨機(jī)分組的反向拍賣機(jī)制,該機(jī)制不僅能夠使RSU得到盡可能多、盡可能準(zhǔn)確的數(shù)據(jù),而且也能通過對(duì)車輛用戶支付報(bào)酬,鼓勵(lì)更多車輛參與拍賣并能真實(shí)提供報(bào)價(jià)。將所有vo隨機(jī)分為兩組T和W,分別進(jìn)行拍賣;相應(yīng)地,每組的資金預(yù)算為R/2。下面以分組T為例,給出拍賣結(jié)果的算法。
算法2計(jì)算隨機(jī)分組T拍賣結(jié)果的算法。
輸入:
用戶集合T;
分組T中用戶的報(bào)價(jià)b1i;
RSU預(yù)算R/2;
參數(shù)β。
輸出:
分組T中用戶的獎(jiǎng)勵(lì)r;
所有用戶需要下載的數(shù)據(jù)量d。
① 將分組T中的用戶重新隨機(jī)排列;
②βQT←PRA(T,R/2)
③r←0,d←0
⑤ for allvi∈Tdo
⑥ ifci≤p1vandR/2 then
⑦ri←min{R/2,p1vqi}
⑧di←ri/p1v
⑨R/2←R/2-r
⑩ ifR/2>0 then
該算法通過隨機(jī)分組不僅保證了真實(shí)性,又確保了有效性。分組W中的拍賣過程與分組T類似,不再詳細(xì)描述。最終RSU得到的數(shù)據(jù)量為β(QT+QW)。
演化博弈與傳統(tǒng)博弈不同的是,演化博弈不必強(qiáng)調(diào)個(gè)體完全理性,更不用強(qiáng)調(diào)完美信息。在本節(jié),演化博弈論主要用于建模,在合作下載車輛vd下載完數(shù)據(jù)后,如何將數(shù)據(jù)通過多跳傳輸給請(qǐng)求下載車輛vr的問題。每次數(shù)據(jù)的轉(zhuǎn)發(fā)都視為一次博弈,博弈過程中僅包含參與傳輸?shù)膬蓚€(gè)車輛節(jié)點(diǎn),他們總是采用一種既定的行為策略,在不斷地重復(fù)博弈過程中,有限理性的參與者會(huì)參考其他車輛節(jié)點(diǎn)的收益情況不斷反思自己的行為,并學(xué)習(xí)其他成功車輛節(jié)點(diǎn)的行為策略,最終所有車輛均采用相同的穩(wěn)定策略,系統(tǒng)也處于演化穩(wěn)定狀態(tài)。
3.2.1 基于演化博弈的多次合作轉(zhuǎn)發(fā)
將演化博弈表示為G=(P,S,U),其中P代表博弈的參與者,單次博弈中P=(vi,vj);S代表策略集合,記S=(T,N),其中T表示車輛選擇合作策略,N表示車輛選擇不合作策略;U代表車輛收益[27]。下面給出分別選擇合作與不合作策略的車輛的收益函數(shù)。
定義3節(jié)點(diǎn)選擇合作策略收益:
(3)
定義4節(jié)點(diǎn)選擇不合作策略收益:
(4)
(1) 演化更新規(guī)則
車輛節(jié)點(diǎn)的策略更新是設(shè)計(jì)演化博弈的核心。在演化博弈中,有限理性的車輛個(gè)體惟一的目標(biāo)就是盡可能大地獲得收益,沒有誰想被邊緣化,當(dāng)車輛被信譽(yù)機(jī)制認(rèn)定為自私節(jié)點(diǎn)后,將會(huì)更迫切地幫助其他車輛轉(zhuǎn)發(fā)數(shù)據(jù)以提高收益和信譽(yù)值。下面介紹一下策略更新規(guī)則,根據(jù)費(fèi)米規(guī)則[26],車輛節(jié)點(diǎn)改變自身策略的概率記為pi:
(5)
車輛長(zhǎng)時(shí)期不參與轉(zhuǎn)發(fā)就被視為自私節(jié)點(diǎn);當(dāng)該車輛需要其他車輛幫助轉(zhuǎn)發(fā)數(shù)據(jù)時(shí),會(huì)遭到拒絕。車輛被拒絕次數(shù)記為fi。車輛對(duì)這種拒絕行為有一定的容忍程度,其上限為Ni。因此車輛改變自身策略的概率為
(6)
其中,γ+λ=1。
(2) 學(xué)習(xí)對(duì)象篩選規(guī)則
根據(jù)前面的知識(shí),當(dāng)車輛節(jié)點(diǎn)決定更新策略時(shí),首先要選擇一個(gè)“榜樣”,即選擇哪個(gè)車輛的策略作為學(xué)習(xí)目標(biāo)。本節(jié)中,選擇用較好者具有替代機(jī)會(huì)策略,這意味著學(xué)習(xí)的對(duì)象不是惟一的,收益較大者都有機(jī)會(huì)成為學(xué)習(xí)對(duì)象,而被選中的概率與其自身的信譽(yù)值和收益值有關(guān)。
(7)
3.2.2 基于有序聚合簽名的安全數(shù)據(jù)傳輸
為了實(shí)現(xiàn)數(shù)據(jù)傳輸?shù)陌踩?,采用基于身份的有序聚合簽?IBSAS)算法[20],并將其應(yīng)用于數(shù)據(jù)包多跳傳輸過程中。具體過程如圖3所示。
圖3 多跳傳輸有序聚合簽名示意圖
合作下載車輛vdi從第i個(gè)路邊單元(RSUi)下載好數(shù)據(jù)包pi后,進(jìn)行簽名,然后開始進(jìn)入演化博弈階段,通過多跳轉(zhuǎn)發(fā)將數(shù)據(jù)包pi傳遞到請(qǐng)求車輛vr。在多跳轉(zhuǎn)發(fā)過程中,運(yùn)用有序聚合簽名的技術(shù),后一跳車輛驗(yàn)證前一跳車輛的身份,當(dāng)前面的聚合簽名驗(yàn)證通過時(shí),車輛才會(huì)將自己的簽名聚合到之前的聚合簽名中;與此同時(shí),該車輛還會(huì)給前一跳車輛發(fā)送一個(gè)憑證ACK以證明前一跳車輛的簽名有效,該憑證也可作為最終從vr獲得報(bào)酬的證據(jù)。反之,如果前面的車輛聚合簽名驗(yàn)證未通過,則給予其降低信譽(yù)值的懲罰。當(dāng)vr收到數(shù)據(jù)包時(shí),會(huì)給vdi也發(fā)一個(gè)憑證ACK以確保轉(zhuǎn)發(fā)過程無差錯(cuò)。每個(gè)合作轉(zhuǎn)發(fā)車輛只需驗(yàn)證一次并簽名一次,而合作下載車輛只需簽名。
簽名過程如下:
(2) 密鑰派生算法:由PKG執(zhí)行。輸入msk和車輛ID∈{0,1}*,輸出skID=(H1(ID)α1,H2(ID)α2);
(3) 簽名算法:由合作下載車輛vdi、合作轉(zhuǎn)發(fā)車輛vt和請(qǐng)求車輛vr共同執(zhí)行。輸入skID,轉(zhuǎn)發(fā)數(shù)據(jù)m,σ,L,其中L=((ID1,m1),…,(IDi-1,mi-1)),該算法先將σ解析為(σ1,σ2,σ3),然后用下面敘述的驗(yàn)證算法驗(yàn)證(σ1,σ2,σ3)是否有效;否則,輸出⊥。(對(duì)于合作下載車輛vdi,跳過此步驟,即如果i=1,則σ=(1G,1G,1G)),則算法計(jì)算:
①r,x←ZP
(4) 驗(yàn)證算法:輸入mpk,((ID1,m1),…,(IDn,mn)),σ0首先檢查所有車輛的IDi是否都不同,然后檢驗(yàn)式:
(8)
輸出:0或1。
因此,轉(zhuǎn)發(fā)數(shù)據(jù)m1,m2,…,mn由車輛ID1,ID2,…,IDn簽署的聚合簽名具有以下形式:
(9)
文中主要基于電子貨幣的激勵(lì)方式鼓勵(lì)車輛參與合作下載的過程,其次利用基于信譽(yù)的激勵(lì)方式[25]對(duì)車輛的行為進(jìn)行獎(jiǎng)勵(lì)和懲罰。這種雙重激勵(lì)方式可以保證節(jié)點(diǎn)之間適當(dāng)?shù)暮献魉健?/p>
在比特幣系統(tǒng)中,采用的哈希函數(shù)和簽名算法分別是SHA-256哈希函數(shù)和橢圓曲線數(shù)字簽名算法(ECDSA)。記車輛用戶v的比特幣地址對(duì)應(yīng)的公私鑰對(duì)為(vsk,vpk),公鑰相當(dāng)于車輛比特幣地址,私鑰只有車輛知道。假設(shè)每個(gè)車輛都知道至少一個(gè)比特幣地址對(duì)應(yīng)的私鑰。先介紹比特幣交易的簡(jiǎn)單模型,如圖4所示。
圖4 簡(jiǎn)易比特幣交易示意圖
如圖4所示,交易Tx的輸入是v1pk,輸出為v2pk。當(dāng)v1pk作為請(qǐng)求車輛時(shí),v2pk作為合作下載或合作轉(zhuǎn)發(fā)車輛幫助v1pk以獲得相應(yīng)的報(bào)酬,當(dāng)報(bào)酬積攢到足夠v2pk作為請(qǐng)求車輛獲取自己感興趣的數(shù)據(jù)時(shí),v2pk發(fā)起交易Ty。考慮到合作下載車輛和合作轉(zhuǎn)發(fā)車輛的貢獻(xiàn)不同,根據(jù)“多勞多得”的原則,我們將每輛合作下載車輛的報(bào)酬設(shè)為ω,每輛合作轉(zhuǎn)發(fā)車輛的報(bào)酬為ξ,即ω>ξ。根據(jù)第3.1節(jié)的假設(shè),交易Tx有k個(gè)合作下載車輛,并且他們會(huì)根據(jù)與請(qǐng)求車輛的距離預(yù)估有l(wèi)個(gè)合作轉(zhuǎn)發(fā)車輛,因此,R2=kω+lξ;顯然,R1≥R2。
Tx(in:y1,y2)in-script:σ1,σ2out-script(body,σ):verv3,1pk(body,σ),verv3,2pk(body,σ)val:Rtlock:t
為了方便描述,給出Tx=(y1,y2,v3,1pk,v3,2pk,πx,R,t,σ1,σ2),其中y1,y2是交易Ty的索引,該索引指H(Ty),v3,1pk,v3,2pk代表合作下載車輛和合作轉(zhuǎn)發(fā)車輛的比特幣地址,πx表示交易Tx的結(jié)果,為布爾類型,輸出1表示交易有效,0表示交易無效,R代表交易資金,即R=ω+ξ,t為時(shí)間鎖,設(shè)置t=1 h,這代表該交易在1 h后開始生效,σ1,σ2為對(duì)交易Ty的簽名。稱Tx=(y1,y2,v3,1pk,v3,2pk,πx,R)為交易Tx的body部分,記[Tx]。交易Tx如圖5所示。
交易中的每一方都能訪問區(qū)塊中的分類賬,交易過賬不是立即發(fā)生的,而是伴隨著一定的延時(shí)。
定時(shí)承諾機(jī)制[28]包含三部分,分別是承諾、打開和支付,如圖6所示。
(1) commit承諾部分:保證金的去向有兩種可能,請(qǐng)求車輛vr自己將其拿回,或被各個(gè)合作車輛拿走。誠(chéng)實(shí)的請(qǐng)求車輛vr會(huì)在t之前將承諾公開;
(2) open打開部分:如果請(qǐng)求車輛vr對(duì)合作車輛所傳遞的數(shù)據(jù)存在質(zhì)疑,那么他可以在時(shí)間t內(nèi)將承諾打開,將保證金拿回,與此同時(shí)其秘密值s也會(huì)被合作車輛知道;
(3) pay支付部分:如果雙方對(duì)交易不存在任何爭(zhēng)議,那么合作車輛將會(huì)拿走保證金,這也意味著此次交易是成功的。其中H和⊥都為哈希函數(shù)。
圖6 定時(shí)承諾機(jī)制示意圖
(1) 安全性
利用基于身份的有序聚合簽名實(shí)現(xiàn)消息在多跳轉(zhuǎn)發(fā)過程中的數(shù)據(jù)完整性、身份認(rèn)證性和不可抵賴性。下面給出有序聚合簽名的正確性證明:
(10)
此外,在數(shù)據(jù)轉(zhuǎn)發(fā)過程中,引入ACK完成合作下載車輛vdi與請(qǐng)求車輛vr之間的轉(zhuǎn)發(fā)核對(duì)。以及下一跳車輛對(duì)上一跳車輛的轉(zhuǎn)發(fā)核對(duì)。這種雙重核對(duì)機(jī)制能有效避免惡意車輛的合謀攻擊。
在激勵(lì)階段,如果使用的哈希函數(shù)H是抗碰撞的,并且ECDSA簽名是不可偽造的,則我們的定時(shí)承諾機(jī)制滿足正確性。而且,由于區(qū)塊鏈的不可篡改性,請(qǐng)求車輛收到的數(shù)據(jù)則一定是未被篡改的,并且只有合作車輛提供的數(shù)據(jù)滿足請(qǐng)求車輛的要求后,才能獲得相應(yīng)的報(bào)酬。
(2) 激勵(lì)性
隨機(jī)分組反向拍賣RRA(T,R/2)中的車輛只能提供真實(shí)的報(bào)價(jià);若降低或抬高報(bào)價(jià),則他們的收益會(huì)不變或者降低,甚至不能贏得拍賣。誠(chéng)實(shí)的合作下載車輛的收益為
(11)
可見車輛的收益總是為非負(fù)值,即實(shí)現(xiàn)了個(gè)體理性。分組T和分組W的拍賣至少有一個(gè)是成功的,因此總的預(yù)算為R或R/2,否則拍賣失敗不會(huì)消耗任何預(yù)算。簡(jiǎn)而言之,隨機(jī)分組反向拍賣RRA(T,R/2)能夠在請(qǐng)求車輛預(yù)算和合作車輛提供數(shù)據(jù)有限的前提下,請(qǐng)求車輛可以收集盡可能多的可靠數(shù)據(jù),同時(shí)又能使得合作車輛的效益最大化,能夠激勵(lì)車輛保持較高的參與度。
由微分方程穩(wěn)定性原理可知,演化博弈存在平衡點(diǎn)。定義車輛節(jié)點(diǎn)單次博弈的收益,如表1所示。
表1 單次博弈收益
假設(shè)網(wǎng)絡(luò)中車輛選擇合作策略的概率為x,則選擇不合作策略的概率為1-x。
車輛選擇合作策略的收益:
UT(x)=xU(T,T)+(1-x)U(T,N)。
(12)
車輛選擇不合作策略的收益:
UN(x)=xU(N,T)+(1-x)U(N,N)。
(13)
所有車輛平均收益:
(14)
復(fù)制動(dòng)力學(xué)的主要假設(shè)為給定的策略類型的單位復(fù)制率正比于適應(yīng)度之差[29],由此構(gòu)建復(fù)制動(dòng)力學(xué)方程:
(15)
令F(x)=0 求出均衡點(diǎn)有3個(gè),分別是x1=0,x2=1,x3為UT(x)=UN(x)的解,且x3∈(0,1)。由于F(x)=0的解不一定都是穩(wěn)定的,由微分方程穩(wěn)定性原理可得:當(dāng)F′(x*)<0時(shí),系統(tǒng)才能達(dá)到穩(wěn)定。
下面分兩種情況進(jìn)行討論:
① 當(dāng)UT(x)-UN(x)=0時(shí),?x∈[0,1]都是納什均衡的平衡點(diǎn),此時(shí)F′(x)恒為0,因此x3不是穩(wěn)定的平衡點(diǎn)。
② 當(dāng)UT(x)-UN(x)≠0 時(shí),分為兩種情況:
(a) 當(dāng)UT(x)-UN(x)<0時(shí),F(xiàn)′(x=0)<0,F(xiàn)′(x=1)>0,因此x1是穩(wěn)定的平衡點(diǎn);但是由于此時(shí)車輛合作的收益值小于不合作的收益值,不滿足激勵(lì)一致性條件,因此這種情況與現(xiàn)實(shí)不相符,故不予考慮;
(b) 當(dāng)UT(x)-UN(x)>0時(shí),F(xiàn)′(x=0)>0,F(xiàn)′(x=1)<0,因此x2是穩(wěn)定的平衡點(diǎn)。
綜上所述,不論目前的網(wǎng)絡(luò)中有多少自私的車輛節(jié)點(diǎn),在通過基于演化博弈的激勵(lì)后,最終所有車輛都會(huì)選擇合作策略,節(jié)點(diǎn)之間保持穩(wěn)定的合作關(guān)系并且能夠?qū)崿F(xiàn)自身利益的最大化;同時(shí),復(fù)制動(dòng)力學(xué)方程證明了演化博弈的穩(wěn)定性。
(3) 公平性
① 對(duì)做出不同貢獻(xiàn)的合作下載車輛和合作轉(zhuǎn)發(fā)車輛分別獎(jiǎng)勵(lì)不同的報(bào)酬,根據(jù)“多勞多得”的原則,我們將每輛合作下載車輛的報(bào)酬設(shè)為ω,每輛合作轉(zhuǎn)發(fā)車輛的報(bào)酬為ξ,即ω>ξ。
② 對(duì)合作車輛增加信譽(yù)值,即合作下載車輛誠(chéng)實(shí)地參與拍賣并下載數(shù)據(jù);在數(shù)據(jù)轉(zhuǎn)發(fā)時(shí)采用雙重核對(duì)機(jī)制,后一跳車輛驗(yàn)證前一跳車輛的身份;與此同時(shí),該車輛還會(huì)給前一跳車輛發(fā)送一個(gè)憑證ACK以證明前一跳車輛的簽名有效,該憑證也可作為最終從vr獲得報(bào)酬的證據(jù)。當(dāng)vr收到數(shù)據(jù)包時(shí),他會(huì)給vdi也發(fā)一個(gè)憑證ACK以確保轉(zhuǎn)發(fā)過程無差錯(cuò)。反之,如果前面的車輛聚合簽名驗(yàn)證未通過,則我們給予其降低信譽(yù)值的懲罰。
③ 將支付貨幣環(huán)節(jié)建立在區(qū)塊鏈上能夠保證請(qǐng)求車輛和合作車輛交易的公平性。對(duì)請(qǐng)求車輛vr的公平性意味著自私或惡意的合作車輛若未能提供正確的數(shù)據(jù),則無法獲得報(bào)酬;對(duì)合作車輛的公平性意味著請(qǐng)求車輛vr在不支付報(bào)酬的情況下無法獲得其所需正確的數(shù)據(jù)。
(1) 通信開銷
表2 單個(gè)簽名和有序聚合簽名通信開銷對(duì)比
單個(gè)簽名和有序聚合簽名通信開銷的對(duì)比結(jié)果如表2所示。其中,n代表在數(shù)據(jù)傳輸過程中車輛的個(gè)數(shù),|m|表示下載的數(shù)據(jù)包大小,S表示公差為1、首項(xiàng)為1的等差數(shù)列求和。通信開銷主要由數(shù)據(jù)傳輸過程中數(shù)據(jù)|m|以及簽名σi產(chǎn)生,其中,σi=(σi1,σi2,σi3),著重考慮雙線性映射帶來的開銷,其他運(yùn)算忽略不計(jì)。當(dāng)車輛按照傳統(tǒng)單個(gè)簽名進(jìn)行數(shù)據(jù)傳輸時(shí),后一輛車不僅要將自己的簽名進(jìn)行傳輸,而且還要傳輸前一輛車的簽名;當(dāng)車輛按照有序聚合簽名進(jìn)行數(shù)據(jù)傳輸時(shí),每個(gè)車輛只需在前一輛車簽名的基礎(chǔ)上簽名一次并將其傳輸給下一個(gè)車輛。
設(shè)置|G|=512 bit[27],考慮不同數(shù)據(jù)包大小對(duì)通信開銷的影響,將數(shù)據(jù)包分為3類,分別為視頻、圖片和文件,其中,它們的文件大小分別設(shè)置為5 MB、1 MB和600 kB。圖7的(a)、(b)、(c)分別給出在數(shù)據(jù)轉(zhuǎn)發(fā)過程中,隨著車輛數(shù)量的增大,轉(zhuǎn)發(fā)視頻、圖片、文件這3類數(shù)據(jù)包,單個(gè)簽名和有序聚合簽名對(duì)通信開銷的影響。
(a) 視頻單個(gè)簽名和有序聚 合簽名通信開銷的比較
(b) 圖片單個(gè)簽名和有序聚 合簽名通信開銷的比較
(c) 文件單個(gè)簽名和有序聚 合簽名通信開銷的比較
實(shí)驗(yàn)結(jié)果表明,相對(duì)于單個(gè)簽名,有序聚合簽名的通信開銷更小,更適合車聯(lián)網(wǎng)數(shù)據(jù)轉(zhuǎn)發(fā)過程。
(2) 存儲(chǔ)開銷
單個(gè)簽名和有序聚合簽名存儲(chǔ)開銷的對(duì)比結(jié)果如表3所示。存儲(chǔ)開銷不僅由數(shù)據(jù)|m|以及簽名σi產(chǎn)生,還包括驗(yàn)證簽名時(shí)產(chǎn)生的開銷。當(dāng)n個(gè)車輛按照傳統(tǒng)單個(gè)簽名或者有序聚合簽名進(jìn)行數(shù)據(jù)傳輸時(shí),其驗(yàn)證次數(shù)總和都為n-1次。
表3 單個(gè)簽名和有序聚合簽名存儲(chǔ)開銷對(duì)比
設(shè)置|GT|=512 bit[27],圖8的(a)、(b)、(c)分別給出在數(shù)據(jù)轉(zhuǎn)發(fā)過程中,隨著車輛數(shù)量的增大,轉(zhuǎn)發(fā)視頻、圖片、文件這3類數(shù)據(jù)包,單個(gè)簽名和有序聚合簽名對(duì)存儲(chǔ)開銷的影響。
(a) 視頻單個(gè)簽名和有序聚 合簽名存儲(chǔ)開銷的比較
(b) 圖片單個(gè)簽名和有序聚 合簽名存儲(chǔ)開銷的比較
(c) 文件單個(gè)簽名和有序聚 合簽名存儲(chǔ)開銷的比較
從實(shí)驗(yàn)結(jié)果可以看出,文中有序聚合簽名的使用使得方案的存儲(chǔ)開銷明顯降低。
筆者為車聯(lián)網(wǎng)合作下載提供了一套可靠且公平的激勵(lì)方案。通過雙重博弈保障車輛選擇和數(shù)據(jù)轉(zhuǎn)發(fā)的可靠性;基于身份的有序聚合簽名實(shí)現(xiàn)數(shù)據(jù)的完整性、可驗(yàn)證性、可追蹤性和不可否認(rèn)性;同時(shí)還引入了基于電子貨幣和基于信譽(yù)的雙重激勵(lì),有效地鼓勵(lì)車輛積極參與合作,將交易的支付環(huán)節(jié)建立在區(qū)塊鏈上為整個(gè)系統(tǒng)提供公平性。最后,通過理論和仿真分析,驗(yàn)證了方案的有效性。