謝麗霞,魏瑞炘
(中國民航大學 計算機科學與技術學院,天津 300300)
隨著物聯(lián)網(wǎng)(Internet of Things,IoT)技術的發(fā)展,大規(guī)模、動態(tài)化、異構化的物聯(lián)網(wǎng)環(huán)境逐漸形成[1]。物聯(lián)網(wǎng)中存在廣泛的合作與資源交互,然而,由于不同設備計算資源和存儲能力差異較大,加大了傳統(tǒng)安全認證和加密技術應用于物聯(lián)網(wǎng)中的難度。同時,業(yè)務屬性及信任特征的差異化,致使信任關系更為復雜,利用節(jié)點信任關系以獲取服務或資源為目標的惡意行為也成為保障網(wǎng)絡安全的威脅之一。因此,充分地挖掘節(jié)點信任關系并有效地識別惡意節(jié)點,對保障物聯(lián)網(wǎng)安全和解決節(jié)點合作問題具有重要意義。
目前,關于信任機制研究主要分為兩個方向:基于策略的制定信任機制[2]和基于信譽的機制[3-4]。前者采用公鑰基礎設施的方法實現(xiàn)嚴格授權管理,通過數(shù)字證書定義節(jié)點可信度,節(jié)點權限由邏輯程序設計限定。此類機制通常要求系統(tǒng)中存在權威授權機構,因此不適用于分布式環(huán)境。基于信譽的信任機制通過節(jié)點交互評估節(jié)點可信度,可降低依賴權威信任機構的局限性,目前在分布式網(wǎng)絡中應用廣泛。文獻[5]中提出一種基于貝葉斯的信譽管理模型。該模型通過全局信任迭代方式獲得節(jié)點綜合信任值,提高了信任收斂速度,但增加了信任計算的能耗。為降低信任計算能耗,文獻[6]中引入代理節(jié)點,提出智能貝塔信譽和動態(tài)信任評估模型。文獻[7]中結合節(jié)點歷史信任、統(tǒng)計信任和直接信任計算節(jié)點綜合信任值以平衡信任的主客觀性,提出基于節(jié)點行為的物聯(lián)網(wǎng)信任度評估方法。一些學者將社會關系引入信任評估模型中,用以充分挖掘節(jié)點間的信任關系[8-10]。如文獻[8]中利用節(jié)點的社區(qū)興趣進行節(jié)點分簇,提出了基于社區(qū)興趣的信任度評估模型。文獻[9]中借助協(xié)同過濾方法篩選信任推薦節(jié)點,提出基于社會關系的物聯(lián)網(wǎng)信任管理模型。文獻[10]中通過信用值與誠實度對節(jié)點信任進行建模,提出了一種基于誠實度與信用值的物聯(lián)網(wǎng)信任度評估方法。
經(jīng)分析,上述研究尚存在以下不足:①在直接信任度計算中,忽略了非入侵因素對信任評估的影響,降低了信任計算準確度;②忽略了物聯(lián)網(wǎng)節(jié)點服務和信任特征差異化較大的特點,造成推薦信任度評估準確性降低;③缺乏對推薦節(jié)點的可靠度評估,不能有效地抑制節(jié)點的惡意推薦行為。
為此,筆者提出一種面向物聯(lián)網(wǎng)節(jié)點的綜合信任度評估模型(IoT Node Comprehensive Trust Evaluation Model, INCTEM)。首先,設計節(jié)點相同質量服務強度評估指標,降低非入侵因素對信任評估的影響,改進基于貝葉斯的直接信任度評估方法;其次,通過節(jié)點相似度分析,排除信任特征與評估節(jié)點偏差較大的節(jié)點,并結合節(jié)點相似度、評價差異度與節(jié)點自身的信任度綜合評估推薦節(jié)點的可靠度,作為推薦信任權重;最后,基于熵計算直接信任度和推薦信任度的自適應權重,計算節(jié)點綜合信任度值。
筆者研究了分布式物聯(lián)網(wǎng)架構,網(wǎng)絡中的智能設備僅屬于惟一用戶,同一用戶擁有多個存儲、計算能力不同的設備(或稱節(jié)點)。其中具有較強存儲、計算能力的設備為該用戶的信任管理節(jié)點。信任管理節(jié)點與其所屬用戶的其他設備(如射頻識別標簽和讀寫器等)構成一個管理域,域內信任信息由管理者維護。假設域內設備服務偏好一致,設備根據(jù)自身需求可在域內或域間請求服務,實現(xiàn)服務交互或合作。
1.1.1 信任定義
信任作為一個抽象概念[11],基于不同角度存在多種不同的定義。為更好地描述模型,對采用的信任定義做出如下說明。
定義1信任是評估節(jié)點對目標節(jié)點提供服務能力或合作概率的預期,評估節(jié)點對目標節(jié)點合作概率預測的量化表示即為信任度值。
1.1.2 列表定義
(1) 直接交互節(jié)點列表為與用戶Userx發(fā)生直接交互行為的節(jié)點列表,記為Dx={d1,d2, …,dn}。Dx存儲在Userx的信任管理節(jié)點中。
(2) 信任度列表為用戶Userx對所有設備di的信任值集合。當用戶Userx與屬于用戶Usery的設備dn首次進行服務交互時,Userx將dn加入Dx中,并更新信任度值列表Txi={Tx1, …,Txj,…,Txn},Txn為用戶Userx對設備dn的信任度值。
1.1.3 評價指標定義
為更清晰地描述模型,對定義的評價指標說明見表1。

表1 指標定義
INCTEM由直接信任度評估模塊(Direct Trust Evaluation Module, DTEM)、推薦信任度評估模塊(Recommend Trust Evaluation Module, RTEM)和綜合信任度評估模塊(Comprehensive Trust Evaluation Module,CTEM)組成。INCTEM結構如圖1所示。
各模塊設計如下:
(1)DTEM模塊。首先根據(jù)目標節(jié)點此次的服務質量計算該節(jié)點相同質量服務強度,并據(jù)此計算節(jié)點直接信任度值。
(2)RTEM模塊。首先根據(jù)推薦節(jié)點與服務請求節(jié)點的共同評分節(jié)點數(shù)和對共同節(jié)點評分的相似度,計算節(jié)點相似度;然后,計算各推薦節(jié)點對目標節(jié)點的評價差異度;最后,通過融合節(jié)點相似度、評價差異度和推薦節(jié)點自身的可信度,得到該推薦節(jié)點的可靠度作為推薦節(jié)點的權重,并最終計算推薦信任度值。
(3)CTEM模塊。首先計算直接信任度和推薦信任度的自適應權重,然后計算節(jié)點的綜合信任度值。同時,該模塊采取事件觸發(fā)機制更新信任值列表。

圖1 INCTEM結構


(1)
信任值基于歷史交互記錄計算且隨時間的增加而衰減,近期記錄更能反映節(jié)點合作概率。因此,計算直接信任度時也需要考慮信任的時效性。
若節(jié)點i與節(jié)點j的歷史交互成功次數(shù)和失敗次數(shù)分別為αij和βij,節(jié)點i關于節(jié)點j的信任度Tij服從β分布,即有Tijd~β(αij+1,βij+1)[4],則節(jié)點i對節(jié)點j的直接信任度值Tijd為
(2)

(3)
(4)

3.1.1 推薦節(jié)點可靠度計算
推薦信任度計算主要受兩個方面因素的影響:一是推薦節(jié)點的誠實度及其提供的推薦信任的參考價值;二是評估節(jié)點對推薦節(jié)點的信任度。因此,為抑制節(jié)點利用自身高信任值進行不實推薦行為,及降低信任特征差異引起的評價差異對推薦信任計算的影響,模型將對推薦節(jié)點的可靠度進行評估。
推薦節(jié)點k的可靠度Rk由節(jié)點相似度、評價差異度及推薦節(jié)點自身信任度共同決定,計算方法如下:
Rk=S(x,y)×(1-Mk)×Txk,
(5)
其中Txk為評估節(jié)點x對推薦節(jié)點k的信任度。整體相似度S(x,y)和第k個節(jié)點的評價差異度Mk的計算方法將分別在3.1.2節(jié)和3.1.3節(jié)中描述。
3.1.2 節(jié)點相似度評估
根據(jù)式(6)計算評估節(jié)點x與推薦節(jié)點y在共同通信節(jié)點數(shù)(好友相似度)、對共同通信節(jié)點的評分相似性(觀點一致性)這兩方面的整體相似度S(x,y):
(6)
其中,A表示所有值的平均值;Dx、Dy分別為與用戶x、y發(fā)生直接通信行為的設備列表;|Txi-Tyi|為2個用戶對共同節(jié)點評分的差值;N為兩個節(jié)點共同交互節(jié)點數(shù)。根據(jù)S(x,y)評分,將前n個用戶加入相似用戶集Sn。
3.1.3 評價差異度

(7)
為降低信任度列表傳遞能耗,在推薦信任度計算過程中,評估節(jié)點根據(jù)信任管理節(jié)點中的本地信任度列表中的記錄,向前m個節(jié)點發(fā)起信任度列表傳輸請求,且信任度列表只在信任管理節(jié)點間傳遞和計算。
推薦信任度值計算過程設計如下:
步驟1 查詢服務請求節(jié)點所屬用戶的本地信任列表,向信任度值較高的m個用戶請求傳輸信任列表。當推薦節(jié)點數(shù)不足m個時,采用自薦策略[12]隨機選取部分目標節(jié)點提供的備選可信節(jié)點作為補充推薦節(jié)點。
步驟2 計算步驟1中篩選出的用戶與服務請求節(jié)點所屬用戶的用戶相似度S(x,y)。
步驟3 選取用戶相似度較高的前n個節(jié)點作為推薦節(jié)點集Sn。
步驟4 由式(7)計算推薦節(jié)點集Sn內各節(jié)點的評價差異度Mk。
步驟5 由式(5)計算第k個節(jié)點的推薦可靠度作為該推薦節(jié)點的信任度權重Rk。
步驟6 計算節(jié)點推薦信任度值為
(8)
綜合信任度計算過程的實質是融合多個評價指標的有效信息對目標節(jié)點進行更為客觀的綜合評價。通過融合直接和推薦信任度計算節(jié)點的綜合信任度,因此需要確定這兩個參數(shù)對綜合信任度計算的相對重要性,即確定其權重。若直接根據(jù)經(jīng)驗設定權重,將會增加綜合信任度計算的主觀性。
信息熵可以反映信息的無序程度,因此可依據(jù)直接和間接信任間的差異度修正指標權重,實現(xiàn)自適應權重分配,從而充分利用有效信息解決經(jīng)驗權重的局限性。根據(jù)熵的概念,直接和間接信任的熵采用對目標節(jié)點的信任度Tkjd(Tijre)和對應的懷疑度1-Tkjd(1-Tijre)度量。
直接信任的信息熵H(Tijd)和推薦信任的信息熵H(Tijre)分別由如下公式計算:
(9)
(10)
據(jù)此,分別計算直接信任度和推薦信任度的自適應權重wd、wre:
(11)
(12)
上述公式通過直接信任和推薦信任攜帶信息的效用值動態(tài)調整權重,提高了信任評估的準確性。
最后,計算節(jié)點j的綜合信任度值Tjtotal:
(13)
在NS-3上進行仿真實驗。仿真區(qū)域為200 m×200 m的正方形區(qū)域,區(qū)域內隨機分布20個信任管理節(jié)點,同時隨機生成200個普通節(jié)點模擬計算、存儲能力較低的普通物聯(lián)網(wǎng)設備,數(shù)據(jù)包傳輸大小為60 bit。
實驗對比環(huán)境中存在信號干擾影響時,RFSN[5]、BITEM[7]和INCTEM分別在節(jié)點提供正常服務和惡意服務時得到的直接信任度值,以驗證由文中直接信任評估模塊得到的直接信任度值是否可以較好地反映節(jié)點行為,有效地識別惡意節(jié)點。

圖2 直接信任度值變化情況
為模擬非入侵因素造成的節(jié)點數(shù)據(jù)異常,設置節(jié)點的數(shù)據(jù)包轉發(fā)率為[0.9,1]間的隨機數(shù);在t=0 min至t=25 min時,目標節(jié)點提供正常服務,計算目標節(jié)點提供正常服務時的信任度值;在t=25 min時,選取20%的節(jié)點為惡意節(jié)點,隨機產生選擇性丟包、轉發(fā)大量重復分組等惡意行為。計算節(jié)點完成服務后的直接信任度值。實驗結果如圖2所示。
由圖2可知,當節(jié)點提供正常服務時,隨著時間周期的增長,3個模型的信任度值均呈上升趨勢。在INCTEM中,當節(jié)點提供的正常行為次數(shù)較少,信任度上升較緩,能夠有效防止惡意節(jié)點通過少數(shù)幾次合法服務迅速騙取信任的行為。當3種類型節(jié)點開始隨機提供持續(xù)惡意服務時,3個模型對該節(jié)點的信任度評價值均呈下降趨勢。隨著惡意行為次數(shù)的累積,INCTEM得到的信任值下降速率最快,且得到的信任值最具區(qū)分度。由此可見,DTEM可較好地刻畫節(jié)點行為,快速識別惡意節(jié)點。
信任模型根據(jù)節(jié)點行為對節(jié)點合作概率進行量化評估,并據(jù)此選擇服務節(jié)點。因此,交互成功率是衡量模型是否有效的重要指標。
實驗模擬物聯(lián)網(wǎng)中存在惡意推薦行為的場景,對比服務請求節(jié)點根據(jù)RFSN[5]、BITEM[7]及INCTEM模型計算得到信任度值選擇服務節(jié)點以及無推薦信任度計算模塊,隨機選擇服務節(jié)點時的交互成功率,驗證INCTEM是否能夠有效地抑制節(jié)點的惡意推薦行為,保證節(jié)點交互成功率。
仿真實驗中,設置3組不同行為特征的節(jié)點:A類節(jié)點提供惡意服務,且存在夸大同類節(jié)點信任度值和詆毀C類節(jié)點的惡意推薦行為;B類節(jié)點提供正常服務,但存在夸大A類信任度值或詆毀C類節(jié)點的行為;C類節(jié)點為正常節(jié)點,提供正常服務且提供真實的推薦信任度值。本節(jié)實驗分兩組:第1組中分別設置比例為10%至55%的A類惡意節(jié)點;第2組中,設置比例為5%至35%的A類節(jié)點,30%至5%的B類節(jié)點。3種模型分別根據(jù)計算得到的目標節(jié)點的綜合信任度值選擇服務節(jié)點,無推薦信任度評估模塊的節(jié)點隨機選擇服務節(jié)點進行交互,分別計算兩種情況下的交互成功率。環(huán)境中僅存在A類惡意節(jié)點的交互成功率如圖3所示,環(huán)境中同時存在A類和B類惡意節(jié)點的交互成功率如圖4所示。

圖3 不同比例A類惡意節(jié)點時節(jié)點交互成功率

圖4 不同比例A類和B類惡意節(jié)點時節(jié)點交互成功率
由圖3可見,隨著A類節(jié)點比例的增加,3種模型的交互成功率均呈下降趨勢。當網(wǎng)絡中存在不同比例的A類節(jié)點時,由于筆者提出的模型通過節(jié)點相似度篩選了評價標準與其相似的推薦節(jié)點,降低了由于信任特征差異造成的信任評估偏差,使得推薦信任度值盡可能接近交互后的實際評估值。圖4中,隨著B類惡意節(jié)點比例的不斷增加,環(huán)境中的夸大協(xié)同攻擊效果更為明顯,此時,RFSN由于未對推薦節(jié)點可靠度進行考查,致使B類惡意節(jié)點可以無條件提高A類節(jié)點的信任度值從而獲得服務,造成交互成功率甚至低于無推薦信任評估時的情況,而筆者提出的模型由于對節(jié)點相似度、評價差異度和節(jié)點自身信任度值進行了考查,計算推薦節(jié)點的可靠度并推薦信任度值的權重,實現(xiàn)了對不可靠推薦節(jié)點的懲罰,因此具有相對較高的交互成功率。
綜上,INCTEM能夠有效地抑制惡意推薦行為,提高交互成功率。
5.4.1 交互成功率分析
模擬環(huán)境中存在惡意節(jié)點和信任特征不同的推薦節(jié)點的場景,對比RFSN、BITEM和INCTEM在節(jié)點數(shù)量逐漸增加時的交互成功率。


圖5 不同節(jié)點數(shù)量時的交互成功率
由圖5可見,隨著節(jié)點數(shù)量的逐漸增多以及信任特征差異較大的節(jié)點比例的增加,即使在網(wǎng)絡中惡意節(jié)點比例不變時(pm=0.3),RFSN和BITEM的交互成功率也出現(xiàn)大幅下降,而INCTEM則保證節(jié)點交互成功率較高,原因是INCTEM通過分析節(jié)點相似度過濾了信任特征差距較大的節(jié)點的推薦信任度值。雖然隨惡意節(jié)點比例增加,INCTEM的交互成功率呈下降趨勢,但由于INCTEM對推薦信任數(shù)據(jù)和信任特征均進行了考查,因此表現(xiàn)優(yōu)于其他兩個模型。
5.4.2 傳輸能耗分析
在本實驗中,通過對比RFSN[5]、BITEM[7]及INCTEM在環(huán)境中存在不同數(shù)量節(jié)點時的傳輸能耗,驗證INCTEM是否能有效降低傳輸能耗。
實驗中,首先設置模擬網(wǎng)絡環(huán)境中的節(jié)點初始能量值為0.5 J,網(wǎng)絡中的節(jié)點進行正常通信,經(jīng)過40 min后,分別計算并記錄3種模型在節(jié)點數(shù)量從100增長至1 000時的傳輸能耗。實驗結果如圖6所示。
由圖6可知,當節(jié)點數(shù)量小于200時,INCTEM的節(jié)點傳輸能耗略高于其他兩個模型;但是,隨著節(jié)點數(shù)量的增多,INCTEM在傳輸能耗上的表現(xiàn)優(yōu)于其他兩個模型。其原因為:在INCTEM中,信任列表僅存儲在信任管理節(jié)點中,大多數(shù)計算能力及資源受限的節(jié)點僅在需要時向該設備發(fā)起信任查詢,且查詢結束后僅向節(jié)點返回單個結果而非整個信任列表。在信任推薦過程中,信任列表也只在信任管理節(jié)點間進行傳輸,與在所有設備均參與傳遞完整信任列表相比,INCTEM可以有效地降低信任度值傳輸過程中的能耗。
在信任計算過程中,主要時間開銷來自推薦信任計算過程。本實驗對比INCTEM、RFSN和BITEM在不同網(wǎng)絡規(guī)模及存在惡意節(jié)點和服務偏好不同的節(jié)點情況下的時間開銷,對各模型的性能進行驗證。
在模擬環(huán)境中隨機各選取30%的節(jié)點設置為惡意節(jié)點及服務偏好不同的節(jié)點,信任管理節(jié)點比例為30%。評估節(jié)點根據(jù)各模型推薦信任評估方法計算推薦信任度。每組實驗重復5次,計算3種模型在節(jié)點數(shù)量由100增長至1 000時的平均時間開銷。實驗結果如圖7所示。

圖6 模型傳輸能耗

圖7 模型時間開銷
由圖7可以看出,當節(jié)點數(shù)量較少時,由于INCTEM采用多指標評估節(jié)點的可靠度,其時間開銷略高于另外兩種模型。但是,隨著節(jié)點數(shù)量增多,由于RFSN需在整個網(wǎng)絡中進行信任迭代,信任數(shù)據(jù)查找次數(shù)和需要融合的數(shù)據(jù)量大幅增加,因此其時間開銷遠高于其他兩個模型。隨著網(wǎng)絡規(guī)模增大,由于BITEM和INCTEM的信任傳遞和計算僅在部分節(jié)點中進行,與RFSN相比,這兩個模型的時間開銷增長幅度較緩。并且由于INCTEM首先過濾本地信任較低的交互節(jié)點,同時根據(jù)節(jié)點相似度排除部分信任特征差異與評估節(jié)點較大的節(jié)點,減少了信任查找次數(shù)和推薦信任個數(shù),因此時間開銷增長仍在合理的范圍內。
針對多數(shù)物聯(lián)網(wǎng)信任度評估模型信任評估準確性較低以及不能較好地抑制惡意推薦行為的不足,提出一種面向物聯(lián)網(wǎng)節(jié)點的綜合信任度評估模型(INCTEM)。實驗結果表明,INCTEM在識別惡意節(jié)點和處理惡意推薦行為方面具有一定優(yōu)勢,且在保證信任度評估有效性的同時可以降低傳輸能耗。
未來在研究工作中,將關注特定設備間的交互協(xié)議設計并針對特定應用場景優(yōu)化信任評估模型。此外,還將對信任管理節(jié)點可信度的動態(tài)評估方法進行研究,進一步提高模型應對惡意節(jié)點的能力。