王海鵬,梅中輝
(南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003)
一種基于安全網(wǎng)絡(luò)編碼技術(shù)的抗污染攻擊機(jī)制
王海鵬,梅中輝
(南京郵電大學(xué) 通信與信息工程學(xué)院,江蘇 南京 210003)
文中主要研究在安全網(wǎng)絡(luò)編碼技術(shù)中的抗污染問題。由于網(wǎng)絡(luò)編碼會(huì)在中間節(jié)點(diǎn)生成新的數(shù)據(jù)包,所以只要注入少量污染數(shù)據(jù)包就會(huì)造成污染擴(kuò)張,從而造成網(wǎng)絡(luò)性能下降。所以有必要在中間節(jié)點(diǎn)驗(yàn)證網(wǎng)絡(luò)中是否發(fā)生污染攻擊,但同時(shí)又要減少檢驗(yàn)所帶來的時(shí)間延遲。文中提出一種自適應(yīng)抗污染攻擊機(jī)制。該機(jī)制可以針對(duì)污染攻擊嚴(yán)重情況來自適應(yīng)調(diào)節(jié)中間節(jié)點(diǎn)的檢測(cè)步驟,同時(shí)提高了運(yùn)算效率并降低了驗(yàn)證時(shí)延。仿真結(jié)果表明,理論結(jié)果和實(shí)際計(jì)算吻合,自適應(yīng)驗(yàn)證機(jī)制的時(shí)延相比傳統(tǒng)驗(yàn)證機(jī)制較小。
安全網(wǎng)絡(luò)編碼;污染攻擊;自適應(yīng)驗(yàn)證;同態(tài)
網(wǎng)絡(luò)編碼[1]技術(shù)不同于傳統(tǒng)存儲(chǔ)-轉(zhuǎn)發(fā)技術(shù),中間節(jié)點(diǎn)可以對(duì)數(shù)據(jù)包進(jìn)行計(jì)算生成新的數(shù)據(jù)包。網(wǎng)絡(luò)編碼可以顯著提高網(wǎng)絡(luò)吞吐量、減小網(wǎng)絡(luò)能耗[2-3]等,但是安全問題是網(wǎng)絡(luò)編碼不能回避的問題,主要存在兩種攻擊方式:竊聽攻擊[4-6]和污染攻擊[7-8]。其中污染攻擊所造成的影響更嚴(yán)重,一個(gè)污染包注入到網(wǎng)絡(luò)中會(huì)在其他節(jié)點(diǎn)與別的未污染數(shù)據(jù)包組合生成新的數(shù)據(jù)包,導(dǎo)致新生成的數(shù)據(jù)包也受到污染,會(huì)造成污染的擴(kuò)散,浪費(fèi)了網(wǎng)絡(luò)資源。
目前對(duì)于污染攻擊存在兩種解決方案:
(1)基于信息論[9-10]的解決方案。通過給數(shù)據(jù)包增加冗余比特以達(dá)到檢驗(yàn)?zāi)康?,但只能在目的?jié)點(diǎn)才能檢驗(yàn)出污染包
(2)基于密碼學(xué)[11-13]的解決方案。這種方式可以使網(wǎng)絡(luò)中每個(gè)節(jié)點(diǎn)都檢驗(yàn)出污染包,可以有效抑制污染數(shù)據(jù)包的傳播。
文中采用基于密碼學(xué)的方案,但是傳統(tǒng)的密碼學(xué)解決方案存在計(jì)算量過大的特點(diǎn),因此并不實(shí)用。He Ming等[14]提出一種應(yīng)對(duì)污染攻擊的自適應(yīng)驗(yàn)證機(jī)制Adapkeys,但網(wǎng)絡(luò)需要嚴(yán)格時(shí)間同步。E. Kehdl等[15]提出的Null key制度利用正交性來驗(yàn)證數(shù)據(jù)包是否受到污染,但對(duì)每一代數(shù)據(jù)包的正交向量的分發(fā)與計(jì)算都比較復(fù)雜。Zhang Peng等[16]提出一種基于正交子空間的驗(yàn)證機(jī)制,計(jì)算量較小,但不能區(qū)分隨機(jī)錯(cuò)誤和污染攻擊。劉濟(jì)愷[17]在He Ming等研究結(jié)果的基礎(chǔ)上提出一種自適應(yīng)的驗(yàn)證機(jī)制,該方案能對(duì)隨機(jī)錯(cuò)誤和污染攻擊進(jìn)行區(qū)分,但簽名驗(yàn)證機(jī)制牽扯到大量的模指數(shù)運(yùn)算,計(jì)算量較大。
結(jié)合上述機(jī)制,文中提出一種基于正交子空間原理的自適應(yīng)驗(yàn)證機(jī)制,可相應(yīng)減小算法的計(jì)算復(fù)雜度。
假設(shè)只有信源節(jié)點(diǎn)S和接收者是可信的,而中間節(jié)點(diǎn)都是不可信的,可能發(fā)動(dòng)污染攻擊。而攻擊者試圖注入一些污染數(shù)據(jù)包w進(jìn)入網(wǎng)絡(luò)時(shí),即w?span{x1,x2,…,xm},攻擊者(adversarynodes)通過收集網(wǎng)絡(luò)合法數(shù)據(jù)包,并試圖使數(shù)據(jù)包w通過其他節(jié)點(diǎn)(innocentnodes)的驗(yàn)證。此外也假設(shè)中間節(jié)點(diǎn)可能會(huì)共謀(collude),即中間節(jié)點(diǎn)中的攻擊者可能會(huì)相互協(xié)作發(fā)動(dòng)攻擊,在該網(wǎng)絡(luò)中假設(shè)攻擊者的計(jì)算能力有限。
盡管數(shù)據(jù)包在網(wǎng)絡(luò)中會(huì)經(jīng)過很多輪的隨機(jī)網(wǎng)絡(luò)編碼,但是信源數(shù)據(jù)包所組成的(linearsubspace)線性子空間V是不變的,可以通過檢測(cè)接收到的數(shù)據(jù)包w是否屬于這個(gè)子空間V(w∈V)來判斷是否為原始數(shù)據(jù)包。網(wǎng)絡(luò)的中間節(jié)點(diǎn)可以從V的正交空間選出一個(gè)向量vT來描述向量空間V,如果w·vT≠0,則w不是原始數(shù)據(jù)包。但是每代數(shù)據(jù)包都需要分別計(jì)算V的正交分量并將其分發(fā)至網(wǎng)絡(luò)中的中間節(jié)點(diǎn),導(dǎo)致算法復(fù)雜且開銷大。文獻(xiàn)[16]提出相應(yīng)解決方案,通過給每個(gè)數(shù)據(jù)包加上若干標(biāo)簽與簽名,使加過標(biāo)簽或簽名的數(shù)據(jù)包w′與vT內(nèi)積為0,這樣就不用頻繁發(fā)送vT,節(jié)省了發(fā)送帶寬。基于這一基本原理,文中提出了Macsig機(jī)制,具有如下特點(diǎn):
(1)有效應(yīng)對(duì)污染攻擊,特別是對(duì)于對(duì)稱公鑰機(jī)制中特有的一種污染-標(biāo)簽攻擊(tagpollution)能做到有效應(yīng)對(duì)。
(2)相對(duì)于其他基于MAC[12]的驗(yàn)證機(jī)制能節(jié)省帶寬,采用提出的Double-RandomKeyDistribution機(jī)制,需要的標(biāo)簽(tag)更少。
(3)計(jì)算更加高效,驗(yàn)證時(shí)延小。
但是Macsig機(jī)制沒有對(duì)隨機(jī)傳輸錯(cuò)誤與污染攻擊進(jìn)行區(qū)分對(duì)待,前者更容易檢測(cè)出來,而不需要復(fù)雜的計(jì)算。而且通常網(wǎng)絡(luò)規(guī)模很大,小規(guī)模的數(shù)據(jù)包污染是可以忍受的,在這里結(jié)合文獻(xiàn)[14]的自適應(yīng)框架,提出一種新的驗(yàn)證機(jī)制。
2.1 參數(shù)設(shè)置
T:節(jié)點(diǎn)工作參數(shù),每個(gè)節(jié)點(diǎn)均獨(dú)立維護(hù),系統(tǒng)初始化時(shí),每個(gè)節(jié)點(diǎn)的T=0;
d:每個(gè)數(shù)據(jù)包所帶有的一個(gè)參數(shù),代表經(jīng)過上次驗(yàn)證后所經(jīng)過的跳數(shù),最小值為0,最大值為dmax;
Tmax:可以調(diào)節(jié)的安全參數(shù),代表T的最大值;
Flag:每個(gè)節(jié)點(diǎn)單獨(dú)維護(hù)的安全參數(shù),代表當(dāng)前節(jié)點(diǎn)是否有污染數(shù)據(jù)包。為0代表安全,為1代表檢測(cè)狀態(tài),處于檢測(cè)狀態(tài)的節(jié)點(diǎn)不參加網(wǎng)絡(luò)編碼,默認(rèn)初始化為0;
id:代表當(dāng)前數(shù)據(jù)包屬于哪一代,id∈Fp;
G:一個(gè)階數(shù)為p的乘法群G,乘法群的生成元g,p是一個(gè)位數(shù)很大的質(zhì)數(shù);
h:公鑰,計(jì)算公式h=gβ=(gβ1…gβm+l+1);
2.2 簽名與驗(yàn)證步驟
1)源節(jié)點(diǎn)簽名。
對(duì)于信源S發(fā)出的m個(gè)x1,x2,…,xm消息,生成唯一的代標(biāo)識(shí)符id。MACKey選取方法同文獻(xiàn)[16]一樣,信源節(jié)點(diǎn)從密鑰集合K中隨機(jī)選出一個(gè)大小為l的密鑰子集,作為驗(yàn)證該代數(shù)據(jù)包的MACKey集合,然后在該代的每個(gè)數(shù)據(jù)包中附上這l個(gè)密鑰的對(duì)應(yīng)索引。網(wǎng)絡(luò)中其他節(jié)點(diǎn)分配密鑰的方式同文獻(xiàn)[18]。
源節(jié)點(diǎn)簽名過程可歸納如下:
(1)生成隨機(jī)校驗(yàn)值:把每一代id作為種子放入PRG后,生成一個(gè)隨機(jī)向量PRG(id)=R={r1,r2,…,rm+n+l+2},對(duì)于xi計(jì)算校驗(yàn)值z(mì)i:
(1)
2)中間節(jié)點(diǎn)驗(yàn)證。
當(dāng)中間節(jié)點(diǎn)收到一個(gè)編碼向量w=(w1,w2,…,wm+n),其附帶的其他消息為(tw,1,tw,2,…,tw,l,σw,zw,id,d),驗(yàn)證步驟如圖1所示。
圖1 中間節(jié)點(diǎn)驗(yàn)證流程
(1)校驗(yàn)值驗(yàn)證。主要針對(duì)隨機(jī)發(fā)生的錯(cuò)誤,根據(jù)id獲得隨機(jī)校驗(yàn)向量PRG(id)=R={r1,r2,…,rm+n+l+2},然后計(jì)算校驗(yàn)值。如果zw=z,則通過校驗(yàn)值驗(yàn)證,視為合法消息,否則為污染消息。而對(duì)于同一代數(shù)據(jù)包,計(jì)算R后并存儲(chǔ),下次直接調(diào)用即可。
(2)Macsig驗(yàn)證機(jī)制,通過校驗(yàn)值驗(yàn)證后,中間節(jié)點(diǎn)判斷參數(shù)節(jié)點(diǎn)T和消息附帶的經(jīng)過跳數(shù)dw,只有滿足dw Macsig驗(yàn)證步驟可歸納如下: 步驟3:若是合法消息,則將該消息的經(jīng)過跳數(shù)dw設(shè)置為0,若當(dāng)前中間節(jié)點(diǎn)的T>0,則T減小1,否則T仍為0。 當(dāng)數(shù)據(jù)包w為污染包,當(dāng)前節(jié)點(diǎn)的T增加ΔT,當(dāng)T+ΔT>Tmax,則將T設(shè)置為Tmax,發(fā)送警告給上游節(jié)點(diǎn),且當(dāng)前節(jié)點(diǎn)的FLAG=1,對(duì)當(dāng)前節(jié)點(diǎn)進(jìn)行批驗(yàn)證。然后上游節(jié)點(diǎn)在收到警告后,先驗(yàn)證警告的真?zhèn)涡裕绻ㄟ^驗(yàn)證,上游節(jié)點(diǎn)將對(duì)自己緩存中的數(shù)據(jù)包進(jìn)行批驗(yàn)證(即利用緩存數(shù)據(jù)包隨機(jī)生成一個(gè)新包,并檢測(cè)新包是否受到污染)。若通過批驗(yàn)證,此上游節(jié)點(diǎn)設(shè)FLAG保持不變?nèi)詾?。若不通過,首先設(shè)置此上游節(jié)點(diǎn)的T=T+ΔT,并且將此上游節(jié)點(diǎn)的FLAG變?yōu)?,此上游節(jié)點(diǎn)將停止產(chǎn)生新的數(shù)據(jù)包,進(jìn)入隔離狀態(tài)。在隔離狀態(tài)期間進(jìn)行二分法查找污染數(shù)據(jù)包,直到從緩存中清除污染數(shù)據(jù)包,F(xiàn)LAG重新歸0,隔離狀態(tài)結(jié)束,此上游節(jié)點(diǎn)將重新參加網(wǎng)絡(luò)編碼。 步驟4:中間節(jié)點(diǎn)對(duì)驗(yàn)證通過的數(shù)據(jù)包進(jìn)行編碼輸出,將消息的校驗(yàn)值、簽名、標(biāo)簽值與消息一起進(jìn)行相同的編碼操作。假設(shè)編碼c個(gè)合法消息w1,w2,…,wc所對(duì)應(yīng)的校驗(yàn)值、簽名和標(biāo)簽為(zwi,σwi,twi,1…twi,r),編碼系數(shù)為a1…ac,則編碼過程為: 新數(shù)據(jù)包d值更新為: dw′=max(dw1,dw2,…,dwc)+1 (3) 3)接收節(jié)點(diǎn)接收驗(yàn)證。 目的節(jié)點(diǎn)收到數(shù)據(jù)包w后,先進(jìn)行校驗(yàn)值驗(yàn)證,若不通過,直接結(jié)束。通過后進(jìn)行Macsig驗(yàn)證,通過則認(rèn)為是合法數(shù)據(jù)包,放入接收緩存,等待解碼操作,否則丟棄數(shù)據(jù)包。 2.3 驗(yàn)證方式正確性 現(xiàn)在需證明無論是校驗(yàn)值、MAC校驗(yàn)值還是簽名都滿足同態(tài)性。 校驗(yàn)值滿足同態(tài)性: 簽名的同態(tài)性: MAC標(biāo)簽的同態(tài)性: 該機(jī)制還有一個(gè)漏洞,即如果有多于預(yù)設(shè)值c的中間節(jié)點(diǎn)預(yù)謀,則攻擊節(jié)點(diǎn)可能會(huì)生成污染數(shù)據(jù)包,并通過其他節(jié)點(diǎn)的驗(yàn)證。為了解決這個(gè)問題,信源應(yīng)當(dāng)對(duì)整個(gè)文件計(jì)算Hash值,并發(fā)送給信宿,這樣信宿節(jié)點(diǎn)在解碼成功后交給上層前,應(yīng)當(dāng)再計(jì)算Hash值。將兩個(gè)值進(jìn)行比較,如果相同,認(rèn)為未發(fā)生污染;如果不同,則認(rèn)為該機(jī)制失效,考慮用其他更高安全性的抗污染機(jī)制。 2.4 驗(yàn)證警告機(jī)制 如果式(7)成立,則判斷該警告是偽造的,即沒有發(fā)生污染。若不成立,則認(rèn)為發(fā)生了污染,即警告消息是有效的(Valid)。 仿真結(jié)果如圖2所示。 圖2 系統(tǒng)帶寬開銷 從圖中可以看出,隨著數(shù)據(jù)包長度的增加,帶寬負(fù)載是呈下降趨勢(shì)的。參與共謀攻擊節(jié)點(diǎn)越多,帶寬占用越大。 由于有限域上的模指數(shù)運(yùn)算非?;〞r(shí)間,所以主要考慮節(jié)點(diǎn)在驗(yàn)證時(shí)的計(jì)算耗時(shí)。利用NTL函數(shù)庫,可以得出在驗(yàn)證階段的隨機(jī)校驗(yàn)階段需要(m+n+l+2)次乘法,(m+n+l+1)次加法,而在Macsig階段則進(jìn)行了(m+l+1)模指數(shù)運(yùn)算,(m+l)+l*(m+n+1)次乘法和(m+n)次加法,其他參數(shù)設(shè)置和上面一樣。而文中提出機(jī)制的優(yōu)點(diǎn)在于不是每一個(gè)節(jié)點(diǎn)都完全執(zhí)行所有的驗(yàn)證步驟。假設(shè)dmax=5,即污染數(shù)據(jù)包最多在網(wǎng)絡(luò)中傳播5跳,那么一個(gè)合法數(shù)據(jù)包在最理想的情況下要經(jīng)歷5次隨機(jī)校驗(yàn)值檢測(cè)和一次的Macsig認(rèn)證,而文獻(xiàn)[11]提出的基于同態(tài)簽名的傳統(tǒng)方案,則要經(jīng)歷5次一樣的校驗(yàn)。每次驗(yàn)證都至少進(jìn)行(m+n)次模指數(shù)運(yùn)算和RSA解密步驟。文獻(xiàn)[17]的方案同樣運(yùn)用了自適應(yīng)驗(yàn)證的思想,但每次驗(yàn)證都同樣需要至少(m+n)次模指數(shù)運(yùn)算。 方案仿真結(jié)果如圖3所示。 圖3 系統(tǒng)計(jì)算復(fù)雜度開銷 從圖中可以看出,采用自適應(yīng)驗(yàn)證思想的方案都比文獻(xiàn)[11]方案驗(yàn)證時(shí)延小,而且文中機(jī)制相比同樣采用自適應(yīng)思想的文獻(xiàn)[17]的延遲要小,是因?yàn)槲闹蟹桨附档土四V笖?shù)運(yùn)算次數(shù)。如果考慮極端情況,即數(shù)據(jù)包每一跳都恰好滿足檢測(cè)條件,需要被檢測(cè),根據(jù)仿真結(jié)果的趨勢(shì),可以看出計(jì)算量仍然較低,不會(huì)超過其他機(jī)制。當(dāng)安全參數(shù)c越小時(shí)驗(yàn)證越快,但付出的代價(jià)是協(xié)議安全性降低,抗共謀攻擊的能力降低,而且新的機(jī)制需要復(fù)雜的密鑰分配機(jī)制來保證機(jī)制的可行性。 文中主要介紹了一種能自適應(yīng)網(wǎng)絡(luò)情況的抗污染攻擊方案。傳統(tǒng)的污染檢測(cè)方案計(jì)算量大,驗(yàn)證耗時(shí),且不能靈活改變安全檢測(cè)等級(jí)。一方面將自適應(yīng)框架引入到檢測(cè)方案中,另一方面將方案中的檢測(cè)機(jī)制予以改進(jìn),減小了模指數(shù)運(yùn)算的次數(shù)。仿真結(jié)果表明,與傳統(tǒng)的檢測(cè)機(jī)制相比,有效降低了檢測(cè)時(shí)延。 [1]AhlswedeR,CaiN,LiSYR,etal.Networkinformationflow[J].IEEETransactionsonInformationTheory,2000,46(4):1204-1216. [2] 楊 林,鄭 剛,胡曉惠.網(wǎng)絡(luò)編碼的研究進(jìn)展[J].計(jì)算機(jī)研究與發(fā)展,2008,45(3):400-407. [3] 黃 政,王 新.網(wǎng)絡(luò)編碼中的優(yōu)化問題的研究[J].軟件學(xué)報(bào),2009,20(5):1349-1361. [4] 俞立峰,楊 瓊,于 娟,等.防竊聽攻擊的安全網(wǎng)絡(luò)編碼[J].計(jì)算機(jī)應(yīng)用研究,2012,29(3):813-818. [5]CaiNing,ChanT.Theoryofsecurenetworkcoding[J].IEEEJournals&Magazines,2011,57:416-423. [6] 周業(yè)軍,李 暉,馬建峰.一種防竊聽的隨機(jī)網(wǎng)絡(luò)編碼[J].西安電子科技大學(xué)學(xué)報(bào):自然科學(xué)版,2009,36(4):696-701. [7] 曹張華,唐元生.安全網(wǎng)絡(luò)編碼綜述[J].計(jì)算機(jī)應(yīng)用,2010,30(2):499-505. [8] 張盛勇,陳世康.網(wǎng)絡(luò)編碼的安全問題初探[J].通信技術(shù),2012,45(1):105-107. [9]HoT,LeongB,KoetterR,etal.Byzantinemodificationdetectioninmulticastnetworksusingrandomizednetworkcoding[C]//ProcofIEEEinternationalsymposiumofinformationtheory.[s.l.]:IEEE,2004. [10]JaggiS,LangbergM,KattiS,etal.Resilientnetworkcodinginthepresenceofbyzantineadversaries[C]//Procofinternationalconferenceoncomputercommunications.[s.l.]:[s.n.],2007. [11]YuZ,WeiY,RamkumarB,etal.Anefficientsignature-basedschemeforsecuringnetworkcodingagainstpollutionattacks[C]//Procofinternationalconferenceoncomputercommunications.[s.l.]:[s.n.],2008. [12]AgrawalS,BonehD.HomomorphicMACs:MAC-basedintegrityfornetworkcoding[C]//Procofinternationalconferenceonappliedcryptographyandnetworksecurity.[s.l.]:[s.n.],2009. [13]ZhaoF,KalkerT,MedardM,etal.Signaturesforcontentdistributionwithnetworkcoding[C]//ProcofIEEEinternationalsymposiumoninformationtheory.[s.l.]:IEEE,2007. [14]HeMing,ChenLin,WangHong,etal.Adapkeys:anadaptivesecurityschemefornetworkcoding[C]//ProcofIEEEAsia-Pacificservicescomputingconference.Guilin:IEEE,2012:309-314. [15]KehdlE,LiB.Nullkeys:limitingmaliciousattacksvianullspacepropertiesofnetworkcoding[C]//Procofinternationalconferenceoncomputercommunications.[s.l.]:[s.n.],2009. [16]ZhangPeng,JiangYixin,LinChuang,etal.Paddingfororthogonality:efficientsubspaceauthenticationfornetworkcoding[C]//Procofinternationalconferenceoncomputercommunications.Shanghai:IEEE,2011:1026-1034. [17] 劉濟(jì)愷.防污染的安全網(wǎng)絡(luò)編碼研究[D].成都:西南交通大學(xué),2014. [18]CanettiR,GarayJ,ItkisG,etal.Multicastsecurity:ataxonomyandsomeefficientconstructions[C]//Procofinternationalconferenceoncomputercommunications.[s.l.]:[s.n.],1999. [19]GkantsidisC,RodriguezP.Cooperativesecurityfornetworkcodingfiledistribution[C]//Procofinternationalconferenceoncomputercommunications.[s.l.]:[s.n.],2006. A Scheme against Pollution Attacks Based on Secure Network Coding WANG Hai-peng,MEI Zhong-hui (College of Telecommunication & Information Engineering,Nanjing University of Posts and Telecommunications,Nanjing 210003,China) It mainly deals with pollution attacks in secure network coding in this paper.The new packet will be produced in the intermediate nodes by employing network coding,so a small amount of pollution data packet could cause pollution expansion,which results in substantially degraded performance for the network.Therefore,it is necessary to verify whether the intermediate nodes are in the pollution attack or not,and at the same time to reduce the time delay caused by security detection.An adaptive mechanism that can dynamically adjust the authentication strategy of intermediate nodes is proposed so as to improve operational efficiency and decrease the time delay brought by verification.Simulation shows that theoretical results are in accordance with actual calculation,and the time delay of the adaptive mechanism is less than that of traditional verification mechanism. secure network coding;pollution attack;adaptive verification;homomorphic 2015-10-19 2016-01-22 時(shí)間:2016-06-22 國家科技重大專項(xiàng)(2010zx03003-003) 王海鵬(1991-),男,碩士研究生,研究方向?yàn)榘踩W(wǎng)絡(luò)編碼;梅中輝,副教授,研究生導(dǎo)師,研究方向?yàn)榫W(wǎng)絡(luò)編碼技術(shù)、協(xié)助通信技術(shù)等。 http://www.cnki.net/kcms/detail/61.1450.TP.20160622.0842.008.html TP301 A 1673-629X(2016)07-0094-06 10.3969/j.issn.1673-629X.2016.07.0203 仿 真
4 結(jié)束語