CN116405187B - 基于区块链的分布式节点入侵态势感知方法 - Google Patents
基于区块链的分布式节点入侵态势感知方法 Download PDFInfo
- Publication number
- CN116405187B CN116405187B CN202310437731.1A CN202310437731A CN116405187B CN 116405187 B CN116405187 B CN 116405187B CN 202310437731 A CN202310437731 A CN 202310437731A CN 116405187 B CN116405187 B CN 116405187B
- Authority
- CN
- China
- Prior art keywords
- node
- data
- intrusion
- nodes
- key
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000008569 process Effects 0.000 claims abstract description 31
- 238000012795 verification Methods 0.000 claims abstract description 25
- 230000004044 response Effects 0.000 claims abstract description 20
- 238000012545 processing Methods 0.000 claims abstract description 18
- 238000004422 calculation algorithm Methods 0.000 claims description 32
- 238000001514 detection method Methods 0.000 claims description 28
- 238000011156 evaluation Methods 0.000 claims description 18
- 230000005540 biological transmission Effects 0.000 claims description 16
- 238000007781 pre-processing Methods 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 12
- 238000004891 communication Methods 0.000 claims description 10
- 238000007405 data analysis Methods 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 9
- 230000009467 reduction Effects 0.000 claims description 9
- 238000011157 data evaluation Methods 0.000 claims description 8
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 238000013528 artificial neural network Methods 0.000 claims description 7
- 238000013500 data storage Methods 0.000 claims description 6
- 238000012360 testing method Methods 0.000 claims description 6
- 230000010354 integration Effects 0.000 claims description 5
- 230000000977 initiatory effect Effects 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000012847 principal component analysis method Methods 0.000 claims description 4
- 230000009545 invasion Effects 0.000 claims description 3
- 238000003062 neural network model Methods 0.000 claims description 3
- 238000004140 cleaning Methods 0.000 claims description 2
- 238000003672 processing method Methods 0.000 claims description 2
- 238000012552 review Methods 0.000 claims 1
- 238000004458 analytical method Methods 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000006399 behavior Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 238000000513 principal component analysis Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
- G06N3/0442—Recurrent networks, e.g. Hopfield networks characterised by memory or gating, e.g. long short-term memory [LSTM] or gated recurrent units [GRU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于区块链的分布式节点入侵态势感知方法,涉及区块链技术领域。所述方法包括如下步骤:去中心化身份认证;入侵数据共享与协同处理;入侵态势感知。所述去中心化身份认证方法包括如下步骤:整个认证流程分为认证初始化、分布式密钥的生成、公钥组合、身份标识注册和验证、智能合约发起身份验证请求、节点分布式签名验证请求、节点发送签名响应七个步骤。所述方法能够提高分布式网络的安全性和可信度。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于区块链的分布式节点入侵态势感知方法。
背景技术
随着大数据、物联网和人工智能等新兴技术的广泛应用,越来越多的设备连接到互联网,使得网络攻击面不断扩大,网络安全威胁的种类和数量也在迅速增长,而传统的单点防护手段已经无法满足复杂多变的网络环境需求。区块链技术基于分布式网络,具有去中心化、不可篡改和透明性等特点,为安全防护提供了全新的解决方案。但这种分布式网络结构存在信任建立、数据安全、数据共享与协同等方面的问题。
此外,在网络攻击日益复杂和隐蔽的今天,传统的入侵检测技术已经无法满足人们的需求。尤其是在对抗各种复杂的网络攻击和恶意行为时,存在不同设备信息壁垒导致的网络安全防护体系不协调问题。
发明内容
本发明所要解决的技术问题是如何提供一种能够提高分布式网络的安全性和可信度的分布式节点入侵态势感知方法。
为解决上述技术问题,本发明所采取的技术方案是:一种基于区块链的分布式节点入侵态势感知方法,包括如下步骤:
去中心化身份认证;
入侵数据共享与协同处理;
入侵态势感知。
进一步的技术方案在于,所述去中心化身份认证方法包括如下步骤:
整个认证流程分为认证初始化、分布式密钥的生成、公钥组合、身份标识注册和验证、智能合约发起身份验证请求、节点分布式签名验证请求、节点发送签名响应七个步骤。
进一步的技术方案在于,所述入侵数据共享与协同处理方法包括如下步骤:
包括初始化、存储共识、共享协同和攻击者上链四个阶段,采用去中心化的共识算法来保证节点间的协作和数据一致性,智能合约提供一种标准化和自动化的方式来管理入侵检测数据。
进一步的技术方案在于,所述入侵态势感知包括如下步骤:
数据预处理与特征提取、数据分析与评估以及态势感知预测;
在数据预处理与特征提取阶段,采用主成分分析方法对数据进行降维和特征提取;
在数据分析与评估阶段,使用加权综合评估法计算网络安全态势得分,并将得分映射到不同的风险等级;
在态势感知预测阶段,采用LSTM神经网络模型对网络安全态势数据进行建模和预测。
进一步的技术方案在于,基于LSTM进行入侵态势感知的方法如下:
1)网络安全态势数据的预处理:在收集网络安全态势数据后,对异常和不良数据进行处理;将原始数据归一化到(0,1)范围,使用梯度下降算法的LSTM神经网络预测模型对(0,1)之间的数据具有较高的敏感度;
2)数据集处理:在预测之前用时间窗策略将网络安全态势数据集转换为模型输入要求的形状;将所有的网络安全态势值数据按照4:1的比例划分为训练集和测试集;
3)模型搭建及训练:搭建LSTM模型,将训练集的数据和对应的标签输入网络进行训练,采用随机梯度下降算法对LSTM神经网络参数进行寻优,得到最优网络安全态势预测模型;
4)态势预测:将测试集的数据进行步骤1)和步骤2)的数据处理后,输入到步骤3)训练好的最优网络安全态势预测模型中,模型输出的预测结果可用于评估当前网络的安全状态。
采用上述技术方案所产生的有益效果在于:针对分布式入侵检测中的身份认证和数据传输存储及完整性问题,本申请提出了基于椭圆曲线、分布式密钥生成和门限密码学的身份认证方案,以建立可靠的去中心化身份认证和数据安全机制,保障参与节点之间的信任关系。同时采用密钥协商、数字签名等数据安全技术,确保密钥、入侵数据等传输过程中的安全。
针对传统入侵检测***难以有效应对复杂网络攻击,本申请提出基于区块链的协同入侵检测方案。利用区块链的分布式特点实现数据共享与协同,以提高多个参与节点在应对安全威胁时的协作能力。采用IPFS将数据和计算资源分布于网络中多个节点,实现数据跨网络分布式存储,以减少单点故障和攻击风险,从而提高入侵检测网络的安全性和可信度。基于区块链的透明性,数据流转记录可以被所有节点共同验证和审计,从而帮助识别恶意节点和网络安全威胁。设计智能合约实现自动执行预置逻辑、节点资质审查和交易控制。同时,引入奖励激励和惩罚机制,以提升区块链网络的合作性和效率。
为解决态势感知中入侵数据的信任和数据安全问题,本申请通过对区块链数据共享与协同部分产生的入侵数据进行态势分析,形成对整个网络安全状况的全面认识。首先采用主成分分析提取入侵数据的特征,并对其进行权重分配,计算网络安全态势得分,从而确定网络风险等级。然后利用长短时记忆神经网络建立网络安全态势预测模型,对未来的网络安全态势得分进行预测,得出下一时刻的网络安全风险等级预测值。
附图说明
下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1是本发明实施例中基于区块链的分布式节点入侵态势感知模型图;
图2是本发明实施例中入侵检测数据共享与协同处理的流程图;
图3是本发明实施例中智能合约控制节点输入和数据存储流程图;
图4是本发明实施例中态势感知架构图;
图5是本发明实施例中协议计算量开销对比图;
图6是本发明实施例中身份认证响应时间与节点数关系图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施例的限制。
本申请公开了一种基于区块链的分布式节点入侵态势感知方法,所述方法利用区块链技术构建一个去中心化的分布式入侵检测***,以提高网络的安全性和可信度,通过基于区块链的分布式入侵态势感知模型构建智能化的网络安全防护体系,提高网络安全防范的精准性和有效性。
通过超级账本创建一个分布式的区块链网络层,用于节点的注册、更新、维护和监控。这些节点可以是网络安全设备或普通主机,并由去中心化的身份认证机制负责管理。入侵数据和其他文件使用去中心化的存储方式,只有文件索引存储在区块上。共识机制负责节点间的数据传输,保证所有节点上存储的数据相同,并设计奖励交易来激励良好的节点和控制恶意节点。智能合约实现自动执行预置逻辑、节点资质审查和交易控制。对区块链数据共享与协同部分产生的入侵数据进行态势分析,采用主成分分析、权重分配和长短时记忆神经网络来进行态势感知。整个方案模型如图1所示。方案包括三部分组成:去中心化身份认证和数据安全、入侵检测数据共享与协同和态势感知。
去中心化身份认证方法包括认证初始化、分布式密钥的生成、公钥组合、身份标识注册和验证、智能合约发起身份验证请求、节点分布式签名验证请求、节点发送签名响应等七个步骤。该方法基于椭圆曲线、分布式密钥生成和门限密码学技术。数据安全方法介绍了整体数据安全方案,包括数据传输安全、数据存储安全、数据完整性和节点之间的密钥更新。在数据传输和存储中,采用混合加密和IPFS分布式文件***进行数据加密和存储,并使用数字签名技术确保数据的完整性。同时,节点之间定期更新非对称密钥对,以增强***的安全性。
入侵数据共享与协同方法提出了一个基于区块链和IPFS技术的分布式入侵检测方法,包括初始化、存储共识、共享协同、攻击者上链四个阶段。方法采用了去中心化的共识算法来保证节点间的协作和数据一致性,可以有效提高入侵检测***的可靠性和安全性。智能合约提供了一种标准化和自动化的方式来管理入侵检测数据。
态势感知方法介绍了网络安全态势感知的架构和具体实现步骤。其中,包括数据预处理与特征提取、数据分析与评估以及态势感知预测。在数据预处理与特征提取阶段,采用主成分分析方法对数据进行降维和特征提取。在数据分析与评估阶段,使用加权综合评估法计算网络安全态势得分,并将得分映射到不同的风险等级。在态势感知预测阶段,采用LSTM神经网络模型对网络安全态势数据进行建模和预测。
去中心化身份认证
使用去中心化身份认证可以保护节点的隐私和安全。核心思想是将身份标识从中心化机构中解放出来,让节点完全掌控自己的身份信息,同时可以通过去中心化的方式进行验证和认证。
首先利用分布式密钥生成技术思想来进行密钥生成。在密钥生成过程中,通常情况下,是由单个节点生成一个密钥并将其份额分发给其他节点。但这种过程存在风险,若该密钥生成节点被攻击,整个密钥就会被泄露。分布式密钥生成技术是通过多个参与者合作来生成一个安全的密钥,这个生成流程被分散到多个节点中,即使某些节点受到攻击,也不会泄露整个密钥。
整个认证流程分为认证初始化、分布式密钥的生成、公钥组合、身份标识注册和验证、智能合约发起身份验证请求、节点分布式签名验证请求、节点发送签名响应七个步骤。去中心化身份认证算法如下:
(1)认证初始化
假设n个参与节点共同创建一个椭圆曲线密钥对。使用t(t<=n)来表示阈值,即至少需要t个节点共同合作才能完成密钥生成和签名。结合secp256k1椭圆曲线算法来生成密钥。Secp256k1曲线的相关参数如表1所示:
表1认证初始化参数表
基点G是一个已知的在曲线上的点,它是所有点的加法运算中的单位元。阶n表示基点G相加n次后的结果为单位元。
(2)分布式密钥的生成
结合Shamir’s Secret Sharing(SSS)思想来提高密钥生成过程中的安全性。目的是能够在***露秘密的前提下,将秘密值分割成多份,提高秘密值的安全性。将一个公私钥对分割成n份,每份只保留部分信息,需要收集至少k份才能还原出完整的公私钥对。
每个参与节点都将通过以下步骤生成公钥份额和私钥份额:使用伪随机数生成器来产生一个随机数,作为私钥份额SecKeyi,i∈[1,n-1],其中i标识节点的索引;每个节点使用一个t-1次多项式来创建一个秘密分享:
随机选取系数a1,a2,…,at-1,计算多项式fi(x)=SecKeyi+a1*x+a2*x2+…+at-1*xt -1。;计算公钥份额,PubKeyi=SecKeyi*G,其中G是椭圆曲线的基点;最后,每个节点都将其公钥份额广播给其他参与节点。
(3)公钥组合
节点收集所有其他参与节点的公钥份额,并使用拉格朗日插值法计算组合公钥:对于每个公钥份额PubKeyi,计算插值系数λi=Π(xj/(xj-xi)),其中1≤j≤t,j≠i;计算组合公钥PubKey=Σλi*PubKeyi。
拉格朗日插值法的核心思想是利用已知数据点,通过拉格朗日基函数来构造一个满足插值条件的多项式P(x),使得P(x)在数据点上的函数值与原函数的函数值相同。这样,就可以通过P(x)来近似原函数,从而实现插值计算。
(4)身份标识注册
将一个新的身份标识符DID创建并记录在一个分布式账本中的过程。节点生成身份标识文档后,将其注册到区块链上,以便其他人可以在区块链上查找和验证身份标识符的信息。文档包括DID、公钥、身份证验证方法和服务端点等信息。
(5)智能合约发起身份验证请求
本申请设计智能合约为服务提供商。智能合约可以通过执行智能合约代码来验证用户的身份,实现去中心化的身份认证。智能合约作为服务提供商的优势在于,它们可以自动化地执行身份验证和授权等操作,避免了中心化身份验证服务提供商的单点故障和安全风险。
节点访问区块链网络发布任务时,智能合约将向该节点发起身份验证请求。这个请求包括一个随机数(nonce)。
(6)节点分布式签名验证请求
节点使用私钥份额SecKeyi对请求进行签名。签名过程使用椭圆曲线Schnorr多重签名算法。椭圆曲线Schnorr多重签名算法是一种基于椭圆曲线密码学的多重签名方案,可以实现多个签名者对同一交易的签名,从而提高交易的安全性和可信度。签名算法步骤:
使用SHA-256计算消息哈希值,h=SHA-256(message);每个参与者选择一个随机数ki,并计算Ri=ki*G;每个参与者将Ri广播给其他参与者,然后将收到的Ri相加,得到R=∑Ri;计算r=x(R)modn;每个参与者计算si=ki+r*SecKeyi;收集至少t个其他节点的si,计算s=∑simodn,(r,s)即为最终签名。
(7)节点发送签名响应
节点将最终签名响应发送给智能合约。智能合约收到节点发送的签名响应后,使用相应的公钥来验证签名的有效性。如果签名验证成功,则智能合约确认节点的身份,并向节点提供相应的服务或资源;否则智能合约拒绝节点的请求。
该去中心化身份认证算法拥有分布式、去中心化的特性,提高了密钥生成过程中的安全性。利用椭圆曲线加密和门限密码学,实现了对同一交易的多重签名,提高了交易的安全性和可信度。通过使用智能合约作为服务提供商,避免了中心化身份验证服务提供商的单点故障和安全风险。总体而言,本申请提供了一种安全、高效且去中心化的分布式身份认证方法。
数据安全
每个节点能够通过分布式密钥生成步骤得到一对非对称密钥,例如公钥和私钥。节点已经将公钥存储在区块链上,以便其他节点进行身份验证和加密通信。
(1)数据传输安全
在节点间通信时,使用混合加密方法确保数据安全。混合加密是将公钥加密算法和对称加密算法结合起来使用。为了本申请中的数据传输安全,结合AES对称加密算法对数据进行加密。
具体步骤如下:
a.密钥协商
当节点A与节点B需要进行安全通信时,A生成一个随机数rA,并计算临时公钥temp_PubKeyA=rA*G。节点A发给节点B一个temp_PubKeyA,节点B生成一个随机数rB并计算临时公钥temp_PubKeyB=rB*G,并发送给节点A。节点A计算密钥协商结果:KA=rA*temp_PubKeyB。节点B计算密钥协商结果:KB=rB*temp_PubKeyA。KA和KB是相同的,并可作为AES会话密钥k。
b.数据加密
设原始数据为M。节点A使用AES会话密钥k对数据M进行加密,得到加密后的数据C。加密过程表示为:C=AES_Encrypt(M,k)
c.数据传输
节点A将加密后的数据C发送给节点B。
d.数据解密
要恢复出原始数据M,节点B需要使用AES会话密钥k对加密后的数据C进行解密。解密过程表示为:M=AES_Decrypt(C,k)
(2)数据存储安全
使用IPFS分布式文件***进行加密文件存储。具体步骤如下:
节点A需要存储数据时,选择节点B作为数据存储节点。使用上面提到的密钥协商步骤去加密文件M:C=AES_Encrypt(M,k);节点A将加密后的数据C上传到IPFS网络。IPFS将为数据生成一个唯一的哈希值H作为索引;接着节点A在区块链上存储文件索引H,以便其他节点节点检索。
当节点D想要访问存储在IPFS中的数据时,节点D与节点B进行密钥协商,获得AES会话密钥k。节点D使用文件索引H从IPFS获取加密数据C。节点D使用AES会话密钥k对加密后的数据C进行数据解密得到原始数据M。
(3)数据完整性
数字签名技术可以确保在数据传输过程中数据完整性。使用基于椭圆曲线密码学的数字签名算法ECDSA(Elliptic Curve Digital Signature Algorithm)进行签名。ECDSA算法具有高度的安全性以及相对较短的密钥长度。假设节点A需要对入侵事件报告(报告为message)进行签名。
签名阶段
首先,节点A需要生成一个椭圆曲线密钥对(私钥为dA,公钥为QA),其中QA=dA*G(G是椭圆曲线的生成元);当需要对报告进行签名时,节点A执行以下步骤:
i.选择一个随机数k(1<=k<=n-1,n为椭圆曲线的阶);ii.计算椭圆曲线上的点P=k*G,并计算x坐标的模n余数r:r=P.xmodn,如果r为0,则重新选择k并重复步骤i和ii;iii.计算k的模n乘法逆元kinv:kinv=k-1modn;iv.计算报告的哈希值h:h=hash(message)。v.计算s:s=(h+dA*r)*kinvmodn,如果s为0,则重新选择k并重复步骤i至v。
步骤v结束后,得出节点A的签名为(r,s)。
验证阶段:
假设节点B收到节点A发送的入侵事件报告及其签名(r,s),节点B执行以下步骤进行验证:
i.确保r和s的范围有效:1<=r,s<=n-1。ii.计算报告的哈希值h:h=hash(message)。iii.计算s的模n乘法逆元sinv:sinv=s-1modn。iv.计算两个值u1和u2:u1=h*sinvmodn和u2=r*sinvmodn。v.计算椭圆曲线上的点P=u1*G+u2*QA。vi.验证条件是否成立:r%n==P.x%n。如果成立,则签名有效;否则,签名无效。
(4)节点之间的密钥更新
为了防止密钥被长期攻击和增强整个***的安全性。节点之间需要定期更新非对称密钥对。在更新过程中,新生成的公钥将被写入区块链,替换旧的公钥。每个节点都需要监控区块链上其他节点的公钥更新,确保使用最新的公钥进行加密通信。具体步骤如下:
每个节点根据自身的安全策略和需求计算密钥更新周期T。周期T可以是固定的时间间隔或根据一定规则动态调整;当一个节点的密钥使用时间达到更新周期T时,它将触发密钥更新流程;触发密钥更新的节点向其他节点广播密钥更新请求;重新执行身份认证步骤,得到密钥协商和数据加密过程中使用的新公钥并广播该公钥。
入侵检测数据共享与协同
本申请将入侵检测任务分配给多个节点,每个节点都有本地检测算法来得出结果,然后将这些结果提交到区块链网络中进行验证和记录。这种方案实现了入侵检测结果的去中心化存储和共享。同时方案采用了去中心化的共识算法,以确保节点之间的协作和数据的一致性。
协同分布式结构中的每个节点都有自己的入侵检测算法和策略,并且可以根据需要进行调整和升级。当一个节点检测到可疑活动时,它可以将结果上传到中心节点或者其他相邻的节点进行进一步的分析和处理。中心节点可以收集和整合所有节点上传的信息,并且可以根据规则或者模型来判断是否存在入侵活动。
存储采用IPFS文件***。传统的入侵检测***中,数据通常会被存储在中心化的数据库,IPFS存储时会将文件分割成块,并将这些块存储在IPFS网络的各个节点上,每个块都有其哈希值。每个文件也都有其唯一的哈希值,可以用于定位和检索文件,该哈希值将会被发布到IPFS网络上。当有节点想要访问文件时,IPFS网络会自动从最近的节点中查找该文件,并将该文件的各个块下载下来。采用IPFS文件***,避免了中心化存储带来的问题,确保入侵数据的可追溯性和可靠性,提高数据的处理效率和响应速度。
分布式节点的入侵检测数据共享与协同共分为四个阶段:初始化阶段、存储共识阶段、共享协同阶段和攻击者上链阶段。整体流程如图2所示:
(1)初始化阶段
当某个节点(例如节点1)监测到入侵企图等告警时,它将发起入侵检测事件。根据智能合约的要求,首先需要对节点1进行身份认证,并审查是否具备足够的资源来进行区块生成运算。如果节点1身份认证不通过,则该节点将在区块链网络中发起证书申请。如果该节点资源不足,则交易将被中止,并向其他节点广播节点1状态异常的告警信息,提醒管理员关注节点状态。只有当节点1通过所有审查后,才会成功初始化。
(2)存储共识阶段
在此阶段,节点1根据智能合约的输入参数提供原始告警数据。作为回报,节点1将获得智能合约提供的奖励。节点1会对数据添加数字签名。智能合约将数字签名后的数据打包存储到IPFS***中,并返回唯一的哈希值作为文件索引。同时,智能合约还生成入侵数据概要,包括可疑源IP和入侵时间,以便后续快速检索。接着,交易发起节点将原始告警入侵数据的文件索引和入侵数据概要一起记录到区块1中,并广播给其他节点。其余节点在共识区块时将会获得奖励。共识时,其余节点将会根据3.2.1节中身份认证机制验证节点1的身份。通过则接受区块1。一旦超过50%的节点接受区块1,共识就算完成。智能合约规定了各节点将数据记录到区块的内容和格式,如图3所示。
(3)共享协同阶段
在收到广播的区块1后,节点1的相邻节点(例如节点2)将根据区块头的信息去检索自己的数据库里攻击者的入侵数据。智能合约接着使用IPFS的文件更新算法,根据文件索引追加更新节点2提供的攻击者数据到原始文件中。若节点2无攻击者相关入侵数据,则追加更新一条包含自身设备信息与“未查到该攻击者”的描述数据。同时节点2也会对新数据进行数字签名。IPFS会对新数据进行存储,并将新数据与原始告警数据进行哈希运算,这将返回一个新的唯一哈希值作为文件索引(例如文件索引2)。节点2将区块1哈希值、区块1的入侵数据概要和文件索引2写入区块2,并广播给其他节点。其他节点将对区块2进行共识。每个节点在共识时,如遇到更长的链,将会更新本地链,从而保证不再接收已共识过的区块。若有节点长期不响应广播,则其余节点不再等待其回应通信,以防止通信或作业堵塞。这个过程将不断重复,直到所有节点都提供了对攻击者数据的查找结果。
(4)攻击者上链阶段
在此阶段,智能合约将监视最后一个更新攻击者数据的节点生成的区块(例如区块n),并从该区块中读取文件索引n。接着,智能合约将从IPFS文件***中下载该文件,其中包含所有节点提供的攻击者信息。智能合约将按照时间戳的顺序整理攻击数据,梳理出攻击链条,并生成一个该攻击者的入侵数据集。随后,智能合约将把该数据集存储到IPFS文件***中,并获得新的文件索引(例如文件索引n+1)。智能合约将根据文件索引n删除文件n,以释放存储空间。接下来,智能合约将文件索引n+1发给区块1。区块1将攻击者入侵数据概要连同文件索引一起记录到区块上,并登记发布到区块链上。这样,所有节点都能够访问和查询攻击者的入侵数据,从而实现对攻击者行为的监控和追踪。
通过以上四个阶段,区块链网络成功地实现了入侵检测事件的处理和攻击者数据的共享。这种方法有效地利用了区块链和IPFS技术的优势,提高了网络安全性和数据的可靠性。
态势感知评估
通过对前文收集的入侵数据集和其他网络状态信息的分析与挖掘,实现对恶意行为的评估与预警机制。在此过程中,将对数据源内信息进行分析,包括但不限于网络流量、主机日志和安全事件数据等。对这些数据进行预处理和特征提取,接着对数据进行分析和理解,以有力支持后续的评估和预警。态势感知架构如图4所示。
阶段1数据预处理与特征提取
(1)数据整合
从区块链中获取数据索引,遍历区块链,找到包含攻击者信息的区块,从这些区块中提取文件索引信息。根据文件索引从IPFS文件***中获取数据。从外部数据源收集最新威胁情报、网络服务状态等,收集网络和设备的实时情况数据。将这些实时数据与从IPFS文件***中获取的入侵数据进行整合,形成一个完整的数据集。使用区块链的哈希值校验数据的完整性和一致性,确保数据在传输过程中未被篡改。当有新的入侵数据产生时,实时更新数据集,确保数据的及时性。
(2)数据预处理
通过数据清洗去除异常值和噪声,保留有效的数据信息,从而提高数据质量和准确性,为后续数据分析和挖掘提供可靠的基础。下表2是部分数据处理项。
表2部分数据处理项列表
从以下几个方面进行数据集成:数据格式的一致性以便进行数据集成和分析,数据源的准确性和完整性避免对分析的影响、数据重复性的处理、数据量的平衡以避免分析的偏向性、数据的标准化以保证数据的一致性和可比性。
利用主成分分析PCA来进行数据降维和特征提取。网络安全入侵事件中往往存在很多相关属性。例如一次邮件钓鱼攻击事件中,恶意邮件的时间和受控主机横向攻击范围是最重要的,就要剔除受控主机的其余正常通信行为提供的的通信ip和可信邮件。
PCA于从高维数据中提取出最重要的特征(主成分),并将其转换为低维空间中的新的特征表示。它通过将原始数据进行线性变换,将其转化为新的坐标系下的数据表示,使得新的坐标系下的数据具有最大的方差,并且不同维度之间彼此独立,从而达到降维的目的。下表3是PCA算法中涉及的一些定义:
表3 PCA算法相关定义
PCA的过程包括以下几个步骤:对原始数据X进行去中心化处理,得到去中心化后的数据矩阵Xc;计算协方差矩阵通过对协方差矩阵C进行特征值分解,得到特征值λ1,λ2,...,λn和特征向量v1,v2,...,vn;将特征向量按对应特征值从大到小排序,并选取前k个特征向量组成矩阵W,其中k是目标降维后的特征数;将数据矩阵Xc与矩阵W相乘,得到降维后的数据矩阵Y=XcW。返回降维后的数据矩阵Y。
假设经过数据整合、预处理和特征提取,得到一个包含以下特征的入侵数据集:攻击类型编码,已经使用独热编码转换为数值型数据;攻击源IP地址,已经将IP地址转换为整数数值;目标设备IP地址,已经将IP地址转换为整数数值;攻击持续时间,单位为秒的数值型数据;攻击流量,单位为字节的数值型数据。如表4所示为某原始入侵数据集的部分数值型特征。
首先计算特征数据的协方差矩阵,然后进行特征值分解,得到特征向量和对应的特征值。在选取前两个最大特征值对应的特征向量作为投影矩阵之后,将原始数据乘以该矩阵,可以得到降维后的主成分数据,如表5所示。
表4原始入侵数据集A部分特征
表5原始入侵数据集A特征降维
如上表所示,已经将原始的三个特征降维为两个主成分。这两个主成分能够解释原始数据中的大部分方差,同时减少了特征的维度。主成分分析在网络安全态势感知中的入侵数据集处理过程中,可以有助于发现数据中的潜在模式,剔除冗余和无关紧要的特征,从而提高数据处理效率并更好地识别和预测潜在的安全威胁。
阶段2数据分析与评估
根据数据来评估网络安全态势。采用加权综合评估法,通过为不同的指标分配权重,计算出一个总的安全态势得分。具体步骤如下:
(1)确定评估指标。
需要确定用于评估网络安全态势的指标。采用上一阶段得到的主成分作为指标。
(2)分配权重
需要为每个评估指标分配一个权重。权重反映了该指标在总体安全态势中的相对重要性。权重的分配可以根据实际情况和领域知识进行调整。例如主成分1的相关性更大,说明是网络安全的重要指标。可将权重分配如下:主成分1为0.7,主成分2为0.3。
(3)计算每项得分和评估网络安全态势结果
对于每个评估指标,需要计算一个得分。得分可以根据实际数据、标准或经验进行计算。对于每个指标,先将其得分与其对应的权重相乘,然后将所有乘积相加,可计算出一个总得分。依据总得分对网络安全态势进行评估。将得分映射到一个评估区间等级,确定其风险等级,如安全(低风险)、基本安全(中低风险)、存在风险(中风险)、高风险(中高风险)、极度危险(高风险)。
(4)动态调整
网络安全态势是一个动态变化的过程。因此,可以不断收集新的入侵数据,实时更新网络安全态势评估权重和结果。这将有助于及时发现新的安全威胁,制定有效的应对策略。
态势感知预测
采用LSTM对历史网络安全事件的数据进行建模,并使用该模型来预测用于预测网络流量的安全态势。基于LSTM进行入侵态势感知的原理和方案步骤:
(1)网络安全态势数据的预处理。在收集网络安全态势数据后,需要对异常和不良数据进行处理。为了更方便地对网络安全态势值进行求解,我们需要将原始数据归一化到(0,1)范围。使用梯度下降算法的LSTM神经网络预测模型对(0,1)之间的数据具有较高的敏感度。
(2)数据集处理。在预测之前用时间窗策略将网络安全态势数据集转换为模型输入要求的形状。为了避免出现过度拟合现象,需要将所有的网络安全态势值数据按照4:1的比例划分为训练集和测试集。
(3)模型搭建及训练。搭建LSTM模型,将训练集的数据和对应的标签输入网络进行训练,采用随机梯度下降算法对LSTM神经网络参数进行寻优,得到最优网络安全态势预测模型。
(4)态势预测。将测试集的数据进行数据处理(步骤1和步骤2)后,输入到步骤(3)训练好的最优网络安全态势预测模型中,模型输出的预测结果可用于评估当前网络的安全状态。
抵抗攻击分析:
(1)恶意节点冒充合法节点进行攻击
使用分布式密钥生成和基于非对称密钥对的身份验证来防止此类攻击。每个节点都有一对非对称密钥(公钥和私钥),并将公钥存储在区块链上。只有合法节点才能通过身份验证。由于私钥仅限节点自己持有,恶意攻击者无法伪造合法节点的身份。
(2)中间人攻击
使用混合加密方法(结合公钥加密算法和对称加密算法)来确保数据传输的安全性。通过密钥协商过程,两个节点可以生成共享的会话密钥k。由于k仅在这两个节点之间共享,恶意攻击者无法获取密钥,从而无法解密传输中的数据。
(3)数据篡改攻击
使用数字签名技术(例如ECDSA)确保数据在传输过程中的完整性。在发送数据之前,节点会对消息进行数字签名,然后将签名和密文一起发送给接收节点。接收节点使用发送节点的公钥来验证签名的有效性。只有在签名有效的情况下,数据在传输过程中才不会被篡改。这样可防止恶意攻击者修改传输中的数据。
(4)数据窃取攻击
使用IPFS分布式文件***进行加密文件存储。在将数据存储到IPFS网络之前,节点会先加密数据。这样即使攻击者能够访问IPFS网络上的数据,由于数据是加密的,攻击者无法获取原始信息。
(5)密钥泄露攻击
要求节点定期更新非对称密钥对,以防止密钥被长期攻击。当一个节点的密钥使用时间达到更新周期T时,它将触发密钥更新流程。新生成的公钥将被写入区块链,替换旧的公钥。这样,即使攻击者能够破解旧的密钥,也无法对新的密钥造成威胁。
区块链交易与共识安全分析:
(1)防止恶意攻击
在节点初始化阶段,每个节点都有自己的资源限制值resLimit,防止拒绝服务攻击(DDoS)。如果交易节点没有足够的计算资源来处理交易中的计算任务,那么它就可能成为攻击者进行拒绝服务攻击的目标。通过检查节点的计算资源,可以确保节点能够承受一定的负载压力,从而防止拒绝服务攻击。
在每次节点发起任务时,智能合约会对其进行安全审查。同时智能合约会定期检查节点的奖励数量,低于阈值则可能是恶意节点逃避交易。
(2)合作攻击
合作攻击是指攻击者通过合谋或协作,共同控制足够多的节点,从而掌控整个区块链网络。攻击者通常通过不断购买足够多的奖励,来增加自己在区块链网络中的权重。
本申请的奖励交易激励机制,可以确保诚实节点的收益高于恶意行为的收益。这将鼓励节点遵循协议,降低恶意节点发起合作攻击的动机。同时,使用数字签名技术,相当于多个节点共同对数据进行签名和加密,从而增加恶意节点篡改数据和发起合作攻击的难度。
效率分析
为了便于本申请与其余解决方法的统一分析,本申请从协同认证角度去与其他方案进行对比。将密钥协商、加密、传输解密的隐私保护过程,添加到去中心化身份认证,并结合节点通信时执行数字签名算法,称为入侵检测身份认证过程,再来计算其响应时间。
入侵检测身份认证过程中主要为点乘和点加运算。分析得共有3次点乘运算(计算公钥份额、AES列混淆、Ri和数字签名密钥生成),共有2次点加运算(计算R、轮密钥加和组合公钥、数字签名密钥生成),1次哈希运算,共有1次指数运算(构建多项式)。
根据相同的统计和计算原则,本申请对文献[60](Hsieh W B,Leu J S.Ananonymous mobile user authentication protocol using self-certified publickeys based on multi-server architectures[J].The Journal of Supercomputing,2014,70:133-148.)和文献[61](Yuan C,Zhang W,Wang X.EIMAKP:Heterogeneous cross-domain authenticated key agreement protocols in the EIM system[J].ArabianJournal for Science and Engineering,2017,42:3275-3287.)的运算操作及时间开销整理如表6、表7和图5所示:
表6各类运算操作、符号
表7协议运算操作
可以看出,本申请相对于文献[60]和文献[61]的方案,在计算开销方面都要显著更低,主要原因是本申请减少了一次映射到点的运算。
编写代码实现基于RSA密钥协商的入侵检测身份认证仿真过程与本申请基于ECC密钥协商的入侵检测身份认证仿真过程对比。用Python代码实现仿真实验,基于Python的cryptography库实现数据加密解密。认证过程响应时间与节点数量的关系如图6所示,节点数量范围设置为100个以内。
根据图可以分析,随着节点数的不断增加,由于分布式身份认证对。响应时间在逐渐增大。这是因为节点数的增加,***的开销逐渐增大,***占用的内存,使用的处理器运算量逐渐增大,因此身份认证响应时间会增大。但往往参与者数量和阈值通常是有限的,普通用户电脑就能实现低响应时间。
Claims (7)
1.一种基于区块链的分布式节点入侵态势感知方法,其特征在于包括如下步骤:
去中心化身份认证;
入侵数据共享与协同处理;
入侵态势感知;
所述去中心化身份认证方法包括如下步骤:
认证初始化、分布式密钥的生成、公钥组合、身份标识注册和验证、智能合约发起身份验证请求、节点分布式签名验证请求、节点发送签名响应七个步骤;
数据安全通过以下方法进行实现:
1)数据传输安全
结合AES对称加密算法对数据进行加密,具体步骤如下:
a.密钥协商
当节点A与节点B进行安全通信时,节点A生成一个随机数rA,并计算临时公钥PubKeyA=rA*G;节点A发给节点B一个临时公钥PubKeyA,节点B生成一个随机数rB并计算临时公钥PubKeyB=rB*G,并发送给节点A;节点A计算密钥协商结果:KA=rA*临时PubKeyB;节点B计算密钥协商结果:KB=rB*临时PubKeyA;KA和KB是相同的,并作为AES会话密钥k;
b.数据加密
原始数据为M;节点A使用AES会话密钥k对原始数据M进行加密,得到加密后的数据C;加密过程表示为:C=AES_Encrypt(M,k);
c.数据传输
节点A将加密后的数据C发送给节点B;
d.数据解密
要恢复出原始数据M,节点B使用AES会话密钥k对加密后的数据C进行解密;解密过程表示为:M=AES_Decrypt(C,k)
2)数据存储安全
使用IPFS分布式文件***进行加密文件存储,具体步骤如下:
节点A存储数据时,选择节点B作为数据存储节点;使用数据加密步骤去加密原始数据:C=AES_Encrypt(M,k);节点A将加密后的数据C上传到IPFS网络;IPFS将为数据C生成一个唯一的哈希值H作为索引;接着节点A在区块链上存储文件索引H,以便其他节点检索;
当节点D需要访问存储在IPFS中的数据时,节点D与节点B进行密钥协商,获得AES会话密钥k;节点D使用文件索引H从IPFS获取加密数据C;节点D使用AES会话密钥k对加密后的数据C进行数据解密得到原始数据M;
3)数据完整性
签名阶段:
首先,节点A生成一个椭圆曲线密钥对,私钥为dA,公钥为QA,其中QA=dA*G,G是椭圆曲线的生成元;当对报告进行签名时,节点A执行以下步骤:
i:选择一个随机数k,1<=k<=n-1,n为椭圆曲线的阶;ii.计算椭圆曲线上的点P=k*G,并计算x坐标的模n余数r:r=P.xmodn,如果r为0,则重新选择k并重复步骤i和ii;iii.计算k的模n乘法逆元kinv:kinv=k-1modn;iv.计算报告的哈希值h:h=hash(message);v.计算s:s=(h+dA*r)*kinvmodn,如果s为0,则重新选择k并重复步骤i至v;
步骤v结束后,得出节点A的签名为(r,s);
验证阶段:
节点B收到节点A发送的入侵事件报告及其签名(r,s),节点B执行以下步骤进行验证:
i.确保r和s的范围有效:1<=r,s<=n-1;ii.计算报告的哈希值h:h=hash(message);iii.计算s的模n乘法逆元sinv:sinv=s-1modn;iv.计算两个值u1和u2:u1=h*sinvmodn和u2=r*sinvmodn;v.计算椭圆曲线上的点P=u1*G+u2*QA;vi.验证条件是否成立:r%n==P.x%n;如果成立,则签名有效;否则,签名无效;
4)节点之间的密钥更新
在更新过程中,新生成的公钥将被写入区块链,替换旧的公钥;每个节点都需要监控区块链上其他节点的公钥更新,具体步骤如下:
每个节点根据自身的安全策略和需求计算密钥更新周期T;周期T是固定的时间间隔或根据一定规则动态调整;当一个节点的密钥使用时间达到更新周期T时,将触发密钥更新流程;触发密钥更新的节点向其他节点广播密钥更新请求;重新执行去中心化身份认证方法,得到密钥协商和数据加密过程中使用的新公钥并广播该新公钥。
2.如权利要求1所述的基于区块链的分布式节点入侵态势感知方法,其特征在于:
1)认证初始化
n个参与节点共同创建一个椭圆曲线密钥对;使用t来表示阈值,t<=n,至少需要t个节点共同合作才能完成密钥生成和签名,结合secp256k1椭圆曲线算法来生成密钥;
2)分布式密钥的生成
每个参与节点都将通过以下步骤生成公钥份额和私钥份额:
使用伪随机数生成器来产生一个随机数,作为私钥份额SecKeyi,i∈[1,n-1],其中i表示每个参与节点的索引;每个参与节点使用一个t-1次多项式来创建一个秘密分享:
随机选取系数a1,a2,…,at-1,计算多项式fi(x)=SecKeyi+a1*x+a2*x2+…+at-1*xt-1;计算公钥份额,PubKeyi=SecKeyi*G,其中G是椭圆曲线的生成元;最后,每个参与节点都将其公钥份额广播给其他参与节点;
3)公钥组合
每个参与节点收集所有其他参与节点的公钥份额,并使用拉格朗日插值法计算组合公钥:对于每个公钥份额PubKeyi,计算插值系数λi=Π(xj/(xj-xi)),其中1≤j≤t,j≠i;计算组合公钥PubKey=∑λi*PubKeyi;
4)身份标识注册
创建一个新的身份标识符DID并记录在一个分布式账本中;每个参与节点生成身份标识符文档后,将其注册到区块链上,以便其他参与节点在区块链上查找和验证身份标识符的信息;
5)智能合约发起身份验证请求
智能合约为服务提供商,智能合约通过执行智能合约代码来验证用户的身份,实现去中心化的身份认证;
每个参与节点访问区块链网络发布任务时,智能合约将向该节点发起身份验证请求,这个请求包括一个随机数nonce;
6)节点分布式签名验证请求
每个参与节点使用私钥份额SecKeyi对请求进行签名;签名过程使用椭圆曲线Schnorr多重签名算法;
签名算法步骤:
使用SHA-256计算消息哈希值,h=SHA-256(message);每个参与节点选择一个随机数ki,并计算Ri=ki*G;每个参与节点将Ri广播给其他参与节点,然后将收到的Ri相加,得到R=∑Ri;计算r=x(R)modn;每个参与节点计算si=ki+r*SecKeyi;收集至少t个其他参与节点的si,计算s=∑simodn,(r,s)即为最终签名;
7)节点发送签名响应
每个参与节点将最终签名响应发送给智能合约;智能合约收到每个参与节点发送的最终签名响应后,使用相应的公钥来验证签名的有效性;如果签名验证成功,则智能合约确认参与节点的身份,并向参与节点提供相应的服务或资源;否则智能合约拒绝参与节点的请求。
3.如权利要求1所述的基于区块链的分布式节点入侵态势感知方法,其特征在于,所述入侵数据共享与协同处理方法包括
初始化、存储共识、共享协同和攻击者上链四个阶段,采用去中心化的共识算法来保证节点间的协作和数据一致性,智能合约提供一种标准化和自动化的方式来管理入侵检测数据。
4.如权利要求3所述的基于区块链的分布式节点入侵态势感知方法,其特征在于,所述入侵数据共享与协同处理方法具体包括如下步骤:
初始化阶段:
当节点1监测到入侵企图告警时,节点1将发起入侵检测事件;根据智能合约的要求,首先需要对节点1进行身份认证,并审查节点1是否具备足够的资源来进行区块生成运算;如果节点1身份认证不通过,则该节点将在区块链网络中发起证书申请;如果该节点资源不足,则交易将被中止,并向其他节点广播节点1状态异常的告警信息,提醒管理员关注节点状态;只有当节点1通过所有审查后,才会成功初始化;
存储共识阶段:
在此阶段,节点1根据智能合约的输入参数提供原始告警入侵数据;作为回报,节点1将获得智能合约提供的奖励;节点1会对原始告警入侵数据添加数字签名;智能合约将数字签名后的原始告警入侵数据打包存储到IPFS***中,并返回唯一的哈希值作为文件索引;同时,智能合约还生成入侵数据概要,包括可疑源IP和入侵时间,以便后续快速检索;接着,交易发起节点将原始告警入侵数据的文件索引和入侵数据概要一起记录到区块1中,并广播给其他节点;其它节点在共识区块时将会获得奖励;共识时,其它节点根据身份认证机制验证节点1的身份,通过则接受区块1;一旦超过50%的节点接受区块1,共识就算完成;
共享协同阶段:
在收到广播的区块1后,节点1的相邻节点2将根据区块头的信息去检索自己的数据库里攻击者的入侵数据;智能合约接着使用IPFS的文件更新算法,根据文件索引追加更新节点2提供的攻击者入侵数据到原始文件中;若节点2无攻击者相关入侵数据,则追加更新一条包含自身设备信息与“未查到该攻击者”的描述数据;同时节点2对新数据进行数字签名;IPFS对新数据进行存储,并将新数据与原始告警入侵数据进行哈希运算,这将返回一个新的唯一哈希值作为文件索引2;节点2将区块1哈希值、区块1的入侵数据概要和文件索引2写入区块2,并广播给其他节点;其他节点将对区块2进行共识;每个节点在共识时,如遇到更长的链,将会更新本地链,从而保证不再接收已共识过的区块;若有节点长期不响应广播,则其它节点不再等待其回应通信,以防止通信或作业堵塞;这个过程将不断重复,直到所有节点都提供了对攻击者入侵数据的查找结果;
攻击者上链阶段:
在此阶段,智能合约将监视最后一个更新攻击者入侵数据的节点生成的区块n,并从该区块中读取文件索引n;接着,智能合约将从IPFS文件***中下载该文件,其中包含所有节点提供的攻击者信息;智能合约将按照时间戳的顺序整理攻击数据,梳理出攻击链条,并生成一个该攻击者的入侵数据集;随后,智能合约将把该数据集存储到IPFS文件***中,并获得新的文件索引n+1;智能合约将根据文件索引n删除文件n,以释放存储空间;接下来,智能合约将文件索引n+1发给区块1;区块1将攻击者入侵数据概要连同文件索引n+1一起记录到区块上,并登记发布到区块链上。
5.如权利要求1所述的基于区块链的分布式节点入侵态势感知方法,其特征在于,所述入侵态势感知包括如下步骤:
数据预处理与特征提取、数据分析与评估以及态势感知预测;
在数据预处理与特征提取阶段,采用主成分分析方法对数据进行降维和特征提取;
在数据分析与评估阶段,使用加权综合评估法计算网络安全态势得分,并将得分映射到不同的风险等级;
在态势感知预测阶段,采用LSTM神经网络模型对网络安全态势数据进行建模和预测。
6.如权利要求5所述的基于区块链的分布式节点入侵态势感知方法,其特征在于,所述入侵态势感知具体包括如下步骤:
阶段1数据预处理与特征提取,包括如下步骤:
1-1)数据整合
从区块链中获取文件索引,遍历区块链,找到包含攻击者信息的区块,从这些区块中提取文件索引信息;根据文件索引从IPFS文件***中获取入侵数据;从外部数据源收集最新威胁情报、网络服务状态,收集网络和设备的实时情况数据;将这些实时数据与从IPFS文件***中获取的入侵数据进行整合,形成一个完整的数据集;使用区块链的哈希值校验入侵数据的完整性和一致性,当有新的入侵数据产生时,实时更新数据集;
1-2)数据预处理
通过数据清洗去除异常值和噪声,保留有效的数据信息;
阶段2数据分析与评估,包括如下步骤:
根据数据来评估网络安全态势,采用加权综合评估法,通过为不同的指标分配权重,计算出一个总的安全态势得分,具体步骤如下:
2-1)确定评估指标
确定用于评估网络安全态势的指标,采用上一阶段主成分分析方法得到的主成分作为指标;
2-2)分配权重
为每个评估指标分配一个权重;权重反映了该指标在总体安全态势中的相对重要性;
2-3)计算每项得分和评估网络安全态势结果
对于每个评估指标,计算一个得分;对于每个评估指标,先将其得分与其对应的权重相乘,然后将所有乘积相加,计算出一个总得分;依据总得分对网络安全态势进行评估;将总得分映射到一个评估区间等级,确定其风险等级;
2-4)动态调整
网络安全态势是一个动态变化的过程;不断收集新的入侵数据,实时更新网络安全态势评估权重和结果。
7.如权利要求1所述的基于区块链的分布式节点入侵态势感知方法,其特征在于,基于LSTM进行入侵态势感知的方法如下:
1)网络安全态势数据的预处理:在收集网络安全态势数据后,对异常数据进行处理;将原始数据归一化到(0,1)范围;
2)数据集处理:在预测之前用时间窗策略将网络安全态势数据集转换为模型输入要求的形状;将所有的网络安全态势数据集按照4:1的比例划分为训练集和测试集;
3)模型搭建及训练:搭建LSTM模型,将训练集的数据和对应的标签输入模型进行训练,采用随机梯度下降算法对LSTM神经网络参数进行寻优,得到最优网络安全态势预测模型;
4)态势预测:将测试集的数据进行步骤1)和步骤2)的数据处理后,输入到步骤3)训练好的最优网络安全态势预测模型中,模型输出的预测结果用于评估当前网络的安全状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310437731.1A CN116405187B (zh) | 2023-04-21 | 2023-04-21 | 基于区块链的分布式节点入侵态势感知方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310437731.1A CN116405187B (zh) | 2023-04-21 | 2023-04-21 | 基于区块链的分布式节点入侵态势感知方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116405187A CN116405187A (zh) | 2023-07-07 |
CN116405187B true CN116405187B (zh) | 2024-04-09 |
Family
ID=87007370
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310437731.1A Active CN116405187B (zh) | 2023-04-21 | 2023-04-21 | 基于区块链的分布式节点入侵态势感知方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116405187B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116567633B (zh) * | 2023-07-10 | 2023-10-10 | 华侨大学 | 基于ecdsa签名算法的身份认证方法、***及设备 |
CN117113310B (zh) * | 2023-10-16 | 2024-03-08 | 北京华鲲振宇智能科技有限责任公司 | 一种数据传输控制方法及***、设备、介质 |
CN117221131B (zh) * | 2023-11-09 | 2024-01-23 | 北京邮电大学 | 一种物联网通信方法、***、计算机设备及存储介质 |
CN117494218B (zh) * | 2023-12-25 | 2024-04-02 | 信联科技(南京)有限公司 | 一种基于合约附着的可信数据空间数据管控方法及*** |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019113495A1 (en) * | 2017-12-08 | 2019-06-13 | Solana Labs, Inc. | Systems and methods for cryptographic provision of synchronized clocks in distributed systems |
CN110705859A (zh) * | 2019-09-25 | 2020-01-17 | 三峡大学 | 基于pca-自组织神经网络的中低压配电网运行状态评估方法 |
CN111079136A (zh) * | 2019-11-07 | 2020-04-28 | 北京科技大学 | 一种基于区块链技术的雾计算入侵检测特征共享*** |
CN111586013A (zh) * | 2020-04-29 | 2020-08-25 | 数网金融有限公司 | 网络入侵检测方法、装置、节点终端及存储介质 |
CN112100659A (zh) * | 2020-09-14 | 2020-12-18 | 电子科技大学 | 一种区块链联邦学习***及拜占庭攻击检测方法 |
CN113194469A (zh) * | 2021-04-28 | 2021-07-30 | 四川师范大学 | 基于区块链的5g无人机跨域身份认证方法、***及终端 |
CN113472547A (zh) * | 2021-09-06 | 2021-10-01 | 湖南和信安华区块链科技有限公司 | 一种基于区块链的安全监控*** |
CN113536382A (zh) * | 2021-08-09 | 2021-10-22 | 北京理工大学 | 利用联邦学习基于区块链的医疗数据共享隐私保护方法 |
CN113904862A (zh) * | 2021-10-22 | 2022-01-07 | 中车株洲电力机车有限公司 | 分布式列车控制网络入侵检测方法、***、存储介质 |
CN114971638A (zh) * | 2022-05-17 | 2022-08-30 | 中国银行股份有限公司 | 基于风险识别的交易认证方法及装置 |
CN115242559A (zh) * | 2022-09-23 | 2022-10-25 | 北京航空航天大学 | 基于区块链和联邦学习的网络流量入侵检测方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020170225A2 (en) * | 2019-02-24 | 2020-08-27 | Nili Philipp | System and method for securing data |
US11436615B2 (en) * | 2020-08-28 | 2022-09-06 | Anchain.ai Inc. | System and method for blockchain transaction risk management using machine learning |
-
2023
- 2023-04-21 CN CN202310437731.1A patent/CN116405187B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019113495A1 (en) * | 2017-12-08 | 2019-06-13 | Solana Labs, Inc. | Systems and methods for cryptographic provision of synchronized clocks in distributed systems |
CN110705859A (zh) * | 2019-09-25 | 2020-01-17 | 三峡大学 | 基于pca-自组织神经网络的中低压配电网运行状态评估方法 |
CN111079136A (zh) * | 2019-11-07 | 2020-04-28 | 北京科技大学 | 一种基于区块链技术的雾计算入侵检测特征共享*** |
CN111586013A (zh) * | 2020-04-29 | 2020-08-25 | 数网金融有限公司 | 网络入侵检测方法、装置、节点终端及存储介质 |
CN112100659A (zh) * | 2020-09-14 | 2020-12-18 | 电子科技大学 | 一种区块链联邦学习***及拜占庭攻击检测方法 |
CN113194469A (zh) * | 2021-04-28 | 2021-07-30 | 四川师范大学 | 基于区块链的5g无人机跨域身份认证方法、***及终端 |
CN113536382A (zh) * | 2021-08-09 | 2021-10-22 | 北京理工大学 | 利用联邦学习基于区块链的医疗数据共享隐私保护方法 |
CN113472547A (zh) * | 2021-09-06 | 2021-10-01 | 湖南和信安华区块链科技有限公司 | 一种基于区块链的安全监控*** |
CN113904862A (zh) * | 2021-10-22 | 2022-01-07 | 中车株洲电力机车有限公司 | 分布式列车控制网络入侵检测方法、***、存储介质 |
CN114971638A (zh) * | 2022-05-17 | 2022-08-30 | 中国银行股份有限公司 | 基于风险识别的交易认证方法及装置 |
CN115242559A (zh) * | 2022-09-23 | 2022-10-25 | 北京航空航天大学 | 基于区块链和联邦学习的网络流量入侵检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116405187A (zh) | 2023-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Meng et al. | Enhancing medical smartphone networks via blockchain-based trust management against insider attacks | |
CN116405187B (zh) | 基于区块链的分布式节点入侵态势感知方法 | |
Wang et al. | STAMP: Enabling privacy-preserving location proofs for mobile users | |
Khaliq et al. | A secure and privacy preserved parking recommender system using elliptic curve cryptography and local differential privacy | |
Gong et al. | A remote attestation mechanism for the sensing layer nodes of the Internet of Things | |
KR20210077703A (ko) | 협업성 위험 인식 인증 | |
Liu et al. | SeDID: An SGX-enabled decentralized intrusion detection framework for network trust evaluation | |
Zhang et al. | PRVB: Achieving privacy-preserving and reliable vehicular crowdsensing via blockchain oracle | |
Wang et al. | STAMP: Ad hoc spatial-temporal provenance assurance for mobile users | |
Carullo et al. | Feeltrust: providing trustworthy communications in ubiquitous mobile environment | |
Babu et al. | Blockchain-based Intrusion Detection System of IoT urban data with device authentication against DDoS attacks | |
Cho et al. | Composite trust-based public key management in mobile ad hoc networks | |
Zhang et al. | BTNC: A blockchain based trusted network connection protocol in IoT | |
Premarathne et al. | Secure and reliable surveillance over cognitive radio sensor networks in smart grid | |
Saqib et al. | A systematic security assessment and review of internet of things in the context of authentication | |
Khan et al. | ‘who, when, and where?’location proof assertion for mobile devices | |
Ahmad et al. | Efficient time-oriented latency-based secure data encryption for cloud storage | |
Liu et al. | DePTVM: Decentralized pseudonym and trust value management for integrated networks | |
Iftikhar et al. | Security, trust and privacy risks, responses, and solutions for high-speed smart cities networks: A systematic literature review | |
Reidt et al. | The fable of the bees: incentivizing robust revocation decision making in ad hoc networks | |
Itoo et al. | RKMIS: robust key management protocol for industrial sensor network system | |
Vuppula et al. | Blockchain‐oriented location privacy preserving for cooperative spectrum sensing in 6G wireless networks | |
Yuan et al. | Fedcomm: A privacy-enhanced and efficient authentication protocol for federated learning in vehicular ad-hoc networks | |
Neureither et al. | LegIoT: Ledgered trust management platform for IoT | |
Liu et al. | A trusted proof mechanism of data source for smart city |
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 |