王鐵峰蔡 英,2張玉潔
1(網(wǎng)絡(luò)文化與數(shù)字傳播北京市重點(diǎn)實(shí)驗(yàn)室(北京信息科技大學(xué)) 北京 100101)2(信息安全國家重點(diǎn)實(shí)驗(yàn)室(中國科學(xué)院信息工程研究所) 北京 100093) (wangtiefeng@bistu.edu.cn)
?
基于聲譽(yù)機(jī)制的網(wǎng)絡(luò)編碼抗污染攻擊方案
王鐵峰1蔡 英1,2張玉潔1
1(網(wǎng)絡(luò)文化與數(shù)字傳播北京市重點(diǎn)實(shí)驗(yàn)室(北京信息科技大學(xué)) 北京 100101)2(信息安全國家重點(diǎn)實(shí)驗(yàn)室(中國科學(xué)院信息工程研究所) 北京 100093) (wangtiefeng@bistu.edu.cn)
網(wǎng)絡(luò)編碼在提高網(wǎng)絡(luò)吞吐量方面有很大的優(yōu)勢,但是它極易受到污染攻擊.目前針對此問題的多數(shù)解決方案都是針對有中心機(jī)制的網(wǎng)絡(luò).針對無中心機(jī)制的移動自組織網(wǎng)絡(luò),考慮移動自組網(wǎng)中節(jié)點(diǎn)的移動性和無固定的可信任第三方中心機(jī)制,結(jié)合已有的聲譽(yù)機(jī)制研究,提出一種基于聲譽(yù)機(jī)制的抗污染攻擊方案對抗網(wǎng)絡(luò)編碼中的污染攻擊.該方案采用對污染攻擊進(jìn)行檢測和定位,在檢測污染攻擊存在的情況下,通過聲譽(yù)機(jī)制對惡意節(jié)點(diǎn)進(jìn)行定位,從而達(dá)到抗污染攻擊的目的.通過實(shí)驗(yàn)仿真,與已有的方案進(jìn)行比較,實(shí)驗(yàn)結(jié)果表明:針對無中心機(jī)制的方案在包的接收成功率上有一定提高,并且在多個惡意節(jié)點(diǎn)存在的情況下依然可以準(zhǔn)確定位出惡意節(jié)點(diǎn)并將其隔離.
污染攻擊;網(wǎng)絡(luò)編碼;聲譽(yù)機(jī)制;無線網(wǎng)絡(luò);安全
網(wǎng)絡(luò)編碼理論的提出[1],使得網(wǎng)絡(luò)中的節(jié)點(diǎn)不僅可以對收到的消息進(jìn)行存儲轉(zhuǎn)發(fā),而且可以對其進(jìn)行編碼處理,在很大程度上提高了網(wǎng)絡(luò)的吞吐量.與此同時,這種特殊的傳輸方式允許中間節(jié)點(diǎn)對收到的數(shù)據(jù)進(jìn)行修改,在很大程度上為惡意節(jié)點(diǎn)提供了破壞網(wǎng)絡(luò)通信的機(jī)會.
污染攻擊指的是中間節(jié)點(diǎn)惡意地將錯誤的數(shù)據(jù)包與正確的數(shù)據(jù)包進(jìn)行編碼,導(dǎo)致編碼的數(shù)據(jù)包也變成錯誤數(shù)據(jù)包,這個被污染的數(shù)據(jù)包傳輸?shù)狡渌?jié)點(diǎn)之后同樣會被編碼從而使得污染被迅速擴(kuò)散.假設(shè)某個節(jié)點(diǎn)消息被污染,就會導(dǎo)致此污染編碼包所到之處均被污染,最后致使目的節(jié)點(diǎn)無法解碼還原出正確的原始消息數(shù)據(jù).由此可見,在網(wǎng)絡(luò)編碼環(huán)境下,污染攻擊具有更大的傳染性,攻擊者只需注入少量的惡意數(shù)據(jù)就可達(dá)到污染整個網(wǎng)絡(luò)的目的.目前針對網(wǎng)絡(luò)編碼中的污染攻擊問題已經(jīng)有一定的研究進(jìn)展,按照網(wǎng)絡(luò)類型可分為流內(nèi)網(wǎng)絡(luò)編碼(即單源網(wǎng)絡(luò)編碼)[2-6]和流間網(wǎng)絡(luò)編碼(即多源網(wǎng)絡(luò)編碼)[7-13]兩大類.因此如何有效地防止網(wǎng)絡(luò)編碼中的污染攻擊成為很多學(xué)者研究的重點(diǎn).
目前所有針對網(wǎng)絡(luò)編碼抗污染攻擊的方案中,大多數(shù)側(cè)重于對污染消息的存在進(jìn)行檢測,然后將檢測到的污染消息丟棄,繼續(xù)接收,不斷重復(fù)此過程;也有少數(shù)是通過確認(rèn)攻擊者身份徹底切斷污染源來抵制污染攻擊.但是大多數(shù)方案都存在較高的計算開銷和通信開銷,且同時存在一個可信任的中心節(jié)點(diǎn).本文將重點(diǎn)側(cè)重于確認(rèn)攻擊者身份的問題,并首次提出將聲譽(yù)機(jī)制引入到網(wǎng)絡(luò)編碼的抗污染攻擊中,根據(jù)節(jié)點(diǎn)收到的數(shù)據(jù)包是否被污染來對發(fā)送數(shù)據(jù)包的節(jié)點(diǎn)進(jìn)行聲譽(yù)值的評價,最后將聲譽(yù)值最低或聲譽(yù)值低于某閾值的節(jié)點(diǎn)隔離出網(wǎng)絡(luò).
針對網(wǎng)絡(luò)編碼中的抗污染攻擊,目前的學(xué)者們已經(jīng)提出了很多的解決方案,大多數(shù)是基于密碼學(xué)和信息論兩大類的.其中前者側(cè)重于在中間節(jié)點(diǎn)處進(jìn)行檢測,而后者則側(cè)重于在目的節(jié)點(diǎn)處進(jìn)行檢測.還有少數(shù)人通過確認(rèn)攻擊者的身份徹底切斷污染源來抵抗污染攻擊,即檢測出惡意節(jié)點(diǎn)的身份之后將其隔離.
2004年Ho等人[14-15]首次提出用一個散列值增加到每一個原始數(shù)據(jù)包中來檢測網(wǎng)絡(luò)編碼中是否存在污染攻擊的標(biāo)準(zhǔn).但此方案只能檢測出污染攻擊是否存在而沒有提出具體的抗污染攻擊的方案.隨后Jaggi等人[16]針對惡意節(jié)點(diǎn)的污染攻擊設(shè)計出了一種基于多項(xiàng)式復(fù)雜度的分布式網(wǎng)絡(luò)編碼算法,此算法能夠保證目的節(jié)點(diǎn)在接收到污染信息的同時,仍然可以解碼出原始信息.Wang等人[17]提出的廣播傳輸方案能夠有效地控制單位時間內(nèi)惡意節(jié)點(diǎn)注入的污染數(shù)據(jù)包的個數(shù),其前提條件是任意節(jié)點(diǎn)最多只有一次廣播機(jī)會,而這一條件在實(shí)際網(wǎng)絡(luò)中并不現(xiàn)實(shí).Nutman等人[18]在Jaggi等人[16]提出的3個基本攻擊模型基礎(chǔ)上進(jìn)行了一定的擴(kuò)展,使得3種攻擊模式都能達(dá)到最優(yōu)吞吐量.Leventc等人[19]利用的是編碼機(jī)制自身固有的冗余信息檢測污染攻擊的方案.不過只有目的節(jié)點(diǎn)接收到的編碼向量個數(shù)大于其最小的編碼向量個數(shù)時才能正確檢測到污染攻擊的信息,實(shí)際的網(wǎng)絡(luò)環(huán)境中并不是所有的節(jié)點(diǎn)都能夠匹配這些條件.Wu等人[20]針對上述方案中的缺點(diǎn)提出將線性空間的簽名機(jī)制與信息論方法相結(jié)合,從而抵御可能存在的污染攻擊.基于密碼學(xué)的方案[21-25]中,Krohn等人[21]首先將同態(tài)散列函數(shù)引入網(wǎng)絡(luò)編碼的簽名中;后來Charles等人[22]提出了一種新的同態(tài)簽名機(jī)制,避免了文獻(xiàn)[21]中需要一條安全信道給各個節(jié)點(diǎn)額外地傳輸數(shù)據(jù)包中的散列值,此方案基于的是橢圓曲線上的WeilParing,缺點(diǎn)是計算開銷太高.Agrawal等人[26]首次將同態(tài)消息認(rèn)證碼的概念引入到網(wǎng)絡(luò)編碼中,隨后Cheng等人[27]又針對網(wǎng)絡(luò)編碼中的污染攻擊提出了一種新的基于同態(tài)消息認(rèn)證碼的方案.Yan等人[28]首次基于多源網(wǎng)絡(luò)編碼的網(wǎng)絡(luò)模型提出了一種抗污染攻擊方案,此方案是基于雙線性對的同態(tài)簽名機(jī)制,其中每個源節(jié)點(diǎn)都擁有一個相應(yīng)的公鑰來對接收到的數(shù)據(jù)包驗(yàn)證其完整性,并且使用短簽名算法對編碼得到的數(shù)據(jù)包進(jìn)行簽名.隨后楊銘熙等人[29]提出了一個基于環(huán)簽名的方案,此方案中每個源節(jié)點(diǎn)均用自身生成的私鑰對要發(fā)送的數(shù)據(jù)計算一個環(huán)簽名,同時中間節(jié)點(diǎn)收到數(shù)據(jù)包之后首先利用收到的環(huán)簽名對其進(jìn)行驗(yàn)證,然后將收到的數(shù)據(jù)包編碼發(fā)送.以上提到的所有網(wǎng)絡(luò)編碼的抗污染攻擊方案僅限于檢測污染數(shù)據(jù)包的存在進(jìn)而將其丟棄,防止進(jìn)一步污染,并不能將惡意節(jié)點(diǎn)找出并將其隔離,從根本上不能解決污染攻擊的問題.Le等人[30]首次針對如何確定攻擊者身份這個問題提出了解決方法,在單源網(wǎng)絡(luò)編碼環(huán)境下提出了SpaceMac的思想來確定污染攻擊者的身份,但是,文獻(xiàn)[30]中使用的解決方法增加了通信負(fù)荷.因此,Zhang等人[31]提出了一種新的基于離散對數(shù)的同態(tài)消息認(rèn)證碼算法,并應(yīng)用于不同的網(wǎng)絡(luò)編碼模型下,通過對計算開銷和通信開銷進(jìn)行分析來達(dá)到權(quán)衡.目前所提方案都需要一個中心機(jī)制(即一個可信任的中心節(jié)點(diǎn))的存在,負(fù)責(zé)對編碼消息進(jìn)行認(rèn)證或者對攻擊者進(jìn)行定位,但此方案需假設(shè)網(wǎng)絡(luò)中有一個可信的第三方中心機(jī)構(gòu),而且還需要預(yù)先知道網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu).
相比之下,本方案首次將聲譽(yù)機(jī)制引入到網(wǎng)絡(luò)編碼抗污染攻擊的問題中,并且不需要中心機(jī)制的存在即可準(zhǔn)確定位出攻擊者身份,更加適用于沒有可信任中心節(jié)點(diǎn)的移動網(wǎng)絡(luò)環(huán)境.目的節(jié)點(diǎn)在接收到編碼包之后首先對編碼包進(jìn)行認(rèn)證,認(rèn)證通過則獎勵此路徑上的節(jié)點(diǎn),若認(rèn)證不通過則懲罰此路徑上的節(jié)點(diǎn),通過此方法每個節(jié)點(diǎn)都獲得一個屬于自己的聲譽(yù)值,最后通過各聲譽(yù)值的比較,認(rèn)定聲譽(yù)值最低的或低于某閾值的節(jié)點(diǎn)為惡意節(jié)點(diǎn).
2.1 網(wǎng)絡(luò)模型
本方案基于移動自組織網(wǎng)絡(luò),這是一種無基站、無代理,且能夠動態(tài)、快速部署的無線自治系統(tǒng),所含移動節(jié)點(diǎn)在多跳無線鏈路中通常兼具終端及路由功能,且其移動范圍不受網(wǎng)絡(luò)通信范圍的制約.沒有中間基站的集中式網(wǎng)絡(luò)管理機(jī)制,使無線網(wǎng)的建立和維護(hù)單純依靠各獨(dú)立節(jié)點(diǎn)之間的相互協(xié)作來完成,因而是自治的.
本文考慮的是單源多跳移動網(wǎng)絡(luò),網(wǎng)絡(luò)中只有一個源節(jié)點(diǎn)S和一個目的節(jié)點(diǎn)D,V表示網(wǎng)絡(luò)中的節(jié)點(diǎn),E表示網(wǎng)絡(luò)中節(jié)點(diǎn)之間的通信傳輸路徑,且網(wǎng)絡(luò)中的節(jié)點(diǎn)具有移動性.每個節(jié)點(diǎn)都是獨(dú)立的個體,網(wǎng)絡(luò)中沒有中心機(jī)制的存在.一個簡單的單源網(wǎng)絡(luò)編碼模型如圖1所示.圖1中S表示源節(jié)點(diǎn),R1,R2,…,Rn表示n個中間節(jié)點(diǎn),D表示目的節(jié)點(diǎn),其中由中間節(jié)點(diǎn)發(fā)送到目的節(jié)點(diǎn)的數(shù)據(jù)包均為編碼過的數(shù)據(jù)包,接收一定量的編碼包之后由D端解碼.
Fig. 1 Network encoding model with single source.圖1 單源網(wǎng)絡(luò)編碼模型
2.2 隨機(jī)線性網(wǎng)絡(luò)編碼
對于確定性網(wǎng)絡(luò)編碼,由于網(wǎng)絡(luò)拓?fù)涫枪潭ú蛔兊模云湓诰幋a過程中中間節(jié)點(diǎn)的編碼向量也是固定不變的.如果網(wǎng)絡(luò)拓?fù)涫亲兓?,則編碼向量也要隨之改變.隨機(jī)網(wǎng)絡(luò)編碼主要針對的就是這種情況,其編碼向量是在中間節(jié)點(diǎn)隨機(jī)產(chǎn)生的.
如果網(wǎng)絡(luò)中一個編碼包Y∈Fm+np是v1,v2,…,vm∈Fm+np的一個線性組合,則這個線性組合的系數(shù)即包含在Y的最后m個成員中.中間節(jié)點(diǎn)R從其入邊接收到消息y1,y2,…,yr,則中間節(jié)點(diǎn)對其進(jìn)行編碼并轉(zhuǎn)發(fā),編碼后的消息X為
其中ci是從F中隨機(jī)選取的.為了恢復(fù)出原始消息,接收者應(yīng)該包含m個線性無關(guān)的向量形成一個滿秩矩陣.
2.3 攻擊模型
源節(jié)點(diǎn)和目的節(jié)點(diǎn)是可信的,污染數(shù)據(jù)攻擊是一種開始于中間節(jié)點(diǎn)生成非法的編碼向量并將其轉(zhuǎn)發(fā)至下行鏈路的破壞行為,這些非法的編碼向量在后來被更多的節(jié)點(diǎn)接收,并進(jìn)一步將其與其他接收的編碼向量組合,從而產(chǎn)生更多的非法編碼向量,導(dǎo)致污染數(shù)據(jù)在整個網(wǎng)絡(luò)中迅速蔓延,最終導(dǎo)致整個系統(tǒng)的癱瘓.如圖2所示為污染數(shù)據(jù)包的產(chǎn)生過程,惡意節(jié)點(diǎn)收到2個正常的數(shù)據(jù)包之后經(jīng)過非法編碼產(chǎn)生一個非法數(shù)據(jù)包,然后傳到下游節(jié)點(diǎn),下游節(jié)點(diǎn)接收到非法的數(shù)據(jù)包,將其與正常數(shù)據(jù)包經(jīng)過正常編碼之后得到的仍然是非法數(shù)據(jù)包.這個問題在傳統(tǒng)網(wǎng)絡(luò)中可以通過在原始數(shù)據(jù)的后面附加散列摘要的方法來確保數(shù)據(jù)的完整性,但是這種簡單的方法不適用于采用網(wǎng)絡(luò)編碼的網(wǎng)絡(luò),需要一種能夠跟蹤數(shù)據(jù)變化且確保其完整性的方法.
Fig. 2 The polluting process of data packets.圖2 污染數(shù)據(jù)包的產(chǎn)生過程
2.4 問題定義
本文只考慮流內(nèi)網(wǎng)絡(luò)編碼,定位在單源網(wǎng)絡(luò)環(huán)境中,即只有一個源節(jié)點(diǎn)和一個目的節(jié)點(diǎn),假設(shè)源節(jié)點(diǎn)和目的節(jié)點(diǎn)均是可信任的,只有中間節(jié)點(diǎn)可能是惡意節(jié)點(diǎn),污染攻擊可以使惡意節(jié)點(diǎn)注入無效的數(shù)據(jù)包或者修改數(shù)據(jù)包的相關(guān)部分,比如修改認(rèn)證碼部分.我們所要解決的問題是通過對目的節(jié)點(diǎn)接收到的數(shù)據(jù)包進(jìn)行檢測,判斷是否存在數(shù)據(jù)污染.若存在,則通過聲譽(yù)機(jī)制來定位出惡意節(jié)點(diǎn)的位置;若不存在,則由目的節(jié)點(diǎn)直接解碼恢復(fù)出正確的數(shù)據(jù)包.
針對移動網(wǎng)絡(luò)的特點(diǎn),建立無中心節(jié)點(diǎn)的聲譽(yù)評價機(jī)制.每個節(jié)點(diǎn)在發(fā)送數(shù)據(jù)包之前先確認(rèn)自己的下一跳節(jié)點(diǎn)是否在自己的懲罰列表(即目的節(jié)點(diǎn)收到錯誤包之后將此路徑上的節(jié)點(diǎn)報告給各個節(jié)點(diǎn)的懲罰對象)和獎勵列表(即目的節(jié)點(diǎn)收到正確包之后將此路徑上的節(jié)點(diǎn)報告給各個節(jié)點(diǎn)的獎勵對象)中.若包含在內(nèi),則立即更新此節(jié)點(diǎn)的聲譽(yù)值,然后比較通信范圍之內(nèi)的各個鄰居節(jié)點(diǎn)的聲譽(yù)值,選擇聲譽(yù)值高的節(jié)點(diǎn)發(fā)送數(shù)據(jù)包;若不包含在內(nèi),則直接選擇聲譽(yù)值高的節(jié)點(diǎn)進(jìn)行數(shù)據(jù)包轉(zhuǎn)發(fā).
另外,本方案還采用了其他鄰居節(jié)點(diǎn)輔助參與聲譽(yù)值評價.但是,這些鄰居輔助監(jiān)控必須滿足一定的條件,即是監(jiān)視節(jié)點(diǎn)與被監(jiān)視節(jié)點(diǎn)的共同鄰居.
3.1 節(jié)點(diǎn)聲譽(yù)值評價方法
首先給出3個定義:
定義1. 直接聲譽(yù)值.它是指節(jié)點(diǎn)根據(jù)自己的懲罰列表和獎勵列表對鄰居節(jié)點(diǎn)給出直接的聲譽(yù)值評價,記為DR,如DRa(b)表示節(jié)點(diǎn)a對節(jié)點(diǎn)b的直接聲譽(yù)值.
定義2.間接聲譽(yù)值.它是指其他鄰居節(jié)點(diǎn)通過信息交換傳遞過來的被評價節(jié)點(diǎn)的聲譽(yù)值,記為IR,如IRa(b)表示節(jié)點(diǎn)a對節(jié)點(diǎn)b的間接聲譽(yù)值.
定義3.總聲譽(yù)值.它是指直接聲譽(yù)值和間接聲譽(yù)值通過加權(quán)運(yùn)算,用于節(jié)點(diǎn)對被評價節(jié)點(diǎn)最后的聲譽(yù)值,如Ra(b)表示節(jié)點(diǎn)a對節(jié)點(diǎn)b的總聲譽(yù)值.
在該模型中,每個節(jié)點(diǎn)都擁有一個聲譽(yù)值列表,保存著本節(jié)點(diǎn)對其他節(jié)點(diǎn)信任度的評價.聲譽(yù)值列表包括:NodeID,DR,IR,R,其中NodeID表示被評價節(jié)點(diǎn)的ID,DR表示節(jié)點(diǎn)的直接聲譽(yù)值,IR表示節(jié)點(diǎn)的間接聲譽(yù)值,R表示節(jié)點(diǎn)的總聲譽(yù)值.
節(jié)點(diǎn)對其他節(jié)點(diǎn)的總聲譽(yù)值R,可以計算為
R=W1×DR+W2×IR,
W1>W2且W1+W2=1,
其中,W1,W2為權(quán)值,如W1=0.7,W2=0.3.
一般情況下,節(jié)點(diǎn)更偏重于自己直接獲得的直接聲譽(yù)值,因此取W1>W2,其中W1是直接聲譽(yù)值的權(quán)值,W2是間接聲譽(yù)值的權(quán)值.
3.2DR的計算
每個節(jié)點(diǎn)對已知節(jié)點(diǎn)的DR的初始值為0.5,首先判斷被評價的節(jié)點(diǎn)屬于懲罰列表或者屬于獎勵列表,由此得出,DR的計算分為2種情況:
1) 屬于獎勵列表.此種情況說明被評價節(jié)點(diǎn)表現(xiàn)正常,沒有參與錯誤包的形成或轉(zhuǎn)發(fā),DR線性增加,每次加一個變化值changevalue1,即DR=DR+changevalue1.
2) 屬于懲罰列表.此種情況說明被評價節(jié)點(diǎn)表現(xiàn)異常,參與了錯誤包的形成或轉(zhuǎn)發(fā),被定為懷疑對象,記錄懲罰次數(shù)n=1,之后累加,DR呈指數(shù)下降.使用指數(shù)函數(shù)描述,DR=DR-changevalue2×2n-1,其中n為此節(jié)點(diǎn)被懲罰的次數(shù).
changevalue1和changevalue2都是常量,一般情形下,對節(jié)點(diǎn)的懲罰力度要大于獎勵力度,使得節(jié)點(diǎn)的聲譽(yù)建立困難、失掉容易,這樣對節(jié)點(diǎn)的不良行為可以起到一種警示作用.因此changevalue2>changevalue1.
3.3IR的計算
IR為節(jié)點(diǎn)從其他節(jié)點(diǎn)獲得的聲譽(yù)值,即通過交換獲得的信息.每個節(jié)點(diǎn)對已知節(jié)點(diǎn)的IR值初始化為0.5,IR的更新和對信息來源節(jié)點(diǎn)的信任度(即其聲譽(yù)值)有關(guān),信任度高則更新幅度較大,若信任度低則更新幅度較小.IR的更新有2種方式:觸發(fā)式更新和周期性更新.觸發(fā)式更新是指某個節(jié)點(diǎn)的聲譽(yù)值變化超出某個閾值時,則監(jiān)視節(jié)點(diǎn)就廣播一條關(guān)于變化節(jié)點(diǎn)的聲譽(yù)值信息,收到信息的節(jié)點(diǎn)相應(yīng)地進(jìn)行聲譽(yù)值的更新;周期性更新是指節(jié)點(diǎn)每隔一段時間就廣播所有的聲譽(yù)信息,這樣會相應(yīng)地增加網(wǎng)絡(luò)開銷,占用一定帶寬.因此本聲譽(yù)機(jī)制中采用觸發(fā)式的方法更新.
IRa(b)=IRa(b)+(Rj(b)-IRa(b))×Ra(j),
其中,a表示評價節(jié)點(diǎn),b表示被評價節(jié)點(diǎn),Ra(b)表示節(jié)點(diǎn)a對被評價節(jié)點(diǎn)b的間接聲譽(yù)值,j為發(fā)送更新信息的節(jié)點(diǎn),Rj(b)表示節(jié)點(diǎn)j對被評價節(jié)點(diǎn)的聲譽(yù)值,Ra(j)表示評價節(jié)點(diǎn)a對發(fā)送更新信息的節(jié)點(diǎn)的信任度(即聲譽(yù)值).
4.1 檢錯機(jī)制
本方案選擇同態(tài)散列函數(shù)方案對數(shù)據(jù)進(jìn)行污染檢測.與一般的散列函數(shù)把任意長度的輸入映射成固定長度的散列值不同,同態(tài)散列函數(shù)還需要滿足以下條件:
?x,y∈Fp,X,Y∈Fm+np,定義Fp上的加法為⊕,乘法為?,則:
x?y=y⊕y⊕…⊕y=x⊕x⊕…⊕x.
x?Y=Y⊕Y⊕…⊕Y.
定義同態(tài)散列函數(shù)H(·):Fm+np→Fq,F(xiàn)q上的乘法為×,滿足H(X⊕Y)=H(X)×H(Y).因而:
同態(tài)散列函數(shù)檢測基本原理如下:
1) 源節(jié)點(diǎn).源節(jié)點(diǎn)發(fā)送數(shù)據(jù)包之前,先對每個原始數(shù)據(jù)包計算一個初始散列值hi=H(vi),i=1,2,…,n.因此可以計算出從原始擴(kuò)展矩陣首次編碼后數(shù)據(jù)向量的散列值為
① 中間節(jié)點(diǎn)編碼數(shù)據(jù)包得到的同態(tài)散列值hZ計算如下:
4.2 基于聲譽(yù)機(jī)制的定位
源節(jié)點(diǎn)根據(jù)聲譽(yù)值的高低選取轉(zhuǎn)發(fā)節(jié)點(diǎn),當(dāng)目的節(jié)點(diǎn)D接收到中繼節(jié)點(diǎn)傳來的數(shù)據(jù)包之后,首先檢測包的正確與否.若正確,則將此包傳遞路徑上的各個節(jié)點(diǎn)編號報告給其他節(jié)點(diǎn),并告知其為獎勵節(jié)點(diǎn);若檢測到的數(shù)據(jù)包是錯誤包,則將此路徑上各個節(jié)點(diǎn)的編號告知其他節(jié)點(diǎn)并標(biāo)記其為懲罰節(jié)點(diǎn).各個節(jié)點(diǎn)在傳輸數(shù)據(jù)之前首先根據(jù)自己的懲罰列表和獎勵列表更新各自鄰居節(jié)點(diǎn)的聲譽(yù)值,由此作為路由選擇的標(biāo)準(zhǔn).
源節(jié)點(diǎn)S在傳輸過程中選擇聲譽(yù)值較高的節(jié)點(diǎn)傳輸.最后,聲譽(yù)值最低或者低于閾值的節(jié)點(diǎn)則將其隔離出網(wǎng)絡(luò).
本方案的實(shí)現(xiàn)主要分為檢測模塊和定位模塊.
5.1 檢測模塊
本方案所選用的散列函數(shù)H(·)表示為
X∈Fn+mp,具體參數(shù)設(shè)置如表1所示:
Table 1 Parameter Settings for Detection Module
檢測過程具體步驟如下:
5.2 定位模塊
本方案的定位模塊采用聲譽(yù)機(jī)制對各個節(jié)點(diǎn)進(jìn)行聲譽(yù)值的評價,具體步驟如下:
1) 初始化.每個節(jié)點(diǎn)都有一個初始化的聲譽(yù)值,確定W1,W2以及閾值的大小.源節(jié)點(diǎn)首次發(fā)送數(shù)據(jù)包時由于聲譽(yù)值的初值相同,所以隨機(jī)選擇下一跳節(jié)點(diǎn).
2) 廣播和更新.當(dāng)目的節(jié)點(diǎn)對收到的編碼包認(rèn)證完之后,將編碼包的路徑信息廣播給各個節(jié)點(diǎn),添加到各自的獎勵列表或懲罰列表,并更新各自的聲譽(yù)值列表.
3) 定位.當(dāng)節(jié)點(diǎn)的聲譽(yù)值低于閾值時,將此節(jié)點(diǎn)隔離出網(wǎng)絡(luò),定義其為惡意節(jié)點(diǎn),不再參與包的編碼轉(zhuǎn)發(fā).
6.1 仿真環(huán)境設(shè)置
本方案選擇基于離散事件的網(wǎng)絡(luò)仿真工具NS2.仿真環(huán)境設(shè)置如下:模擬的通信模型選用CBR流,每個CBR流包含512 B;節(jié)點(diǎn)的移動模型采用Random waypoint模型,在該模型中節(jié)點(diǎn)可以隨機(jī)移動;MAC層使用802.11,仿真時間為900 s,選取的數(shù)據(jù)為6組數(shù)據(jù)的平均值.仿真場景設(shè)置如如表2所示:
Table 2 Simulation Scenario Settings
6.2 仿真結(jié)果分析
為了討論的方便,我們把本文提出的聲譽(yù)機(jī)制方案命名為RMNC(reputation mechanism for network coding).本實(shí)驗(yàn)主要與文獻(xiàn)[30]中所提SpaceMac方案進(jìn)行對比分析,SpaceMac方案是一種擴(kuò)大子空間的MAC同態(tài)方案,可以消除在通過子空間的屬性識別攻擊者過程中的任何不確定性.首先分析了RMNC方案和SpaceMac方案下的包傳遞成功率.如圖3所示,在沒有惡意節(jié)點(diǎn)存在的情況下,包的傳遞成功率幾乎可以達(dá)到100%;在有惡意節(jié)點(diǎn)的情況下,本方案的傳遞成功率明顯高于沒有聲譽(yù)機(jī)制的SpaceMac方案.說明基于聲譽(yù)機(jī)制的方案能夠更好地定位惡意節(jié)點(diǎn),從而從根本上解決了破壞數(shù)據(jù)包的產(chǎn)生問題.
Fig. 3 The success delivery ratio of data packet in different scenarios.圖3 不同場景下包的傳遞成功率
Fig. 4 The relationship between the malicious node number and the successful rate of packet delivery.圖4 惡意節(jié)點(diǎn)個數(shù)對包傳遞成功率的影響
圖4顯示了2種方案下的惡意節(jié)點(diǎn)個數(shù)與包傳遞成功率的關(guān)系.從圖4可以看出,惡意節(jié)點(diǎn)不斷增多的情況下,本方案仍可以高效地定位惡意節(jié)點(diǎn),使包的傳遞成功率保持在同一水平;在沒有抗污染攻擊機(jī)制存在的情況下,惡意節(jié)點(diǎn)不斷增多導(dǎo)致包的傳遞成功率直線下降;雖然SpaceMac方案使得包傳遞成功率有一定的提高,但隨著惡意節(jié)點(diǎn)增多傳遞成功率依然是下降趨勢.
圖5描述了當(dāng)存在一個惡意節(jié)點(diǎn)的情況下,本方案其他節(jié)點(diǎn)對此惡意節(jié)點(diǎn)聲譽(yù)值的平均值隨仿真時間的變化情況,其中聲譽(yù)閾值設(shè)置為0.2.從圖5可以看出,此節(jié)點(diǎn)的初始聲譽(yù)值為0.5,隨著時間的變化,該節(jié)點(diǎn)的平均聲譽(yù)值不斷降低;到400 ms時,聲譽(yù)值下降到0.2左右,此時網(wǎng)絡(luò)中其他節(jié)點(diǎn)很少會再使用此節(jié)點(diǎn),從而達(dá)到了防御的目的.
Fig. 5 The relationship between the reputation value and time with one malicious node.圖5 存在一個惡意節(jié)點(diǎn)時其聲譽(yù)值的變化
Fig. 6 The comparison of detection rate for malicious nodes between RMNC and SpaceMac scheme.圖6 不同方案惡意節(jié)點(diǎn)檢測率的變化
最后分析了2種方案惡意節(jié)點(diǎn)檢測率的變化,如圖6所示.從圖6可以看出,當(dāng)有5個或10個惡意節(jié)點(diǎn)的情況下,本方案的惡意節(jié)點(diǎn)檢測率都保持在較高的水平;而SpaceMac方案在惡意節(jié)點(diǎn)數(shù)增加的情況下檢測率有了明顯的下降,且仿真時間越長檢測率越低.
本文在研究網(wǎng)絡(luò)編碼抗污染攻擊已有方案的基礎(chǔ)上,首次提出了基于聲譽(yù)機(jī)制的抗污染攻擊方案,主要用于定位惡意節(jié)點(diǎn)的ID.以前的網(wǎng)絡(luò)編碼抗污染攻擊研究主要側(cè)重于檢測出錯誤數(shù)據(jù)包并將其丟棄,不能從根本上解決錯誤包的產(chǎn)生.本文主要側(cè)重于找出惡意節(jié)點(diǎn)并將其隔離出網(wǎng)絡(luò),從根本上杜絕惡意節(jié)點(diǎn)對數(shù)據(jù)包的破壞,同時本方案首次應(yīng)用到移動網(wǎng)絡(luò)場景中沒有中心機(jī)制參與的情況.最后通過實(shí)驗(yàn)仿真證明,本方案在包的投遞成功率上有一定的改進(jìn),并且在多個惡意節(jié)點(diǎn)存在的情況下依然能夠準(zhǔn)確地定位出惡意節(jié)點(diǎn)并將其隔離.
[1]Ahlswed R, Cai N, Li S Y R, et al. Network information flow[J]. IEEE Trans on Information Theory, 2000, 46(4): 1204-1216
[2]Chachulski S, Jennings M, Katti S, et al. Trading structure for randomness in wireless opportunistic routing[C] //Proc of the 2007 Conf on Applications, Technologies, Architectures, and Protocols for Computer Communications. New York: ACM, 2007: 169-180
[3]Zhang X, Li B. Optimized multipath network coding in lossy wireless networks[J]. IEEE Journal on Selected Areas in Communications, 2009, 27(5): 622-634
[4]Zhang X, Li B. Dice: A game theoretic framework for wireless multipath network coding[C] //Proc of the 9th ACM Int Symp on Mobile Ad Hoc Networking and Computing. New York: ACM, 2008: 293-302
[5]Katti S, Katabi D, Balakrishnan H, et al. Symbol-level network coding for wireless mesh networks[J]. Computer Communication Review, 2009, 38(4): 401-412
[6]Park J S, Gerla M, Lun D S, et al. CodeCast: A network-coding-based ad hoc multicast protocol[J]. IEEE Wireless Communications, 2006, 13(5): 76-81
[7]Katti S, Katabi D, Hu W et al. The importance of being opportunistic: Practical network coding for wireless environments[C] //Proc of the 43rd Annual Allerton Conf on Communication, Control, and Computing. Piscataway, NJ: IEEE, 2005: 1-10
[8]Katti S, Rahul H, Hu W, et al. Xors in the air: Practical wireless network coding[J]. Computer Communication Review, 2006, 36(4): 243-254
[9]Le J, Lui J, Chiu D M. DCAR: Distributed coding-aware routing in wireless networks[J]. IEEE Trans on Mobile Computing, 2010, 9(4): 596-608
[10]Das S, Wu Y, Chandra R, et al. Context-based routing: Technique applications and experience[C] //Proc of the 5th USENIX Symp on Networked Systems Design and Implementation. Berkeley, CA: USENIX Association, 2008: 379-392
[11]Dong Q, Wu J, Hu W, et al. Practical network coding in wireless networks[C] //Proc of the 13th Annual ACM Int Conf on Mobile Computing and Networking. New York: ACM, 2007: 306-309
[12]Omiwade S, Zheng R, Hua C. Practical localized network coding in wireless mesh networks[C] //Proc of the 5th Annual IEEE Communications Society Conf on Sensor, Mesh and Ad Hoc Communications and Networks. Piscataway, NJ: IEEE, 2008: 332-340
[13]Omiwade S, Zheng R, Hua C. Butteries in the mesh: Lightweight localized wireless network coding[C] //Proc of the 4th Workshop on Network Coding, Theory and Applications. Piscataway, NJ: IEEE, 2008: 1-6
[14]Ho T, Leong B, Koetter R, et al. Byzantine modification detection in multicast networks using randomized network coding[C] //Proc of Int Symp on Information Theory. Piscataway, NJ: IEEE, 2004: 144
[15]Ho T, Leong B, Koetter R, et al. Byzantine modification detection in multicast networks with random network coding[J]. IEEE Trans on Information Theory, 2009, 54(6): 2798-2803
[16]Jaggi S, langberg M, Katti S. Resilient network coding in the presence of byzantine adversaries[C] //Proc of the 26th IEEE Int Conf on Computer Communications. Piscataway, NJ: IEEE, 2007: 616-624
[17]Wang D, Silva D, Kschischang F R. Constricting the adversary: A broadcast transformation for network coding[C] //Proc of the 45th Annual Allerton Conf on Communication, Control, and Computing. Piscataway, NJ: IEEE, 2007: 403-408
[18]Nutman L, Langberg M. Adversarial models and resilient schemes for network coding[C] //Proc of IEEE Int Symp on Information Theory. Piscataway, NJ: IEEE, 2008: 171-175
[19]Leventc B, Czap L, Vajda I. Detection and recovery from pollution attacks in coding based distributed storage schemes[J]. IEEE Trans on Dependable and Secure Computing, 2011, 8(6): 824-838
[20]Wu Chi, Huang Cheng, Huang Xiaotao. A combination scheme against pollution attacks in network coding[C] //Proc of the 11th IEEE Int Conf on Computer and Information Science. Piscataway, NJ: IEEE, 2012: 71-76
[21]Krohn M N, Freedman M J, Mazieres D. On-the-fly verification of rateless erasure codes for efficient content distribution[C] //Proc of IEEE Symp on Security and Privacy. Piscataway, NJ: IEEE, 2004: 226-240
[22]Charles D, Jain K, Lauter K. Signatures for network coding[J]. International Journal of Information and Coding Theory, 2009, 1(1): 3-14
[23]Zhao F, Kalker T, Médard M, et al. Signatures for content distribution with network coding[C] //Proc of the IEEE Int Symp on Information Theory. Piscataway, NJ: IEEE, 2007: 556-560
[24]Li Q, Chiu D M, Lui J. On the practical and security issues of batch content distribution via network coding[C] //Proc of the 14th IEEE Int Conf on Network Protocols. Piscataway, NJ: IEEE, 2006: 158-167
[25]Yu Z, Wei Y, Ramkumar B, et al. An efficient scheme for securing XOR network coding against pollution attacks[C] //Proc of the 28th IEEE Int Conf on Computer Communications. Piscataway, NJ: IEEE, 2009: 406-414
[26]Agrawal S, Boneh D. Homomorphic MACs: MAC-based integrity for network coding[G] //LNCS 5536: Proc of the 7th Int Conf on Applied Cryptography and Network Security. Berlin: Springer, 2009: 292-305
[27]Cheng C, Jiang T. A novel homomorphic MAC scheme for authentication in network coding[J]. Communications Letters, 2011, 15(11): 1228-1230
[28]Yan W, Yang M, Li L, et al. Short signatures for multi-source network coding[C] //Proc of the 1st Int Conf on Multimedia Information Networking and Security. Piscataway, NJ: IEEE, 2009: 458-462
[29]Yang Mingxi, Luo Jiao, Li layuan. Signatures for multi-source network coding[J]. China Communications, 2010 (1): 131-137 (in Chinese)
(楊銘熙, 羅蛟, 李臘元. 多源網(wǎng)絡(luò)編碼簽名[J]. 中國通信, 2010 (1): 131-137)
[30]Le A, Markopoulou A. Locating byzantine attackers in intra-session network coding using spacemac[C] //Proc of IEEE Int Symp on Network Coding. Piscataway, NJ: IEEE, 2010: 1-6
[31]Zhang Yujie, Cai Ying, Li Zuo et al. Homomorphic MAC-based scheme against pollution attacks in network coding[J]. Wuhan University Journal of Natural Sciences, 2013, 18(5): 435-442
Wang Tiefeng, born in 1960. Associate professor at Beijing Information Science and Technology University. His main research interests include clouding computing, cybersecurity and cryptography algorithm.
Cai Ying, born in 1966. PhD. Currently a full professor with Beijing Information Science and Technology University. Her main research interests include cybersecurity, wireless networks and cryptography algorithm.
Zhang Yujie, born in 1988. Received her MS degree in computer application from Beijing Information Science and Technology University, China, in 2014. Her main research interests include the network coding and cyber security.
Reputation-Based Defense Scheme Against Pollution Attacks on Network Coding
Wang Tiefeng1, Cai Ying1,2, and Zhang Yujie1
1(BeijingKeyLaboratoryofInternetCultureandDigitalDisseminationResearch(BeijingInformationScienceandTechnologyUniversity),Beijing100101)2(StateKeyLaboratoryofInformationSecurity(InstituteofInformationEngineering,ChineseAcademyofSciences),Beijing100093)
Network coding is to apply innovative error-correction coding techniques in the network layer to improve network performance in both wired and wireless networks. It has been theoretically shown and experimentally demonstrated that if it is properly applied, it can significantly improve end-to-end network throughput, and hence has attracted tremendous attention in the last fifteen years. Unfortunately, this technique also has some serious drawbacks. One of the major problems is its vulnerability to pollution attacks, where malicious nodes can inject corrupted packets to mess up with the decoding process. To deal with this serious problem, many schemes have been proposed in the literature, but most of them are centralized in the sense that a trusted central authority may be required. In this paper, we propose a novel distributed defense scheme based on some reputation mechanism by taking advantage of node mobility. The fundamental idea is to apply an effective reputation mechanism to locate potential malicious nodes whenever suspected polluted packets are detected. We have conducted extensive comparison studies of our proposed scheme and the existing ones, and demonstrated that the proposed scheme can achieve high successful packet delivery ratio by effectively locating and isolating the malicious nodes, even when there exist multiple malicious nodes in the network.
pollution attack; network coding; reputation mechanism; wireless networks; security
2015-06-12;
2015-12-22
國家自然科學(xué)基金面上項(xiàng)目(61373038,61672106);網(wǎng)絡(luò)文化與數(shù)字傳播北京市重點(diǎn)實(shí)驗(yàn)室開放課題(ICDD201408);北京市教育委員會科技發(fā)展計劃項(xiàng)目(KM201611232013)
TP393
This work was supported by the General Program of the National Natural Science Foundation of China (61373038, 61672106), the Opening Project of Beijing Key Laboratory of Internet Culture and Digital Dissemination Research (ICDD201408), and the General Program of Science and Technology Development Project of Beijing Municipal Education Commission (KM201611232013).