陶 洋,潘蕾娜,王 進(jìn),楊 柳
(重慶郵電大學(xué)通信與信息工程學(xué)院,重慶 400065)
近年來,隨著物聯(lián)網(wǎng)產(chǎn)業(yè)的發(fā)展,無線傳感器網(wǎng)絡(luò)[1]作為其感知層最重要的技術(shù)之一,也得到了更進(jìn)一步的研究應(yīng)用。然而,其面臨的安全威脅也日益多樣化[2],安全需求也越來越迫切。傳統(tǒng)基于密碼體制的加密認(rèn)證安全技術(shù)只能抵御來自網(wǎng)絡(luò)外部的攻擊,而不能有效識別內(nèi)部具有合法身份的妥協(xié)節(jié)點(diǎn)發(fā)起的惡意攻擊。因此,近年來,無線傳感器網(wǎng)絡(luò)的信任管理作為基于加密的傳統(tǒng)安全機(jī)制的補(bǔ)充,受到了研究人員的廣泛關(guān)注。
Ganeriwal提出了一種基于信譽(yù)的無線傳感器網(wǎng)絡(luò)管理機(jī)制(RFSN),基于節(jié)點(diǎn)成功交互與失敗交互次數(shù)來選取信任因子[3],通過使用貝葉斯公式計算節(jié)點(diǎn)信任度。文獻(xiàn)[4]為了應(yīng)對無線傳感網(wǎng)的內(nèi)部攻擊,采用D-S證據(jù)理論結(jié)合多種證據(jù)來識別網(wǎng)絡(luò)中的惡意節(jié)點(diǎn),并且給出了處理不可靠鄰節(jié)點(diǎn)信任證據(jù)的方法。文獻(xiàn)[5-6]選取主觀邏輯來描述節(jié)點(diǎn)間的信任關(guān)系,常用包含代表不同信任程度的元組來刻畫不完全信息場景下的信任關(guān)系。文獻(xiàn)[7-9]分別考慮了通信信任、能量信任以及數(shù)據(jù)信任,比以往的信任模型更加可靠和精確。
研究發(fā)現(xiàn),大多數(shù)的信任模型都可以對內(nèi)部攻擊有一定的防御,但是無法抵御針對信任模型的攻擊。因此,本文提出一種防御信任模型攻擊的信任評價模型(DTSA)。在設(shè)計信任模型時重點(diǎn)考慮了針對信任模型的攻擊,彌補(bǔ)了現(xiàn)有模型的不足。
本文假設(shè)節(jié)點(diǎn)i對節(jié)點(diǎn)j發(fā)起信任評估,稱節(jié)點(diǎn)i為評估節(jié)點(diǎn),節(jié)點(diǎn)j為被評估節(jié)點(diǎn)。節(jié)點(diǎn)i將對節(jié)點(diǎn)j的直接信任與間接信任進(jìn)行計算與融合,最后得到節(jié)點(diǎn)j的綜合信任。通過信任因素計算直接信任,而開關(guān)攻擊節(jié)點(diǎn)會周期性地執(zhí)行攻擊行為從而使得自身信任值維持在一個比較高的水平。為了降低開關(guān)攻擊節(jié)點(diǎn)的信任值,通過設(shè)置控制因子來控制其信任值的值域。在計算間接信任時,會先進(jìn)行偏離度分析,過濾掉虛假的推薦信任,并根據(jù)偏離度分配推薦信任的權(quán)重。在融合直接信任、間接信任時,為了防止信任值的上升速度過快,本模型對信任更新進(jìn)行了分析并設(shè)計了自適應(yīng)歷史信任權(quán)重。圖1 描述的是DTSA模型的關(guān)鍵步驟。
圖1 DTSA模型關(guān)鍵步驟
2.1.1 基于模糊綜合評判的直接信任計算
采用模糊綜合評判模型對各信任因素進(jìn)行分析,建立信任向量來計算直接信任。包括以下4個步驟:
①直接信任因素集
本文從信任值準(zhǔn)確性與反映攻擊行為的角度出發(fā),選取了4個因素。直接信任的因素集F={F1,F2,F3,F4}。F1、F2、F3、F4分別表示數(shù)據(jù)相關(guān)性因素、數(shù)據(jù)包發(fā)送速率因素、數(shù)據(jù)新鮮性因素、成功交互率因素[10-11]。
②直接信任評價集
可利用對各信任評價集的隸屬度來反映直接信任的大小,節(jié)點(diǎn)的某個信任因素在不同信任評價集上的隸屬度可組成這個節(jié)點(diǎn)在該單因素上的模糊向量,此向量可以用來表示節(jié)點(diǎn)在各因素上的信任值評價大小。本文設(shè)置了4個程度的模糊子集Ui(i=1,2,3,4)分別表示節(jié)點(diǎn)信任的不同程度{不可信,低可信,中可信,高可信}。
③構(gòu)造隸屬度矩陣和確定權(quán)重
節(jié)點(diǎn)直接信任的模糊綜合評判的關(guān)鍵步驟就是確定信任因素在各信任模糊集上的隸屬度大小。由于梯形和三角形的隸屬度函數(shù)計算簡單以及節(jié)點(diǎn)物理資源有限,本文選取梯形和三角形表示法構(gòu)建信任模糊子集的隸屬度函數(shù),如圖2所示[12]。
圖2 輸入變量隸屬度
模糊綜合評判法中的權(quán)重向量W=(w1,w2,w3,w4)反映了對各信任因素的關(guān)注程度,w1、w2、w3、w4分別為4個信任因素的權(quán)重,需滿足w1+w2+w3+w4=1。本文采用常用的常值權(quán)重,且令w1=w2=w3=w4=1/4。
④模糊綜合評價
利用合適的模糊合成算子將模糊權(quán)重矢量與隸屬度矩陣合成得到各評價對象的模糊綜合評價結(jié)果向量,其計算過程如下:
=(b1,b2,b3,b4)
(1)
式中:°為模糊合成算子,bi為被評價節(jié)點(diǎn)從整體上看對信任評價模糊子集Ui的隸屬程度。
本文采用加權(quán)平均型的M(?,⊕)算子。其具有綜合程度高、利用R的信息充分、體現(xiàn)權(quán)重作用明顯的特點(diǎn)[13]。根據(jù)M(?,⊕)算子的定義,的計算公式如下:
(2)
然后對評價結(jié)果向量B進(jìn)行處理,參考使用模糊向量單值法[13]。給4個信任等級依次賦予數(shù)值(c1=0.2,c2=0.5,c3=0.7,c4=0.95),需要滿足c1 (3) 2.1.2 防御開關(guān)攻擊的直接信任計算 本文從信任值是否具有可預(yù)測性入手,分別定義了成功的信任評估Si,j與失敗的信任評估Fi,j。舉例來說,如果節(jié)點(diǎn)i對j的直接信任值是0.9,我們就認(rèn)為下一個周期j的直接信任能夠達(dá)到或者接近0.9。如果下一周期節(jié)點(diǎn)j的直接信任值不低于(0.9-α),則認(rèn)為當(dāng)前信任評估是成功的,那么Si,j=Si,j+1。如果下一周期節(jié)點(diǎn)j的信任值低于(0.9-σ),則認(rèn)為當(dāng)前信任評估是失敗的,那么Fi,j=Fi,j+1。本文設(shè)置σ=DTi,j(t)×100%,σ的值可也根據(jù)具體的網(wǎng)絡(luò)環(huán)境來設(shè)定。于是定義控制因子f如下: (4) 將控制因子f乘以直接信任DTi,j(t)便可對開關(guān)攻擊節(jié)點(diǎn)的信任值進(jìn)行控制,且對正常節(jié)點(diǎn)造成的影響比較小,則直接信任DTi,j(t)的計算公式更新如下: (5) 本文在收集來自其他節(jié)點(diǎn)對j的推薦信任時,首先對收集到的推薦信任進(jìn)行篩選,然后為多個推薦信任分配權(quán)值,最后計算出間接信任ITi,j(t)。 間接信任的計算可以表示為: (6) (7) 式中:DTi,j(t),DTk,j(t)分別表示節(jié)點(diǎn)i對k的直接信任值和節(jié)點(diǎn)k對j的直接信任值。 間接信任真實(shí)值RITi,j(t)的計算如下: (8) 式中:Cn是由i、j共同鄰節(jié)點(diǎn)中的正常節(jié)點(diǎn)所構(gòu)成的節(jié)點(diǎn)集,n由節(jié)點(diǎn)集Cn的元素個數(shù)。 本文定義共同鄰節(jié)點(diǎn)k的推薦信任偏離度dk如下: (9) 如果dk的數(shù)值越大,那么k的推薦信任就越可能是來自惡意節(jié)點(diǎn)的虛假推薦。為了保障推薦信任的可靠性,設(shè)置偏離度門限值ε=0.2,過濾掉偏離度dk>ε的推薦信任[14]。對于dk≤ε的節(jié)點(diǎn),存入集合Cf中。 為了進(jìn)一步提升間接信任的準(zhǔn)確性,本文在已有模型的基礎(chǔ)上提出了推薦信任權(quán)重分配方案。本文將為集合Cf中的c個節(jié)點(diǎn)根據(jù)其偏離度大小來分配權(quán)重,偏離程度越小的推薦信任權(quán)重越大。定義集合Cf中節(jié)點(diǎn)推薦信任的總偏移度D(t)如下: (10) 然后定義集合中Cf節(jié)點(diǎn)的總偏離度D(t)與任一偏移度dk(t)之間的數(shù)值關(guān)系rk(t)如下: Rk(t)=D(t)/dk(t) (11) 于是,集合Cf中的任意節(jié)點(diǎn)k的權(quán)重wk可通過對rk(t)采取歸一化計算得到: (12) 最后將式(12)與式(7)代入式(6)中,則間接信任ITi,j(t)的計算更新如下: (13) 2.3.1 當(dāng)前綜合信任 (14) 式中:DTi,j(t),ITi,j(t)分別為節(jié)點(diǎn)i對j的直接信任和節(jié)點(diǎn)i對j的間接信任。φ,θ分別為直接信任權(quán)值和間接信任權(quán)值,且φ+θ=1;本文令φ=θ=0.5。 2.3.2 綜合信任 為了降低信任值的上升速度,防止惡意節(jié)點(diǎn)利用持續(xù)的正常行為來迅速提高自身信任值,本文選取上一周期的綜合信任值CTi,j(t-1)作為歷史因素納入CTi,j(t)的計算中。則綜合信任CTi,j(t)可按如下公式計算: (15) 式中:CTi,j(t-1)為前一個周期,節(jié)點(diǎn)i對j的的綜合信任值。λ為前一周期的綜合信任值的權(quán)重,即歷史信任的權(quán)重。 本文從前后信任差的角度出發(fā),認(rèn)為當(dāng)前的綜合信任比歷史綜合信任高的越多,則λ越接近1,即更多的考慮歷史綜合信任值。反之,如果當(dāng)前綜合信任比歷史綜合信任低的越多,則λ越接近0。令自適應(yīng)權(quán)值λ定義如下: (16) 將λ代入計算綜合信任CTi,j(t)的式(15)中,則式(15)更新如下: (17) 利用MATLAB對前面提出的DTSA模型與 TEMBB[7]模型、EMNT[8]模型進(jìn)行對比驗證。仿真場景設(shè)置如下:監(jiān)測區(qū)域為100 m×100 m的正方形區(qū)域,隨機(jī)分布100個節(jié)點(diǎn),每個通信半徑設(shè)置為20 m。為了控制單一變量,某些參數(shù)會根據(jù)實(shí)驗?zāi)繕?biāo)的不同設(shè)置不同的值,這些參數(shù)會在實(shí)驗中進(jìn)行說明。 3.2.1 信任值變化實(shí)驗 考慮WSNs存在不穩(wěn)定性,如果節(jié)點(diǎn)j是正常節(jié)點(diǎn),將會以0.98~1.00的幾率完成網(wǎng)內(nèi)各項交互與采集任務(wù)。如果節(jié)點(diǎn)j是惡意節(jié)點(diǎn),將會以0.8~1.0的幾率展開選擇性轉(zhuǎn)發(fā)與發(fā)送虛假監(jiān)測數(shù)據(jù)。i、j的共同鄰節(jié)點(diǎn)均為正常節(jié)點(diǎn),并提供真實(shí)的推薦信任,所有節(jié)點(diǎn)的信任初值均為0.5。4個信任因素的權(quán)重為w1+w2+w3+w4=1,直接、間接信任的權(quán)重為φ=θ=0.5。 首先,如果j是正常節(jié)點(diǎn),由于其行為的高度可靠性,其信任值會隨著網(wǎng)絡(luò)的持續(xù)運(yùn)行而不斷提高。重復(fù)1 000次并取平均值,正常節(jié)點(diǎn)j的信任值變化趨勢如圖3所示。 圖3 正常節(jié)點(diǎn)j的信任值變化 如圖3所示,隨著節(jié)點(diǎn)j持續(xù)表現(xiàn)出良好的一面,其信任值會從初始值0.5逐漸增長到0.95附近并穩(wěn)定下來。但是3種模型的增長速度卻不一樣,本文提出的模型增長速度最慢。TEMBB是通過動態(tài)計算良好行為與惡意行為的權(quán)重來進(jìn)行信任更新,j持續(xù)表現(xiàn)出良好行為將導(dǎo)致良好行為的權(quán)重增大,所以該模型下信任增長速度最快。EMNT設(shè)置的是固定歷史權(quán)重0.7,因為歷史權(quán)重偏大所以在信任更新時其增長速度要慢于TEMBB。而本文所提模型根據(jù)前后信任的差值計算歷史權(quán)重,在信任更新時會極大的考慮歷史信任,所以增長速度最慢。仿真結(jié)果表明,TEMBB模型和EMNT模型的信任值分別在第10個評價周期和第28個評價周期在信任值0.95附近穩(wěn)定下來,本模型的信任值第35個周期穩(wěn)定下來。相比于TEMBB與EMNT模型,本模型的信任收斂周期分別推遲了25個和7個周期。 圖4 惡意節(jié)點(diǎn)j的信任值變化 其次,惡意節(jié)點(diǎn)j的信任值變化如圖4所示,由于惡意節(jié)點(diǎn)j的持續(xù)攻擊行為,其信任值會逐漸降低。從圖4可以觀察到,j節(jié)點(diǎn)展開攻擊以后,3個模型給出的信任值都會逐漸降低并穩(wěn)定在低信任水平。EMNT雖然在信任增長方面要慢于采用動態(tài)歷史權(quán)重的TEMBB模型,但是信任下降速度卻要慢于TEMBB模型。仿真結(jié)果表明,TEMBB模型和EMNT模型的信任值分別在第13個評價周期和第28個評價周期穩(wěn)定下來,本模型的信任值在第6個周期穩(wěn)定下來。相比于TEMBB與EMNT模型,本模型的信任收斂周期分別加快了7個與22個周期。這是因為EMNT設(shè)置0.7的固定歷史權(quán)重,增長速度慢的同時,下降速度也很慢。如果節(jié)點(diǎn)展開攻擊,前后信任值差就會使得本文所提模型極大的偏重于當(dāng)前信任,較小的考慮歷史信任,所以信任下降速度最快。 因此,本模型最符合信任值快速下降和緩慢上升的性質(zhì)。 3.2.2 抗開關(guān)攻擊實(shí)驗 假設(shè)攻擊節(jié)點(diǎn)j在前55個信任評價周期內(nèi)表現(xiàn)為正常節(jié)點(diǎn),在56到115信任周期內(nèi)表現(xiàn)為惡意節(jié)點(diǎn),以0.7~1.0的幾率展開選擇性轉(zhuǎn)發(fā)與發(fā)送虛假監(jiān)測數(shù)據(jù)。從116信任周期開始停止攻擊,又表現(xiàn)為正常節(jié)點(diǎn),j的信任變化曲線如圖5所示。 圖5 開關(guān)攻擊的信任變化 由圖5可知,本文提出的模型最有利于對抗開關(guān)攻擊。本文所提模型減慢了信任上升速度,并加快了信任值的下降速度。當(dāng)節(jié)點(diǎn)j展開攻擊以后,需要在很多周期內(nèi)連續(xù)偽裝為正常節(jié)點(diǎn)才能把自身信任提升到一個較高的水平。這使得節(jié)點(diǎn)j難以把自身信任水平維持在高處,其他節(jié)點(diǎn)可以更快地識別與隔離此類節(jié)點(diǎn)。對整個仿真周期(0~300)進(jìn)行統(tǒng)計,本文所提模型比TEMBB與EMNT的平均信任值分別下降了18.5%和16.4%。 圖6顯示了本文所提模型帶控制因子與不帶控制因子的差別。由于開關(guān)攻擊會出現(xiàn)不正常的信任波動,所以本文從信任波動的角度設(shè)計了控制因子,目的是降低開關(guān)攻擊節(jié)點(diǎn)的值域范圍。當(dāng)引入控制因子后,一旦j的信任值出現(xiàn)不正常波動,那么節(jié)點(diǎn)j的信任值域范圍將會向下平移,因此更有利于降低開關(guān)攻擊節(jié)點(diǎn)的信任值。 圖6 控制因子對信任值的影響 3.2.3 抗惡嘴攻擊與串謀攻擊實(shí)驗 惡嘴攻擊與串謀攻擊都是從信任模型的間接信任入手,提供不正常的推薦信任數(shù)據(jù)。在本實(shí)驗中,共同鄰居節(jié)點(diǎn)只提供虛假的推薦信任,而不發(fā)動其他攻擊。設(shè)置0.1到0.4的惡意推薦率,分別迭代 1 000 次,觀察惡嘴攻擊與串謀攻擊對間接信任的影響與各模型的防御能力。 在惡嘴攻擊與串謀攻擊的實(shí)驗中,惡意節(jié)點(diǎn)都隨機(jī)地提供推薦信任值給節(jié)點(diǎn)。圖7和圖8分別顯示了惡嘴攻擊和串謀攻擊對間接信任的影響,隨著惡意推薦比例的增加,各模型得到的間接信任與真實(shí)間接信任之間的差值也隨之增大。 圖7 惡嘴攻擊對間接信任的影響 圖8 串謀攻擊對間接信任的影響 TEMBB模型在計算間接信任時采用的是加權(quán)平均算法,其間接信任在兩種攻擊下的精度損失最大,隨著惡意推薦比例的增加,惡意節(jié)點(diǎn)能較大程度的影響間接信任值。而本文和EMNT模型在此兩種攻擊下的精度損失較小,與真實(shí)值的差距遠(yuǎn)小于TEMBB模型。這是因為二者都通過計算偏離度來過濾掉偏離度過大的推薦信任。但是惡意節(jié)點(diǎn)提供的推薦信任并沒有全部被過濾,本文在過濾機(jī)制的基礎(chǔ)上,根據(jù)各推薦信任的偏離程度來分配不同的權(quán)重。這樣就降低了沒被過濾的推薦信任的影響力,從而提升了間接信任的精度。將本文所提模型與EMNT模型對比可以得到:惡嘴攻擊和串謀攻擊所造成的平均誤差分別由0.118和0.101降低到了0.051和0.039。 本文提出了一種防御信任模型攻擊的信任評價模型(DTSA)。首先通過模糊綜合評判模型和設(shè)計的控制因子對節(jié)點(diǎn)的直接信任進(jìn)行計算;然后對各推薦信任進(jìn)行偏離度測試,過濾掉偏離度過大的虛假推薦,且對過濾后的節(jié)點(diǎn)集進(jìn)行了權(quán)重分配,盡可能地降低惡意節(jié)點(diǎn)對間接信任精度的影響;最后根據(jù)前后信任差值設(shè)計了自適應(yīng)歷史信任權(quán)值,有效地控制了信任值的快速增長,防止惡意節(jié)點(diǎn)在短期內(nèi)快速提升自身信任值。仿真結(jié)果表明本模型與其他最新模型相比,開關(guān)攻擊節(jié)點(diǎn)的平均信任值下降了16.4%,惡嘴攻擊和串謀攻擊所造成的平均誤差分別由0.118和0.101降低到了0.051和0.039。因此,本文提出的信任評估模型可有效抵御針對信任體系本身的攻擊,并提升了評估的精度。2.2 間接信任
2.3 綜合信任
3 仿真分析
3.1 仿真場景
3.2 仿真結(jié)果分析
4 結(jié)論