1.本发明属于计算机领域中的物联网安全技术领域,具体涉及一种基于路由路径贡献感知的恶意节点检测方法。
背景技术:2.在物联网飞速发展的同时,各种各样的安全与隐私问题也随之产生。由于终端设备有限的资源,物联网安全不同于传统的网络安全。物联网设备的存储和计算资源有限,但是传统的互联网由功能强大的服务器和资源丰富的计算机组成。因此,传统网络可以通过多功能的安全层和复杂的协议来保护,而这些举措对于物联网系统而言是无法承受的。与传统网络相比,物联网设备采用安全性较低的无线通信,例如lora,zigbee和802.15.4。最后,由于特定的应用功能和缺乏通用的操作系统,各物联网设备拥有不同的数据内容和格式,这使开发标准安全协议具有挑战性。
3.为了检测物联网中的恶意节点,现有诸多检测方案被提出。现有研究已经证实信任评估技术可以显著提高网络安全性。基于被检测节点的通信特征,该节点的直接信任和间接信任可以被评估。节点的信任值越高,该节点越可能是良性节点,反之,越可能是恶意节点。此外,近年来,也有许多研究利用机器学习算法进行恶意节点检测。他们的做法通常是利用收集到的节点的正常行为模式作为样本训练机器学习模型进行恶意节点检测。待检测模型训练结束后,一旦发现某节点的行为模式偏离正常行为模式时便可判定该节点为恶意节点。
4.现有技术首先随机向网络中注入事先准备好的数据包并利用基站收集数据包。基站基于收集到的数据包评估各路由路径的信任值,然后再将各路由路径的信任值作为训练样本训练机器学习模型来评估各节点的信任值。但是,这些检测策略都忽略了各路由路径对节点信任值评估的贡献是不一样,这严重降低了恶意节点检测方法的检测性能。
5.因此,针对上述问题,予以进一步改进。
技术实现要素:6.本发明的主要目的在于提供基于路由路径贡献感知的恶意节点检测方法,其首先收集网络中原始的数据包并执行恶意检测任务,可以有效减轻中转节点的计算和存储负载,然后将路径信任置信度考虑在内,无论在报文负载不均衡度低还是高的网络中,均能取得良好的检测性能,最后利用加权的回归模型评估各节点的信任值,并将其作为一个特征输入聚类模型中进行恶意节点检测,可以显著提高检测准确率,降低误报率,从而提高恶意节点检测性能,提升物联网安全性。
7.为达到以上目的,本发明提供一种基于路由路径贡献感知的恶意节点检测方法,用于面向物联网中内部攻击的基于路由路径贡献感知的恶意节点检测,包括以下步骤:
8.步骤s1:进行数据包收集,基站收集网络中传输的原始数据包并且验证各数据包的完整性并判断数据包在传输过程中是否受到篡改攻击;
9.步骤s2:进行机器学习模型训练,构建所有路由路径的信任值与相应路由路径上各节点的信任值之间的信任模型,从而基站评估各路由路径的信任值以及路由路径信任值的置信度,将节点的信任值评估问题转变为一个加权的多元线性回归问题并通过加权的回归算法来评估获得各节点的初始信任值;
10.步骤s3:进行节点信任聚类,基于计算得到的节点的初始信任值,利用聚类算法对节点进行聚类,从而将所有节点分为三类:初始良性节点组、未知节点组以及初始恶意节点组(初检测阶段);
11.步骤s4:进行强化检测,进行路由路径贡献评估和源节点信任评估,从而将数据包分配给对节点信任评估有贡献的源节点,最后再次利用聚类算法对节点进行聚类,从而将所有节点分为两类:良性节点组和恶意节点组。
12.作为上述技术方案的进一步优选的技术方案,步骤s2具体实施为以下步骤:
13.步骤s2.1:基于收集到的各路径的报文信息,汇聚(sink)节点评估各路径的信任值以及信任值的置信度;
14.步骤s2.2:假设一条路由路径pathj=《r
1j
...r
ij
...r
βj
》,其中r
ij
为路径pathj上的第i个中转节点且β为路径pathj上的中转节点个数,路径pathj传输的报文总数为γ,其中α个报文未被攻击,则路径pathj的信任值并且pathj.t的置信度为δ为网络中传输的所有报文总数,(再结合一条路径的信任值是该路径上所有中转节点综合作用的结果的事实)形式化每条路径的信任值与该路径上所有节点的信任值之间的关系:
15.pathj.t=r
1j
.t
×
...
×rij
.t
×
...
×rβj
.t;
16.其中r
ij
.t为节点r
ij
的信任值,并且将上式进行对数转换:
[0017][0018]
其中如果节点ri(1≤j≤n,n为网络中所有中转节点的数目)在路径pathj上,则a
ij
=1;否则a
ij
=0;
[0019]
不失一般性,整个网络的路径与节点的信任模型构建如下:
[0020][0021]
其中σ为网络中所有路径的个数,将上述信任模型转化为矩阵形式:
[0022]
y=t
×
x,其中y=[ln path1.t...ln pathj.t...ln path
σ
.t];
[0023][0024]
t=[ln r1.t...ln ri.t...ln rn.t];
[0025]
以及路径信任置信度矩阵
[0026]
作为上述技术方案的进一步优选的技术方案,在步骤s2中:
[0027]
将y,x以及w作为加权回归模型的输入来训练机器学习模型,待训练结束后,输出的回归系数t即为各节点的初始信任值。
[0028]
作为上述技术方案的进一步优选的技术方案,在步骤s3中:
[0029]
基于计算得到的节点的初始信任值,进一步识别节点集ns中的恶意节点,运用k-means聚类算法将网络中所有节点聚类为k组,从而将高初始信任值的节点和低初始信任值的节点区分开,将计算得到的所有节点的初始信任值作为各节点的特征输入到k-means聚类算法中;
[0030]
为了减轻收集到的数据包信息不足或者节点信任值评估误差对恶意节点检测的消极影响,将所有的节点分为三类,即初始良性节点组、未知节点组以及初始恶意节点组,初始良性节点组中的节点可能为良性节点,初始恶意节点组中的节点可能为恶意节点,而基于初始阶段收集到的数据包信息,暂无法推断未知节点组中的节点是良性还是恶意节点。
[0031]
作为上述技术方案的进一步优选的技术方案,对于步骤s4中的路由路径贡献评估:
[0032]
增加矩阵的秩:若在初检测阶段路由路径pathj并未传输数据包即路由路径集ψ中不包含路径pathj,但在强化检测阶段路由路径pathj承担数据包传输任务,则路由路径pathj在传输数据包过程中将会产生训练样本并使增广矩阵[x,y]的秩增加1,符号irj来表示路由路径pathj是否存在于路由路径集ψ,若pathj∈ψ,则irj=1;否则irj=0;
[0033]
未知节点相似性:基于初检测阶段构建的未知节点集ung,利用向量形式定义初检测阶段检测到的所有未知节点:
[0034]
μ=[β1,...βi,...βn]
t
;
[0035]
其中,n指的是初检测阶段检测到的所有未知节点的数目且βi表示节点ri是否存在于未知节点集ung中,若ri∈ung,则βi=1;否则βi=0,为了衡量各路由路径上未知节点的存在情况,利用余弦函数计算各路由路径与未知节点向量μ之间的相似性,如下所示:
[0036][0037]
路由路径pathj的未知节点相似性unsj越大,路由路径pathj包含的未知节点数量
越多,且该路径对节点信任值评估的贡献也越大;
[0038]
数据包负载不均衡性:为了减轻数据包负载不均衡性对节点信任值评估的消极影响,在强化阶段有目的性地增加在初检测阶段传输数据包数量较少的那些路由路径的数据包数,从而均衡网络中各路由路径的数据包负载,路由路径pathj的数据包负载不均衡性被定义如下:
[0039]
plbj=1-cj;
[0040]
其中,cj指的是路由路径pathj的信任值的置信度,路由路径pathj的数据包负载不均衡性plbj越大,该路径在强化检测阶段对节点信任值评估的贡献也越大;
[0041]
将路由路径pathj对节点信任值评估的贡献定义如下:
[0042]
rpcj=[irj,unsj,plbj]
×
[w
ir
,w
uns
,w
plb
]
t
;
[0043]
其中,w
ir
,w
uns
和w
plb
分别是路由路径pathj的增加矩阵的秩irj,未知节点相似性unsj和数据包负载不均衡性plbj对节点信任评估贡献的影响因子。
[0044]
作为上述技术方案的进一步优选的技术方案,对于步骤s4中的对于源节点贡献评估:
[0045]
源节点ri(ri∈ns)对节点信任评估的贡献是以该节点为起点的各路由路径对节点信任评估综合作用的结果,将源节点ri对节点信任评估的贡献定义如下:
[0046][0047]
其中,路由路径path
ij
是源节点ri的第j条路由路径,rpc
ij
表示路由路径path
ij
对节点信任评估的贡献,γ是以源节点ri为起点的路由路径的数量,∈
ij
表示当源节点ri需要传输数据包时路由路径path
ij
被利用的概率。
[0048]
作为上述技术方案的进一步优选的技术方案,对于步骤s4中的对于基于各源节点对节点信任评估的贡献:
[0049]
分配给源节点ri的数据包数量占所有注入网络中的数据包数量之比为:
[0050][0051]
其中,ω是网络中源节点的个数;
[0052]
分配的数据包将会通过各源节点注入到网络中,使得对节点信任评估贡献较大的路由路径传输更多的数据包,上述数据包经过节点的存储和转发,最终到达基站并再次被基站收集。基于收集到的数据包信息,基站重新评估各路由路径的信任值以及信任值的置信度,并重新训练加权的最小二乘法模型,待机器学习模型训练完成后,节点的最终信任值将会作为回归系数输出,基于计算得到的最终的节点信任值,再次运用k-means聚类算法将所有节点分为两类:恶意节点组以及良性节点组。
[0053]
为达到以上目的,本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述基于路由路径贡献感知的恶意节点检测方法的步骤。
[0054]
为达到以上目的,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述基于路由路径贡献感知的恶意节点检测方法的步骤。
附图说明
[0055]
图1是本发明的基于路由路径贡献感知的恶意节点检测方法的物联网网络模型。
[0056]
图2是本发明的基于路由路径贡献感知的恶意节点检测方法的攻击模型。
[0057]
图3是本发明的基于路由路径贡献感知的恶意节点检测方法的回归和聚类模型。
具体实施方式
[0058]
以下描述用于揭露本发明以使本领域技术人员能够实现本发明。以下描述中的优选实施例只作为举例,本领域技术人员可以想到其他显而易见的变型。在以下描述中界定的本发明的基本原理可以应用于其他实施方案、变形方案、改进方案、等同方案以及没有背离本发明的精神和范围的其他技术方案。
[0059]
在本发明的优选实施例中,本领域技术人员应注意,本发明所涉及的物联网、路由路径和电子设备等可被视为现有技术。
[0060]
优选实施例。
[0061]
本发明公开了一种基于路由路径贡献感知的恶意节点检测方法,用于面向物联网中内部攻击的基于路由路径贡献感知的恶意节点检测,其特征在于,包括以下步骤:
[0062]
步骤s1:进行数据包收集,基站收集网络中传输的原始数据包并且验证各数据包的完整性并判断数据包在传输过程中是否受到篡改攻击;
[0063]
步骤s2:进行机器学习模型训练,构建所有路由路径的信任值与相应路由路径上各节点的信任值之间的信任模型,从而基站评估各路由路径的信任值以及路由路径信任值的置信度,将节点的信任值评估问题转变为一个加权的多元线性回归问题并通过加权的回归算法来评估获得各节点的初始信任值;
[0064]
步骤s3:进行节点信任聚类,基于计算得到的节点的初始信任值,利用聚类算法对节点进行聚类,从而将所有节点分为三类:初始良性节点组、未知节点组以及初始恶意节点组(初检测阶段);
[0065]
步骤s4:进行强化检测,进行路由路径贡献评估和源节点信任评估,从而将数据包分配给对节点信任评估有贡献的源节点,最后再次利用聚类算法对节点进行聚类,从而将所有节点分为两类:良性节点组和恶意节点组(强化检测阶段)。
[0066]
值得一提的是,对于步骤s4的强化检测:
[0067]
(1)路由路径贡献评估:考虑到每条路径对节点信任评估的贡献不同,基于初检测阶段的反馈从多个方面评估每条路径对节点信任评估的贡献。
[0068]
(2)源节点信任评估:各源节点对节点信任评估的贡献与以该源节点为起点的所有路由路径对节点信任评估的贡献相关。考虑到各源节点对节点信任评估的贡献不同,评估各源节点对节点信任评估的贡献。
[0069]
(3)将数据包分配给对节点信任评估有贡献的源节点。对节点信任评估贡献越大,源节点被分配的数据包越多。这些数据包会被注入到网络中使得那些对节点信任评估贡献较大的路由路径可以传输尽可能多的数据包。基站重新收集数据包并利用收集到的数据包再次训练加权的回归模型,以此输出更准确的节点信任值。然后,再次运用聚类算法将所有节点分为两类:良性节点组和恶意节点组。
[0070]
为了尽可能准确地计算节点的信任值,从增加矩阵的秩,未知节点相似性和数据
包负载不均衡性三个方面评估各路由路径对节点信任评估的贡献。源节点对节点信任评估的贡献是以该节点为起点的各路由路径对节点信任评估综合作用的结果。再根据各路由路径对节点信任评估的贡献评估各源节点对信任评估的贡献。
[0071]
优选地,在步骤s1中:
[0072]
在一个时间窗口中,物联网中存在着大量的数据包传输。首先,基站收集网络中传输的原始数据包并利用数据种源机制获取数据包详细的流通历史,包括数据包的来源和路由路径等信息。根据收集到的数据包,基站提取各数据包的路由路径信息并构建各路由路径的数据包发送集合和接收集。基于加密的哈希函数,基站验证各数据包的完整性并判断这些数据包在传输过程中是否受到篡改攻击。
[0073]
具体的是,步骤s2具体实施为以下步骤:
[0074]
步骤s2.1:基于收集到的各路径的报文信息,汇聚(sink)节点评估各路径的信任值以及信任值的置信度;
[0075]
步骤s2.2:假设一条路由路径pathj=《r
1j
...r
ij
...r
βj
》,其中r
ij
为路径pathj上的第i个中转节点且β为路径pathj上的中转节点个数,路径pathj传输的报文总数为γ,其中α个报文未被攻击,则路径pathj的信任值并且pathj.t的置信度为δ为网络中传输的所有报文总数,(再结合一条路径的信任值是该路径上所有中转节点综合作用的结果的事实)形式化每条路径的信任值与该路径上所有节点的信任值之间的关系:
[0076]
pathj.t=r
1j
.t
×
...
×rij
.t
×
...
×rβj
.t;
[0077]
其中r
ij
.t为节点r
ij
的信任值,并且将上式进行对数转换:
[0078][0079]
其中如果节点ri(1≤j≤n,n为网络中所有中转节点的数目)在路径pathj上,则a
ij
=1;否则a
ij
=0;
[0080]
不失一般性,整个网络的路径与节点的信任模型构建如下:
[0081][0082]
其中σ为网络中所有路径的个数,将上述信任模型转化为矩阵形式:
[0083]
y=t
×
x,其中y=[ln path1.t...ln pathj.t...ln path
σ
.t];
[0084][0085]
t=[ln r1.t...ln ri.t...ln rn.t];
[0086]
以及路径信任置信度矩阵
[0087]
更具体的是,在步骤s2中:
[0088]
基于收集到的报文,sink节点评估各路径的信任值pathj.t。另外,通过分析网络拓扑可获取各节点ri在各路径pathj上的存在状态a
ij
(1≤i≤n,1≤j≤σ)。因此,在构建出的路径与节点之间的信任模型中,评估各节点的信任值ri.t可转变为一个多元线性回归问题。某路径传输的报文数量越多,该路径的信任值越准确,该路径信任的置信度也越大。显然,该路径信任对训练模型的贡献也越大。因此,考虑各路径信任置信度,各节点的信任值评估最终可转变为一个加权的多元线性回归问题。本发明利用加权的回归方法来评估节点的信任值。将y,x以及w作为加权回归模型的输入来训练机器学习模型,待训练结束后,输出的回归系数t即为各节点的初始信任值。
[0089]
进一步的是,在步骤s3中:
[0090]
基于计算得到的节点的初始信任值,进一步识别节点集ns中的恶意节点,运用k-means聚类算法将网络中所有节点聚类为k组,从而将高初始信任值的节点和低初始信任值的节点区分开,将计算得到的所有节点的初始信任值作为各节点的特征输入到k-means聚类算法中;
[0091]
为了减轻收集到的数据包信息不足或者节点信任值评估误差对恶意节点检测的消极影响,将所有的节点分为三类,即初始良性节点组、未知节点组以及初始恶意节点组,初始良性节点组中的节点可能为良性节点,初始恶意节点组中的节点可能为恶意节点,而基于初始阶段收集到的数据包信息,暂无法推断未知节点组中的节点是良性还是恶意节点。
[0092]
更进一步的是,对于步骤s4中的路由路径贡献评估:
[0093]
增加矩阵的秩:根据数理分析中线性代数原理,增广矩阵的秩越大,该矩阵对应的线性方程的解越准确。节点的信任值评估问题是一个多元线性回归问题,该问题同样符合上述增秩理论。因此,在评估节点信任值时,为了尽可能提高节点信任评估的准确性,需要尽可能增大增广矩阵[x,y]的秩。若在初检测阶段路由路径pathj并未传输数据包即路由路径集ψ中不包含路径pathj,但在强化检测阶段路由路径pathj承担数据包传输任务,则路由路径pathj在传输数据包过程中将会产生训练样本并使增广矩阵[x,y]的秩增加1,符号irj来表示路由路径pathj是否存在于路由路径集ψ,若pathj∈ψ,则irj=1;否则irj=0;
[0094]
未知节点相似性:为了进一步检测未知节点集ung中是否存在恶意节点,需要收集
更多关于未知节点的信息。路由路径pathj包含的未知节点数目越多,路由路径pathj产生的关于未知节点的信息也越多且路由路径pathj对节点信任评估的贡献也就越大。基于初检测阶段构建的未知节点集ung,利用向量形式定义初检测阶段检测到的所有未知节点:
[0095]
μ=[β1,...βi,...βn]
t
;
[0096]
其中,n指的是初检测阶段检测到的所有未知节点的数目且βi表示节点ri是否存在于未知节点集ung中,若ri∈ung,则βi=1;否则βi=0,为了衡量各路由路径上未知节点的存在情况,利用余弦函数计算各路由路径与未知节点向量μ之间的相似性,如下所示:
[0097][0098]
路由路径pathj的未知节点相似性unsj越大,路由路径pathj包含的未知节点数量越多,且该路径对节点信任值评估的贡献也越大;
[0099]
数据包负载不均衡性:在初检测阶段,网络中各路由路径传输的数据包数量不同,这可能会导致各路由路径传输的数据包数量相差较大。传输数据包越多的路由路径,路径信任值评估越准确且它们对节点信任值评估的贡献也越大。但是在将各路由路径的信任值作为训练样本训练加强的回归模型时,之前的研究均假设各路由路径对训练模型的贡献是一样的,这是不切实际的。为了减轻数据包负载不均衡性对节点信任值评估的消极影响,在强化阶段有目的性地增加在初检测阶段传输数据包数量较少的那些路由路径的数据包数,从而均衡网络中各路由路径的数据包负载,路由路径pathj的数据包负载不均衡性被定义如下:
[0100]
plbj=1-cj;
[0101]
其中,cj指的是路由路径pathj的信任值的置信度,路由路径pathj的数据包负载不均衡性plbj越大,该路径在强化检测阶段对节点信任值评估的贡献也越大;
[0102]
将路由路径pathj对节点信任值评估的贡献定义如下:
[0103]
rpcj=[irj,unsj,plbj]
×
[w
ir
,w
uns
,w
plb
]
t
;
[0104]
其中,w
ir
,w
uns
和w
plb
分别是路由路径pathj的增加矩阵的秩irj,未知节点相似性unsj和数据包负载不均衡性plbj对节点信任评估贡献的影响因子。
[0105]
优选地,对于步骤s4中的对于源节点贡献评估:
[0106]
源节点ri(ri∈ns)对节点信任评估的贡献是以该节点为起点的各路由路径对节点信任评估综合作用的结果,将源节点ri对节点信任评估的贡献定义如下:
[0107][0108]
其中,路由路径path
ij
是源节点ri的第j条路由路径,rpc
ij
表示路由路径path
ij
对节点信任评估的贡献,γ是以源节点ri为起点的路由路径的数量,∈
ij
表示当源节点ri需要传输数据包时路由路径path
ij
被利用的概率。
[0109]
优选地,对于步骤s4中的对于基于各源节点对节点信任评估的贡献:
[0110]
分配给源节点ri的数据包数量占所有注入网络中的数据包数量之比为:
[0111][0112]
其中,ω是网络中源节点的个数;
[0113]
分配的数据包将会通过各源节点注入到网络中,使得对节点信任评估贡献较大的
路由路径传输更多的数据包,上述数据包经过节点的存储和转发,最终到达基站并再次被基站收集。基于收集到的数据包信息,基站重新评估各路由路径的信任值以及信任值的置信度,并重新训练加权的最小二乘法模型,待机器学习模型训练完成后,节点的最终信任值将会作为回归系数输出,基于计算得到的最终的节点信任值,再次运用k-means聚类算法将所有节点分为两类:恶意节点组以及良性节点组。
[0114]
本发明还公开了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述基于路由路径贡献感知的恶意节点检测方法的步骤。
[0115]
本发明还公开了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述基于路由路径贡献感知的恶意节点检测方法的步骤。
[0116]
优选地,本实施例中的pathj和pathj为同一概念。
[0117]
值得一提的是,本发明专利申请涉及的物联网、路由路径和电子设备等技术特征应被视为现有技术,这些技术特征的具体结构、工作原理以及可能涉及到的控制方式、空间布置方式采用本领域的常规选择即可,不应被视为本发明专利的发明点所在,本发明专利不做进一步具体展开详述。
[0118]
对于本领域的技术人员而言,依然可以对前述各实施例所记载的技术方案进行修改,或对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围。
技术特征:1.一种基于路由路径贡献感知的恶意节点检测方法,用于面向物联网中内部攻击的基于路由路径贡献感知的恶意节点检测,其特征在于,包括以下步骤:步骤s1:进行数据包收集,基站收集网络中传输的原始数据包并且验证各数据包的完整性并判断数据包在传输过程中是否受到篡改攻击;步骤s2:进行机器学习模型训练,构建所有路由路径的信任值与相应路由路径上各节点的信任值之间的信任模型,从而基站评估各路由路径的信任值以及路由路径信任值的置信度,将节点的信任值评估问题转变为一个加权的多元线性回归问题并通过加权的回归算法来评估获得各节点的初始信任值;步骤s3:进行节点信任聚类,基于计算得到的节点的初始信任值,利用聚类算法对节点进行聚类,从而将所有节点分为三类:初始良性节点组、未知节点组以及初始恶意节点组;步骤s4:进行强化检测,进行路由路径贡献评估和源节点信任评估,从而将数据包分配给对节点信任评估有贡献的源节点,最后再次利用聚类算法对节点进行聚类,从而将所有节点分为两类:良性节点组和恶意节点组。2.根据权利要求1所述的一种基于路由路径贡献感知的恶意节点检测方法,其特征在于,步骤s2具体实施为以下步骤:步骤s2.1:基于收集到的各路径的报文信息,汇聚节点评估各路径的信任值以及信任值的置信度;步骤s2.2:假设一条路由路径其中r
ij
为路径path
j
上的第i个中转节点且β为路径path
j
上的中转节点个数,路径path
j
传输的报文总数为γ,其中α个报文未被攻击,则路径path
j
的信任值并且path
j
.t的置信度为δ为网络中传输的所有报文总数,形式化每条路径的信任值与该路径上所有节点的信任值之间的关系:其中r
ij
.t为节点r
ij
的信任值,并且将上式进行对数转换:其中如果节点r
i
在路径path
j
上,则a
ij
=1;否则a
ij
=0;不失一般性,整个网络的路径与节点的信任模型构建如下:其中σ为网络中所有路径的个数,将上述信任模型转化为矩阵形式:
y=t
×
x,其中y=[lnpath1.t
…
lnpath
j
.t
…
ln path
σ
.t];α
11
ꢀ…ꢀ
α
1σ
x=
…ꢀ
α
ij
ꢀ…
;α
n1
ꢀ…ꢀ
α
nσ
t=[ln r1.t
…
ln r
i
.t
…
ln r
n
.t];以及路径信任置信度矩阵3.根据权利要求2所述的一种基于路由路径贡献感知的恶意节点检测方法,其特征在于,在步骤s2中:将y,x以及w作为加权回归模型的输入来训练机器学习模型,待训练结束后,输出的回归系数t即为各节点的初始信任值。4.根据权利要求3所述的一种基于路由路径贡献感知的恶意节点检测方法,其特征在于,在步骤s3中:基于计算得到的节点的初始信任值,进一步识别节点集ns中的恶意节点,运用k-means聚类算法将网络中所有节点聚类为k组,从而将高初始信任值的节点和低初始信任值的节点区分开,将计算得到的所有节点的初始信任值作为各节点的特征输入到k-means聚类算法中;为了减轻收集到的数据包信息不足或者节点信任值评估误差对恶意节点检测的消极影响,将所有的节点分为三类,即初始良性节点组、未知节点组以及初始恶意节点组,初始良性节点组中的节点可能为良性节点,初始恶意节点组中的节点可能为恶意节点,而基于初始阶段收集到的数据包信息,暂无法推断未知节点组中的节点是良性还是恶意节点。5.根据权利要求4所述的一种基于路由路径贡献感知的恶意节点检测方法,其特征在于,对于步骤s4中的路由路径贡献评估:增加矩阵的秩:若在初检测阶段路由路径path
j
并未传输数据包即路由路径集ψ中不包含路径path
j
,但在强化检测阶段路由路径path
j
承担数据包传输任务,则路由路径path
j
在传输数据包过程中将会产生训练样本并使增广矩阵[x,y]的秩增加1,符号ir
j
来表示路由路径path
j
是否存在于路由路径集ψ,若path
j
∈ψ,则ir
j
=1;否则ir
j
=0;未知节点相似性:基于初检测阶段构建的未知节点集ung,利用向量形式定义初检测阶段检测到的所有未知节点:μ=[β1,...β
i
,...β
n
]
t
;其中,n指的是初检测阶段检测到的所有未知节点的数目且β
i
表示节点r
i
是否存在于未知节点集ung中,若r
i
∈ung,则β
i
=1;否则β
i
=0,为了衡量各路由路径上未知节点的存在情况,利用余弦函数计算各路由路径与未知节点向量μ之间的相似性,如下所示:路由路径path
j
的未知节点相似性uns
j
越大,路由路径path
j
包含的未知节点数量越多,
且该路径对节点信任值评估的贡献也越大;数据包负载不均衡性:为了减轻数据包负载不均衡性对节点信任值评估的消极影响,在强化阶段有目的性地增加在初检测阶段传输数据包数量较少的那些路由路径的数据包数,从而均衡网络中各路由路径的数据包负载,路由路径path
j
的数据包负载不均衡性被定义如下:plb
j
=1-r
j
;其中,c
j
指的是路由路径path
j
的信任值的置信度,路由路径path
j
的数据包负载不均衡性plb
j
越大,该路径在强化检测阶段对节点信任值评估的贡献也越大;将路由路径path
j
对节点信任值评估的贡献定义如下:rpc
j
=[ir
j
,uns
j
,plb
j
]
×
[w
ir
,w
uns
,w
plb
]
t
;其中,w
ir
,w
uns
和w
plb
分别是路由路径path
j
的增加矩阵的秩ir
j
,未知节点相似性uns
j
和数据包负载不均衡性plb
j
对节点信任评估贡献的影响因子。6.根据权利要求5所述的一种基于路由路径贡献感知的恶意节点检测方法,其特征在于,对于步骤s4中的对于源节点贡献评估:源节点r
i
(r
i
∈ns)对节点信任评估的贡献是以该节点为起点的各路由路径对节点信任评估综合作用的结果,将源节点r
i
对节点信任评估的贡献定义如下:其中,路由路径path
ij
是源节点r
i
的第j条路由路径,rpc
ij
表示路由路径path
ij
对节点信任评估的贡献,γ是以源节点r
i
为起点的路由路径的数量,∈
ij
表示当源节点r
i
需要传输数据包时路由路径path
ij
被利用的概率。7.根据权利要求6所述的一种基于路由路径贡献感知的恶意节点检测方法,其特征在于,对于步骤s4中的对于基于各源节点对节点信任评估的贡献:分配给源节点r
i
的数据包数量占所有注入网络中的数据包数量之比为:其中,ω是网络中源节点的个数;分配的数据包将会通过各源节点注入到网络中,使得对节点信任评估贡献较大的路由路径传输更多的数据包,上述数据包经过节点的存储和转发,最终到达基站并再次被基站收集。基于收集到的数据包信息,基站重新评估各路由路径的信任值以及信任值的置信度,并重新训练加权的最小二乘法模型,待机器学习模型训练完成后,节点的最终信任值将会作为回归系数输出,基于计算得到的最终的节点信任值,再次运用k-means聚类算法将所有节点分为两类:恶意节点组以及良性节点组。8.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述基于路由路径贡献感知的恶意节点检测方法的步骤。9.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7任一项所述基于路由路径贡献感知的恶意节点检测方法的步骤。
技术总结本发明公开了基于路由路径贡献感知的恶意节点检测方法,包括步骤S1:进行数据包收集,基站收集网络中传输的原始数据包并且验证各数据包的完整性并判断数据包在传输过程中是否受到篡改攻击;步骤S2:进行机器学习模型训练,构建所有路由路径的信任值与相应路由路径上各节点的信任值之间的信任模型,从而基站评估各路由路径的信任值以及路由路径信任值的置信度,将节点的信任值评估问题转变为一个加权的多元线性回归问题并通过加权的回归算法来评估获得各节点的初始信任值。本发明公开的基于路由路径贡献感知的恶意节点检测方法,其提高恶意节点检测性能,从而提升物联网安全性。性。性。
技术研发人员:刘亮 唐旭
受保护的技术使用者:杭州柏源科技有限公司
技术研发日:2022.07.26
技术公布日:2022/11/1