一种基于区块链技术的分布式协同物联网异常检测方法技术

技术编号:21146185 阅读:29 留言:0更新日期:2019-05-18 06:42
一种基于区块链技术的分布式协同物联网异常检测方法,属于互联网底层技术领域。方法包括:创建模型:物联网设备创建本地异常检测模型;收集情报:物联网设备收集本地应用程序并利用本地异常检测模型检测本地应用程序是否有异常,若未发出警报,则更新本地异常检测模型;发送情报:物联网设备向链的部分区块添加ML,并广播给区块链网络的其他物联网设备;接收情报:其他物联网设备验证添加ML的链符合接收条件,其他物联网设备的链中的块被添加ML的链的块全部替换;共享情报:物联网设备将更新的本地链的报告广播给其他物联网设备。本发明专利技术使用区块链协议在相同类型的设备之间协作,并基于本地观察到的行为训练各自的异常检测模型,避免异常误报。

A Distributed Collaborative Anomaly Detection Method for Internet of Things Based on Block Chain Technology

【技术实现步骤摘要】
一种基于区块链技术的分布式协同物联网异常检测方法
本专利技术涉及互联网底层
,尤其涉及一种基于区块链技术的分布式协同物联网异常检测方法。
技术介绍
物联网(IOT)设备已成为日常生活的核心,但是往往有许多漏洞可以被攻击者利用。无监督技术(例如异常检测)虽然可以帮助我们保护物联网设备,但必须长时间训练异常检测模型以捕获所有良性行为。而且这种方法容易受到对抗性攻击,因为在训练异常检测模型时,所有观察都被认为是良性的。如果异常检测模型仅针对少数设备的观察进行训练,则可能会出现误报。如专利技术专利申请CN201711032284.2“基于one-hot编码机制的无监督异常访问检测方法及装置”存在上述问题。基于上述背景,提出了一个轻量级、可拓展的框架,基于区块链技术再资源有限的物联网设备上执行分布式和协作异常检测方法。所有相同类型的物联网设备同时开始基于他们自己的本地观察到的行为来训练他们自己的异常检测模型。
技术实现思路
本专利技术针对现有技术存在的问题,提出了一种基于区块链技术的分布式协同物联网异常检测方法,使用区块链协议在相同类型的设备之间协作,通过将本地训练的模型合并为单个全局模型来创建可信异常检测模型。数据块是来自不同设备的一组本地训练的模型,每个设备通过合并模型和执行自我证明来验证正在进行的数据块的完整性。本专利技术是通过以下技术方案得以实现的:本专利技术一种基于区块链技术的分布式协同物联网异常检测方法,包括:创建模型:物联网设备创建本地异常检测模型ML;收集情报:物联网设备收集本地应用程序并利用本地异常检测模型ML检测本地应用程序是否有异常,若本地异常检测模型ML未发出警报,则更新本地异常检测模型;发送情报:物联网设备向链的部分区块添加ML,将添加ML的链发送到区块链网络,以广播方式广播给区块链网络的其他物联网设备;接收情报:其他物联网设备在验证添加ML的链符合接收条件时,则其他物联网设备的链中的块被发送来添加ML的链的块全部替换,否则其他物联网设备的链中的块被发送来添加ML的链的部分块局部替换;共享情报:物联网设备将更新的本地链的报告以广播方式广播给区块链网络的其他物联网设备。作为优选,所述收集情报步骤还包括:检测本地异常检测模型ML是否为从链中下载的组合模型,若是则执行本地异常检测模型ML,否则对本地异常检测模型ML进行训练,在训练一定时间后执行本地异常检测模型ML。作为优选,所述发送情报步骤中广播由物联网设备的私钥签名后广播给其他物联网设备;所述接收情报步骤通过公钥解密接收的情报。作为优选,所述接收情报步骤具体包括:其他物联网设备接收到链时,检查接收到的链是否长于本地链,并且是否包含有效签名,若上述接收条件均符合是,则本地链的块被接收到的链的块替换,并且最后完成的块用于形成替换本地异常检测模型ML的组合模型,否则,本地链的块被接收到的链的部分块替换。作为优选,所述接收情报步骤还包括:如果本地链的部分块具有完成报告,则将此作为已完成的块关闭;物联网设备将替换本地异常检测模型ML为最新闭合块中包含的组合模型。作为优选,方法还包括:本地异常检测模型ML跟踪本地应用程序的常规内存跳转序列,检测Mij小于Pth时,本地应用程序发生异常,否则异步递增Nij;Mij为在任何给定时间t从状态i转换为状态j的概率,Pth为用户定义的概率,Nij为从状态i到状态j发生的转变数量,等待发生控制流事件。作为优选,应用程序的控制流由硬件计数器异步捕获。本专利技术具有以下有益效果:本专利技术一种基于区块链技术的分布式协同物联网异常检测方法,基于区块链技术在资源有限的物联网设备上执行分布式和协作异常检测。所有相同类型的物联网设备同时开始基于他们自己的本地观察到的行为来训练他们自己的异常检测模型。附图说明图1为本专利技术一种基于区块链技术的分布式系统物联网异常检测方法的流程图;图2为代理应用程序协调异步处理示意图。具体实施方式以下是本专利技术的具体实施例并结合附图,对本专利技术的技术方案作进一步的描述,但本专利技术并不限于这些实施例。如图1,本专利技术一种基于区块链技术的分布式协同物联网异常检测方法,包括创建模型、收集情报、发送情报、接收情报、共享情报。所述创建模型步骤包括:物联网设备创建本地异常检测模型ML。每个物联网设备都有一个代理,该代理维护一个本地异常检测模型ML,用于检测特定应用程序中的恶意行为。本地异常检测模型ML可利用现有的异常检测算法构建,如首先用正态分布拟合数据集(当数据集的数据来自计算机的监控数据,则其包括延迟和吞吐量两个特征),数据集包括3个key:X,Xval,Yval;X是训练数据;Xval是验证集;Yval中的数据均为01,对应Xval中的数据是否异常,异常为1,正常为0。当拟合后的数据集符合正态分布,不用进行其他处理。之后,计算样本的联合概率密度,即得到延迟和吞吐量两个特征的概率密度。接着,找到合适的阈值,通过验证集得到。最后,通过阈值进行异常检测。所述收集情报步骤包括:物联网设备收集本地应用程序并利用本地异常检测模型ML检测本地应用程序是否有异常,若本地异常检测模型ML未发出警报,则更新本地异常检测模型。例如,物联网设备收集英特尔(Intel)本地应用程序,并使用本地异常检测模型ML持续检测英特尔中的一场,如果ML未发出警报,则设备会更新ML以支持新的Intel。考虑到本地异常检测模型ML存在多种可能,包括本地异常检测模型ML为从链中下载的组合模型或不是从链中下载的组合模型而是一个新模型。此种情况下,所述收集情报步骤还包括:检测本地异常检测模型ML是否为从链中下载的组合模型,若是则执行本地异常检测模型ML,否则对本地异常检测模型ML进行训练,在训练一定时间后执行本地异常检测模型ML。在这种情况下,ML将无条件地从所有英特尔进行短暂的培训。如果被感染,这个短暂的时期不会影响其他代理商,因为只有经过大多数代理商的物联网设备验证才能接受广播信息。所述发送情报步骤包括:物联网设备向链的部分区块添加ML,将添加ML的链发送到区块链网络,以广播方式广播给区块链网络的其他物联网设备。所述发送情报步骤中广播由物联网设备的私钥签名后广播给其他物联网设备。后续,所述接收情报步骤通过公钥解密接收的情报。所述接收情报步骤包括:其他物联网设备在验证添加ML的链符合接收条件时,则其他物联网设备的链中的块被发送来添加ML的链的块全部替换,否则其他物联网设备的链中的块被发送来添加ML的链的部分块局部替换。具体地,其他物联网设备接收到链时,检查接收到的链是否长于本地链,并且是否包含有效签名,若上述接收条件均符合是,则本地链的块被接收到的链的块替换,并且最后完成的块用于形成替换本地异常检测模型ML的组合模型,否则,本地链的块被接收到的链的部分块替换。例如,当本地代理A(本地物联网设备)从代理B(其他物联网设备)接收链CB时,A检查CB是否长于CA并且包含有效签名。如果这些条件成立,则CA中的块被CB中的块替换,并且最后完成的块用于形成替换ML的组合模型。如果不成立,则使用来自CB的部分块更新CA。在验证过程中,一方面需要验证链的长度,另一方面需要验证签名,该签名通过公钥解密后验证。为了确保广播确实来自特定的代理人,记录广播信息由私钥签名并用相应公钥进行验证。本文档来自技高网...

【技术保护点】
1.一种基于区块链技术的分布式协同物联网异常检测方法,其特征在于,包括:创建模型:物联网设备创建本地异常检测模型ML;收集情报:物联网设备收集本地应用程序并利用本地异常检测模型ML检测本地应用程序是否有异常,若本地异常检测模型ML未发出警报,则更新本地异常检测模型;发送情报:物联网设备向链的部分区块添加ML,将添加ML的链发送到区块链网络,以广播方式广播给区块链网络的其他物联网设备;接收情报:其他物联网设备在验证添加ML的链符合接收条件时,则其他物联网设备的链中的块被发送来添加ML的链的块全部替换,否则其他物联网设备的链中的块被发送来添加ML的链的部分块局部替换;共享情报:物联网设备将更新的本地链的报告以广播方式广播给区块链网络的其他物联网设备。

【技术特征摘要】
1.一种基于区块链技术的分布式协同物联网异常检测方法,其特征在于,包括:创建模型:物联网设备创建本地异常检测模型ML;收集情报:物联网设备收集本地应用程序并利用本地异常检测模型ML检测本地应用程序是否有异常,若本地异常检测模型ML未发出警报,则更新本地异常检测模型;发送情报:物联网设备向链的部分区块添加ML,将添加ML的链发送到区块链网络,以广播方式广播给区块链网络的其他物联网设备;接收情报:其他物联网设备在验证添加ML的链符合接收条件时,则其他物联网设备的链中的块被发送来添加ML的链的块全部替换,否则其他物联网设备的链中的块被发送来添加ML的链的部分块局部替换;共享情报:物联网设备将更新的本地链的报告以广播方式广播给区块链网络的其他物联网设备。2.根据权利要求1所述的一种基于区块链技术的分布式协同物联网异常检测方法,其特征在于,所述收集情报步骤还包括:检测本地异常检测模型ML是否为从链中下载的组合模型,若是则执行本地异常检测模型ML,否则对本地异常检测模型ML进行训练,在训练一定时间后执行本地异常检测模型ML。3.根据权利要求1所述的一种基于区块链技术的分布式协同物联网异常检测方法,其特征在于,所述发送情报步骤中广播由物联网设备的私钥签名后广播给其他物联网设备;所述接收情...

【专利技术属性】
技术研发人员:邵智伟琚春华鲍福光
申请(专利权)人:浙江工商大学
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1