起源信息感知的无人机网络信任模型

2020-10-20 10:05:56李宁伟彭剑飞
小型微型计算机系统 2020年10期
关键词:报文路由信任

张 帆,高 航,刘 亮,李宁伟,彭剑飞

(南京航空航天大学 计算机科学与技术学院,南京 210000)

1 引 言

随着科学技术的进步与发展,无人机因为其功能多样,飞行动作灵活,安装容易和操作简单等优点被广泛应用于各个领域,例如影视拍摄,农业检测,野火监视,货物运输等.为了适应一些复杂任务场景,现阶段通常通过在无人机上安装无线传感器组成无人机群来协同作业.无人机之间通过构建无人机自组织网络来进行数据交互、融合和处理.

无人机自组织网络采用多跳转发的数据传输机制,每架无人机都需要参与路由的建立和数据的传输.一般的无人机都自觉承担系统分配的任务且没有恶意行为.然而,无人机群中可能存在一些恶意的内部攻击者和被捕获的节点,它们作为间谍使得无人机网络容易受到各种各样的攻击.如黑洞攻击,污水攻击,女巫攻击,消息篡改攻击等[1].这些攻击不但影响整个网络的性能,缩短网络的生存时间,而且会丢弃,篡改任务数据,给用户造成无法弥补的损失.因此,安全的无人机网络路由是目前急需解决的关键技术.现阶段安全的无人机网络路由技术主要有两个难点:

1)恶意节点的识别.无人机网络缺乏长期稳定链接,对恶意行为的检测具有挑战性.Qinghua Li等人提出利用交互记录来识别恶意节点[2],主要思想是节点在收发报文时会记录其与其他节点的交互情况(接收和发送的报文个数)并生成交互记录.在后续的报文转发时,这些交互记录会作为该节点证明自身可信度的重要依据.然而该算法仅可检测系统内的黑洞/灰洞攻击,无法抵御针对交互记录的篡改或者伪造攻击.

2)证据的收集与共享.因为在无人机网络中节点稀疏分散且不经常相遇,对检测到的证据进行收集与共享就显得尤为重要.Cho J H等人提出将证据嵌入到任务报文中伴随报文传播进行证据收集[3],以减少资源损耗.该算法解决了延时容忍网络(Delay Tolerant Network,DTN)下证据收集的问题,仍然存在如下不足:1)观测证据只有目的节点可以读取,其利用率较低;2)对消息篡改攻击的识别不够准确;3)若报文传播路径中存在丢包攻击节点,所有的证据将伴随报文一起被丢弃.

起源信任模型是一种能够很好地反映数据与节点之间相互依赖性的循环框架:数据的完整性影响创建和操纵数据的网络节点的信任值,反之亦然[4].在无人机网络中基于报文的完整性可以对报文创建和操作者的行为做出有效评判并生成观测证据[5],通过收集网络中的观测证据,可以对证据指向节点做出信任评估.考虑到系统的安全性,在证据传递过程中,必须保证数据在可读的前提下任何对数据的更改都是可被检测的.本文利用节点的交互记录和起源信息来识别网络内部攻击并生成观测证据,使用非对称密码技术根据数据的哈希值生成数字签名(Digital Signature,DS)来保证数据的共享性和完整性.基于以上思想提出了一种起源信息感知的无人机信任评估模型(UAVNpro),旨在实现准确的对等信任评估,在最大化报文交付率的同时减少资源受限的网络环境下的消息时延和通信成本.该模型可有效抵御无人机网络中的黑洞攻击、灰洞攻击、假身份攻击、信息篡改攻击等.UAVNpro结合数字签名和交互记录对网络内的攻击行为进行识别,观测得到的证据被嵌入报文中并伴随报文传递完成证据收集,最终目的节点利用现有证据对网络内节点进行信任评估.系统基于节点的信任值进行路由来保证系统的安全性,具有良好信任值的节点的消息将被其他节点接受和转发,而具有低信任值的节点将被从网络中隔离.最后本文通过实验将UAVNpro和现有的安全路由模型进行了对比分析,结果表明UAVNpro对不同密度的恶意节点具有较高的识别率,且在报文的投递率和系统能耗上都要优于现有模型.

本文第二节讲述了现阶段无人机安全路由算法的研究现状.第三节描述了网络模型和攻击模型.第四节提出了起源信息感知的无人机信任评估模型,并给出了系统从攻击检测、证据收集到利用收集到的证据进行信任评估的整个处理过程.第五节将现有算法与UAVNpro进行实验对比,并分析实验结果.第六节总结全文.

2 相关工作

延迟容忍网络(Delay-tolerant Networking—DTN)机制已经被很多研究证明能够应用到多无人机自组网通信中[6],关于DTN的路由算法的研究有很多.因为其不能保证端到端连接的特性,基于洪泛或者部分洪泛的方法在被广泛利用,例如Epidemic[7]和PRoPHET[8].然而,这些方法往往导致网络的拥塞和高额的资源消耗.RelayCast算法根据节点的历史信息选择中继节点进行路由[9],EWMA算法通过将移动模型相似的节点组成集群进行路由[10].Jones E P C等人提出了MEED算法通过度量和预测下一跳节点的报文携带时间进行路由[11].Zekkori H等人提出了通过利用摆渡节点和集群进行路由以适应环境的动态变化[12].这些路由协议采用历史信息对未来进行概率预测,路由效率较高.

然而,以上路由协议在最初设计时,仅仅针对DTN网络的特点,将提高报文投递率,减少投递延时,减少节点能量损耗和延长网络生生存时间作为主要目标,却没有考虑对恶意节点的防范,因而这些路由协议存在严重的安全问题.安全路由协议不仅要在节约节点能量的前提下完成报文传输的有效路由决策,而且要保证报文从源节点到目的节点的传输过程中,每一个中间节点对报文的数据传输和处理时的安全.Asokan N提出采用传统无线网络的端到端数据加密技术来保证数据安全[13],但数据加密仅能保护系统免受外部攻击者的攻击,无法识别混入系统内部的攻击者.邻域监控方法通过引入一些独立的监视节点来监控邻居节点的流量,识别其恶意行为.Watchdog MDS[14]和CONFIDANT[15]结合信任机制和邻域检测来识别恶意节点.然而由于无人机网络缺乏长期稳定链接,因此不可能持续监控邻居节点.根据节点的行为反馈计算出信任值,然后根据信任进行路由是一种有效的安全措施.Zhu H提出了一种名为iTrust的基于信任的安全路由协议[16],引入可信机构TA周期性的评估各个节点的信任.Asuquo P设计了一个分散的信任管理方案DTMS[17],通过对比节点的转发数与能量消耗速率之间的关系来获取信任值.Raj R V提出了一种名为MAXTRUST的概率性不良行为检测方案[18],通过定期检查节点的转发历史来检测节点行为.Ayday和Fekri提出了一种迭代信任机制(ITRM)[19].其基本思想是:对于一个被评估者,所有评估者都给出评价,评价中与其他节点偏离最多的节点被视为恶意评估者.系统迭代执行该过程,直到所有评估者给出的评价收敛到被评估者的全局信任.但以上方法都存在一个问题,为了收集证据系统间存在大量的通信开销,获取信任的代价过高.

Jin-Hee Cho等人针对该问题提出了一种内嵌式的证据收集模型PROVEST[3].该模型根据报文的完整性来反向推断报文产生节点或操作节点的信任值,节点在转发报文之前先查验报文,根据报文的完整性生成对前驱节点的观测证据.然后将证据嵌入到报文中一并传输,证据通过搭乘报文的顺风车到达目的节点.为防止前驱节点插入的证据被恶意篡改,对证据采用非对称加密.存在一条加密秘钥伴随报文进行传播,每个节点向报文插入证据之前首先利用该秘钥对证据进行加密,然后将秘钥进行单项哈希后与报文一起向后传播.这种证据收集方式极大提高了信任准确性和网络安全性,又不会产生高额的通信开销.但依旧存在如下问题:

1)算法效率问题:如果传播途中恶意节点对密钥进行了篡改,后续插入的证据将无法被解析,这将影响系统效率.

2)识别准确率问题:算法在识别信息篡改攻击时,仅利用前驱节点的信任值来判断任务报文是否被篡改,判断结果存在误差.

3)无法抵御黑洞或灰洞攻击:若网络中存在黑洞或灰洞攻击,证据将伴随报文一起被丢弃,没有证据支撑的系统将无法识别恶意节点.

3 系统模型

3.1 网络模型

本文以无人机群执行搜索侦察任务为应用场景,为了对一定区域进行持续侦察,无人机群需要对该区域进行覆盖.每架无人机在按照航线飞行的同时拍摄具有地理标记的图像数据并选择最快的路由路线传回地面站.节点使用存储转发机制进行消息传递,即无人机大多数时间存储信息,并携带信息移动,在进入其他无人机的通信范围时通过路由协议判断是否进行数据传输.本文参考已有的混合网络技术,不仅利用高通量链接来传输任务数据(图片,视频),还引入带外信道来控制无人机行动.与文献[20,21]功能类似,带外信道采用XBee-PRO(IEEE 802.15.4)技术(覆盖半径长达1.5km,吞吐量小于80kbit/s),用来传递GPS数据、控制消息和无人机信任信息等.高通量信道采用Wi-Fi(IEEE 802.11n)技术,用于传递视频或图像数据(Wi-Fi通信范围为200-300m,UDP通量为80-100Mbit/s,为了防止和XBee-PRO干扰,Wi-Fi频率可以与XBee-PRO设置不同的频率).

除此之外,无人机的移动可以描述为一个线性的移动模型,无人机的移动方向是确定的,其速度在给定的范围内具有随机性.无人机节点的模型较为复杂,不同无人机具有不同的航线、速度、监视能力(即观察证据的错误率)、协作能力、恶意行为概率如下:

1)航线:无人机节点的航线在任务分配时已经确定,每个节点按照给定的 航线进行侦察.特殊情况下,无人机航线会根据环境变化进行重规划.

2)速度:由于空中环境的影响(如风力因素),现实中无人机节点的速度是不确定的,本文中节点的实时速度在给定的速度范围U[v,v′]内随机取值.

3)监视能力(Ppe,Pne):节点的监视能力指的是形容节点的监视错误率,即无人机节点可能会因为自身原因给出错误的证据.节点的监视错误率在(0,Pd]之间取值,其中0≤pd<1.

4)行为概率:无人机节点中加入恶意行为的触发概率,代表其恶意程度.其中Pt表示丢弃报文的概率,Pi表示其身份攻击的概率,Pm表示其篡改任务报文的概率.本文通过行为概率在[0,1]范围内取值来对无人机节点进行建模.节点中行为概率都为0的节点代表优良节点,否则具有恶意性.

3.2 攻击模型

无人机群之中存在一些恶意节点对无人机网络进行破坏,影响任务执行,UAVNpro模型中主要考虑了以下攻击行为:

1)身份攻击:本文协议要求节点在给出证据时要在证据上签署自己的ID作为身份识别.但是攻击者可能为了隐藏身份而插入虚假ID,如果攻击成功,此攻击者的恶意行为将会被解释为另一个节点的恶意行为,从而引起不准确的信任评估.本文对身份攻击的识别在4.2.3节叙述.

2)假证据攻击:攻击节点向优良节点提供负面证据或者向恶意节点提供正面证据,导致优良节点的信任值降低,恶意节点的信任值提高,这严重影响信任评估的准确性.本文对假证据攻击的识别在4.2.3节叙述.

3)信息篡改:信息篡改攻击主要分为两种,对报文的篡改攻击和对证据的篡改攻击.其中报文篡改攻击通过篡改任务报文来影响任务执行结果,给用户造成无法弥补的损失.本文对报文篡改攻击的识别在4.2.2节叙述.证据篡改攻击发生在证据收集的阶段,恶意节点通过篡改前驱节点已经插入的证据形成假证据,从而在影响系统评估准确性的同时隐藏自身身份.本文对证据篡改攻击的识别在4.1节叙述.

4)黑洞攻击:恶意节点将收到的报文丢弃不转发,造成传输空洞,影响任务正常执行.

5)灰洞攻击:此类攻击是黑洞攻击的改进,若攻击者将收到的报文全部丢弃,利用网络的冗余性就能很快发现评估者并将其隔离.但如果攻击者选择性丢弃报文,因为无人机自组织网络拓扑结构的动态性,部分丢包是正常的,这样可以降低邻居节点对攻击者的怀疑,使得攻击者可以继续对网络进行破坏.本文对黑洞/灰洞攻击的识别在4.2.1节叙述.

6)注包攻击:攻击节点通过给网络注入大量数据包来产生额外通信开销,消耗其他节点能量,减少网络寿命并引起网络瘫痪.本文对注包攻击的识别在4.2.1节叙述.

在攻击触发阶段每个节点会根据自身的攻击模型进行行为选择,图1结合本文中所考虑的攻击情形描述了每个节点的行为路线.攻击模型中为每种攻击行为都设定有触发概率,恶意节点会因触发概率的不同而表现出不同的恶意程度,它们会以随机攻击的方式来逃避检测,本文在第五节通过实验分析了模型对不同恶意程度节点的检测率.在安全检查阶段,报文携带节点会对其他节点进行行为检查,生成观测证据并嵌入报文之中.恶意节点会以一定的概率生成假证据来影响信任评估,合法节点也有几率因为观测失误生成假证据,两种行为以一定阈值作为区分.

图1 无人机节点攻击行为图Fig.1 UAV attack scenarios graph

4 起源信息感知的信任评估模型

在无人机网络中,由于节点之间的接触时间短,节点无法在相遇时正确监视邻居节点,尤其是无法监测邻居节点携带的报文是否被转发.因此本文提出了一种起源信息感知的信任评估模型用于无人机自组织网络中的安全路由(UAVNpro),根据起源信息生成观测证据,并以此来进行信任评估.UAVNpro对节点信任的计算都是基于证据的,证据存在于其整个生命周期之中.由于DTN网络间歇性连接的特点,节点之间接触时间过短可能存在误判.根据节点的行为可以将证据分为两类:1)正面证据:指观察到节点的正面行为,进行积极推荐,但不排除有假阳性.2)负面证据:观察到节点的负面行为,不排除有假阴性.系统会识别出故意产生虚假证据的恶意节点并给予信任惩罚.本文模型不允许节点生成指向自身的证据进行进自我推荐,后继节点在收到报文后会对前驱节点插入的证据进行检查.

为了防止外部设备对网络数据的监听,本文无人机网络的通讯采用密文通讯,对通讯数据采用公钥密码进行加密.在公钥加密技术里,每一个使用者有一对密钥:一把公钥和一把私钥.公钥可以自由发布,但私钥则秘密保存.在任务开始时,每架无人机都存储有整个无人机网络中其他节点的公钥,两个节点通讯时发送方使用接收方的公钥对数据进行加密处理,收到数据后接收方使用自己的私钥进行解密.私钥的私密性可以保护整个无人机网络抵御外部攻击.

针对系统内部攻击,本节从证据传输、攻击识别和信任评估由三个方面对UAVNpro进行了描述.4.1节讲述了整个系统如何对网络中的证据进行收集.4.2节讲述了如何对无人机网络中节点的恶意行为进行识别并生成负面证据.4.3节讲述了地面站如何根据收集到的证据对各个节点进行信任评估.为了便于参考,表1汇总了所有使用的符号及其含义.

4.1 证据收集

每个报文节点在任务执行期间都会产生对其他节点的观察证据Ob,在报文转发期间将Ob插入报文之中一并转发.报文结构如式(1)所示,MT表示传输报文,即节点之间存储转发的报文.MM表示任务报文,Obi表示MT传输过程途径节点i收集的观察证据,内嵌于传输报文之中伴随任务报文进行传递.MT表示传输报文,是一个由MM打头的顺序队列,在传递的过程中报文携带节点依次将其生成的MM插入队尾.本文设定Ob由一个三元组(idc,t,E)组成.idc表示证据产生节点的id,t代表证据的生成时间,E表示该节点在报文携带期间基于该报文所收集到的证据集.E中的每条证据都是由一个二元组(idt,ev)组成,其中idt表示该证据指向的目标节点,ev表示证据内容.

MT=(MM,Ob1,Ob2,…,Obm,)
Ob=(idc,t,E)
E={(idt,ev)|Observationevidenceevofidc}

(1)

表1 符号说明Table 1 Symbolic explanation

通常,每个中继节点向报文中添加元数据可能会导致报文数据量过大的问题,但在UAVNpro协议中,每个节点在报文携带期间观察范围有限,且每条Ob的数据量很小,因此由于添加证据所带来的通讯开销相比系统本身的任务开销可忽略不计.而在路由层次,本文利用信任阈值来过滤不可信的中继节点以缩短路径长度,在一定程度上为系统节约了能耗.如果存在攻击者添加多个伪造证据导致报文大小超出正常范围,该消息将被检测为异常,并被合法节点抛弃.

为了防止插入的Ob被篡改,本文采用数字签名对Ob进行签名认证.与公钥密码相反,Ob的生成者使用私钥对Ob进行加密,后续的验证者使用生成者的公钥进行解密.如若存在恶意节点对生成者插入的Ob进行了更改,因为其无法使用生成者的私钥对修改后的Ob进行重新加密,所以该行为很快会被后面的验证者发现,这样保证了证据在可读的前提下任何对数据的更改都是可被检测的.

Ob的生成与验证过程如图2所示.为防止恶意节点对Ob进行篡改,生成者将Ob用哈希函数进行散列得到散列码.接着使用自身的私钥对其加密作为签名,最后将签名与Ob进行组合,插入到传输报文之中.为防止网络外部攻击,生成者在路由发送时使用接收者的公钥对传输报文进行二次加密.而接收者收到报文时,需先用自身私钥进行解密才能得到传输报文.接收者在进行签名验证时,从传输报文中取出前驱节点插入的Ob与其对应的签名,并对其分别进行哈希与解密处理得到散列值.最后接受者将两个散列值进行比对,若比对无误,则证明Ob没有没修改.

除非攻击者从Ob生成者那里窃取到其私钥,否则Ob无法被篡改.攻击者之间可以串通交换自身私钥,这样Ob的修改仅会发生在攻击者之间,而对整体攻击行为没有影响.如果UC发现Ob的加密散列值使用生成者的公钥无法解密,那么则认定PUC发生了篡改攻击.UC首先会将被篡改的Ob从传输报文中删除,然后将观察到PUC发生篡改攻击的证据加入到其正在生成的Ob中.因此,智能的攻击者多数会遵循Ob秘钥协议来获取信任,但是使用Ob密钥协议并不能保证每个UC都能够提供正确的Ob,因为受损的UC可能无法插入Ob或者会生成错误的Ob.

图2 Ob的生成与验证过程Fig.2 Generation and verification process of Ob

4.2 攻击检测

本节描述了如何对网络中恶意节点的攻击行为进行有效的判断.其中4.2.1节描述了根据交互记录识别节点的丢包行为.4.2.2节描述了根据起源信息和数字签名技术验证报文是否被篡改.4.2.3节描述了针对恶意节点的假身份、假证据攻击进行识别.

4.2.1 丢包与注包攻击

检验网络中的丢包攻击,最直观的方法就是根据节点的丢包率进行判断.但由于恶意节点可能具备欺骗性,无法要求其给出自身真实的丢包率.本文提出了一种基于交互记录(Interactive Record,IR)的丢包攻击识别方法,设定无人机节点每次完成报文传输之后将生成IR对这次交互进行记录.在路由决策时可通过检验目标节点IR计算其丢包率.因为本文中IR不可伪造的特性,计算出的丢包率接近真实值.

造成网络丢包的原因有很多,特别是对于无人机网络,网络拥塞、链路质量问题和节点的恶意行为都会导致网络丢包.而恶意行为根据其丢包率的不同分为灰洞攻击和黑洞攻击.为了对以上行为进行区分,本文设定了丢包概率阈值PT,丢包率小于PT的节点,被视为网络原因导致的丢包,不纳入观察范围.丢包率大于PT且小于1的节点则被视为是具有灰洞攻击行为的恶意节点.

IR的结构如式(2)所示,在此使用无人机节点i和j作为示例来说明IR构造过程.

(2)

IRi,j表示签名前的交互记录,其中包含有两个节点的身份信息idi,idj和IR序号ci,cj.每个无人机节点都拥有一个序列号c作为IR的序号,c在任务开始时被置为1并在每次交互之后递增.t表示IRi,j的生成时间.ni→j表示这次交互中i向j发送的报文数,nsi表示在这些报文中i产生的报文数.nj→i表示j向i发送的报文数,nsj表示在这些报文中j产生的报文数.

(3)

可能存在一些恶意节点通过自己生成的报文来掩盖被其丢弃的任务报文,以此来逃避检查.本文检测节点生成报文在发送报文中的占比,节点的自报文转发率β的计算公式如(4)所示.若β>SPT表示该节点更倾向于发送自己产生的报文,且存在丢包攻击或注包攻击的风险.

(4)

算法1.节点丢包或注包攻击检查方法

输入:目标检测节点UT

输出:UC的IR验证结果

1.IRList⟸getIRList(UT); //从UT获取IR列表

2. //若UT给出的IR序列存在缺失或重复

3.if! IsInOrder(IRList)then

4. Reject(UT) ▷拒绝发送并生成证据

5.else

6. //若存在IR的数字签名未验证通过

7.if!IRSignCheck (IRList)then

8. Reject(UT) ▷拒绝发送生成证据

9.else

10. //根据公式(3)计算UT丢包率

11.α⟸formula(3);

12.ifα>PTthen

13. Reject(UT) ▷拒绝发送并生成证据

14.else

15. //根据公式(4)计算UT转发率

16.β⟸formula(4);

17.ifβ>SPTthen

18. Reject(UT) ▷拒绝发送并生成证据

19.else

20. CheckPass(UT); ▷验证通过

21.endif

22.endif

23.endif

24.endif

交互记录可非常直观的反应网络内节点的历史报文收发状况,基于该信息报文携带节点可独立的检测恶意节点,并生成相应证据给予恶意节点直接的信任惩罚.数字签名的引入使得该方案具有较强的安全性和准确性.传输开始前的IR验证阶段和传输结束后新IR的生成阶段都伴随有节点之间的数据交互.但IR的大小远小于任务报文,由IR交互所造成系统能耗增加微乎其微.此外在多副本的路由协议下,通过检测并从网络中排除恶意节点,可以使得任务报文尽快抵达目的节点,不但提升系统传递速率而且间接为系统节省能耗.

4.2.2 篡改攻击

本文中篡改攻击主要分为对任务报文MM的篡改攻击和对观测证据Ob的篡改攻击两种,对Ob的篡改攻击检测已经在4.1节进行叙述,本节主要讲述对MM的篡改攻击.

在报文传输途中,恶意节点可能会对MM进行篡改使得地面站收集到虚假的消息影响任务执行.当节点UC收到PUC转发的报文时,采用算法2进行任务报文篡改检查.

算法2.报文篡改攻击检查方法

输入:前驱节点PUC转发的报文MT

输出:报文篡改攻击检测结果

1. //检查接收到的任务报文是否被篡改

2. //从传输报文中分离出任务报文

3.takeMMfromMT

4.//验证任务报文的数字签名

5.ifMMSignChekPass(MT)then

6. Receive(MT); ▷校验通过,接收报文

7.else//数字签名校验未通过,任务报文被篡改

8. genNEvid(PUC); ▷生成前驱节点负面证据

9. //删除被篡改的任务报文,节约系统能耗

10. removeMMfromMT

11. Receive(MT); ▷接收证据信息,供信任评估

12.endif

4.2.3 虚假证据

智能的恶意节点可能会给出虚假的Ob来影响系统信任评估的结果,其攻击方式主要分为身份攻击和假证据两种.

对于身份攻击,本文设定转发节点在从上一跳节点处收到报文之后需对报文进行拆箱检查,验证报文中上一跳节点插入Ob的id与其真实id相同.否则认定为身份攻击,将该条证据加入自身Ob中.地面站在信任评估时会判定身份攻击节点所插入的Ob无效.

对于假证据检测,地面站将结合证据生成节点的信任值和证据指向节点的历史行为进行综合判断,若证据生成节点的信任值较低而其指向节点的历史行为无异常,则该条证据会被认定为假证据.对于发生误报的节点地面站会进行统计,若误报率大于误报阈值PA会被判定为假证据攻击.反之则认为是由于观测失误而导致的证据误报.

由于UAVNpro中的信任评估是基于证据而进行的,证据的准确性与安全性就尤其重要.本文首先根据节点的误报概率对节点的观测失误和恶意攻击予以区分,确保了证据生成时的准确性,接着利用安全签名对证据进行签名认证,保证了证据的传输安全.通过以上方法,在确保了信任评估正确性的同时提高了系统的鲁棒性.

4.3 信任评估

无人机网络各个节点在收到报文后和发送报文前都会进行安全检查.其中篡改攻击和身份攻击在收到报文后进行检查,以此保证传输报文的正确性.丢包攻击和注包攻击在报文转发之前对邻居节点进行检查,以确保报文在未来不会被丢弃.假证据攻击在地面站接收报文之后进行检查,以确保系统信任评估的准确性.对于每项检查若通过,检查节点将会生成一条目标节点的正面证据,否则生成一条负面证据.这些证据将与报文一起抵达地面站成为信任评估的依据.

地面站从传输报文中获取证据,并对各个节点的证据数进行统计.对于节点j,设tj表示报文中指向j的正面证据数,fj表示报文中指向j的负面证据数,t′j表示指向j的历史正面证据总数,f′j表示指向j的历史负面证据总数.对等信任估计遵循基于正面证据量和负面证据量的贝叶斯更新[21],节点j的信任值计算公式如式(5)所示.

(5)

网络每个节点都存有一张描述全网所有节点信任值的信任表TrustTable,地面站在信任评估后利用带外信道将该表给广播全网所有节点,全网节点随即进行更新.该表是网络节点进行安全路由的依据.无人机基于TrustTable进行路由的过程如算法3所示.

算法3.基于信任的路由转发算法

输入:前驱节点PUC转发的报文MT

输出:路由决策结果

1.//无人机节点UC收到报文MT后的处理流程

2.//从传输报文中分离出PUB插入的证据

3.takeObfromMT

4.//若algorithm2 和Ob签名验证通过

5.ifalgorithm2Check (MT)andObSignCheck (Ob) pass

6.thengenPEvid(PUC); ▷生成前驱节点正面证据

7.do

8. //根据路由协议获取下一跳节点

9.ifhasRoutingPaththen

10. n⟸routingProtocol();

11.else

12. carryMessage(MT) ▷携带报文

13.endif

14. //调用算法1和参考信任表对节点n进行检查

15.while!algorithm1Check (n)orTrustTable(n)

16. genPEvid(n) ▷生成节点n正面证据

17. SendMessage(n) ▷发送报文

18.endif

5 仿真实验及其实验结果分析

5.1 实验场景及参数设置

为了验证本文模型的有效性,基于ONE(Opportunistic Networking Environment)仿真器构建仿真平台[22],在真实的任务环境下,建立800m×800m的仿真场景,13架无人机按照设定的航线对任务区域进行覆盖侦察,无人机自组网采用DTN路由协议进行数据传输.实验方案是对PROVEST和UAVNpro两种模型在不同路由协议、不同节点密度、不同恶意行为概率下进行性能分析.

图3 基于One的仿真平台Fig.3 Simulation platform based on One

本文在Epidemic(多副本)和DTNgeo[20](单副本)路由协议基础上进行模拟实验,在节点中随机选择10%,20%和30%的恶意节点独立的攻击系统,恶意行为概率从0.4-1递增,对两种安全模型的检测率、投递率和系统能耗进行比较分析,最终的呈现结果是10次实验结果的平均.实验仿真场景如图3所示,实验的有关参数如表2所示.

表2 实验参数Table 2 Experimental parameters

5.2 实验结果与分析

5.2.1 检测率

检测率表示检测到恶意节点数与网络中恶意节点数的比值,是衡量模型对恶意行为的敏感性重要参数.本文在恶意节点密度一定的情况下分别基于Epidemic和DTNgeo协议研究了UAVNpro的检测率与恶意行为概率、恶意节点密度的关系.实验结果如图4所示,恶意行为概率代表恶意节点的攻击强度,随着攻击强度的增加,UAVNpro对恶意节点的检测率也随之增加.UAVNpro与多副本和单副本路由协议都具有良好的兼容性.对于具有高攻击强度的恶意节点,UAVNpro具有高达96%的检测率.对于低攻击强度的恶意节点,UAVNpro在多副本协议上的表现不如单副本,但当模拟时间足够长时,UAVNpro依旧能对其准确识别.在同一路由协议下,随着恶意节点密度的增加识别率逐渐下降.因为恶意节点增多影响到了地面站证据的收集,导致信任评估不够准确.在网络内存在30%的恶意节点的时候,UAVNpro的识别率也能达到80%.

图4 UAVNpro对恶意节点的检测率Fig.4 UAVNpro detection rate

5.2.2 投递率

投递率表示成功传输的报文与生成的报文总量的比值,是衡量网络性能最重要的参数.系统的投递率受路由协议、丢包攻击、篡改攻击的影响较大,本文使用不同的恶意节点密度研究了投递率与攻击强度的关系.对比算法设置了不考虑安全的原始路由协议Epidemic和DTNgeo,以及分别了结合PROVEST和UAVNpro模型的路由协议.

图5 恶意节点密度20%时的报文投递率Fig.5 Delivery rate when the density of malicious nodes is 20%

DTNgeo路由协议下的仿真结果如图5所示,可以看出UAVNpro在DTNgeo下表现较为理想,可实现高达90%的投递率.结合检测率实验可分析出UAVNpro在多副本协议下对网络中恶意行为较为敏感,对高攻击强度节点和低攻击强度节点都有良好的识别度.Epidemic协议下UAVNpro识别恶意节点所用的时间有所增长,投递率为85%,相比DTNgeo稍有下降.因为多副本协议中被篡改的报文经过节点的复制转发最终会在网络中泛滥,影响系统投递率.

相比UAVNpro,PROVEST性能稍逊,因为其无法抵御丢包攻击,对于篡改攻击仅根据节点的历史信任对当前行为做出判断,容易出现错判误判.PROVEST在仅存在丢包攻击和报文篡改攻击的网络中无法识别出恶意节点,在混合多种攻击的网络中识别速度和准确性较低.PROVEST的性能受网络中恶意节点密度影响较大,当节点密度为0.2时,能够识别行为概率接近0.7的恶意性较强的节点.

5.2.3 系统能耗

无人机的能源受限,是由其移动性决定的.由于尺寸和重量受到约束,无人机在处理能力、内存容量、网络连接和电池容量等方面受到限制.系统能耗指的是系统在任务期间的能量消耗,与系统报文中继数密切相关.本文在恶意节点密度一定的情况下使用不同的路由协议研究了报文中继数与恶意节点攻击强度的关系.实验结果如图6、图7所示,x轴表示恶意节点攻击强度,y轴表示报文中继数.

图6 恶意节点密度20%时的网络中继数Fig.6 Hop count when the density of malicious nodes is 20%

如图6所示,对于单副本路由协议DTNgeo,因为全网只存在一个报文副本,若该副本被恶意节点篡改或丢弃,系统的投递率也将会直接受到影响.单副本协议中丢包攻击在丢弃网络报文后变相减少了网络报文的中继数,但这种以付出投递率乃至任务成功率所换来的系统能耗减少并不是我们所希望的.UAVNpro和PROVEST在高攻击强度下的中继数相近,但在攻击强度较低时,UAVNpro相比PROVEST耗能更低.

如图7所示,对于多副本路由协议Epidemic,注包攻击和篡改攻击会导致报文中继数急剧增加,大幅度提升系统能耗.与纯的Epidemic相比,UAVNpro始终保持相对少量的报文中继数,通过识别网络中的恶意节点,UAVNpro很好的遏制了虚假报文的转发,节省了系统能量.当系统中存在20%的攻击者时,UAVNpro为系统节省了约25.6%的能量.PROVEST因为攻击识别方式的原因在攻击强度较低时无法有效识别恶意节点,导致系统能耗较高.

图7 恶意节点密度20%时的网络中继数Fig.7 Hop count when the density of malicious nodes is 20%

6 总 结

现有的无人机网络安全路由模型能量消耗大且安全性不高,本文针对无人机自组织网络中的安全问题,提出了一种起源信息感知的无人机信任评估模型UAVNpro,利用每个中间消息载体添加的观察信息作为消息转发过程中的证据来评估节点的信任.本文考虑了多种恶意攻击行为,并设计了相对应的检测方法生成观测证据.利用数字签名将证据嵌入到任务报文载体进行证据的收集,在提升系统安全性的同时降低了系统能耗.实验结果表明UAVNpro不但有效保证了无人机协同任务期间的任务质量,而且对不同的路由协议都具有良好的兼容性.随着恶意节点攻击强度增大,UAVNpro的投递率和对恶意节点的识别率显著提高,尤其恶意节点密度较大时UAVNpro也能保持较高的识别效率.因此在绝大多数情况下,本文提出的模型优于现有的PROVEST模型.

猜你喜欢
报文路由信任
基于J1939 协议多包报文的时序研究及应用
汽车电器(2022年9期)2022-11-07 02:16:24
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
中国外汇(2019年11期)2019-08-27 02:06:30
表示信任
探究路由与环路的问题
嘤嘤嘤,人与人的信任在哪里……
桃之夭夭B(2017年2期)2017-02-24 17:32:43
从生到死有多远
ATS与列车通信报文分析
信任
PRIME和G3-PLC路由机制对比