CN115242559B - 基于区块链和联邦学习的网络流量入侵检测方法 - Google Patents

基于区块链和联邦学习的网络流量入侵检测方法 Download PDF

Info

Publication number
CN115242559B
CN115242559B CN202211161541.3A CN202211161541A CN115242559B CN 115242559 B CN115242559 B CN 115242559B CN 202211161541 A CN202211161541 A CN 202211161541A CN 115242559 B CN115242559 B CN 115242559B
Authority
CN
China
Prior art keywords
node
mining
detection model
block
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202211161541.3A
Other languages
English (en)
Other versions
CN115242559A (zh
Inventor
吕金虎
孙楠
王薇
朱斯语
刘克新
杨鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Academy of Mathematics and Systems Science of CAS
China Academy of Information and Communications Technology CAICT
Original Assignee
Beihang University
Academy of Mathematics and Systems Science of CAS
China Academy of Information and Communications Technology CAICT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University, Academy of Mathematics and Systems Science of CAS, China Academy of Information and Communications Technology CAICT filed Critical Beihang University
Priority to CN202211161541.3A priority Critical patent/CN115242559B/zh
Publication of CN115242559A publication Critical patent/CN115242559A/zh
Application granted granted Critical
Publication of CN115242559B publication Critical patent/CN115242559B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于区块链和联邦学习的网络流量入侵检测方法,包括:各设备独立进行新型攻击的检测与标记;进行全局模型的初始化;将各设备随机划分为工作节点和挖掘节点,工作节点利用本地数据训练局部检测模型,将自身的局部模型参数上传至区块链;挖掘节点对模型参数合法性进行验证,并基于区块链一致性算法生成合法区块;各工作节点下载合法区块,并基于联邦聚合算法对模型参数进行更新;迭代进行上述训练过程,最终得到全局的网络流量入侵检测模型。该方法基于联邦学习和区块链建立全局网络流量入侵检测模型,能够在发现新的未标记攻击类型的同时,保证各设备产生的各种流量数据留在设备本地,实现了数据隐私保护的目的。

Description

基于区块链和联邦学习的网络流量入侵检测方法
技术领域
本发明涉及工业互联网网络安全领域,尤其涉及一种基于区块链和联邦学习的网络流量入侵检测方法。
背景技术
随着互联网时代的发展,内部威胁、零日漏洞和DoS攻击等攻击行为日益增加,工业网络安全变得越来越重要,入侵检测已成为网络攻击检测的一种重要手段。
与此同时,随着大数据的进一步发展,数据的隐私性和安全性受到了各国政府的高度重视。在政府隐私保护法规下,从设备端直接获取数据用于流量入侵检测模型的训练变得越来越困难。为了解决数据隐私保护带来的数据孤岛问题,亟须一种完全分布式模型训练架构。
目前,基于联邦学习架构的工业互联网网络流量入侵检测算法能够在数据不出本地的情况下,建立一个全局的检测模型。论文《融合区块链与联邦学习的网络入侵检测算法》(任涛、金若辰、罗咏梅,“信息网络安全”,2021年第7期,第27-34页)中提出了一个区块链和联邦学习用于入侵检测的基本架构形式。该论文没有考虑恶意节点参与到模型分布式训练过程中的问题,也没有考虑到攻击类型未知的情况。中国发明专利CN 113794675 A通过联邦学习训练框架联合多个物联网设备协同训练入侵检测模型,并在训练过程中利用区块链及边缘服务器对协同训练结果进行验证共识来获取训练优化后的入侵检测模型。该专利所提出的模型合法性验证机制,可能会将合法节点标记为恶意节点,并且该专利没有考虑数据中存在未知攻击类型时对联邦学习的分布式训练过程造成的影响。
在保护数据隐私的情况下,构建全局的网络流量入侵检测模型并实现对零日攻击的检测成为亟待解决的问题。本专利针对这些问题,所提出的算法可以在参训设备间建立起互信机制,有效排除恶意节点的干扰;并实现对新型未标记攻击的检测,即对零日攻击的发现问题。
发明内容
为了解决上述问题,本发明提供一种基于区块链和联邦学习的网络流量入侵检测方法,用以在保护数据隐私的情况下,构建全局的网络流量入侵检测模型并实现对零日攻击的检测。本发明采用以下技术方案:
一种基于区块链和联邦学习的网络流量入侵检测方法,包括以下步骤:
S1,针对工业互联网中各设备在生产过程中产生的本地流量数据集,利用未标记攻击类型检测模型,独立进行新型攻击的检测与标记,得到本地伪标签数据和有标签数据;
S2,工业互联网中各设备协作维护一个区块链,并搭建用于网络流量入侵检测的全局检测模型,将全局检测模型发送给各设备;
S3,在每一轮通信轮次中,各设备被随机划分为工作节点和挖掘节点;各工作节点利用本地伪标签数据和有标签数据对收到的全局检测模型进行迭代训练,生成本地的局部检测模型,并将各自的局部检测模型参数加密上传至区块链;各挖掘节点对局部检测模型参数合法性进行验证,排除恶意工作节点和挖掘节点,基于区块链一致性算法生成合法区块;
S4,各工作节点从区块链中下载合法区块,利用基于互信息量的联邦聚合算法,实现全局检测模型参数的更新;
S5,迭代进行步骤S3-S4,直到训练误差达到误差容限或者到达要求的最大训练轮次,最终得到全局的网络流量入侵检测模型。
进一步,所述步骤S1,所述未标记攻击类型检测模型采用深度学习网络架构,包括数据预处理模块、特征提取模块、分类模块和伪标签生成模块;
所述数据预处理模块,去除数据集中缺失值超过给定比例的特征,将文本数据类型转换为数值数据,并将数值数据归一化到给定数值范围;
所述特征提取模块,基于稀疏自动编码器,获得数据特征的特征表示;
所述分类模块,利用特征表示,采用相似度聚类方法对数据集中的未标记攻击类型进行新类发现;
所述伪标签生成模块,对网络最后一层输出进行置信度评估,给予其中置信度高于给定范围的数据伪标签。
进一步,所述步骤S3,所述各挖掘节点对局部检测模型参数合法性进行验证,排除恶意工作节点,包括:
所述各挖掘节点分别对收到的局部检测模型参数进行验证,并将第
Figure 678412DEST_PATH_IMAGE001
步通信轮次的模型重建损失
Figure 596689DEST_PATH_IMAGE002
与第
Figure 700911DEST_PATH_IMAGE003
步通信轮次的模型重建损失
Figure 739029DEST_PATH_IMAGE004
相比较,如果两者之差超出阈值
Figure 270504DEST_PATH_IMAGE005
,则将产生该局部检测模型参数的工作节点标记为非法,否则将其标记为合法;
所述各挖掘节点共同对某一工作节点的局部检测模型参数进行联合投票,如果该工作节点被标记的合法数目多于非法数目,则该工作节点将被视为合法节点。
进一步,所述基于区块链一致性算法生成合法区块,包括:所述各挖掘节点将收到的局部检测模型参数及其对应的奖励值加密打包到一个区块中,对区块内容进行哈希计算,并根据区块链一致性算法对候选区块进行区块挖掘,得到合法区块。
进一步,所述奖励值包括工作节点的奖励值和挖掘节点的奖励值:
所述工作节点的奖励值,如果工作节点被判定为合法节点,则该工作节点获得工作奖励值:
Figure 410499DEST_PATH_IMAGE006
其中,
Figure 318412DEST_PATH_IMAGE007
为工作节点的奖励值,
Figure 860252DEST_PATH_IMAGE008
为局部训练时间,
Figure 624945DEST_PATH_IMAGE009
为工作节点样本数目,
Figure 721077DEST_PATH_IMAGE010
为奖励因子,
Figure 167102DEST_PATH_IMAGE011
表示将该工作节点标记为合法的挖掘节点数目,
Figure 579760DEST_PATH_IMAGE012
表示将该工作节点标记为非法的挖掘节点数目;
所述挖掘节点的奖励值,包括挖掘节点对收到的区块签名验证奖励
Figure 453038DEST_PATH_IMAGE013
、区块挖掘奖励
Figure 833204DEST_PATH_IMAGE014
,挖掘节点对模型参数进行验证投票获得的验证奖励
Figure 879657DEST_PATH_IMAGE015
Figure 333772DEST_PATH_IMAGE016
其中,
Figure 440269DEST_PATH_IMAGE017
为挖掘节点的奖励值,
Figure 245414DEST_PATH_IMAGE018
Figure 344826DEST_PATH_IMAGE019
分别为挖掘节点产生的验证区块和候选区块,
Figure 919026DEST_PATH_IMAGE020
为挖掘节点的投票结果。
进一步,在存在恶意挖掘节点的情况下,具有最高奖励的挖掘节点有权将其挖掘到的合法区块添加到区块链中,包括:
所述挖掘节点对区块内容进行哈希计算,并根据区块链一致性算法挖掘出候选区块,并将挖掘出的所有候选区块广播给其它挖掘节点;
所述挖掘节点获得所有提交的挖掘出的候选区块后,选择具备最高奖励值的挖掘节点所挖掘出的候选区块为合法区块,并将其添加到区块链中。
进一步,所述步骤S4,所述利用基于互信息量的联邦聚合算法,实现全局检测模型参数的更新,具体为:
全局检测模型
Figure 196424DEST_PATH_IMAGE021
和局部检测模型
Figure 488865DEST_PATH_IMAGE022
间的互信息量
Figure 877121DEST_PATH_IMAGE023
如下式计算:
Figure 305828DEST_PATH_IMAGE024
其中,
Figure 19706DEST_PATH_IMAGE025
表示模型的熵,
Figure 533864DEST_PATH_IMAGE026
表示
Figure 476544DEST_PATH_IMAGE021
Figure 25337DEST_PATH_IMAGE022
的联合熵,其定义如下所示:
Figure 644537DEST_PATH_IMAGE027
假设
Figure 442729DEST_PATH_IMAGE021
Figure 376050DEST_PATH_IMAGE022
服从高斯分布,
Figure 44928DEST_PATH_IMAGE028
Figure 835030DEST_PATH_IMAGE029
为其对应方差,
Figure 369785DEST_PATH_IMAGE030
表示
Figure 841218DEST_PATH_IMAGE021
Figure 161341DEST_PATH_IMAGE022
之间的相关系数;
Figure 325606DEST_PATH_IMAGE030
由下式计算
Figure 363969DEST_PATH_IMAGE031
其中,
Figure 373513DEST_PATH_IMAGE032
表示数学期望;
根据上式,得到互信息量的表达形式:
Figure 813722DEST_PATH_IMAGE033
Figure 883309DEST_PATH_IMAGE034
的值以升序的方式排列,选取排序中靠后的
Figure 159701DEST_PATH_IMAGE035
个模型进行聚合,得到新的全局检测模型:
Figure 972936DEST_PATH_IMAGE036
其中,
Figure 267651DEST_PATH_IMAGE037
表示更新后的全局检测模型,
Figure 773719DEST_PATH_IMAGE038
表示第
Figure 521095DEST_PATH_IMAGE039
个工作节点的数据数目,
Figure 138021DEST_PATH_IMAGE040
表示参与聚合的工作节点的数据总数,
Figure 287243DEST_PATH_IMAGE041
表示参与聚合的第
Figure 964212DEST_PATH_IMAGE039
个工作节点的模型参数。
本发明采用基于联邦学习和区块链的工业互联网网络流量入侵检测方法,采用未标记攻击类型检测模型对未知标签数据添加伪标签,实现了新型攻击发现;采用联邦学习架构进行模型的训练,在数据不出本地的情况下,实现了全局入侵检测模型的训练;将区块链引入到联邦学习架构中,排除了训练过程中恶意节点的干扰,进一步保证了训练过程的安全性和隐私保护性能。本发明相对于现有技术的有益效果:
(1)本发明实现了入侵检测模型的分布式训练,对各参与设备的数据隐私进行了保护;
(2)本发明将区块链技术应用于分布式训练过程中,考虑恶意工作节点和挖掘节点的存在,提出了一种新的模型参数合法性验证机制,实现了对训练过程中恶意参与者的鉴别和排除;与传统的基于数据集大小以及Multi-KRUM算法的模型验证机制相比,本算法从模型入侵检测精度角度对算法验证机制进行了设计,并对验证过程的奖励值进行了设计。
(3)本发明设计了一种新的未标记攻击类型检测模型,可以有效的实现对网络流量数据中未知攻击类型的鉴别。与传统的无监督学习聚类方法相比,所提出的模型可以从已知类型数据信息中学习攻击的基本特征,进而实现对未知攻击类型的细粒度分类。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的基于区块链和联邦学习的网络流量入侵检测算法的流程示意图;
图2为本发明的对未知攻击类型进行发现标记的深度学习网络架构;
图3为本发明的基于区块链和联邦学习进行恶意节点排除和区块挖掘的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1示出了本发明提供的基于区块链和联邦学习的网络流量入侵检测方法的流程示意图,包括:
S1,针对工业互联网中各设备在生产过程中产生的本地流量数据集,提出一种新形式的未标记攻击类型检测模型,利用少量的标签数据指导整个深度聚类过程。与传统的无监督学习聚类方法相比,所提出的模型可以从已知类型数据信息中学习攻击的基本特征,进而实现对未知攻击类型的细粒度分类,完成新型攻击的检测与标记。
在本发明实施例中,针对各设备节点存在未知攻击类型的流量数据,从已知标签信息中提取有效信息,结合成对的约束来指导整个聚类过程,实现新的攻击类型发现任务。
所述模型在完成新型攻击发现任务后,为具备较高置信度的无标签数据添加伪标签。在后续的联邦学习过程中,设备节点将同时利用有标签数据和伪标签数据进行模型的训练。
可选地,所述未标记攻击类型检测模型采用深度学习网络架构,如图2所示,包括:数据预处理模块、特征提取模块、分类模块和伪标签生成模块;
所述数据预处理模块,包括特征转换、特征约简和特征归一化,目的是对某些特征进行分析、转换和去除,使数据集适合深度学习训练;
所述特征提取模块,旨在提取有价值的特征表示,并通过联邦学习改进全局时空间表示;
所述分类模块,目的是得到前一个模块的特征表示,并根据相似度聚类方法,对数据集中的未标记攻击类型进行新类发现;
所述伪标签生成模块,目的是通过对网络最后一层输出进行置信度评估,给予其中置信度较高的数据伪标签。
进一步地,在上述架构的基础上,所述数据预处理模块,具体用于:
所述数据预处理过程中,去除数据集中缺失值超过50%的特征,将文本类型数据转换为数值数据,并将数据归一化到[0,1]范围内;
进一步地,在上述架构的基础上,所述特征提取模块,具体用于:
所述特征提取阶段,各设备节点基于区块链和联邦学习协同构建稀疏自动编码器,获得数据特征的精细表示;
此外在正式训练分类器前,需要首先估计当前数据集中最大类别数目
Figure 448151DEST_PATH_IMAGE042
。利用特征提取器从一小部分数据集
Figure 603189DEST_PATH_IMAGE043
中提取特征,然后利用k-means算法对特征进行聚类,并根据平均聚类精度(ACC)和聚类有效性(CVI)两个评价指标判断最优聚类数目
Figure 872497DEST_PATH_IMAGE044
,取
Figure 720367DEST_PATH_IMAGE042
Figure 442335DEST_PATH_IMAGE044
值的2到3倍。两个评价指标的定义如下所示:
Figure 197802DEST_PATH_IMAGE045
(1a)
其中,
Figure 993719DEST_PATH_IMAGE046
Figure 825540DEST_PATH_IMAGE047
分别表示每个数据点的真值和聚类分配标签。
Figure 972488DEST_PATH_IMAGE048
Figure 797224DEST_PATH_IMAGE049
元素的排列组合,作为一种聚类方法,恢复任意顺序的簇。
Figure 713228DEST_PATH_IMAGE050
为数据点的个数,
Figure 699638DEST_PATH_IMAGE051
为设定的类别数。
Figure 333882DEST_PATH_IMAGE052
(1b)
其中,
Figure 696730DEST_PATH_IMAGE053
是一个数据样本,
Figure 732819DEST_PATH_IMAGE054
Figure 139399DEST_PATH_IMAGE053
与同一簇内所有其他数据样本之间的平均距离,
Figure 260938DEST_PATH_IMAGE055
Figure 427478DEST_PATH_IMAGE053
与任何其他簇内(
Figure 52494DEST_PATH_IMAGE053
不是其中的成员)所有点之间的最小平均距离。
进一步地,在上述架构的基础上,所述分类模块,具体用于:
所述分类阶段,假设新类在特征空间中与已知类有一定程度的相似度,因此,从特征提取器获得的特征表示
Figure 646286DEST_PATH_IMAGE056
应该同样适用于新类和已有类。对于两个数据
Figure 989543DEST_PATH_IMAGE057
Figure 959773DEST_PATH_IMAGE058
,可以通过特征提取器得到对应的特征表示形式
Figure 704875DEST_PATH_IMAGE059
Figure 220301DEST_PATH_IMAGE060
,并且计算相似度矩阵:
Figure 50854DEST_PATH_IMAGE061
(2a)
Figure 559196DEST_PATH_IMAGE062
表示数据
Figure 955542DEST_PATH_IMAGE057
Figure 828820DEST_PATH_IMAGE058
之间的相似度,据此可以得到半监督数据的标签矩阵
Figure 412248DEST_PATH_IMAGE063
,其中
Figure 193122DEST_PATH_IMAGE064
Figure 178396DEST_PATH_IMAGE065
用来决定数据是否属于同一个类,
Figure 534160DEST_PATH_IMAGE064
Figure 136042DEST_PATH_IMAGE065
为设定的阈值。
Figure 189449DEST_PATH_IMAGE067
(2b)
这一步之后,得到了初始的伪标签,可以用于后续的进一步的训练。将分类模块
Figure 763650DEST_PATH_IMAGE068
应用到数据表示中,得到一个数据
Figure 41047DEST_PATH_IMAGE057
新的表示形式
Figure 864647DEST_PATH_IMAGE069
Figure 456165DEST_PATH_IMAGE070
的内积被用作判断数据
Figure 697922DEST_PATH_IMAGE057
Figure 83904DEST_PATH_IMAGE058
是否属于同一个类。最后,得到相似损失
Figure 925958DEST_PATH_IMAGE071
Figure 55588DEST_PATH_IMAGE072
(2c)
其中,M为数据点的个数。
进一步地,在上述架构的基础上,所述伪标签生成模块,具体用于:
所述伪标签生成阶段,通过对网络最后一层输出进行置信度评估,给予其中置信度较高的数据伪标签。
每个设备节点都通过未标记攻击类型检测模型生成本地伪标签数据和有标签数据,然后所有节点根据聚类中心协同确定新攻击的数量并设定标签;在联邦学习阶段,采用交叉熵损失作为模型训练损失,对模型进行局部训练。
Figure 401119DEST_PATH_IMAGE073
(3a)
其中,
Figure 223581DEST_PATH_IMAGE074
为有标签数据的交叉熵损失,
Figure 287352DEST_PATH_IMAGE075
为伪标签数据的交叉熵损失,
Figure 220673DEST_PATH_IMAGE076
为损失因子。
S2,工业互联网中各设备协作维护一个区块链,并搭建用于网络流量入侵检测的全局检测模型,将全局检测模型发送给各设备。在每一轮通信轮次中,各设备被随机划分为工作节点和挖掘节点;
本发明目的在于不直接获取各设备的数据,通过分布式训练的方法协作训练一个全局的检测模型。在训练开始之前,各设备节点初始化模型训练参数
Figure 669978DEST_PATH_IMAGE077
,局部训练时间
Figure 460079DEST_PATH_IMAGE078
,以及学习率
Figure 948829DEST_PATH_IMAGE068
和批大小
Figure 482579DEST_PATH_IMAGE079
,在每一轮通信轮次中,将各设备随机划分为工作节点和挖掘节点。
S3,各工作节点利用本地伪标签数据和有标签数据对收到的全局检测模型进行迭代训练,生成本地的局部检测模型,并将各自的局部检测模型参数及奖励值加密上传至区块链;考虑恶意工作节点和挖掘节点的存在,提出了一种新的模型参数合法性验证机制;与传统的基于数据集大小以及Multi-KRUM算法的模型验证机制相比,本算法从模型入侵检测精度角度对算法验证机制进行了设计,并对验证过程的奖励值进行了设计。
图3出示了本发明实施例提供的基于区块链和联邦学习进行恶意节点排除和区块挖掘的示意图,所述架构包括:工作节点合法性验证以及区块挖掘两部分。
所述区块链中挖掘节点对工作节点上传的局部检测模型参数合法性进行验证,挖掘节点获得对应的模型验证奖励,合法工作节点将获得模型训练奖励。
在存在恶意挖掘节点的情况下,具有最高奖励的挖掘节点有权将其挖掘到的合法区块添加到区块链中。
进一步地,在上述示意图的基础上,所述区块链中挖掘节点对工作节点上传的局部检测模型参数合法性进行验证,挖掘节点获得对应的模型验证奖励,合法工作节点将获得模型训练奖励。具体用于:
所述节点合法性验证阶段,包括挖掘节点
Figure 740385DEST_PATH_IMAGE080
对从工作节点
Figure 966967DEST_PATH_IMAGE081
收到的区块
Figure 677434DEST_PATH_IMAGE018
进行签名验证后,就可以从
Figure 765607DEST_PATH_IMAGE018
中提取出来自工作节点
Figure 940236DEST_PATH_IMAGE081
的局部检测模型
Figure 9823DEST_PATH_IMAGE022
,并获得签名验证奖励
Figure 535483DEST_PATH_IMAGE013
。该挖掘节点同时将当前通信轮次的模型重建损失
Figure 348718DEST_PATH_IMAGE002
与上一轮的模型重建损失
Figure 643433DEST_PATH_IMAGE004
相比较,如果两者之差超出阈值
Figure 883922DEST_PATH_IMAGE005
,则将产生该模型参数的工作节点标记为非法,否则将其标记为合法。将该挖掘节点的投票结果记为
Figure 146144DEST_PATH_IMAGE082
,验证结束后该挖掘节点将获得验证奖励
Figure 559808DEST_PATH_IMAGE015
。此后区块
Figure 646713DEST_PATH_IMAGE018
、投票结果
Figure 385999DEST_PATH_IMAGE082
、奖励
Figure 558354DEST_PATH_IMAGE013
Figure 775709DEST_PATH_IMAGE015
被封装到一个区块
Figure 982699DEST_PATH_IMAGE019
中,由挖掘节点
Figure 112460DEST_PATH_IMAGE080
的私钥加密。该区块在所有挖掘节点中以广播的形式发送。
所述工作节点的奖励值,如果工作节点被判定为合法,则该工作节点获得工作奖励
Figure 834429DEST_PATH_IMAGE007
,奖励值与局部训练时间
Figure 793158DEST_PATH_IMAGE008
及工作节点样本数目
Figure 916971DEST_PATH_IMAGE009
有关;
Figure 935743DEST_PATH_IMAGE006
(4a)
其中,
Figure 145007DEST_PATH_IMAGE009
为工作节点样本数目,
Figure 641848DEST_PATH_IMAGE010
为奖励因子,
Figure 603857DEST_PATH_IMAGE011
表示将该工作节点标记为合法的挖掘节点数目,
Figure 855846DEST_PATH_IMAGE012
表示将该工作节点标记为非法的挖掘节点数目。所述挖掘节点的奖励值
Figure 490090DEST_PATH_IMAGE017
,包括挖掘节点对收到的区块签名验证奖励
Figure 852938DEST_PATH_IMAGE013
、区块挖掘奖励
Figure 623448DEST_PATH_IMAGE014
,挖掘节点对模型参数进行验证投票获得的验证奖励
Figure 46339DEST_PATH_IMAGE015
Figure 964617DEST_PATH_IMAGE016
(4b)
其中,
Figure 803260DEST_PATH_IMAGE013
为区块签名验证奖励,
Figure 756172DEST_PATH_IMAGE014
为区块挖掘奖励,
Figure 287648DEST_PATH_IMAGE015
为验证奖励,
Figure 693221DEST_PATH_IMAGE018
Figure 601134DEST_PATH_IMAGE019
分别为挖掘节点产生的验证区块和候选区块,
Figure 408553DEST_PATH_IMAGE020
为挖掘节点的投票结果,r为奖励因子。
进一步地,在上述示意图的基础上,在存在恶意挖掘节点的情况下,具有最高奖励的挖掘节点有权将其挖掘到的合法区块添加到区块链中,具体用于:
所述区块挖掘阶段,每个挖掘节点对区块
Figure 110930DEST_PATH_IMAGE019
进行签名验证,得到验证奖励
Figure 987488DEST_PATH_IMAGE014
,并从区块
Figure 230251DEST_PATH_IMAGE019
中提取投票结果
Figure 95438DEST_PATH_IMAGE082
。根据从多个挖掘节点发送来的投票结果,判断工作节点
Figure 31033DEST_PATH_IMAGE081
属于合法节点还是恶意节点。只要参与投票验证过程的恶意挖掘节点不超过总的参与投票节点的1/3,投票机制就能有效排除恶意节点。然后将最终的投票结果
Figure 348882DEST_PATH_IMAGE020
、区块
Figure 395336DEST_PATH_IMAGE019
以及验证奖励
Figure 115030DEST_PATH_IMAGE014
放入一个名为
Figure 972259DEST_PATH_IMAGE083
的候选区块中。然后,挖掘节点根据区块链一致性算法对由挖掘节点私钥签名的块内容和候选块进行哈希计算。一旦某区块被挖掘节点挖掘出来,该区块将被广播给其他挖掘节点。在获取所有提交的挖掘出的区块后,挖掘节点
Figure 777404DEST_PATH_IMAGE080
选择具备最高奖励值的挖掘节点挖掘出的区块作为合法块,并将其添加到区块链中。
所述工作节点从区块链中下载最新的区块后,工作节点根据投票结果排除恶意模型参数后,基于联邦聚合算法更新其模型参数
Figure 627548DEST_PATH_IMAGE084
。无论是工作节点还是挖掘节点,通过新区块中的奖励值更新区块链中所有参与者的奖励值。在连续的通信轮中,节点只要被连续标记为恶意节点,就会被训练过程踢出。
S4,各工作节点从区块链中下载合法区块,提出了一种基于互信息量的联邦聚合算法,实现全局检测模型参数的更新;与传统算法相比,该算法可以较好的排除欠拟合和过拟合的模型参数,实现全局模型参数的高效更新。
工作节点从区块链中下载最新的合法区块,并根据基于互信息量的联邦聚合算法,排除过拟合和欠拟合的局部检测模型参数,筛选出最高效的
Figure 201749DEST_PATH_IMAGE035
个局部检测模型参数进行联邦聚合过程,对全局入侵检测模型参数进行更新,生成新的全局检测模型,并发送至各设备。
全局检测模型
Figure 479146DEST_PATH_IMAGE021
和局部检测模型
Figure 506008DEST_PATH_IMAGE022
间的互信息量可以如下式计算:
Figure 159843DEST_PATH_IMAGE024
(5a)
其中,
Figure 588551DEST_PATH_IMAGE025
表示模型的熵,
Figure 286117DEST_PATH_IMAGE026
表示模型
Figure 862592DEST_PATH_IMAGE021
Figure 257801DEST_PATH_IMAGE022
的联合熵,其定义如下所示:
Figure 541015DEST_PATH_IMAGE027
(5b)
假设模型
Figure 425794DEST_PATH_IMAGE021
Figure 427249DEST_PATH_IMAGE022
服从高斯分布,
Figure 157307DEST_PATH_IMAGE028
Figure 108077DEST_PATH_IMAGE029
为它们的对应方差,
Figure 367020DEST_PATH_IMAGE030
表示两模型之间的相关系数。
相关系数
Figure 590191DEST_PATH_IMAGE030
可由下式计算
Figure 389519DEST_PATH_IMAGE031
(5c)
其中,
Figure 647325DEST_PATH_IMAGE032
表示数学期望,根据式(5a)、(5b)和(5c),可以得到互信息量的表达形式:
Figure 342749DEST_PATH_IMAGE033
(5d)
工作节点
Figure 584374DEST_PATH_IMAGE081
收到来在其它合法节点的互信息量
Figure 921815DEST_PATH_IMAGE034
后,将对
Figure 34127DEST_PATH_IMAGE034
的值以升序的方式排列。
Figure 415299DEST_PATH_IMAGE034
值过高或过低将被视为模型发生了过拟合或欠拟合,从而被排除在有效模型之外。
Figure 675379DEST_PATH_IMAGE081
选取其中最有效的
Figure 754194DEST_PATH_IMAGE035
个模型进行模型聚合,得到新的全局检测模型。
Figure 48909DEST_PATH_IMAGE036
(5e)
其中,
Figure 289397DEST_PATH_IMAGE037
表示更新后的全局检测模型,
Figure 302352DEST_PATH_IMAGE038
表示第
Figure 919279DEST_PATH_IMAGE039
个工作节点的数据数目,
Figure 819233DEST_PATH_IMAGE040
表示所有参与聚合的工作节点的数据总数,
Figure 230622DEST_PATH_IMAGE041
表示参与聚合的第
Figure 465295DEST_PATH_IMAGE039
个工作节点的模型参数。
S5,迭代进行步骤S3-S4,直到训练误差达到误差容限或者到达要求的最大训练轮次,最终得到全局的网络流量入侵检测模型。
以上所描述的架构实施形式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (4)

1.一种基于区块链和联邦学习的网络流量入侵检测方法,其特征在于,包括以下步骤:
S1,针对工业互联网中各设备在生产过程中产生的本地流量数据集,利用未标记攻击类型检测模型,独立进行新型攻击的检测与标记,得到本地伪标签数据和有标签数据;
S2,工业互联网中各设备协作维护一个区块链,并搭建用于网络流量入侵检测的全局检测模型,将全局检测模型发送给各设备;
S3,在每一轮通信轮次中,各设备被随机划分为工作节点和挖掘节点;各工作节点利用本地伪标签数据和有标签数据对收到的全局检测模型进行迭代训练,生成本地的局部检测模型,并将各自的局部检测模型参数加密上传至区块链;各挖掘节点对局部检测模型参数合法性进行验证,排除恶意工作节点和挖掘节点,基于区块链一致性算法生成合法区块;
S4,各工作节点从区块链中下载合法区块,利用基于互信息量的联邦聚合算法,实现全局检测模型参数的更新;
S5,迭代进行步骤S3-S4,直到训练误差达到误差容限或者到达要求的最大训练轮次,最终得到全局的网络流量入侵检测模型;
所述步骤S1,所述未标记攻击类型检测模型采用深度学习网络架构,包括数据预处理模块、特征提取模块、分类模块和伪标签生成模块;
所述数据预处理模块,去除数据集中缺失值超过给定比例的特征,将文本数据类型转换为数值数据,并将数值数据归一化到给定数值范围;
所述特征提取模块,基于稀疏自动编码器,获得数据特征的特征表示;
所述分类模块,利用特征表示,采用相似度聚类方法对数据集中的未标记攻击类型进行新类发现;
所述伪标签生成模块,对网络最后一层输出进行置信度评估,给予其中置信度高于给定范围的数据伪标签;
所述步骤S3,所述各挖掘节点对局部检测模型参数合法性进行验证,排除恶意工作节点,包括:
所述各挖掘节点分别对收到的局部检测模型参数进行验证,并将第
Figure 481377DEST_PATH_IMAGE001
步通信轮次的模型重建损失
Figure 533647DEST_PATH_IMAGE002
与第
Figure 642417DEST_PATH_IMAGE003
步通信轮次的模型重建损失
Figure 362112DEST_PATH_IMAGE004
相比较,如果两者之差超出阈值
Figure 406291DEST_PATH_IMAGE005
,则将产生该局部检测模型参数的工作节点标记为非法,否则将其标记为合法;其中,
Figure 211436DEST_PATH_IMAGE006
为第
Figure 874630DEST_PATH_IMAGE001
步通信轮次的局部检测模型,
Figure 183251DEST_PATH_IMAGE007
为第
Figure 398332DEST_PATH_IMAGE003
步通信轮次的局部检测模型;
所述各挖掘节点共同对某一工作节点的局部检测模型参数进行联合投票,如果该工作节点被标记的合法数目多于非法数目,则该工作节点将被视为合法节点;
所述基于区块链一致性算法生成合法区块,包括:所述各挖掘节点将收到的局部检测模型参数及其对应的奖励值加密打包到一个区块中,对区块内容进行哈希计算,并根据区块链一致性算法对候选区块进行区块挖掘,得到合法区块。
2.根据权利要求1所述的基于区块链和联邦学习的网络流量入侵检测方法,其特征在于,所述奖励值包括工作节点的奖励值和挖掘节点的奖励值:
所述工作节点的奖励值,如果工作节点被判定为合法节点,则该工作节点获得工作奖励值:
Figure 549828DEST_PATH_IMAGE008
其中,
Figure 141346DEST_PATH_IMAGE009
为工作节点的奖励值,
Figure 570053DEST_PATH_IMAGE010
为局部训练时间,
Figure 956035DEST_PATH_IMAGE011
为工作节点样本数目,
Figure 614068DEST_PATH_IMAGE012
为奖励因子,
Figure 743698DEST_PATH_IMAGE013
表示将该工作节点标记为合法的挖掘节点数目,
Figure 26912DEST_PATH_IMAGE014
表示将该工作节点标记为非法的挖掘节点数目;
所述挖掘节点的奖励值,包括挖掘节点对收到的区块签名验证奖励
Figure 849375DEST_PATH_IMAGE015
、区块挖掘奖励
Figure 975462DEST_PATH_IMAGE016
,挖掘节点对模型参数进行验证投票获得的验证奖励
Figure 643204DEST_PATH_IMAGE017
Figure 780924DEST_PATH_IMAGE018
其中,
Figure 649655DEST_PATH_IMAGE019
为挖掘节点的奖励值,
Figure 138405DEST_PATH_IMAGE020
Figure 609837DEST_PATH_IMAGE021
分别为挖掘节点产生的验证区块和候选区块,
Figure 867643DEST_PATH_IMAGE022
为挖掘节点的投票结果。
3.根据权利要求2所述的基于区块链和联邦学习的网络流量入侵检测方法,其特征在于,在存在恶意挖掘节点的情况下,具有最高奖励的挖掘节点有权将其挖掘到的合法区块添加到区块链中,包括:
所述挖掘节点对区块内容进行哈希计算,并根据区块链一致性算法挖掘出候选区块,并将挖掘出的所有候选区块广播给其它挖掘节点;
所述挖掘节点获得所有提交的挖掘出的候选区块后,选择具备最高奖励值的挖掘节点所挖掘出的候选区块为合法区块,并将其添加到区块链中。
4.根据权利要求1所述的基于区块链和联邦学习的网络流量入侵检测方法,其特征在于,所述步骤S4,所述利用基于互信息量的联邦聚合算法,实现全局检测模型参数的更新,具体为:
全局检测模型
Figure 156542DEST_PATH_IMAGE023
和局部检测模型
Figure 601430DEST_PATH_IMAGE006
间的互信息量
Figure 876554DEST_PATH_IMAGE024
如下式计算:
Figure 129811DEST_PATH_IMAGE025
其中,
Figure 464978DEST_PATH_IMAGE026
表示模型的熵,
Figure 928320DEST_PATH_IMAGE027
表示
Figure 475976DEST_PATH_IMAGE023
Figure 833008DEST_PATH_IMAGE006
的联合熵,其定义如下所示:
Figure 73497DEST_PATH_IMAGE028
假设
Figure 24135DEST_PATH_IMAGE023
Figure 641061DEST_PATH_IMAGE006
服从高斯分布,
Figure 603332DEST_PATH_IMAGE029
Figure 280301DEST_PATH_IMAGE030
为其对应方差,
Figure 452657DEST_PATH_IMAGE031
表示
Figure 607694DEST_PATH_IMAGE023
Figure 939319DEST_PATH_IMAGE006
之间的相关系数;
Figure 521610DEST_PATH_IMAGE031
由下式计算
Figure 181261DEST_PATH_IMAGE032
其中,
Figure 139990DEST_PATH_IMAGE033
表示数学期望;
根据上式,得到互信息量的表达形式:
Figure 808344DEST_PATH_IMAGE034
Figure 827116DEST_PATH_IMAGE035
的值以升序的方式排列,选取排序中靠后的
Figure 974063DEST_PATH_IMAGE036
个模型进行聚合,得到新的全局检测模型:
Figure 595537DEST_PATH_IMAGE037
其中,
Figure 511541DEST_PATH_IMAGE038
表示更新后的全局检测模型,
Figure 701214DEST_PATH_IMAGE039
表示第
Figure 335457DEST_PATH_IMAGE040
个工作节点的数据数目,
Figure 511355DEST_PATH_IMAGE041
表示参与聚合的工作节点的数据总数,
Figure 281865DEST_PATH_IMAGE042
表示参与聚合的第
Figure 642439DEST_PATH_IMAGE040
个工作节点的模型参数。
CN202211161541.3A 2022-09-23 2022-09-23 基于区块链和联邦学习的网络流量入侵检测方法 Active CN115242559B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211161541.3A CN115242559B (zh) 2022-09-23 2022-09-23 基于区块链和联邦学习的网络流量入侵检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211161541.3A CN115242559B (zh) 2022-09-23 2022-09-23 基于区块链和联邦学习的网络流量入侵检测方法

Publications (2)

Publication Number Publication Date
CN115242559A CN115242559A (zh) 2022-10-25
CN115242559B true CN115242559B (zh) 2022-12-02

Family

ID=83667535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211161541.3A Active CN115242559B (zh) 2022-09-23 2022-09-23 基于区块链和联邦学习的网络流量入侵检测方法

Country Status (1)

Country Link
CN (1) CN115242559B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115577858B (zh) * 2022-11-21 2023-04-07 山东能源数智云科技有限公司 基于区块链的碳排放量预测方法、装置及电子设备
CN116032659B (zh) * 2023-02-20 2023-07-14 中国铁道科学研究院集团有限公司通信信号研究所 一种基于区块链的铁路信号入侵检测系统
CN116405187B (zh) * 2023-04-21 2024-04-09 石家庄铁道大学 基于区块链的分布式节点入侵态势感知方法
CN117499129B (zh) * 2023-11-15 2024-05-03 南方电网数字电网集团信息通信科技有限公司 应用于入侵检测系统的规则同步方法、装置和存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021159753A1 (zh) * 2020-09-21 2021-08-19 平安科技(深圳)有限公司 一种联邦学习模型训练方法、装置、终端设备及存储介质
CN113794675A (zh) * 2021-07-14 2021-12-14 中国人民解放军战略支援部队信息工程大学 基于区块链和联邦学习的分布式物联网入侵检测方法及系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113806735A (zh) * 2021-08-20 2021-12-17 北京工业大学 一种执行与评价双网络个性化联邦学习入侵检测方法及系统
CN114640498B (zh) * 2022-01-27 2023-08-29 天津理工大学 一种基于联邦学习的网络入侵协同检测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021159753A1 (zh) * 2020-09-21 2021-08-19 平安科技(深圳)有限公司 一种联邦学习模型训练方法、装置、终端设备及存储介质
CN113794675A (zh) * 2021-07-14 2021-12-14 中国人民解放军战略支援部队信息工程大学 基于区块链和联邦学习的分布式物联网入侵检测方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
主动学习半监督聚类入侵检测算法;李永忠等;《微电子学与计算机》;20111031(第10期);全文 *
融合区块链与联邦学习的网络入侵检测算法;任涛等;《技术研究》;20211231(第7期);全文 *

Also Published As

Publication number Publication date
CN115242559A (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
CN115242559B (zh) 基于区块链和联邦学习的网络流量入侵检测方法
Li et al. How to prove your model belongs to you: A blind-watermark based framework to protect intellectual property of DNN
Abdelnabi et al. Visualphishnet: Zero-day phishing website detection by visual similarity
CN108718310B (zh) 基于深度学习的多层次攻击特征提取及恶意行为识别方法
CN109359439B (zh) 软件检测方法、装置、设备及存储介质
CN106650799B (zh) 一种电子证据分类提取方法及系统
CN113656807B (zh) 一种漏洞管理方法、装置、设备及存储介质
Zhao et al. A malware detection method of code texture visualization based on an improved faster RCNN combining transfer learning
CN113269228B (zh) 一种图网络分类模型的训练方法、装置、系统及电子设备
CN113935033A (zh) 特征融合的恶意代码家族分类方法、装置和存储介质
Ferrag et al. Revolutionizing cyber threat detection with large language models: A privacy-preserving bert-based lightweight model for iot/iiot devices
CN109101527A (zh) 一种海量安全日志信息过滤方法及装置
Han et al. PPM-InVIDS: Privacy protection model for in-vehicle intrusion detection system based complex-valued neural network
CN107437088B (zh) 文件识别方法和装置
CN116232694A (zh) 轻量级网络入侵检测方法、装置、电子设备及存储介质
CN110855716B (zh) 一种面向仿冒域名的自适应安全威胁分析方法及系统
CN112507336A (zh) 基于代码特征和流量行为的服务端恶意程序检测方法
CN114971642A (zh) 基于知识图谱的异常识别方法、装置、设备及存储介质
Zhang et al. A Step-Based Deep Learning Approach for Network Intrusion Detection.
CN111159588B (zh) 一种基于url成像技术的恶意url检测方法
CN111783063A (zh) 一种操作的验证方法和装置
CN116737850A (zh) Apt实体关系预测的图神经网络模型训练方法
CN115622793A (zh) 一种攻击类型识别方法、装置、电子设备及存储介质
CN116467720A (zh) 一种基于图神经网络的智能合约漏洞检测方法及电子设备
CN115622810A (zh) 一种基于机器学习算法的业务应用识别系统及方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant