嚴斌宇,劉方圓,董敏堅,周激流,盧葦
(1. 四川大學 電子信息學院,四川 成都,610065;2. 北京交通大學 軟件學院,北京 100044)
無線傳感器網絡(Wireless sensor networks,WSNs)是由大量分布式傳感器節點通過自組織方式構成的無線網絡,已廣泛應用于軍事監測、交通控制、智能家居、環境預測等領域。WSNs與對等(P2P)網絡有著相似的網絡拓撲和相似的數據傳輸方式。與P2P網絡相比,雖然WSNs一般不是開放的,不存在P2P網絡中任何節點可以隨意接入和退出網絡帶來的風險,但由于WSNs的傳感器節點具有自身能量受限、部署環境
惡劣等特點,加之通信采用無線方式,使得WSNs比傳統的有線網絡存在更多的安全隱患。這其中有一個明顯的安全問題,即傳感器節點被敵方俘獲后進行的內部攻擊,這是P2P網絡中沒有出現的,也是基于傳統密碼體系的安全機制不能解決的風險。為了能夠對密碼技術進行有效補充,WSNs信任模型的研究開始得到學術界的廣泛關注,通過計算傳感器節點的信任度來識別故障節點和被俘獲節點,采取一些針對措施以減少系統損失,提高系統的安全性、可靠性以及公平性。信任管理的概念由 Blaze等[1]首先提出,采用授權委托的方式解決“陌生人”之間的授權問題[1],之后廣泛應用于對等網絡、網格、自組織網絡等網絡環境中[2]。WSNs下信任模型的建立也部分借鑒了 P2P網絡和 Ad-hoc網絡的信任計算方法,但由于 WSNs自身的特性,如節點能量受限、應用相關性、以數據為中心等,使得研究WSNs下特定的信任模型算法具有現實意義,國內外學者采用不同的數學方法和仿真工具建立了WSNs下的各種信任模型,各有其優勢。Ganeriwal等[3]提出了基于信譽的信任管理框架RFSN(Reputation based framework for sensor networks),采用Watchdog機制監測節點行為,將監測結果輸入信譽系統模塊以生成各節點的信任值,并參考設定的閾值進行決策,采用貝葉斯公式計算信譽值,假定先驗分布服從Beta分布或Dirichlet分布。該管理框架比較完整,應用范圍廣,健壯性好,不足之處在于需要主觀假設信譽值的先驗分布。Yao等[4]提出的基于信任管理的安全框架,包括應用描述、網絡輸入/輸出、信任管理、安全響應4個邏輯組件。信任值的計算包括密碼操作因素和關于節點交互行為的因素2個方面, 應用于路由選擇時考慮了能量因素。其不足之處在于模型基于一定的條件假設、密碼因素,導致計算復雜度增大。Probst等[5]采用統計學的方法計算信任值,并根據節點直接和間接的經驗建立基于此信任值的置信區間,以權衡信任置信區間的范圍和資源消耗,同時,考慮了轉發數據的通信因素和感知數據的數據因素。不足之處在于各節點需要較大的緩存器且額外能耗較大,同時,需要安裝位置感知系統。Hur等[6]提出了用于安全數據融合的信任模型,綜合考慮了數據一致性和能量等因素,較全面地評價了節點的信任值,同時,提出了一種通用的感知數據不一致性檢測機制,不足之處在于沒有考慮通信因素、模型基于一定的條件假設等。成堅等[7]提出了基于D-S證據理論的信任模型,對直接信任值和間接信任值進行權重修正后,根據Dempster規則合成二者,得出綜合信任值,從而對節點進行信任分類。該模型具有很好的動態適應性和容錯性,不足之處在于只考慮了通信因素。目前,WSNs下的信任模型研究已取得一定進展,但仍有不少需要改進之處,如沒有考慮到因信任的不確定性而帶來的風險因素,對擁有較大能量資源和存儲空間的匯聚節點重視程度不夠等。基于風險評價的信任模型在對等網絡(P2P)中已有較多研究和應用[8-10],但將其引入無線傳感器網絡(WSNs)中的研究并不多見。為此,本文作者采用一種基于風險評價的無線傳感器網絡信任模型RBTM(Risk evaluation based trust model),并考慮到惡意節點可能的不同類型。本文在計算節點信任度時,除了計算基于推薦的信譽度外,還通過分析其歷史行為引入隱含不確定性的風險值作為對信譽度的追加。通過適當調節信譽值和風險值的權重,使得節點的信任度受惡意行為的影響更靈敏,在一定程度上提高對惡意行為的檢測成功率。
本文提出的RBTM框架由3個模塊即檢測模塊、信任計算模塊、決策模塊組成,且均受上、下文因素的影響。框架如圖1所示,檢測模塊監測節點的行為,并將監測結果輸入信任計算模塊處理;信任計算模塊采用適當的權重合成直接信任值(DT,Direct trust value)和間接信任值(IT,Indirect trust value),得到各節點的綜合信任值(CT,Composite trust value),并將其輸入至決策模塊;決策模塊根據設定的閾值判定節點行為。

圖1 信任模型框架Fig.1 Frame of trust model
檢測模塊的目的是監測節點行為并輸出監測結果,不同的上下文導致輸出結果不同,假定輸出結果用一個映射函數f(x)表示。若該模型應用于安全路由,信任值的計算只考慮通信因素,則輸出結果分為合作與不合作2類,即

若該模型應用于安全數據融合,信任值的計算只考慮數據因素,則根據數據一致性程度可將輸出結果分為多類,即

其中:rx表示當目標節點與數據與源節點數據的相符程度(即數據一致性)為 x時,源節點給予目標節點的信任值;r1與rn分別表示2種極限狀態,其中r1表示數據一致性為 100%時目標節點信任值,為 1,而 rn表示數據一致性為0時目標節點的信任值,為-1。
本文討論檢測模塊輸出有 3種結果的情況(其他情況與此相同)。即:

其中:r1,r2和 r3分別表示節點網絡行為表現良好、不確定、惡劣3種情況。檢測算法的實現可采用文獻[3]中的Watchdog機制和文獻[6]中的感知數據不一致性檢測機制。
信任計算模塊是該框架的核心,主要負責信任值的計算、更新以及輸出。
1.2.1 信任值定義
在RBTM中使用到的信任值包括直接信任值、間接信任值和綜合信任值,引入文獻[11-12]中的定義:直接信任值DTij為節點i根據與節點j的直接交易歷史記錄而得出的對節點的j信任值;間接信任值ITij為節點i根據第三方對節點j的推薦而形成的信任值;綜合信任值 CTij為對節點直接信任值和間接信任值的加權求和,其中權重值的調整由上下文模塊決定[13]。
信任值計算的基本思路是:每個節點處存儲各自鄰居節點的直接信任值DTij、間接信任值ITij和綜合信任值CTij,并以周期 T為參數定時更新所有信任值。節點處同時存儲本周期內節點網絡行為表現為良好、不確定、惡劣的次數,分別用1rc,2rc 和3rc表示。檢測模塊一旦檢測到節點的網絡行為,便將相應的次數增加 1,周期結束后節點可據此計算其鄰居節點的局部信任值并更新。
1.2.2 直接信任值的計算
1個周期結束后,節點i根據式(4)計算節點j的局部信任值,表示節點i和j本周期內交互了N次,評價值為 T rustValij。

由于信任存在不確定性,本文據文獻[7]中的方法引入風險因素對信任值的影響,以提高該模型的靈活性和可用性。首先根據式(5)構造1個風險評估函數,以量化不同的交易情況產生的風險:

式中:ω表示節點i在沒有其他預先知識的情況下認為節點j可信的概率。若節點j在本周期內網絡行為表現良好的次數較多,即1rc較大,則由式(5)計算的節點j的風險評估函數較小。
考慮風險因素后的局部信任值稱為風險局部信任值。在定義風險局部信任值前,需先構造1個風險信譽調節函數,以調節風險對信任值的影響。風險信譽調節函數的定義如式(6)所示(其中,β為風險對局部信任值的調節因子):

其中:0<β<1。由此可得到節點i對節點j的風險局部信任值,即:

將 RTrustValij除以風險信譽調節函數的最大值max(R isk (TrustValij, RiskValij,β)),使信任值取值在(-1,1)范圍內。由于節點的網絡行為隨時間而變化,信任值具有時效性,信任模型通常需要合成不同交易時期的信任值。本文采用對當前信任值(RTrustValij)和歷史信任值(PreRTrustValij)加權求和的方法合成,最終得到的局部信任值(DTij)定義為:

其中:α表示歷史信任值的權重,α較大時可以防止惡意節點對不好的歷史交易進行彌補,α較小時可以避免信任老化。
1.2.3 間接信任值的計算
節點i對節點 j的間接信任值由各推薦節點對節點j的直接信任值合成,不同推薦節點的可信度不一樣,可信度高的節點比可信度低的節點推薦更值得信賴。本文據文獻[8]中的方法,采用節點i和推薦節點對公共交易節點的評價差異來衡量推薦信任值的可信度。間接信任值(ITij)的定義為:

其中:DTkj表示節點k對節點j的直接信任值;I(i,j)表示與節點j有過交易,且與節點i有公共交易節點的節點集;|I(i,j)|表示該集合的勢;dik為節點i與節點k的評價差異,用來衡量推薦信任的可信度,

DTij表示節點i對節點j的直接信任值;I(i,k)表示與節點i和節點k的公共交易節點集。
1.2.4 綜合信任值的計算
節點i對節點j的綜合信任值(CTij)由直接信任值和間接信任值加權合成,定義為

其中:η為直接信任值的權重。
信任計算模塊完成信任值的計算和更新后,將綜合信任值(CTij)輸入決策模塊,決策模塊根據預先設定的閾值判定是否接受此次網絡行為。具體規則如下:
If CTij>Trsold1
then 接受此次網絡行為
else CTij>Trsold2
then 拒絕此次網絡行為
else 將此節點ID發送給Sink節點
其中:Threshold1和Threshold2分別為設定的信任閾值和通告閾值,且Threshold1> Threshold2。閾值的設定受上下文環境的影響,若該環境風險較高,則可適當提高決策時的信任閾值。
本文同時考慮Sink節點在信任模型中的重要性。這是因為 Sink節點本身具有較高的能量和較大的容量,且通常是可靠的[14]。Sink節點存儲各節點被其他節點通告的次數,若超過預期設定的次數,則將該節點加入黑名單,并及時廣播孤立該節點,以減少系統中惡意節點的數目,降低系統的安全風險。
為檢驗RBTM的各方面性能,進行仿真實驗。在P2P網絡中通常采用查詢周期仿真器進行仿真[9-10],WSNs中目前尚無成熟的開源仿真環境可供利用。本文使用C語言實現算法,并使用Matlab繪制仿真結果。實驗中設定了3類節點:善意節點,網絡行為表現始終良好;惡意節點,網絡行為表現始終惡劣;偽善節點,網絡行為開始時表現良好,之后表現惡劣[15]。其中,善意節點表現為r1,r2和r3的概率分別為70%,20%和10%;各類惡意節點表現為r1,r2和r3的概率分別為10%,20%和70%。主要實驗參數如表1所示。
圖2所示是對3類節點在1個周期內的信任值變化進行仿真得到的結果。需要說明的是:由本文 1.2節定義的信任值范圍在(-1,1)之間,為便于作圖,進行了歸一化處理,令其取值范圍為(0,1),此時,0.5為惡意節點和善意節點的信任值分界閾值。

表1 仿真實驗參數Table 1 Parameters of simulation experiment
由圖2可知:善意節點行為表現始終良好,其綜合信任值隨著交易次數的增加而逐漸提高;惡意節點行為表現始終惡劣,其綜合信任值隨著交易次數的增加而迅速降低;偽善節點首先通過表現良好獲得較高信任值,然后突然爆發惡意行為。對于此類節點,RBTM能夠迅速做出有效反應,使其信任值迅速降低。這是由于加入了風險調節因素,RBTM可以達到節點建立信譽比較慢、毀壞信譽卻較快的目的,以防止惡意節點偽裝成善意節點,輕松騙取較高信任值后開始其惡意行為。

圖2 節點信任值仿真曲線Fig.2 Simulation curves of nodes trust values
為了驗證 RBTM 中對風險因素的考慮是否確實影響到節點的信任值,對RBTM和去除風險因素后的信任模型進行仿真對比,結果如圖3所示。去除風險因素的信任模型雖然善意節點的信任值上升比較高,但是,信任值增長和降低的速度一致,這不符合對節點信任度建立緩慢、毀壞迅速的要求。而RBTM中加入風險調節因素,使善意節點信任值上升平緩,惡意節點的信任值下降劇烈,這樣的信任模型在抵抗攻擊方面更加可靠,同時也說明RBTM將風險因素引入信任模型的有效性。

圖3 風險因素對RBTM的影響Fig.3 Influence of risk factors on RBTM
在仿真實驗中,設計了惡意節點比例為 10%的WSN環境,對RBTM,RFSN[2]和Matthew[4]的信任模型性能進行對比。如文獻[6,9-10]中所述,信任模型的抗攻擊能力主要由系統中所有節點的交易成功率(即系統內所有節點之間交易成功的次數占總的交易次數的比例)得到反映。仿真進行了25個交易周期,仿真結果如圖4所示。從圖4可見:隨著交易周期的增加,3個模型交易成功率都穩步上升,曲線的斜率逐漸減小,顯示系統性能在交易次數增加到一定程度后趨于穩定。RBTM 的交易成功率一直比 RFSN和Matthew信任模型的高,表明RBTM具有更高的靈敏性和更強的抗攻擊能力,證明了模型的正確性。

圖4 RBTM與已有信任模型的交易成功率對比Fig.4 Comparison of successful detection ratio between RBTM and existed trust model
(1) 由于信任具有不確定性,所以存在交互風險。通過引入P2P信任模型中的風險機制,為信任不確定性進行建模,重新定義了WSNs節點之間各種信任關系,利用風險因素計算直接和間接信任值,使得RBTM中的信任值能夠更加真實地反映節點的可信度和節點間交易的可行性。
(2) RBTM 與已有的一些信任模型的系統交易成功率明顯提高,風險因素的加入使節點可信度更接近真實值,對于WSNs的安全路由、安全數據融合等應用研究可起良好的推動作用。
[1] Blaze M, Feigenbaum J, Lacy J. Decentralized trust management[C]//Proc of the 1996 IEEE Symp on Security and Privacy. Oakland, 1996: 164-173.
[2] 荊琦, 唐禮勇, 陳鐘. 無線傳感器網絡中的信任管理[J]. 軟件學報, 2008, 19(7): 1716-1730.JING Qi, TANG Li-yong, CHEN Zhong. Trust management in wireless sensor networks[J]. Journal of Software, 2008, 19(7):1716-1730.
[3] Ganeriwal S, Srivastava M. Reputation-based framework for high integrity sensor networks[C]//Proc of the 2nd ACM Workshop on Security of Ad Hoc and Sensor Networks. New York, 2004: 66-77.
[4] Yao Z Y, Kim D Y, Lee I, et al. A security framework with trust managet for sensor networks[C]//First IEEECREATE-NET Workshop on Security and QOS in Communication Networks(Securecomn 2005). Athens, Greece: IEEE Computer Society,2005: 190-198.
[5] Probst M J, Kasera S K. Statistical Trust Establishment in Wireless Sensor Networks[C]//Proceedings of 13th International Conference on Parallel and Distributed Systems. Hsinchu: IEEE Computer Society, 2007: 1-8.
[6] Hur J, Lee Y, Yoon H, Choi D, et al. Trust evaluation model for wireless sensor networks[C]//Proc of the ICACT 2005.Piscataway:IEEE Computer Society, 2005: 491-496.
[7] 成堅, 馮仁劍, 許小豐, 等. 基于D-S證據理論的無線傳感器網絡信任評估模型[J]. 傳感技術學報, 2009, 22(12):1802-1807.CHENG Jian, FENG Ren-jian, XU Xiao-feng, et al. Trust evaluation model based on D-S evidence theory in wireless sensor networks[J]. Chinese Journal of Sensor and Actuators,2009, 22(12): 1802-1807.
[8] LIANG Zheng-qiang, SHI Wei-song. PET: A personalized trust model with reputation and risk evaluation for P2P resource sharing[C]//Proc of the 38th Annural Hawaii International Conference on System Sciece. Hawaii, 2005: 256-264.
[9] 田春岐, 鄒仕洪, 田慧蓉, 等. 一種基于信譽和風險評價的分布式 P2P信任模型[J]. 電子與信息學報, 2007, 29(7):1628-1632.TIAN Chun-qi, ZOU Shi-hong, TIAN Hui-rong, et al. A new trust model based on reputation and risk evaluation for P2P networks[J]. Journal of Electronics & Information Technology,2007, 29(7): 1628-1632.
[10] 陸峰, 鄭康鋒.構建風險敏感的對等網安全信任模型[J].北京郵電大學學報, 2010, 33(1): 33-37.LU Feng, ZHENG Kang-feng. Construct a risk-aware peer-to-peer security trust model[J]. Journal of Beijing University of Posts and Telecommunications, 2010, 33(1):33-37.
[11] 崔磊, 謝顯中.一種基于近期表現的 P2P網絡信任模型[J].計算機工程與應用, 2009, 45(30): 107-109.CUI Lei, XIE Xian-hong. Recent-behavior based on trust model for P2P systems[J]. Computer Engineering and Applications,2009, 45(30): 107-109.
[12] 李勇軍, 代亞非. 對等網絡信任機制研究[J]. 計算機學報,2010, 33(3): 390-405.LI Yong-jun, DAI Ya-fei. Research on trust mechanism for peer-to-peer network[J]. Journal of Computer, 2010, 33(3):390-405.
[13] Papadopoulos K, Voliotis S, Leligou H C, et al. A lightweight trust model for wireless sensor networks[C]// Proceedings of International Conference on Numerical Analysis and Applied Mathematics. Psalidi, 2008: 420-423.
[14] Kim T K, Seo H S. A trust model using fuzzy logic in wireless sensor network[J]. World Academy of Science, Engineering and Technology, 2008, 42: 63-66.
[15] XIONG Li, LIU Ling. A reputation-based trust model for peer-to-peer e-commerce communities[C]// Proceedings of IEEE International Conference on E-Commerce (CEC 2003). Newport Beach, 2003: 275-284.