«上一篇 下一篇»
  计算机工程  2021, Vol. 47 Issue (3): 174-182  DOI: 10.19678/j.issn.1000-3428.0057388
0

引用本文  

周远林, 陶洋, 李正阳, 等. 基于双簇头的无线传感器网络反馈信任模型[J]. 计算机工程, 2021, 47(3), 174-182. DOI: 10.19678/j.issn.1000-3428.0057388.
ZHOU Yuanlin, TAO Yang, LI Zhengyang, et al. Double Cluster Head-based Feedback Trust Model for Wireless Sensor Network[J]. Computer Engineering, 2021, 47(3), 174-182. DOI: 10.19678/j.issn.1000-3428.0057388.

基金项目

国家自然科学基金(61801072);重庆市自然科学基金(cstc2018jcyjAX0344)

作者简介

周远林(1994-), 男, 硕士研究生, 主研方向为传感器网络、安全路由;
陶洋, 教授、博士;
李正阳, 硕士研究生;
杨柳, 讲师、博士

文章历史

收稿日期:2020-02-13
修回日期:2020-03-23
基于双簇头的无线传感器网络反馈信任模型
周远林 , 陶洋 , 李正阳 , 杨柳     
重庆邮电大学 通信与信息工程学院, 重庆 400065
摘要:针对无线传感器网络存在恶意或妥协节点导致通信数据被攻击的问题,提出一种基于双簇头的反馈信任模型,以保障数据在传输、感知以及融合等环节的可靠性与完整性。利用节点间直接交互结果评估节点的直接信任,同时考虑通信、数据感知和融合信任,通过贝叶斯公式评估邻居节点的通信信任,使用时间滑动窗将节点历史信任作为直接信任的补充,动态调整直接与间接信任权重使综合信任评价更客观和准确。在此基础上,引入双簇头交互监测和基站信任反馈机制,主簇头和监督簇头根据本地数据空间相关性独立评估成员数据感知信任,基站利用双簇头数据融合结果的时间相关性评估数据融合信任,并将最终信任结果反馈到所有节点。仿真结果表明,该模型能有效检测异常数据和恶意节点,成功抵御选择性转发攻击、伪造本地数据攻击以及伪造融合数据攻击,在网络安全与能耗间实现良好的平衡。
关键词传感器网络    信任模型    恶意节点    双簇头    数据安全    
Double Cluster Head-based Feedback Trust Model for Wireless Sensor Network
ZHOU Yuanlin , TAO Yang , LI Zhengyang , YANG Liu     
School of Communication and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
Abstract: To address the attacks on the communication data by malicious or compromised nodes in Wireless Sensor Network(WSN), this paper proposes a feedback trust model based on double cluster head to ensure the reliability and integrity of data in transmission, perception and fusion.The results of direct interactions between nodes are used to evaluate their direct trust, and the communication, data perception and fusion trust are considered at the same time.The communication trust of neighbor nodes is evaluated by using the Bayesian formula.The historical trust of nodes is used as the supplement of direct trust by using time sliding window, and the weights of direct and indirect trust are adjusted dynamically to make the comprehensive trust evaluation more objective and accurate.On this basis, the monitoring mechanism for interactions between double cluster head and the feedback mechanism for base station trust are introduced.The primary cluster head and the supervisory cluster head independently evaluate the data perception trust of the members according to the spatial correlation of the local data.The base station uses the temporal correlation of the data fusion results of the dual cluster head to evaluate the data fusion trust, and feeds back the final trust results to all nodes.Simulation results show that the model can effectively detect abnormal data and malicious nodes, successfully resist selective forwarding attacks, forgery local data attacks and forgery fusion data attacks, achieving a good balance between network security and energy consumption.
Key words: sensor network    trust model    malicious node    double cluster head    data security    
0 概述

无线传感器网络(Wireless Sensor Network,WSN)中节点常被部署于无人值守甚至敌对环境中,对手可轻松捕获节点并发起内部攻击[1]。为保证网络安全,需实现数据的机密性、完整性和可用性[2],而提供上述安全服务需要设计密钥管理方案[3],其在网络加密和认证中起到关键作用。然而由于受到传感器节点的资源限制,许多密钥管理方案不可行[4-5]。此外,内部攻击可能会输入错误数据误导控制中心做出错误决定,而密码技术[6]与身份认证[7]无法单独应对内部攻击。因此,需要一种健壮的安全(信任)机制来防止无线传感器网络受到内部和外部攻击[8]。信任评估方法用于分析传感器节点行为以估计节点的可靠性与可依赖性[9-10]。许多信任管理方案在信任评估中仅基于节点的通信行为[11],未考虑感知数据和融合数据的信任度[12],如果仅靠通信行为系统,则其会将输入错误数据的节点也归为可信。簇头用于收集和汇总成员节点数据以建立全局信誉,然而在开放与敌对的WSN环境中,簇头节点也可能被感染,因此簇头的安全性很重要。

本文结合信任机制分析无线传感器网络的节点数据安全问题,提出一种基于双簇头的传感器网络反馈信任模型DCFT。结合节点间通信信任、数据感知信任与数据融合信任综合评估邻居节点异常行为,引入双簇头交互监测和基站信任反馈机制,由主簇头筛查和融合节点数据发送到基站,并转发到监督簇头进行数据分析,基站根据双簇头数据融合结果评估数据融合信任,同时将最终信任结果反馈到全部节点。

1 相关工作

目前,研究人员已提出众多安全数据传输和聚合方案,其中部分方案基于信任模型来评估节点之间的信任值,以达到利用可靠数据传输的目的[13-15]

文献[11]提出一种可靠的基于贝叶斯模型的信任管理方案BTMS,其总体信任值由直接信任和间接信任综合得出:直接信任采用修正的贝叶斯方程计算,并引入惩罚因子对节点的不当行为进行惩罚;间接信任根据第三方推荐者的信任级别进行适当加权。仿真结果表明,BTMS在抵御开关攻击和口臭攻击(试图通过诋毁降低对方信誉)方面表现良好,但其未考虑节点数据安全问题。文献[16]提出一种用于无线传感器网络的高效动态信任评估模型DTEM,其通过动态调整直接信任和间接信任的权重与更新机制参数来实现准确、高效和动态的信任评估,其中:直接信任考虑了通信信任、数据信任和能源信任,并具有惩罚因子和调节功能;间接信任根据第三方可信的建议进行评估。在假设簇头层节点无不良行为的情况下,DTEM可对路由攻击和数据信息攻击进行准确的信任评估。

文献[17]提出一种基于距离的可信度评估方案,采用集中式信任评估模块评估传感器节点和数据项的绝对信任度,利用数据项在邻居之间的一致性评估数据项可信度,并通过传感器节点对数据项的信任度和传感器节点的历史信任度来评估节点的当前信任度。然而该方法要求每个节点有定位功能,需要将大量定位信息传输到中央服务器以计算各节点之间的距离。文献[18]通过异常挖掘算法发现异常数据,从而实现对入侵行为的检测,并利用多维数据之间关联以及节点之间时空关联对入侵行为进行检测。入侵行为通常需结合数据异常类型来检测,监测的物理属性由专家制定,缺乏灵活性,且该方法为入侵检测方法,未计算节点信任值进行下一步网络决策。

文献[19]提出一种基于双簇头的安全数据聚合方案,从每个簇中选出红簇头和黑簇头。在数据融合阶段,黑簇头执行数据融合并转发融合结果,红簇头执行数据融合并转发由融合结果计算的消息认证码。父节点通过验证下层红簇头和黑簇头的消息认证码来保证融合结果的准确性。然而即使红簇头和黑簇头接收同一区域的数据,也不能保证其融合结果无误差,若融合结果不一致,则计算所得消息认证码不同,从而导致误检率较高。此外,该方案未考虑感知数据的伪造攻击。文献[20]在文献[19]的基础上提出基于双簇头信任机制的数据融合方法,对感知数据的信任评估进行补充。然而由于该方法的信任模型过于简单,且节点间的信任评估为单向进行,因此无法准确识别恶意簇头。文献[21]提出一种基于聚类的数据融合模型,利用信誉系统在每个簇中选择两个簇头独立执行数据融合,并将融合结果和异常值列表发送到基站,基站再计算两个结果之间的相异系数以确定是否需要更换簇头。本文借鉴了文献[21]的部分思想,但该文献存在以下问题:1)检测异常值使用DBSCAN算法,其时间复杂度太高;2)仅重点描述异常值检测、数据融合和相异系数计算,未详细介绍节点的信任评价;3)只能降低模型中恶意节点作为簇头的概率,无法准确识别被感染的簇头节点。

2 本文模型 2.1 双簇头网络模型

本文采用簇成员节点-簇头-基站分层的双簇头网络模型,如图 1所示。无线传感器网络中的节点分为簇成员节点(CM,也称为普通节点)、主簇头(CH)、监督簇头(SH)以及基站(BS)。在同一个簇中,普通节点、主簇头和监督簇头具有相同能量与资源,普通节点采集数据与簇头(以下若无特别说明则均指主簇头和监督簇头)直接通信,簇头对普通节点采集的数据进行筛选和融合,并以单跳或多跳的方式发送给基站。主簇头将数据融合结果发送到基站后,基站将该结果转发给监督簇头,监督簇头根据自身融合结果计算与主簇头的相异系数,如果相异系数小于相异阈值,则回复确认ACK给基站;如果相异系数大于相异阈值,则回复错误ACK给基站并将自身融合结果也发送到基站,基站结合历史数据进一步分析融合结果的准确性并在其覆盖范围内与所有节点直接建立通信。网络中节点分为普通节点和恶意节点,普通节点之间交互频繁并提供正确数据,恶意节点交互较少或者进行不成功的交互,并提供错误数据。

Download:
图 1 双簇头网络模型 Fig. 1 Network model based on double cluster head
2.2 信任模型

信任模型包括分布式[22]信任模型和集中式[23]信任模型两种。在分布式信任模型中,每个节点监视邻居节点并结合推荐信息在本地计算邻居节点的信任值。在集中式信任模型中,代理节点通过路由中的控制信息和全局数据计算路径上所有节点的信任值,并将信任值通过广播反馈给其他节点。分布式信任模型和集中式信任模型可在不同场景配合使用,分布式信任模型对节点本地计算能力要求较高,而集中式信任模型对通信资源消耗较多。本文采用混合方式,簇内信任使用分布式信任模型计算,而簇间信任使用集中式信任模型计算。簇内信任包括普通节点之间的评价和簇头对簇内成员节点的评价,由于簇内局域数据相似性较大,因此簇头容易分析出异常数据并将其上报基站进一步分析。簇间信任包括簇头节点之间的评价和簇头在普通节点中的评价,簇头与簇头之间数据特征较分散,此时主要通过基站对数据进行集中评价。

2.3 攻击模型

无线传感器网络中存在DoS攻击、Sybil攻击、虫洞攻击、泛洪攻击以及选择性转发攻击等多种攻击形式。根据攻击行为和目标,上述攻击可分为对路由协议的攻击、对信任模型的攻击和对通信数据的攻击3类,其中:对路由协议的攻击包括黑洞攻击、虫洞攻击和选择性转发攻击,此类攻击的目标是路由协议,恶意行为会丢弃部分或所有路由数据包,使数据包无法在节点间正确转发;对信任模型的攻击包括开关攻击和口臭攻击,此类攻击的目标是信任管理系统,恶意行为通过提供虚假信息来破坏信任关系;对通信数据的攻击包括选择性转发攻击、伪造本地数据攻击和伪造融合数据攻击,此类攻击的目标是数据,全部网络的核心是传输数据,如果不能保证数据的准确性和完整性,则无法实现可靠的数据传输,此类攻击的恶意行为包括丢弃、伪造和篡改无线链路的传输数据。本文主要针对通信数据攻击提供解决方案。

3 反馈信任评估模型 3.1 模型结构

本文所提基于双簇头的传感器网络反馈信任模型DCFT的结构如图 2所示。DCFT对网络中每个传感器节点的综合信任由邻居节点和推荐节点评估得出。邻居节点是能直接通信的节点,推荐节点是评估节点与被评估节点共同的邻居节点。每个节点基于看门狗机制监听其通信范围内相邻节点的活动,以了解节点是否正确转发或丢弃数据包。如果评估节点需获得被评估节点的信任值,则可通过对直接信任与间接信任进行综合计算得到。每个节点维护相邻节点的信任列表,信任评估过程具有周期性,并结合近期信任记录进行信任更新。

Download:
图 2 DCFT模型结构 Fig. 2 DCFT model structure

分簇网络中基于双簇头的传感器网络反馈信任模型信任评价关系如图 3所示。通过簇头评价普通节点、基站评价簇头并将结果反馈给普通节点形成闭环的信任链(见图 3中cmj-chi-BS信任链),所有节点相互监督以实现网络安全平衡。

Download:
图 3 信任评价关系示意图 Fig. 3 Schematic diagram of trust evaluation relationship

直接信任由通信信任、数据感知信任和数据融合信任组成。通信信任是根据节点与邻居节点交互成功次数与失败次数计算的信任值,交互成功率越高,通信信任值越高。数据感知信任是根据节点原始感知数据与该区域内平均测量值之间距离计算的信任值,距离越短,数据感知信任值越高。数据融合信任是根据簇头节点、监督节点与基站所预测融合数据之间差异计算的信任值,簇头融合结果与基站预测值偏差越小,数据融合信任值越高。

3.2 直接信任

传感器节点的直接信任包括通信信任、数据感知信任和数据融合信任。通信信任和数据感知信任由节点计算,数据融合信任由基站计算。信任的综合计算与直接信任的更新在节点处完成。

3.2.1 通信信任

通信信任$ \mathrm{C}{\mathrm{T}}_{ij}\left(\mathrm{\Delta }t\right) $由节点i与邻居节点j之间的通信成功率计算得到,其反映节点i在过去交互过程中对节点j的信任程度。当节点i发送消息到邻居节点j时,节点i进入混杂模式,监听节点j如果成功接收数据包并返回确认信号,同时将数据包正确发送到下一个目标节点,则节点i和节点j的交互是一次成功通信;否则是一次失败通信。本文将节点双方在$ \mathrm{\Delta }t $内通信成功的次数记为r,通信失败的次数记为s。采用贝叶斯信任模型[24]计算通信信任$ \mathrm{C}{\mathrm{T}}_{ij}\left(\mathrm{\Delta }t\right) $,并使用beta概率密度函数的期望值来表示节点信任值。节点i对节点j通信信任评价的表达式如下:

$ {\rm{C}}{{\rm{T}}_{ij}}\left( {\Delta t} \right) = \left\lceil {100 \times \frac{{r + 1}}{{r + s + 2}}} \right\rceil $ (1)

其中,$ \left\lceil x \right\rceil $表示变量x向上取整。信任值范围通常为0~1范围内的小数[10-12],在计算机中用浮点型表示,需占用4 Byte的存储空间。本文中所有信任值为0~100范围内的整数,在传感器内仅占用1 Byte存储空间,减少了内存开销。

3.2.2 数据感知信任

在普通传感器节点监测及其周围环境信息收集过程中,节点故障、伪造本地数据攻击和事件发生都会造成错误或可疑的测量结果。簇头节点在对收集的数据进行分析、处理和融合之前,需提取可靠且可信赖的数据进行数据融合,以提高融合数据的准确性。数据感知信任评估可有效检测出故障节点数据以及被入侵节点伪造的数据。

数据感知信任$ \mathrm{D}\mathrm{P}{\mathrm{T}}_{ij}\left(\mathrm{\Delta }t\right) $是簇头节点i对普通节点j感知数据的信任评价,由普通节点的感知数据与相应周期内所得平均值之间的差值计算得到。在同一个簇内,传感器节点由于间隔距离相近,且数据具有空间相关性,因此感知的环境数据应该相同或者相似。这些数据遵循正态分布,符合概率密度函数$ f\left( x \right) = \frac{1}{{\sigma \sqrt {2\pi } }}{\rm{exp}}\left( { - \frac{{{{(x - \mu )}^2}}}{{2{\sigma ^2}}}} \right) $,其中μσ分别为该数据集合的平均值和标准差。本文将[μ-σμ+σ]范围内的数据集合称为可靠数据,记为集合$ \mathbb{R} $;将在[μ-σμ+σ]范围外的数据集合称为可疑数据,上报可疑数据的传感器列表记为可疑节点列表S。可疑数据是错误数据或者代表可能存在异常事件,因此需根据可疑数据之间的地理位置进一步检测是否发生异常事件[25]。在数据集合中,数据越接近平均值,其信任值越高,簇头对普通节点提供的感知数据$ x $进行数据感知信任评估,计算公式如下:

$ {\rm{DP}}{{\rm{T}}_{ij}}\left( {\Delta t} \right) = \left\{ \begin{array}{l} \left\lceil {100 \times 2\int_{ - \infty }^x {f\left( x \right){\rm{d}}x} } \right\rceil , x < \mu \\ \left\lceil {100 \times 2\int_x^{ + \infty } {f\left( x \right){\rm{d}}x} } \right\rceil , x \ge \mu \end{array} \right. $ (2)
3.2.3 数据融合信任

数据融合信任$ \mathrm{D}\mathrm{F}{\mathrm{T}}_{j}\left(\mathrm{\Delta }t\right) $由基站通过双簇头融合结果的相异系数以及趋势相关性计算得到。在进行数据感知信任计算时,双簇头已计算得到可靠数据集合$ \mathbb{R} $ch$ \mathbb{R} $sh和可疑节点列表$ {S}^{\mathrm{c}\mathrm{h}} $$ {S}^{\mathrm{s}\mathrm{h}} $。按照文献[21]的数据融合算法,簇头对可靠数据集合$ \mathbb{R} $ch$ \mathbb{R} $sh进行数据融合,所得数据融合结果分别为DchDsh。主簇头将数据融合结果Dch和异常值列表$ {S}^{\mathrm{c}\mathrm{h}} $上传到基站,基站通过查询找到该主簇头对应的监督簇头,并将DchSch发送给监督簇头,监督簇头计算[21]相异系数$ \alpha $如下:

$ \alpha = {\varepsilon _1} \times \frac{{2 \times \left| {{D^{{\rm{ch}}}} - {D^{{\rm{sh}}}}} \right|}}{{\left| {{D^{{\rm{ch}}}} + {D^{{\rm{sh}}}}} \right|}} + {\varepsilon _2} \times \left( {1 - \frac{{\left| {{S^{{\rm{ch}}}} \cap {S^{{\rm{sh}}}}} \right|}}{{\left| {{S^{{\rm{ch}}}} \cup {S^{{\rm{sh}}}}} \right|}}} \right) $ (3)

其中:ε1ε2分别为融合结果差异与异常值列表的权重,本文中ε1=ε2=0.5;$ |{S}^{\mathrm{c}\mathrm{h}}\bigcap {S}^{\mathrm{s}\mathrm{h}}| $为列表$ {S}^{\mathrm{c}\mathrm{h}} $$ {S}^{\mathrm{s}\mathrm{h}} $中共同存在的异常值个数;$ |{S}^{\mathrm{c}\mathrm{h}}\bigcup {S}^{\mathrm{s}\mathrm{h}}| $为列表$ {S}^{\mathrm{c}\mathrm{h}} $$ {S}^{\mathrm{s}\mathrm{h}} $中所有异常值数量总和。

将监督簇头计算的相异系数$ \alpha $和相异阈值th进行比较,仿真实验中$ \mathrm{t}\mathrm{h}=0.2 $。如果$ \alpha \le \mathrm{t}\mathrm{h} $,则表示主簇头的数据融合结果可信,监督簇头回复确认ACK到基站;如果$ \alpha >\mathrm{t}\mathrm{h} $,则表示主簇头和监督簇头的数据融合结果差异很大,可能是其中一个簇头篡改了数据融合结果,监督簇头将数据融合结果Dsh和异常值列表$ {S}^{\mathrm{s}\mathrm{h}} $上传到基站,由基站通过趋势相关性计算进一步判断主簇头和监督簇头数据融合的准确性。然而基站根据当前周期的数据无法分析哪个簇头是恶意节点。对此,文献[21]提出重新选出两个簇头,但不能识别内部攻击节点并对其进行惩罚。本文利用融合数据之间的时间相关性,通过历史数据预测得到当前周期的数据融合结果(以下称为预测值)。若主簇头或监督簇头所得当前周期数据融合结果越接近预测值,则认为主簇头或监督簇头的数据越可信。本文引入Holt-Winters指数平滑法对当前周期的数据融合结果进行预测。

对于时间序列数据{$ {x}_{t} $},结合加法模型和Holt-Winters指数平滑法进行如下计算:

$ \left\{ {\begin{array}{*{20}{l}} {{a_t} = \alpha ({x_t} - {s_{t - p}}) + (1 - \alpha )({a_{t - 1}} + {b_{t - 1}})}\\ {{b_t} = \beta ({a_t} - {a_{t - 1}}) + (1 - \beta ){b_{t - 1}}}\\ {{s_t} = \gamma ({x_t} - {a_t}) + (1 - \gamma ){s_{t - p}}} \end{array}} \right. $ (4)

其中:$ {a_t}、{b_t}、{s_t} $分别表示t时期的序列基本量、趋势分量和季节因子;αβγ为相应的平滑系数,且$ \alpha , \beta , \gamma \in \left(\mathrm{0, 1}\right) $p为季节变动周期长度,且存在$ \sum\limits_{1 \le t \le p} {{s_t}} = 0 $

当前周期预测值的计算公式如下:

$ {y_t} = {a_{t - 1}} + {b_{t - 1}} + {s_{t - p}} $ (5)

其中,yt为当前周期t的预测值,$ {a}_{t-1} $$ {b}_{t-1} $分别为t-$ 1 $时期的序列基本量与趋势分量,$ {s}_{t-p} $$ t-p $时期的季节变化值。本文中,初始值$ {a}_{0}={x}_{1} $$ {b}_{0}={x}_{2}-{x}_{1} $$ {s}_{1}, {s}_{2}, \cdot \cdot \cdot , {s}_{p}=0 $

平滑系数$ \alpha $$ \beta $$ \gamma $的设定对预测效果影响很大,而预测效果的衡量标准是预测值与实际值的差值,本文通过最小化均方根误差(Root Mean Square Error,RMSE)估计得到$ \alpha $=0.8、$ \beta $=0.4和$ \gamma $=0.4,且RMSE=0.069 1。使用Holt-Winters指数平滑法获得当前周期预测值后,将其与主簇头和监督簇头的实际数据融合结果相减即得到当前周期的残差项,计算公式如下:

$ {\rm{res}}_t^{{\rm{ch}}} = \left| {{y_t} - D_t^{{\rm{ch}}}} \right| $ (6)

其中,$ \mathrm{r}\mathrm{e}{\mathrm{s}}_{t}^{\mathrm{c}\mathrm{h}} $t时刻预测值与主簇头的残差值,$ {y}_{t} $t时刻预测值,$ {D}_{t}^{\mathrm{c}\mathrm{h}} $t时刻主簇头实际数据融合结果。

采用相同方法可计算得到$ t $时刻预测值与监督簇头的残差值$ {\rm{res}}_t^{{\rm{sh}}} = \left| {{y_t} - D_t^{{\rm{sh}}}} \right| $,并通过双簇头的残差值进行异常行为检测:如果$ {\rm{res}}_t^{{\rm{ch}}} - {\rm{res}}_t^{{\rm{sh}}} > 0 $,则怀疑主簇头发动篡改融合数据攻击,基站丢弃主簇头的融合结果;否则怀疑监督簇头试图对主簇头进行口臭攻击,基站丢弃监督簇头的融合结果。因此,簇头数据融合信任$ {\rm{DF}}{{\rm{T}}_j}\left( {\Delta t} \right) $的计算公式如下:

$ {\rm{DF}}{{\rm{T}}_j}\left( {\Delta t} \right) = \left\lceil {100 \times {\rm{exp}}( - {\rm{re}}{{\rm{s}}_t})} \right\rceil $ (7)
3.2.4 直接信任的计算

节点i对邻居节点j的直接信任由通信信任、数据感知信任和数据融合信任3个信任因素计算得到,计算公式如下:

$ {\rm{T}}{{\rm{D}}_{ij}} = \left\lceil {{\omega _1}{\rm{C}}{{\rm{T}}_{ij}} + {\omega _2}{\rm{DP}}{{\rm{T}}_{ij}} + (1 - {\omega _1} - {\omega _2}){\rm{DF}}{{\rm{T}}_j}} \right\rceil $ (8)

其中,参数$ {\omega }_{1}, {\omega }_{2}\in \left[0, 1\right] $为信任因素的权重,其可根据不同攻击形式进行调整,例如对重点防御篡改融合数据攻击,需将$ \omega $1$ \omega $2设置为较小值,以突出$ \mathrm{D}\mathrm{F}{\mathrm{T}}_{j}\left(\mathrm{\Delta }t\right) $的权重。

3.2.5 直接信任的更新

评价节点信任程度不能仅靠当前周期的信任值,还需结合节点的历史信任值,本文通过时间滑动窗口结合历史信任值来更新当前周期的信任值,时间滑动窗口的信任更新过程如图 4所示。

Download:
图 4 时间滑动窗口的信任更新过程 Fig. 4 Trust update process of time sliding window

图 4中,时间滑动窗口长度为L(可根据实际情况设置),历史周期为T,每个历史周期的直接信任值为$ \mathrm{T}{\mathrm{D}}_{ij}^{t} $,当前周期直接信任的计算公式如下:

$ {\rm{TD}}_{ij}^t = \left\lceil {\sum\limits_{n = 1}^L {\rm{T}} {\rm{D}}_{ij}^{t - n + 1} \times {2^{ - n}}} \right\rceil $ (9)

由式(9)可以看出,每个周期的信任更新与当前周期的直接信任以及前L-1个历史周期有关,但权重不同,历史周期时间越近,其分配的权重值越高。

3.3 间接信任

与大部分信任模型类似,间接信任模型也考虑到第三方推荐信任。间接信任由节点i和节点j所有共同邻居节点k的推荐信任计算得到,节点k的推荐信任是节点k对节点j的直接信任,由于信任具有传递性,因此节点i对节点j的间接信任计算如下:

$ {\rm{T}}{{\rm{I}}_{ij}}\left( {\Delta t} \right) = \left\lceil {\frac{{\sum\limits_{k \in M} {({\rm{T}}{{\rm{D}}_{ik}}(} \Delta t) \times {\rm{T}}{{\rm{D}}_{kj}}(\Delta t))}}{{\left| M \right|}}} \right\rceil $ (10)

其中,M为节点i和节点j所有共同邻居节点的集合,$ \left|M\right| $为该集合中的节点个数。

3.4 综合信任

节点j的综合信任$ {T}_{ij}\left(\mathrm{\Delta }t\right) $由邻居节点i根据直接信任和间接信任计算得到,计算公式如下:

$ {T_{ij}}\left( {\Delta t} \right) = \left\lceil {\varphi {\rm{T}}{{\rm{D}}_{ij}}\left( {\Delta t} \right) + (1 - \varphi ){\rm{T}}{{\rm{I}}_{ij}}\left( {\Delta t} \right)} \right\rceil $ (11)

其中,$ \varphi \in \left[ {{\rm{0}}, {\rm{1}}} \right] $用于调整对直接信任和间接信任的依赖程度。在实际应用中,$ \varphi $不易设定,假设在节点间直接交互次数较少时主要依靠间接信任,在直接交互次数较多时主要依靠直接信任,则$ \varphi $可通过动态方程计算[16]得到,计算公式如下:

$ \varphi = \frac{1}{2} + \frac{1}{{\rm{ \mathsf{ π} }}}{\rm{arctan}}\left( {10 \times \frac{{w - {\rm{CO}}{{\rm{M}}_{{\rm{th}}}}}}{N}} \right) $ (12)

其中:N为节点i和节点j交互次数的最大值;w为节点i和节点j的实际交互次数;COMth为交互阈值,其根据实际网络大小设定,本文中COMth=200。若实际交互次数大于交互阈值,则评估综合信任中直接信任值的权重较大;否则,实际交互次数太少,难以评价节点的优劣,在综合信任评估中需更多考虑间接信任值。根据交互次数动态调整权重,可得到更客观准确的综合信任评价结果。

4 仿真与结果分析

本文在Matlab平台上使用DCFT算法对英特尔实验室[26]的传感器节点进行信任评估,并通过仿真实验观察节点的信任评估结果。图 5为英特尔实验室数据集传感器的分布情况,选择其中部分节点作为仿真实验对象。实验节点分为普通节点和恶意节点,其中恶意节点会实施各类攻击。

Download:
图 5 英特尔实验室数据集传感器分布 Fig. 5 Sensor distribution of Intel lab dataset
4.1 实验设置 4.1.1 数据预处理

在英特尔实验室中,54个传感器分布在实验室各个区域(见图 5)。每个传感器采集湿度、温度、光线强度和电压等数据,每隔31 s采样一次,持续35天。为减少数据量并保持数据长度一致,选择6号~12号节点在2004年2月28日的温度数据,并按照每隔10 min采样一次的频率重新采样,一天内每个节点有144条数据。图 6为6号~12号节点数据经预处理后,其温度随时间的变化曲线。

Download:
图 6 6号~12号节点温度随时间的变化曲线 Fig. 6 Temperature curve of node 6-12 changing with time
4.1.2 参数设置

在计算数据融合信任时,需将双簇头的融合数据实际值与预测值进行比较。预测精确度对恶意节点的识别影响较大,若预测误差很大,则可能将普通节点误判为恶意节点。因此,平滑系数$ \alpha 、\beta $$ \gamma $的设定非常重要。在实际应用中,上述参数的设定有两种方式:1)通过研究人员多次调整模型比较各组参数之间的误差来验证性能;2)通过交叉验证对模型进行训练,得到最小的均方根误差或均方误差。本文预测全天温度变化值,数据波动比较小,采用第一种方式即可获得良好效果,并经过仿真最终设定参数α=0.8、β=0.4、γ=0.4,此时RMSE=0.069 1。图 7为节点温度实际值与预测值的关系曲线,可以看出预测结果能很好地拟合实际结果。

Download:
图 7 节点温度实际值与预测值的关系曲线 Fig. 7 The relationship curve between actual value and predicted value of node temperature
4.2 性能评价

将本文基于双簇头的传感器网络反馈信任模型DCFT与BTMS[11]、DTEM[16]模型进行性能对比分析,后两者均为目前具有代表性的信任评估模型。其中:BTMS通过改良贝叶斯方程对节点的交互行为进行信任评价,但未考虑错误的数据通信情况;DTEM通过邻居节点之间感知数据的差异来检测攻击,但需要先假设簇头节点安全,无法解决簇头节点伪造融合数据攻击的问题。本文主要从选择性转发攻击、伪造本地数据攻击、伪造融合数据攻击、综合攻击以及能耗等方面进行性能评价与分析。

4.2.1 选择性转发攻击

通常普通节点在通信延迟、网络拥塞和网络不稳定的情况下会出现通信失败,因此设置普通节点的交互失败率为10%,恶意节点以80%的概率随机丢弃接收的数据。设置参数ω1=0.8、ω2=0.1。

图 8为DCFT、BTMS和DTEM 3种模型中普通(normal)节点与实施选择性转发攻击的恶意(malicious)节点综合信任值随时间的变化曲线。可以看出:3种模型均能明显区分普通节点和恶意节点;BTMS和DTEM中恶意节点综合信任值比DCFT更低,因为其在信任计算中针对恶意行为设置了惩罚因子,而惩罚因子与恶意行为的次数成正比,因此经过60次交互后这2种模型对恶意节点的综合信任值远低于DCFT。

Download:
图 8 3种模型中普通节点与实施选择性转发攻击的恶意节点综合信任值随时间的变化曲线 Fig. 8 The time-varying curve of the comprehensive trust value between common nodes and malicious nodes attacking with selective forwarding in the three models
4.2.2 伪造本地数据攻击

本文所用本地感知数据为英特尔实验室采集的原始温度值,随机选取节点作为恶意节点,对其感知数据注入高斯噪声,错误感知数据误差设置为10%~50%,参数ω1=0.1、ω2=0.8。

图 9为DCFT、BTMS和DTEM 3种模型中普通节点与实施伪造本地数据攻击的恶意节点的综合信任值随时间的变化曲线。可以看出:DCFT和DTEM均能很好地检测出伪造本地数据攻击的节点;BTMS中普通节点和恶意节点的综合信任值差异较小,这是因为BTMS未考虑错误的数据通信。DCFT通过计算感知数据的分布函数得出数据偏离程度,DTEM对信任阈值与邻居节点的数据进行比较来检测攻击者,这2种模型均能有效识别恶意节点。

Download:
图 9 3种模型中普通节点与实施伪造本地数据攻击的恶意节点综合信任值随时间的变化曲线 Fig. 9 The time-varying curve of the comprehensive trust value between common nodes and malicious nodes attacking with forged local data in the three models
4.2.3 伪造融合数据攻击

本文采用简单加权平均法对可靠的本地数据进行数据融合,利用噪声对融合数据进行模糊处理以模拟恶意节点,错误融合数据误差设置为10%~50%。设置参数ω1=0.1、ω2=0.1。

图 10为DCFT、BTMS和DTEM 3种模型中普通节点与实施伪造融合数据攻击的恶意节点综合信任值随时间的变化曲线。可以看出:DCFT中恶意节点的综合信任值均小于50,而普通节点的综合信任值约为85,可很好地检测出伪造融合数据攻击;DCFT通过历史融合数据预测下一个周期的数据,通过比较实际值与预测值的距离判断融合数据的偏离程度,偏离程度越大,信任值越低;BTMS和DTEM均假设簇头节点不会受到攻击,未考虑簇头伪造数据的情况,因此无法检测伪造融合数据攻击。

Download:
图 10 3种模型中普通节点与实施伪造融合数据攻击的恶意节点综合信任值随时间的变化曲线 Fig. 10 The time-varying curve of the comprehensive trust value between common nodes and malicious nodes attacking with forgery fusion data in the three models
4.2.4 综合攻击

为验证DCFT模型对选择性转发攻击、伪造本地数据攻击和伪造融合数据攻击3种攻击的整体检测效果,在网络中对节点注入混合攻击,一个节点可能有1种攻击,也可能同时有3种攻击。设置参数ω1=1/3、ω2=1/3,实验进行10次,取每次计算所得综合信任值的平均值作为最终结果。

图 11为DCFT中普通节点与实施3种攻击的恶意节点的综合信任值随时间的变化曲线。可以看出:普通节点综合信任值约为80,其与恶意节点综合信任值差异较大;在经过数次不良行为后,恶意节点的检测率达到100%,其综合信任值均小于30;恶意节点的综合信任值波动较大,其原因是攻击为随机注入,而恶意节点并不是每次都进行攻击,但是综合信任会考虑到历史行为,因此恶意节点只要有攻击行为就会降低其综合信任值。

Download:
图 11 DCFT模型中普通节点与实施综合攻击的恶意节点的综合信任值随时间的变化曲线 Fig. 11 The time-varying curve of the comprehensive trust value between common nodes and malicious nodes implementing comprehensive attack in DCFT model
4.2.5 能耗分析

节点剩余平均能量和网络生存周期是两个衡量模型能耗的重要指标。本文结合DCFT模型与LEACH[27]分簇路由协议(LEACH-DCFT)进行分析,并和同样使用双簇头模式且结合LEACH协议的DCHM[21]模型(LEACH-DCHM)进行对比。将100个节点随机分布在100 m×100 m区域内,基站位于坐标(150,50)位置处,节点初始能量为0.5 J。能量消耗与数据异常频率相关,设置有10%的时间会出现伪造融合数据攻击。

图 12为3种条件下不同网络周期每个节点的平均能量。可以看出:LEACH-DCFT和LEACH-DCHM的平均能耗更大,分别为LEACH能耗的1.3倍和1.4倍;LEACH-DCFT比LEACH-DCHM更节能,当网络周期为第400轮时LEACH-DCHM的平均能量只有LEACH-DCFT的79%。

Download:
图 12 3种条件下不同网络周期的节点平均能量 Fig. 12 Average energy of node in different network cycles under three conditions

网络生存周期是网络中首个节点死亡时所在的周期,不同网络周期下存活的节点数如图 13所示。可以看出:LEACH-DCHM首个节点的死亡出现在第427轮网络周期,其网络生存周期最短;LEACH-DCFT和LEACH首个节点的死亡分别出现在第493轮和第651轮网络周期,可见双簇头的设计会消耗更多能量;LEACH-DCFT的网络生存周期较LEACH缩短25%,但较LEACH-DCHM延长15%。由于DCHM的双簇头同时向基站发送数据融合结果,而DCFT在数据正常时只有主簇头发送数据融合结果,监督簇头仅发送确认信息,确认信息的数据量约为数据融合结果的1/10,当数据出现异常时,监督簇头才会发送数据融合结果。因此,DCFT在网络安全与能耗之间能实现更好的平衡。

Download:
图 13 3种条件下不同网络周期的存活节点数 Fig. 13 Number of surviving nodes in different network cycles under three conditions
5 结束语

本文提出一种利用双簇头的无线传感器网络反馈信任模型,通过建立信任评估方案来抵御针对数据安全的各类攻击。通过对节点行为和数据分析来评估通信信任、数据感知信任和数据融合信任结果,利用双簇头交互监测与融合数据的时空相关性来检测恶意或妥协节点。仿真结果表明,该模型能有效检测异常数据和恶意节点,成功抵御多类数据安全攻击,并实现网络安全与能耗的良好平衡。下一步将加强信任机制的自适应加权融合,以提高对攻击行为的响应速度与检测精度。

参考文献
[1]
ASLAN E, KAYAASLAN E.Security in wireless sensor networks: a survey[EB/OL].[2019-12-28].https://www.researchgate.net/publication/267939946_Security_in_Wireless_Sensor_Networks_A_Survey.
[2]
PATEL S, NITAL M.A survey: lightweight cryptography in WSN[C]//Proceedings of 2015 International Conference on Communication Networks.Washington D.C., USA: IEEE Press, 2015: 21-27.
[3]
SAHINGOZ O K. Large scale wireless sensor networks with multi-level dynamic key management scheme[J]. Journal of Systems Architecture, 2013, 59(9): 801-807. DOI:10.1016/j.sysarc.2013.05.022
[4]
ISHMANOV F, KIM S W, NAM S Y. A secure trust establishment scheme for wireless sensor networks[J]. Sensors, 2014, 14(1): 1877-1897. DOI:10.3390/s140101877
[5]
ISHMANOV F, KIM S W, NAM S Y. A robust trust establishment scheme for wireless sensor networks[J]. Sensors, 2015, 15(3): 7040-7061. DOI:10.3390/s150307040
[6]
MEULENAER G D, GOSSET F, STANDAERT F X, et al.On the energy cost of communication and cryptography in wireless sensor networks[C]//Proceedings of 2008 IEEE International Conference on Wireless and Mobile Computing, Networking and Communications.Washington D.C., USA: IEEE Press, 2008: 580-585.
[7]
HE D J, GAO Y, CHAN S, et al. An enhanced two-factor user authentication scheme in wireless sensor networks[J]. Ad Hoc & Sensor Wireless Networks, 2010, 10(4): 361-371.
[8]
REBAHI Y, MUJICA V E, SISALEM D.A reputation-based trust mechanism for ad hoc networks[C]//Proceedings of the 10th IEEE Symposium on Computers and Communications.Washington D.C., USA: IEEE Press, 2005: 32-39.
[9]
TALBI S, KOUDIL M, BOUABDALLAH A, et al. Adaptive and dual data-communication trust scheme for clustered wireless sensor networks[J]. Telecommunication Systems, 2017, 65(4): 605-619. DOI:10.1007/s11235-016-0254-3
[10]
BAO F Y, CHEN I R, CHANG M J, et al. Hierarchical trust management for wireless sensor networks and its applications to trust-based routing and intrusion detection[J]. IEEE Transactions on Network and Service Management, 2012, 9(2): 169-183. DOI:10.1109/TCOMM.2012.031912.110179
[11]
FENG Renjian, HAN Xiaona, LIU Qiang, et al. A credible Bayesian-based trust management scheme for wireless sensor networks[J]. International Journal of Distributed Sensor Networks, 2015, 11(2): 1-9. DOI:10.1155/2015/678926
[12]
LIM H S, MOON Y S, BERTINO E.Provenance-based trustworthiness assessment in sensor networks[C]//Proceedings of the 7th International Workshop on Data Management for Sensor Networks.[S.l.]: [s.n.], 2010: 2-7.
[13]
SAFA H, ARTAIL H, TABET D. A cluster-based trust-aware routing protocol for mobile ad hoc networks[J]. Wireless Networks, 2010, 16(4): 969-984. DOI:10.1007/s11276-009-0182-1
[14]
CHO J H, SWAMI A, CHEN R. Modeling and analysis of trust management with trust chain optimization in mobile ad hoc networks[J]. Journal of Network and Computer Applications, 2012, 35(3): 1001-1012. DOI:10.1016/j.jnca.2011.03.016
[15]
LIU Chenxu, LIU Yun, ZHANG Zhenjiang. Improved reliable trust-based and energy-efficient data aggregation for wireless sensor networks[J]. International Journal of Distributed Sensor Networks, 2013, 9(5): 27-35.
[16]
YE Zhengwang, WEN Tao, LIU Zhenyu, et al.An efficient dynamic trust evaluation model for wireless sensor networks[EB/OL].[2019-12-28].https://www.hindawi.com/journals/js/2017/7864671/.
[17]
WON J, BERTINO E.Distance-based trustworthiness assessment for sensors in wireless sensor networks[C]//Proceedings of 2015 International Conference on Network and System Security.Berlin, Germany: Springer, 2015: 18-31.
[18]
FU Rongrong.Research on key techonlogies of intrusion detection for wireless sensor network[D].Beijing: Beijing Jiaotong University, 2013.(in Chinese)
傅蓉蓉. 无线传感器网络入侵检测关键技术研究[D]. 北京: 北京交通大学, 2013.
[19]
GAO Fei, ZHU Wentao.A dual-head cluster based secure aggregation scheme for sensor networks[C]//Proceedings of 2008 IFIP International Conference on Network and Parallel Computing.Washington D.C., USA: IEEE Press, 2008: 103-110.
[20]
WEI Huaichao.Research of data aggregation based on dual-head cluster and trust mechanism in wireless sensor networks[D].Shenyang: Liaoning University, 2016.(in Chinese)
韦怀超. 无线传感网基于双簇头信任机制数据融合的研究[D]. 沈阳: 辽宁大学, 2016.
[21]
FU Junsong, LIU Yun. Double cluster heads model for secure and accurate data fusion in wireless sensor networks[J]. Sensors, 2015, 15(1): 2021-2040. DOI:10.3390/s150102021
[22]
JIANG Jinfang, HAN Guangjie, WANG Feng, et al. An efficient distributed trust model for wireless sensor networks[J]. IEEE Transactions on Parallel and Distributed Systems, 2014, 26(5): 1228-1237.
[23]
HAJIBABAEI F, YAGHMAE M H.Proposing a centralized trust management system to detect compromised node in WSN[C]//Proceedings of 2013 International Conference on Computer and Knowledge Engineering.Washington D.C., USA: IEEE Press, 2013: 51-57.
[24]
YU Yanli, LI Keqiu, ZHOU Wanlei, et al. Trust mechanisms in wireless sensor networks: attack analysis and countermeasures[J]. Journal of Network and Computer Applications, 2012, 35(3): 867-880. DOI:10.1016/j.jnca.2011.03.005
[25]
LEI Jianjun, BI Haiyang, XIA Ying, et al. An in-network data cleaning approach for wireless sensor networks[J]. Intelligent Automation and Soft Computing, 2016, 22(4): 599-604. DOI:10.1080/10798587.2016.1152769
[26]
MADDEN S.Intel lab data[EB/OL].[2019-12-28].http://db.csail.mit.edu/labdata/labdata.html.
[27]
HEINZELMAN W R, CHANDRAKASAN A, BALAKRISHNAN H.Energy-efficient communication protocol for wireless microsensor networks[C]//Proceedings of the 33rd Annual Hawaii International Conference on System Sciences.Washington D.C., USA: IEEE Press, 2000: 31-36.