一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于生成对抗网络的传感网恶意节点检测方法与流程

2022-03-26 14:09:56 来源:中国专利 TAG:


1.本发明属于信息安全检测技术领域,特别涉及一种基于生成对抗网络的传感网恶意节点检测方法。


背景技术:

2.无线传感器网络由于节点资源有限,并且采用了开放的通信媒介,使得网络安全非常脆弱。传感器节点易遭外界俘获而转换为恶意或妥协节点,而大部分引起传感器网络崩溃的攻击都是由传感器网络内部的恶意节点发起的。攻击者通过物理捕捉、改写控制代码、读取关键数据等方式来捕获传感器网络中的部分节点,根据这些妥协节点的被控制程度可定义节点的恶意等级。这些恶意节点的存在,会消耗周围节点能量、降低网络吞吐量、减少传感器网络寿命。因此,如何快速检测出恶意节点并判定节点恶意等级是无线传感器网络安全领域一个急需解决的问题。


技术实现要素:

3.为了快速检测出恶意节点并判定节点恶意等级是无线传感器网络安全领域,本发明提出一种基于生成对抗网络的传感网恶意节点检测方法,包括以下步骤:
4.监听节点间的数据传输过程,并将该过程的数据进行模糊处理后作为信任数据;
5.计算获取的信任数据的信任任值,并根据信任值将信任数据打上标签;
6.构建生成对抗网络,生成对抗网络根据输入的数据获取数据特征的分布根据带标签的信任数据训练生成对抗网络;
7.其中训练两个生成对抗网络包括编码器和解码器,编码器从输入的信任数据中提取提取数据的特征,解码器根据特征获取信任数据的分布;
8.节点将监听数据进行模糊处理后输入生成对抗网络,生成对抗网络监测当前监听的节点是否为恶意节点。
9.进一步的,节点信任度的计算包括以下步骤:
10.计算节点进行数据传输中数据延时率以及数据丢包率,并根据隶属等级分别计算数据延时率以及数据丢包率的隶属度值,隶属等级分别高、中、低三个等级;
11.根据数据延时率以及数据丢包率高、中、低三个等级的隶属度等级进行组合,获取等级依次为极高、高、中、低、极低五个等级的模糊规则;
12.从模糊规则中选取三条模糊规则,选择的规则包括:一条从等级为极高和高中选择、一条从等级为中中选择、一条从等级为低和极低中选择;
13.从选择的三组模糊规则集中,计算选择的模糊规则集中数据延时率以及数据丢包率的隶属度函数,从中选择最大值为右区间、最小值为左区间,将获取区间作为纵坐标区间获取隶属度函数在此区间内横坐标对应的区间,即得到二型模糊集合;
14.采用重心降型,获得二型模糊集合的并集的重心,将该重心作为节点的信任度。
15.进一步的,根据信任值将信任数据打上标签的过程包括:
16.设定第一阈值、第二阈值和第三阈值三个阈值,当节点信任度大于第一阈值则该节点的标签为正常标签;
17.当节点信任度大于第二阈值且不大于第一阈值,则该节点的标签为第一类恶意标签;
18.当节点信任值大于第三阈值且不大于第二阈值时,则该节点的标签为第二类恶意标签;
19.否则节点的标签为第三类恶意标签。
20.进一步的,在对数据延时率以及数据丢包率计算隶属度前,对获取的数据进行预处理,处理过程包括:
21.设置长度为n、步长为t的取值窗口;
22.计算窗口内的数据延时率或者数据丢包率的平均值,并将每个窗口数据的平均值的形成的集合作为计算数据延时率或者数据丢包率隶属度的数据。
23.进一步的,数据延时率隶属度的计算包括:
24.以节点数据延时率为横坐标,以数据延时率的隶属度为纵坐标,且节点数据延时率及其隶属度的最小值为0、最大值为1;
25.在横坐标上设置十二个节点,分别为a、b、c、d、e、f、m、g、h、i、j、k、 l,且0<a<b<c<d<e<f《m<g<h<i<j<k<l<1;
26.数据延时率的隶属度等级为低时,隶属度函数表示为:
[0027][0028]
数据延时率的隶属度等级为中时,隶属度函数表示为:
[0029][0030]
数据延时率的隶属度等级为低时,隶属度函数表示为:
[0031][0032]
其中,参数a、b、c、d、e、f、g、h、i、j、k、l、m的值根据实际应用确定,但必须确保三个隶属度函数曲线与x轴交叉区域面积和值为1;dr
l1
(x)为节点数据延时率隶属度等级为低时隶属度函数的上界,dr
l2
(x)为节点数据延时率隶属度等级为低时隶属度函数的下界;dr
m1
(x)为节点数据延时率隶属度等级为中时隶属度函数的上界,dr
m2
(x)为节点数据延时率隶属度等级为中时隶属度函数的下界;dr
h1
(x)为节点数据延时率隶属度等级为高时隶属度函数的上界, dr
h2
(x)为节点数据延时率隶属度等级为高时隶属度函数的下界。
[0033]
进一步的,数据丢包率隶属度的计算包括:
[0034]
以节点数据丢包率为横坐标,以数据丢包率的隶属度为纵坐标,且节点数据丢包率及其隶属度的最小值为0、最大值为1;
[0035]
在横坐标上设置十二个节点,分别为a、b、c、d、e、f、g、h、i、j、k、l、 m,且0<a<b<c<d<e<f<g<h<i<j<k<l《m<1;
[0036]
数据丢包率的隶属度等级为低时,隶属度函数表示为:
[0037][0038]
数据丢包率的隶属度等级为中时,隶属度函数表示为:
[0039][0040]
数据丢包率的隶属度等级为高时,隶属度函数表示为:
[0041][0042]
其中,参数a、b、c、d、e、f、g、h、i、j、k、l、m的设定根据实际应用确定,但必须保证三个等级隶属度函数曲线与x轴交叉区域面积和值为1;
[0043]
lr
l1
(x)为节点数据丢包率隶属度等级为低时隶属度函数的上界,lr
l2
(x)为节点数据丢包率隶属度等级为低时隶属度函数的下界;lr
m1
(x)为节点数据丢包率隶属度等级为中时隶属度函数的上界,lr
m2
(x)为节点数据丢包率隶属度等级为中时隶属度函数的下界;lr
h1
(x)为节点数据丢包率隶属度等级为高时隶属度函数的上界,lr
h2
(x)为节点数据丢包率隶属度等级为高时隶属度函数的下界。
[0044]
进一步的,模糊规则的获取过程包括:
[0045]
将数据时延率低且数据丢包率低的节点的等级设为极高;
[0046]
将数据时延率中且数据丢包率低的节点的等级设为高;
[0047]
将数据时延率低且数据丢包率中、数据时延率中且数据丢包率中或者数据时延率高且数据丢包率低的节点的等级设为中;
[0048]
将数据时延率低且数据丢包率高、数据时延率中且数据丢包率高或者数据时延率高且数据丢包率中的节点的等级设为低;
[0049]
将数据时延率高且数据丢包率高的节点的等级设为极低。
[0050]
进一步的,生成对抗网络在训练过程中,通过解码器提取数据的特征并通过解码器生成数据,解码器也作为生成对抗网络的生成器;将随机噪声输入生成器,生成器根据随机噪声生成数据并希望判决器判不能识别出该数据为生成器根据随机噪声生成的数据,且
判决器希望能够判断出该数据是否是生成器生成的数据,则生成对抗网络的目标函数可以表示为:
[0051][0052]
其中,g表示生成器;d表示判决器;d(x)表示经过真实数据x训练的判断器;表示从 p
data
分布中获取的期望,p
data
表示真实数据的分布;表示从pz(z)分布中获取的期望,pz(z)表示生成数据的分布,将随机噪声z输入生成器得到生成数据。
[0053]
进一步的,对生成对抗网络进行训练过程中,生成网络的损失包括:
[0054][0055]
lose1=ave|x
i-x'i|
[0056][0057]
lose3=ave|d-1|
[0058]
其中,sum
lose
表示生成网络的总损失;losei表示第i个损失;ave表示求平均值;xi为真实数据,x'i为生成器生成的数据;为真实潜在空间特征中的特征,为生成器生成数据输入到编码器中产生的相对应的特征;d为编码器提取的特征输入到判决器中,判决器对该特征的打分值。
[0059]
进一步的,判断当前实时监测的节点是否为恶意节点的过程包括:
[0060]
通过编码器提取输入数据的特征,并通过各个类型数据的第一个损失函数 lose1判断输入数据的类型。
[0061]
本发明对无线传感器网络节点进行信任评估、信任融合、节点性质及恶意等级进行评估,从而快速检测出恶意节点并评估恶意等级,阻止恶意节点威胁网络的安全。
附图说明
[0062]
图1为本发明一种基于生成对抗网络的传感网恶意节点检测方法流程图;
[0063]
图2为监听时记录标记节点的所有传输行为数据示意图;
[0064]
图3为本发明二型模糊推理系统示意图;
[0065]
图4为本发明中等级隶属度与dr的关系示意图;
[0066]
图5为本发明中等级隶属度与lr的关系示意图;
[0067]
图6为本发明信任值属度与信任值的关系示意图;
[0068]
图7为本发明生成对抗网络训练流程图;
[0069]
图8为生成对抗网络中编码器架构图;
[0070]
图9为生成对抗网络中解码器架构图;
[0071]
图10为生成对抗网络(gans)的原理从数学角度解释的示意图。
具体实施方式
[0072]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0073]
本发明提供一种基于生成对抗网络的传感网恶意节点检测方法,如图1,包括以下步骤:
[0074]
监听节点间的数据传输过程,并将该过程的行为数据进行模糊处理后作为信任数据;
[0075]
计算获取的信任数据的信任信任值,并根据信任信任值将信任数据打上标签;
[0076]
构建生成对抗网络,生成对抗网络根据输入的数据获取数据特征的分布根据带标签的信任数据训练生成对抗网络;
[0077]
训练两个生成对抗网络包括编码器和解码器,编码器从输入的信任数据中提取提取数据的特征,解码器根据特征获取信任数据的分布;
[0078]
节点将监听数据进行模糊处理后输入生成对抗网络,生成对抗网络监测当前节点是否为恶意节点。
[0079]
实施例1
[0080]
本实施例对一种基于生成对抗网络的传感网恶意节点检测方法具体步骤进行进一步说明。该方法包括:
[0081]
步骤1:在网络部署初期,节点间通过合作标记,进而在交互中获取带有标签的行为数据。
[0082]
在传感网部署初期,网络内部通常并不存在恶意节点,节点之间通过合作标记进而主动学习当前通信环境下的节点行为数据。在学习阶段,节点通过监听获取被标记节点的数据传输行为数据,如数据传输平均时延率(delay rate, dr)、数据传输丢包率(lose rate,lr)。在经过一定周期的监听后,节点得到每类恶意节点的行为数据,如图3,使用二型模糊控制器对多维传输行为特征进行降维处理,最终得到一维特征。具体包括:
[0083]
1.通过行为动态监听获得标记节点的传输行为数据,即数据传输平均时延率和数据丢包率。
[0084]
2.根据知识库将获取的行为数据集转化为对应的模糊集合。
[0085]
3.将获得的模糊集合根据模糊规则转化为二维的特征数据模糊集。
[0086]
4.根据模糊集映射规则库,将产生的二维的特征数据模糊集融合得到一维的信任值。
[0087]
5.在合作标记中,节点被分为四类,包括正常节点与三类恶意节点。经过1-4,可获取大量带有标记的信任值数据。
[0088]
步骤2:将得到的有限的一维信任数据放入生成对抗网络中进行训练,从而学习各类标记节点的信任数据分布,随后将训练完成的生成对抗网络参数反馈至所有节点。具体包括:
[0089]
1.将网络部署初期所得到的少量信任证据放入生成对抗网络中训练,每一类恶意节点都训练两种生成对抗网络。其一为编码器(即根据数据获取特征特征),其二为解码器(即根据特征获取数据)。
[0090]
2.在编码器中,将网络部署初期监听得到并处理过的一维信任数据集放入生成对抗网络中训练,从而生成输入数据的特征。训练完成后,获得特征数据的分布。
[0091]
3.在解码器中,将编码器生成的大量近乎完美的特征数据集放入生成对抗网络中训练,生成信任数据。训练完成后,获得信任数据的分布。
[0092]
4.针对三类恶意节点,通过生成对抗网络的训练获得对应的自动编码器,将训练好的编码器参数反馈至网络中的所有节点。
[0093]
步骤3:在后续传感器网络运行中,节点将监听的信任证据进行模糊处理,得到信任数据后输入自动编码器中,根据编码器的误差值判断被评估节点的性质。具体包括:
[0094]
1.在后续网络的运行中,节点通过监听周围节点的行为,记录下行为数据,当传输时延率、丢包率数据记录满一个窗口时,对这些数据进行模糊处理。
[0095]
2.将模糊处理得到的信任数据输入到各类编码器,根据各类编码器的误差值与预设的阈值判断出节点的类别。
[0096]
实施例2
[0097]
本实施例提供一种对数据的处理方法。如图2,监听时记录标记节点的所有传输行为数据(即数据包的丢包率和时延率),每轮都记录下相对应的平均时延率和丢包率并放入一个数据集合中,然后通过滑动窗口去提取数据集合中的数据。在节点间交互过程中监听传输行为证据时,有时会因为通信环境变化而引起误监听,将数据提取到滑动窗口进行处理后能最大程度降低误监听的影响。故在后续的传输行为数据使用之前,进行处理,处理过程包括:
[0098]
设置长度为n、步长为t的取值窗口;
[0099]
计算窗口内的数据延时率或者数据丢包率的平均值,并将每个窗口数据的平均值的形成的集合作为计算数据延时率或者数据丢包率隶属度的数据。
[0100]
例如可以取时延率的前十位做一次取平均值处理,得到lr1’
,然后将滑动窗口向后移动一位,这时将滑窗中的数据做一次取平均值处理,得到lr2’
,依次处理,得到lr
n’,记为{lr’}。丢包率参照时延率的方式处理,得到dr1’
、 dr2’…
dr
n’,记为{lr’}{lr’}。
[0101]
实施例3
[0102]
本实施例提出根据知识库将获取的行为数据集转化为对应的模糊集合具体实施方式。
[0103]
将获取的数据,例如图2中将实施例2获取的{lr’}、{lr’}作为输入,经过二型模糊推理系统获取信任值,包括:
[0104]
使用模糊集对{lr’}、{lr’}数据进行模糊化;
[0105]
利用模糊规则对模糊化后的数据进行推理;
[0106]
将模糊推理后的数据进行降型和去模糊化,得到信任值。
[0107]
本实施例给出一个模糊规则,如表1所示。模糊集规则本领域技术人员可以根据实际需求自行进行设置,本发明只提供一种实施方式。
[0108]
表1模糊集规则表
[0109][0110][0111]
根据模糊集映射规则库,将表1中所产生的二维的特征数据模糊集融合得到一维的信任值,计算过程包括:
[0112]
等级隶属度与dr和lr的关系如图4~5,根据{lr’}、{lr’}的值将其分为三个等级,则需要计算每个等级中{lr’}、{lr’}对应的隶属度。传输行为数据延时率dr求出对应“低”、“中”和“高”三个模糊集的隶属度(dr
l1
,dr
l2
)、(dr
m1
,dr
m2
)和(dr
h1
,dr
h2
);传输行为数据丢包率lr求出对应“低”、“中”和“高”三个模糊集的隶属度(lr
l1
,lr
l2
)、(lr
m1
,lr
m2
)和(lr
h1
,lr
h2
)。
[0113]
从表1中选择3条模糊规则(如1,2,3)分别对应3组模糊集,将(1)和(2) 中得到的6组隶属度用区间最小值融合成3组分别对应3条模糊规则:(dr
l1
, dr
l2
)和(lr
l1
,lr
l2
),(dr
l1
,dr
l2
)和(lr
m1
,lr
m2
),(dr
l1
,dr
l2
)和(lr
h1
,lr
h2
),比较第一组中dr
l1
和lr
l1
最小的构成左区间,dr
l2
和lr
l2
最小的构成右区间,两者并集为(lr,rr)为新的输出模糊集的纵坐标区间。将纵坐标区间输入到输出模糊集得到对应的横坐标区间(lc,rc),即根据随机选择的三组模糊规则,从模糊规则中提取一个从低等级隶属度提取得到一个左区间和一个从高等级隶属度提取得到的一个有区间构成的区间中对应的隶属度值范围所对应的所有低等级的隶属度函数和高等级的隶属度函数,以此类推,将此模糊区间转化成二维模糊函数。
[0114]
在得到的二维模糊函数区间内,根据二维特征数据数据通过以下公式处理后得到一个最大与最小值,加权平均后得到一维特征值,达到数据降维处理:
[0115][0116][0117]
y(x')=1/2[y
l
(x') yr(x')]
[0118]
其中,y
l
(x')为该等级隶属度函数输出最小值,fn是隶属度,f-n
为隶属度最小值,
为隶属度最大值,y-n
为隶属度函数下值,yr(x')为隶属度函数输出最大值,为隶属度函上值,y(x')为最小值和最大值的均值,即为降维得到的一维数据,将该数据作为节点的信任值。本发明中所述上值和下值,分别指计算一个等级(高、重、低三个等级隶属度函数)中函数的最大值和最小值。
[0119]
实施例4
[0120]
在合作标记中,节点被分为四类,包括正常节点与三类恶意节点。经过(1)-(4) 的学习、使用二型模糊控制器降维,每类标签下产生了相应的信任值与节点。
[0121]
如图6所示,极高信任值节点和高信任值节点分类为正常标签节点,中信任值节点分类为i类恶意标签节点,低信任值节点分类为ii类恶意标签节点,极低信任值节点划分为iii类恶意标签节点。
[0122]
将网络部署初期所得到得少量一维信任数据放入生成对抗网络中训练自动编码体系,每一类恶意节点都训练两种生成对抗网络。其一为编码器(数据-》 特征),其二为解码器(特征-》数据)。
[0123]
如图7所示,为生成对抗网络训练流程图。
[0124]
图8所示,为生成对抗网络中编码器架构图。其中con(convolutional layer) 为卷积层,elu为激活函数,mpl(max-pooling layer)为最大池化层。
[0125]
如图9所示,为生成对抗网络中解码器架构图。其中con(convolutionallayer)为卷积层,elu为激活函数,usl(up-sampling layer)为上采样层。
[0126]
对于步骤1中所产生4类节点处理后的信任数据,组合成向量形式,如t1= [t1,t2,t3,
……
t
10
],其中{tn}为步骤1中融合输出的信任值,在这里考虑到无线传感器网络的能源有限问题,尽量降低生成对抗网络(gans)的复杂性,故将输入向量维数控制在10维。
[0127]
生成对抗网络(gans)的原理从数学角度解释如图10所示:
[0128]
从数据库中拿出真实数据x,将其放到判别器d(x)中,目标是让d(x)输出的值接近1。
[0129]
将随机噪声z输入生成器g(z),生成器希望判别器给自己生成的数据输出的值接近1,即d(g(z))输出接近1;而判别器希望自己给生出数据输出的值接近0,即d(g(z))输出接近0。
[0130]
gan公式如下式1(优化目标函数):
[0131][0132]
其中,表示期望x从p
data
分布中获取;x表示真实数据,p
data
表示真实数据的分布。表示期望z是从p(z)分布中获取;z表示生成数据,pz(z) 表示生成数据的分布。
[0133]
本方法在传感器网络中使用的对抗生成网络损失如下式2-5所示:
[0134][0135]
lose1=ave|x
i-x'i|
ꢀꢀ3[0136]
[0137]
lose3=ave|d-1|
ꢀꢀ5[0138]
其中,式2为总的损失和;ave为求平均值,式3中xi为真实数据,xi'为解码器(数据生成器)中产生的数据;式4中l
ia
为真实潜在空间特征中的特征, l
ia
'为数据生成器gx生成的其中一个x
ia
输入到编码器(特征生成器gl)中产生的相对应的特征;式5中d为编码器(特征生成器gl)中产生的特征输入到特征判别器的打分值,lose为生成特征与其目标1分之间的损失。
[0139]
将{t}输入到上述生成对抗网络中训练。
[0140]
在编码器中,将网络部署初期监听得到并处理过的一维模糊数据集放入生成对抗网络中训练,从而生成输入数据的特征。训练完成后,获得特征数据的分布。
[0141]
将少量的步骤1中的信任数据输入到编码器(数据-》特征)中,获得特征数据的分布。
[0142]
解码器中,将编码器生成的大量近乎完美的一维模糊数据集放入生成对抗网络中训练,生成信任数据。训练完成后,获得信任数据的分布。
[0143]
将2的大量信任证据样本输入到解码器(特征-》数据)中,获得信任数据的分布。
[0144]
针对三类恶意节点,通过生成对抗网络的训练获得对应的自动编码器,将训练好的编码器参数反馈至网络中的所有节点。
[0145]
每类恶意节点训练完成的编码器和解码器,组合成一个自动编码体系,在上述1-3步骤中训练完美以后,将自动编码体系中的参数反馈至网络中的所有节点。
[0146]
步骤3:在后续传感器网络运行中,节点将监听的信任证据进行模糊处理,得到信任数据后输入自动编码器中,根据编码器的误差值判断被评估节点的性质。
[0147]
在后续网络的运行中,节点通过监听周围节点的行为,记录下行为数据,当传输时延率、传输丢包率的数据值记录满一个窗口值时,对这些数据进行模糊处理。
[0148]
每个节点在接受到反馈后拥有完美的自动编码器体系,在后续网络运行中,每个簇内节点都在监听记录下其邻居节点的信任证据,并按照图2所示的滑动窗口形式排列,当收集到信任证据够一个窗口值时,记为t
i’。i的值随着窗口的移动变化。将这些数据进行模糊处理,其处理步骤参考步骤一中的2-4。
[0149]
将模糊处理得到的数据输入到各类编码器,根据各类编码器的误差值与预设的阈值判断出节点的类别。
[0150]
将模糊处理得到的数据输入到图7生成对抗网络训练流程图中的编码器输入端,在经过编码器处理之后,生成其相对应的特征,将其相对应的特征又继续输入到后续的解码器中,生成了数据集{t
i”}。由于在步骤2中训练生成对抗网络而得到的自动编码体系中,其解码器和编码器都具备了真实数据的分布。根据公式3,在这将真实的数据和产生的数据带入公式中,即lose1=ave|t
i-t
i”|。将lose1的大小与阈值相比较,从而判断节点的类别,其中阈值在实际应用中产生。具体如:当{t
i’}输入到第i类恶意节点的自动编码体系中,若lose1的值大于这个阈值,则说明该类节点非i类恶意节点。再输入第ii类恶意节点的自动编码体系中,若lose1的值小于这个阈值,则说明该类节点为ii类恶意节点,以此类推。若非三类恶意节点,则该节点为正常节点,至此,完成节点性质的判断。
[0151]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换
和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献