1743
第6期
潘建国等:基于实用拜占庭容错的物联网入侵检测方法
n>2k+m,所以n—l>2k+(m一1) 2J|},这样每轮
Sedjelmaci等旧。和刘雅菲等 1分别提出了基于博弈论(Game
Theory,GT)的入侵检测方法,其核心是通过收益比来遏制攻
击节点发起攻击,通过减少入侵检测次数达到降低资源消耗
的目的;但该种模型需要对攻击节点的行为模式进行额外计
算。Lin等¨ 驯提出了一种基于投票的入侵检测方法,该方法
采用检测率最高的节点的检测结果作为系统其他节点的检测
结果;但当该节点遭受攻击后会大幅影响系统的稳定性。
目前,物联网入侵检测系统工作时能量消耗主要源于入
侵检测时的计算开销,单个节点的入侵检测策略的优化对能
量消耗的减少影响很小,因此物联网入侵检测方法的研究集
中于减少检测次数方向。实用拜占庭容错(Practical
OM(m—k)算法中正常节点收到的决定都是majority(node.,
node2, ,noden)。
定理1 对于任意m,如果有超过3m个节点和最多m个
恶意节点,算法OM(m)满足条件ICl和条件IC2。
证明
当n=4,m=l时:
1)假定节点3为恶意节点,以节点2作为首个发布者为
例:
a)节点2执行算法OM(1)将自己的决定发送给其他3
个节点,它们都正确地收到了命令。
b)每个收到决定的节点都作为发布者执行算法OM(O),
将自己的决定转发给其余节点,因为节点3是恶意节点,所以
它给节点2传递的结果是错误结果。节点2最后根据
majority(nodeI,node2, ,node。)函数来决定命令。
节点3无法干扰节点2的结果,对其他两个节点也一样。
2)假定节点3为恶意节点,且为首个发布者:
Fault
Tolerance,PBFT) o证明在满足节点总数
Byzantine
N 3m+l(m为恶意节点数量)的情况下,系统是可靠和稳
定的。为了实现物联网入侵检测高检测率的同时降低能量消
耗,本文引入基于PBFY的选举机制,选择可信度较高的部分
节点进行人侵检测,待检测结束后将投票结果向网络中的全
部节点公布,完成物联网入侵检测过程。
a)节点3向其他节点发送了恶意的决定。
b)其他节点收到决定后,执行OM(0)向所有的节点发
送自身的决定,这样所有节点接收到的决定不相同,其他节点
通过majority(nodel,node2, ,node。)函数判断最终结果,因
此节点3无法达到目标。
1
PBI叩算法
1.1拜占庭容错系统
PBFY模型源于拜占庭将军问题¨ 2|,该问题的核心思想
可以描述为,当节点总数为Ⅳ,恶意节点为m时,若Ⅳ 3m+
l时,恶意节点的决定不会对系统产生影响。
为简化证明过程,以一个节点发送决定给其他节点的形
式来证明。系统的稳定运行需要以下前提条件:
ICl所有正常节点能无误地处理接收到的决定。
IC2如果发送节点是正常的,那么所有正常节点能正确
处理其决定。
当m>1时,假定第1)轮中节点是正常节点,那么将引
理中k设为m,则OM(m)满足IC2、ICl。
若第1)轮为恶意节点,则第2)轮中最多就只有m—1个
恶意节点,又因为有3m个正常节点,所以正常节点的总数超
过3m—l,且有3m一1>3(m一1)。通过归纳法可以证明
OM(m一1)满足ICI和IC2。当任意两个正常节点在OM(m一
1)过程中获得相同决定,那么在OM(m)中每个正常节点可
以得到majority(nodel,node2, ,node。),可知满足条件ICI
和IC2。
定义1 majority(nodel,node2, ,node。)为统计数据中
出现次数最多的结果。其中,node。表示一个节点对其他节点
因此,从全部Ⅳ个节点中选举2N/3+1个节点即可保证
全部节点的最终决定一致。
的检测结果。
定义2 OM(0)。
1.2一致性协议
1)检测节点将决定发送给其他节点。
为保证每个节点在入侵检测过程中都能够按照一个确定
顺序选举入侵检测节点、进行入侵检测、检测结果公布、对结
果进行统计与处理,所有节点应遵循同样的一致性协议。在
入侵检测系统的工作过程中,一致性协议至少包含三个阶段:
节点选举、结果公布、结果统计。其具体可以描述为:1)对于
一个包含3m+1个节点的拜占庭容错系统,选举2m+1个可
信节点进行入侵检测。2)每个被选举节点在入侵检测完成后
将自身的检测结果向网络中其他节点公布。3)对每次入侵检
测结果的统计在接收到第一个结果后开始进行,当节点i接
收到的decision;中关于节点J的统计结果大于m+1时,节点
,的可信度确定。一致性协议运行示意图如图1所示。
2)接收节点采用接收到的检测结果。如果没接收到检测
节点的检测结果,则将该检测节点标记为异常状态。
定义3 OM(m)。
1)发送者将决定发送给其他节点。
2)对于每个接收节点i,decision。是每个接收节点i收到
的决定,如果没接收到某检测节点的检测结果,则将该检测节
点标记为异常状态。接收节点i在OM(m一1)中作为发送节
点将决定发送给另外N一2个节点。
3)对于每个接收节点j,并且j≠i,decisionj是节点J接收
到的从第2)步中的节点i发送过来的决定(使用OM(m一1)
算法)。如果没有收到第2)步中节点i的决定,则将该检测节
点标记为异常状态。最后节点,使用majority(node,,node:, ,
node。)得到最终决定。
节点1
节点2
节点3
节点4
引理
对于任意m和k,如果有超过2.|}+m个正常节点
和最多k个恶意节点,那么算法OM(m)满足IC2。
证明
当m=0时,OM(0)在节点是正常的时候满足
●被选举节点④正常节点●异常节点
IC2。
图l
当m>0时,首先节点将决定传递给n一1个其他节点,然
一致性协议运行示意图
后每个节点对n一1个节点执行OM(m一1)算法。因为假设了
Fig.1
diagram of consistency protocol operation
Schematic
万方数据
全部评论(0)