CN112787890B - 区块链监测系统 - Google Patents
区块链监测系统 Download PDFInfo
- Publication number
- CN112787890B CN112787890B CN202110068301.8A CN202110068301A CN112787890B CN 112787890 B CN112787890 B CN 112787890B CN 202110068301 A CN202110068301 A CN 202110068301A CN 112787890 B CN112787890 B CN 112787890B
- Authority
- CN
- China
- Prior art keywords
- data
- analysis
- subunit
- network
- monitored
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
- H04L43/045—Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种区块链监测系统,包括顺次电相连的数据采集单元、数据处理单元和数据展示单元;所述数据采集单元,用于采集待监测区块链网络的运行数据;所述待监测区块链网络的类型为公有链、联盟链或者监测链网从链;所述数据处理单元,用于对所述待监测区块链网络的运行数据进行处理,得到数据分析结果。本发明提供的系统,对公有链、联盟链或者监测链网从链进行监测,能够支撑区块链中不同场景交易、合约监测和管理需求,同时,该系统将数据分析后进行可视化展示,提高了数据分析效率。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种区块链监测系统。
背景技术
区块链(Blockchain)是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链属于新兴技术,因为技术本身分布式的特性以及隐私保护等方面的设计,导致不易监测。区块链中安全问题频繁发生,严重制约着行业健康发展。
因此,如何对区块链进行监测是目前业界亟待解决的课题。
发明内容
本发明提供一种区块链监测系统,用以解决对区块链进行监测的技术问题。
本发明提供一种区块链监测系统,包括顺次电相连的数据采集单元、数据处理单元和数据展示单元;
所述数据采集单元,用于采集待监测区块链网络的运行数据;所述待监测区块链网络的类型为公有链、联盟链或者监测链网从链;
所述数据处理单元,用于对所述待监测区块链网络的运行数据进行处理,得到数据分析结果;
所述数据展示单元,用于可视化展示所述运行数据和/或所述数据分析结果。
根据本发明提供的一种区块链监测系统,所述数据采集单元包括数据接入子单元、数据采集适配器子单元和数据结构适配子单元;
所述数据接入子单元,用于基于所述待监测区块链网络的架构,采用监测节点接入或者代理节点接入的方式与所述待监测区块链网络连接;
所述数据采集适配器子单元,用于基于所述待监测区块链网络的数据类型,调用相应的数据采集适配器,通过所述数据接入子单元采集所述待监测区块链网络的运行数据;
所述数据结构适配子单元,用于对采集得到的所述运行数据进行第一结构化处理和/或持久化处理。
根据本发明提供的一种区块链监测系统,所述数据接入子单元,还用于与第三方可信数据源接口连接;
所述数据采集适配器子单元还用于基于所述数据接入子单元获取第三方可信数据。
根据本发明提供的一种区块链监测系统,所述数据处理单元包括数据转储子单元、数据分析子单元和数据展示适配子单元;
所述数据转储子单元,用于对所述运行数据进行第二结构化处理,并将所述运行数据存储至关系数据库;
所述数据分析子单元,用于基于所述关系数据库中的运行数据的数据类型,采用实时方式和/或批量方式进行统计分析,得到数据分析结果;
所述数据展示适配子单元,用于基于所述数据展示单元中的展示页面类型,向所述数据展示单元提供相应的接口。
根据本发明提供的一种区块链监测系统,所述数据分析子单元具体用于:
若所述待监测区块链网络的类型为联盟链,则对所述待监测区块链网络进行稳定性分析、风险分析和项目分析中的至少一种;
所述稳定性分析包括节点运行稳定性分析、网络运行稳定性分析和程序运行稳定性分析中的至少一种;
所述风险分析包括节点安全风险分析、网络安全风险分析、共识风险分析和合约调用异常风险分析中的至少一种;
所述项目分析包括项目活跃度分析、项目参与度分析和项目异常情况分析中的至少一种。
根据本发明提供的一种区块链监测系统,所述数据分析子单元具体用于:
若所述待监测区块链网络的类型为公有链,则对所述待监测区块链网络进行风险分析、价值分析和市场分析的至少一种;
所述风险分析包括节点异常风险分析、网络异常运行风险分析、共识风险分析、合约调用异常风险分析和账户交易异常风险分析中的至少一种;
所述市场分析包括市场趋势分析和/或市场异常转移分析。
根据本发明提供的一种区块链监测系统,所述数据处理单元还包括:
身份服务管理子单元,用于对多个操作账户的身份信息和操作权限进行管理。
根据本发明提供的一种区块链监测系统,所述数据处理单元还包括:
数据缓存子单元,用于对热点数据进行缓存处理,所述热点数据为访问次数超过预设次数的运行数据和/或数据分析结果。
根据本发明提供的一种区块链监测系统,所述数据处理单元还包括:
数据预警子单元,用于对多个运行数据进行实时监测,若任一运行数据超过预设阈值,则基于预设通知方式推送监测预警信息。
根据本发明提供的一种区块链监测系统,所述数据展示单元包括Web展示子单元和/或大屏展示子单元;
所述Web展示子单元用于展示所有运行数据;
所述大屏展示子单元用于展示核心运行数据和/或所述数据分析结果。
本发明提供的区块链监测系统,通过顺次电相连的数据采集单元、数据处理单元和数据展示单元,对公有链、联盟链或者监测链网从链进行监测,能够支撑区块链中不同场景交易、合约监测和管理需求,同时,该系统将数据分析后进行可视化展示,提高了数据分析效率。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的区块链监测系统的结构示意图之一;
图2为本发明提供的监测链网监测范围的示意图;
图3为本发明提供的区块链监测系统的结构示意图之二。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明提供的区块链监测系统的结构示意图之一,如图1所示,该区块链监测系统包括顺次电相连的数据采集单元110、数据处理单元120和数据展示单元130;数据采集单元110,用于采集待监测区块链网络的运行数据;待监测区块链网络的类型为公有链、联盟链或者监测链网从链;数据处理单元120,用于对待监测区块链网络的运行数据进行处理,得到数据分析结果;数据展示单元130,用于可视化展示运行数据和/或数据分析结果。
具体地,数据采集单元110用于采集待监测区块链网络的运行数据。运行数据可以包括待监测区块链网络的采集区块、交易、节点、合约、DApp(Decentralized App,去中心化应用程序)、市场资产等数据。
待监测区块链网络的类型为公有链、联盟链或者监测链网从链。
公有链是指全世界任何人都可读取、发送交易且交易能获得有效确认的、也可以参与其中共识过程的区块链。主流的公有链包括BTC(Bitcoin,比特币)、ETH(Ethereum,以太坊)、XRP(Ripple,瑞波币)、EOS(Enterprise Operation System,)、ONT(Ontology,本体币)等,还包括BTC同类公有链和ETH同类公有链。
私有链是指其写入权限由某个组织和机构控制的区块链,参与节点的资格会被严格限制。联盟链介于公有链与私有链之间,是多个组织或机构参与的区块链。即联盟链是由多个私有链组成的集群,由多个机构共同参与管理的区块链,每个组织或机构管理一个或多个节点,其数据只允许系统内不同的机构进行读写和发送。主流的联盟链包括Libra、Fabric、CITA(Cryptape Inter-enterprise Trust Automation)、BCOS(Be Credible,Open&Secure)、Xuperchain等。其中,后四种联盟链需要构建区块链网络的实体允许接入监测节点或代理节点(Agent),从而能够获取其链上数据。
监测链网为基于区块链技术搭建的,由监测节点和其他的共识节点组成的区块链网络。监测链网与监测系统连接,用于从公有链和联盟链中获取区块链网络的运行数据。
监测链网可以分为主链和从链。其中,主链由共识节点和监测节点组成,监测范围包括:公共数据(可信数据、可信声明、智能合约)、各种标识资源、解析资源等。从链由一些业务节点、共识节点组成,监测范围包括:权限配置、合约部署、节点、用户等。
图2为本发明提供的监测链网监测范围的示意图,如图2所示,监测链网主链可以监测的链类型包括主流公有链、主流联盟链和监测链网从链。从链可以监测的链类型包括Fabric、CITA、BCOS、Xuperchain四种类型的联盟链。
在进行监测链网从链和联盟链的数据采集时,可以根据实际的业务场景设计新的监测项目和分析项目,实现对联盟链业务的数据监测与告警。
数据处理单元120用于对待监测区块链网络的运行数据进行处理,得到数据分析结果。例如,数据分析结果可以为节点运行稳定性、网络运行稳定性等。
数据展示单元130用于利用图形、图像处理、计算机视觉以及用户界面,通过表达、建模以及对立体、表面、属性以及动画的显示,对运行数据或者数据分析结果加以可视化展示和解释。例如,可以采用动态仪表盘的形式对系统采集的所有或者部分运行数据进行展示。
本发明实施例提供的区块链监测系统,通过顺次电相连的数据采集单元、数据处理单元和数据展示单元,对公有链、联盟链或者监测链网从链进行监测,能够支撑区块链中不同场景交易、合约监测和管理需求,同时,该系统将数据分析后进行可视化展示,提高了数据分析效率。
基于上述实施例,数据采集单元110包括数据接入子单元、数据采集适配器子单元和数据结构适配子单元;
数据接入子单元,用于基于待监测区块链网络的架构,采用监测节点接入或者代理节点接入的方式与待监测区块链网络连接;
数据采集适配器子单元,用于基于待监测区块链网络的数据类型,调用相应的数据采集适配器,通过数据接入子单元采集待监测区块链网络的运行数据;
数据结构适配子单元,用于对采集得到的运行数据进行第一结构化处理和/或持久化处理。
具体地,根据待监测区块链网络为异构多链架构,待监测区块链可以分为非许可接入的公有链、允许监测节点接入的联盟链、不允许监测节点接入的联盟链。针对不同的待监测区块链网络,数据接入子单元可以采用不同的接入方式与待监测区块链网络连接。
例如,对于公有链和允许监测节点接入的联盟链,数据接入子单元可以采用监测节点接入的方式与待监测区块链网络连接,通过待监测区块链全节点可以获取到待监测区块链的完整账本信息,对账本的数据采集和分析提供了最基本的支持。对于不允许监测节点接入的联盟链,数据接入子单元可以采用代理节点接入的方式与待监测区块链网络连接。代理节点可以为待监测区块链网络中的任一节点。代理节点可以作为该待监测区块链网络的运行监测接口。又例如,当待监测区块链网络为某监测链网时,可以通过监测链网中的代理节点获取监测链网主链和监测同构子链的账本数据、节点分布和节点运行等信息;以及接入该监测链网的异构子链的节点分布和节点运行等信息。
数据采集适配器子单元,用于基于待监测区块链网络的数据类型,调用相应的数据采集适配器,通过数据接入子单元采集待监测区块链网络的运行数据。
数据采集适配器以独立的守护进程方式运行,数据采集适配器内部通过插件方式实现,启动时可以选择需要启用的多种采集插件。数据采集适配器通过接口调用或者系统调用收集区块链信息和系统信息,通过高效的传输协议将运行数据转发到数据结构适配子单元。
根据待监测区块链网络中节点的类型,数据采集适配器有以下部署和运行方式:
对于公有链和允许监测节点接入的联盟链,则可以直接通过区块链全节点提供的RPC(远程过程调用)接口,获取区块链的账本数据,处理和分析区块链的区块和交易数据;
对于不允许监测节点接入的联盟链,则需要区块链运营方运行数据采集代理程序,采取采集信息后主动上报的方式获取区块链数据。
数据结构适配子单元用于对采集得到的运行数据进行第一结构化处理和/或持久化处理。
第一结构化处理为对运行数据进行半结构化处理,使得采集得到的运行数据具有一定的结构性。半结构化数据可以通过灵活的键值调整获取相应信息,且数据的格式不固定,如json,同一键值下存储的信息可能是数值型的,可能是文本型的,也可能是字典或者列表。
持久化处理将运行数据在持久状态和瞬时状态间转换的机制。通俗的讲,就是瞬时数据持久化为持久数据,例如,对于内存中数据,可以存储在数据库,使其能够长久保存。
数据结构适配子单元的作用是将区块链监测系统监测的全部区块链及其全部的数据内容,进行统一的、通用的、最大集合的功能数据的结构化设计及持久化设计。通过上述的设计方案达到多个异构区块链数据的通用存储;在增加新的监测区块链时,能够做到数据结构适配子单元不做修改或只做极少的修改;存储海量的多链异构区块链数据,为上层的数据处理和分析做好基础性工作。
基于上述任一实施例,数据接入子单元,还用于与第三方可信数据源接口连接;数据采集适配器子单元还用于基于数据接入子单元获取第三方可信数据。
具体地,第三方可信数据为待监测区块链网络外部的数据,可以用于表征待监测区块链网络的运行情况。例如市场行情、节点分布、DApp应用、区块链金融DEFI(decentralized finance)等方面的数据。此类数据源是待监测区块链网络账本本身无法获取到的数据,也是了解区块链账本以外的发展状况的一种数据补充。
数据接入子单元还可以用于与第三方可信数据源接口连接。相应地,数据采集适配器子单元还可以采用第三方可信数据采集适配器,通过数据接入子单元采集第三方可信数据。
基于上述任一实施例,数据处理单元120包括数据转储子单元、数据分析子单元和数据展示适配子单元;
数据转储子单元,用于对运行数据进行第二结构化处理,并将运行数据存储至关系数据库;
数据分析子单元,用于基于关系数据库中的运行数据的数据类型,采用实时方式和/或批量方式进行统计分析,得到数据分析结果;
数据展示适配子单元,用于基于数据展示单元中的展示页面类型,向数据展示单元提供相应的接口。
具体地,在运行数据进入数据转储子单元之前,数据处理单元120采用分布式消息队列,缓冲大量监测节点或者代理节点同时采集和推送的运行数据。同时,针对不同待监测区块链的运行数据创建不同的topic,各条待监测区块链的consumer自动消费自己订阅的topic的运行数据消息。各待监测区块链的运行数据及第三方可信数据通过数据采集单元110统一汇集到区块链监测系统的消息队列,增加了区块链监测系统数据处理的能力。
数据转储子单元,用于对运行数据进行第二结构化处理,并将运行数据存储至关系数据库。第二结构化处理为对运行数据进行结构化,通过固有键值获取相应信息,运行数据具有固定的格式。例如,数据转储子单元根据待监测区块链网络运行数据的特点和共性,抽象了一组结构化的Schema对象,消息队列的consumer将半结构化的运行数据转换成结构化数据并同时存储到关系数据库和搜索引擎中。将数据完整存储,可以便于后续对数据进行分析汇总或者聚合计算等。搜索引擎提供了更为强大的数据分析和检索的能力,可以提高分析统计效率。
数据分析子单元,用于基于关系数据库中的运行数据的数据类型,采用实时方式和/或批量方式进行统计分析,得到数据分析结果。数据分析子单元使用统计分析函数、聚合函数等对运行数据进行统计分析汇总,可以采用实时和批量两种统计分析方式,对于不同类型的运行数据,进行不同频率的统计分析。例如对于安全事件,异常交易等实时分析会触发监控告警;而对于报表类的统计会采用批量的分析方式。区块链监测系统对采集汇总后的数据进行分析统计,最大限度来保障运行数据可以支撑业务需求。
数据展示适配子单元,用于根据数据展示单元中的展示页面类型,向数据展示单元提供相应的接口。统计分析的结果以监控大屏和图表报告的形式予以展现。例如:以柱形图、饼图等形式展现节点、合约、网络、数据、市场与资产等信息的统计与分析数据。前端使用SVG、CANVAS等绘图技术,同时结合GIS地理位置信息技术,可以实现丰富的图表和报告,同时可以展现部分交互式用户界面。
基于上述任一实施例,数据分析子单元具体用于:
若待监测区块链网络的类型为联盟链,则对待监测区块链网络进行稳定性分析、风险分析和项目分析中的至少一种;
稳定性分析包括节点运行稳定性分析、网络运行稳定性分析和程序运行稳定性分析中的至少一种;
风险分析包括节点安全风险分析、网络安全风险分析、共识风险分析和合约调用异常风险分析中的至少一种;
项目分析包括项目活跃度分析、项目参与度分析和项目异常情况分析中的至少一种。
具体地,若待监测区块链网络的类型为联盟链,则数据分析子单元对运行数据的分析内容包括稳定性分析、风险分析和项目分析。
稳定性分析包括节点运行稳定性分析、网络运行稳定性分析和程序运行稳定性分析。
节点运行稳定性分析用于展示待监测区块链网络中节点服务器的运行情况,包括CPU、内存、磁盘、节点网络等指标,并综合各项服务器运行指标给出节点稳定性评估系数。当节点稳定性评估系数超过设置的安全阈值,给出提示预警,提醒对应节点进行服务扩容等。分析项包括CPU占用、内存占用、磁盘占用、网络流量、TCP链接、TPS和数据目录大小等。分析方法为综合CPU占用、内存占用、磁盘占用等采集数据项,综合判断节点当前的CPU、内存、网络负载情况,判断是否存在宕机风险,根据风险发生的可能性进行评级,给出节点稳定系数,并根据设置的节点稳定系数阈值,发出预警报告。
网络运行稳定性分析用于根据收集的节点信息、节点连通信息、节点网络流量等信息,展示区块链节点所在网络的状况、负载,并综合各项网络指标给出网络稳定性评估系数。当网络稳定性评估系数超过设置的安全阈值,给出提示预警,提醒对应节点和联盟链负责方进行网络管理、扩容等。分析项包括节点IP、节点类型、节点地区、所属组织、所属网络、节点24小时变化、节点网络流量、节点TCP链接、TPS和节点连通情况等。分析方法为综合节点信息,包括节点IP、节点连通情况、节点区域、节点网络类型、节点网络流量、节点TCP链接、TPS等,判断节点所属网络的连通情况和负载情况,判断是否存在网络不可用或网络负载过高等风险,根据风险发生的可能性进行评级,给出网络稳定系数,并根据设置的网络稳定系数阈值,发出预警报告。
程序运行稳定性分析用于根据收集的节点程序运行情况,包括节点区块链可执行程序、节点容器运行状况等,监控节点中区块链相关程序的运行稳定性。程序运行监控为用户提供节点程序的运行状况,当程序退出或异常发生的时候,提醒对应节点进行处理、恢复。分析项包括区块链节点程序进程信息、节点容器信息、节点服务信息。分析方法为结合从节点收集的程序进程、容器、服务等状况,对异常状况或非正常退出终止进行监管,判断区块链相关程序是否正常运行,根据各项指标,给出程序稳定性系数,并根据设置的程序稳定系数阈值,发出预警报告。
风险分析包括节点安全风险分析、网络安全风险分析、共识风险分析和合约调用异常风险分析。
节点安全风险分析用于根据节点网络安全方案、私钥管理方案、数据加密方案、通讯加密方案等既有方案,并结合从节点收集到的节点服务器运行状况、网络状况、程序状况,进行安全风险评估,并在风险可能发生的时候,给出预警报告。分析项包括区块链对应的私钥管理方案、数据加密方案、通讯加密方案等解决方案、节点的网络安全方案(包括防火墙设置、WAF设置等)、节点数据(CPU占用、内存占用、磁盘占用、网络流量、TCP链接、TPS、数据目录大小等)等。分析方法为根据当前区块链架构涉及的节点私钥管理方案、节点客户端与节点的通讯方案以及当前节点的节点网络安全方案(包括ACL(访问控制)、防火墙配置等)计算固定的节点安全参数。结合计算得出的安全参数,综合收集的大量CPU占用、内存占用、磁盘占用、网络流量等数据,分析TPS无异常情况下,异常的CPU占用、内存占用、磁盘占用、网络流量数据,计算节点安全系数,根据设置的节点安全系数阈值,发出预警报告。在TPS数据异常的情况下,更新节点安全系数,并根据设置的节点安全系数阈值,发出预警报告。
网络安全风险分析用于根据区块链对应的共识算法、P2P网络传输方案、网络传输采用的加密算法等既有方案,结合节点网络信息等数据,通过对数据的分析,对网络节点被攻击、网络阻塞等风险进行预警干预。分析项包括区块链对应的共识算法、P2P网络传输方案、网络传输采用的加密算法等方案,节点信息(节点IP、节点类型、节点地区、所属组织、所属网络、节点24小时变化、节点网络流量、节点TCP链接、TPS),有效区块、无效区块、有效交易、无效交易数量等。分析方法为根据已有的区块链P2P网络传输方案和区块链采用的加密算法,为区块链监测系统给出固定的网络安全参数。综合采集的节点IP、节点类型、节点地区、所属组织、所属网络,结合收集的大量的节点24小时变化、节点网络流量、节点TCP链接、TPS数据,并以有效/无效区块数量、有效/无效交易数量作为参数,计算网络安全系数,根据设置的网络安全系数阈值,发出预警报告。
共识风险分析用于通过对不同共识算法中验证人节点的信息统计,有效识别区块链的共识风险。如POW共识算法,通过对矿工节点数量、算力进行分析,评估算力分布,识别共识风险;POS共识算法,通过对验证人节点权益分布分析,识别共识风险;DPOS共识算法,通过对验证人节点连通情况,识别共识风险;PBFT共识算法,通过对出块节点和投票节点连通情况,识别共识风险;Raft共识算法,通过对节点是否在线,识别共识风险等。通过对共识风险的识别,有效预警区块链的运行安全。分析项包括区块链共识算法、节点运行状况和网络状况等。分析方法为根据不同的共识算法特性,采用不同的公式,以节点运行数据和节点网络数据作为参数,计算共识安全系数,并根据设置的网络安全系数阈值,发出预警报告。
合约调用异常风险分析用于通过对合约运行情况,给出合约异常调用风险预警。分析项包括整体数据(包括合约总量、24小时活跃账户数、24小时调用总数、24小时部署合约数)、合约列表(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署/更新时间)、合约详情(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署时间、合约ID、合约类型、所在区块)、合约调用数据(调用时间、交易费、转入方、转出方)等。分析方法为综合采集的合约整体数据(包括合约总量、24小时活跃账户数、24小时调用总数、24小时部署合约数),根据结合大量采集的运行数据和历史数据,计算评估出正常平均值,根据即时数据超出平均值比例获取合约整体安全系数,并根据设置的安全系数阈值,发出预警报告。结合合约列表数据(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署/更新时间)、合约详情数据(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署时间、合约ID、合约类型、所在区块)、合约调用数据(调用时间、交易费、转入方、转出方),计算获取合约部署、更新,合约调用频率,合约异常调用,并综合以上数据,计算具体合约的安全系数。
项目分析包括项目活跃度分析、项目参与度分析和项目异常情况分析。
项目活跃度分析用于从网络层面分析项目的活跃度。分析方法为综合TPS、区块数、交易数、合约调用数,判断联盟链的上层应用项目的活跃程度。
项目参与度分析用于从用户、业务等综合信息分析项目的参与度。分析方法为综合使用用户数、用户交易数、用户地区分布等信息,判断联盟链的上层应用项目的覆盖用户广度。
项目异常情况分析用于分析项目是否存在数据篡改、异常用户和异常操作。
通常数据存储在本地数据库,而将数据摘要及Hash存证上链,当进行数据交换、应用时,本地数据库提供的数据会与链上数据进行Hash校验,若校验不通过即存在本地数据库篡改的情况。区块链监测系统将在运行数据进行校验的过程中存在数据篡改时进行告警。
适配联盟链的业务合约,对合约支持的用户操作进行监测,重点监测数据流转相关行为,包括数据上传、数据存证、数据查询、数据审批、数据交换、数据下载。结合目标联盟链的业务场景,对流转过程进行综合分析,对不符合数据流转过程的操作与操作用户进行记录、告警。例如,若某链的业务场景中,数据进行交换前需要先进行审批,但是用户没有审批直接进行了交换,说明系统可能存在系统漏洞或其他原因导致该用户绕过审批环节非法获得数据,此时区块链监测系统记录用户和操作信息,向相关监管人员进行告警。
基于上述任一实施例,数据分析子单元具体用于:
若待监测区块链网络的类型为公有链,则对待监测区块链网络进行风险分析、价值分析和市场分析的至少一种;
风险分析包括节点异常风险分析、网络异常运行风险分析、共识风险分析、合约调用异常风险和账户交易异常风险中的至少一种;
市场分析包括市场趋势分析和/或市场异常转移分析。
具体地,若待监测区块链网络的类型为公有链,则数据分析子单元对待监测区块链网络进行风险分析、价值分析和市场分析。
风险分析包括节点异常风险分析、网络异常运行风险分析、共识风险分析、合约调用异常风险和账户交易异常风险。
节点异常风险分析用于根据账本信息获取节点相关信息,通过网络嗅探等技术手段获取节点的端口开放、网络负载等信息,进一步分析节点状况,并在节点超时连接等情况时,进行数据记录汇总,给出公有链对应节点风险评估系数。分析项包括区块链节点信息,节点情况获取数据等。分析方法为通过从公有链的账本信息中提取节点数据,根据获取的节点信息,对节点进行网络嗅探、数据收集。根据收集的数据进行汇总分析,计算节点风险评估系数,并在节点风险评估系数超过设置的阈值的时候,给予预警报告。
网络异常运行风险分析用于通过对有效交易数量、无效交易数量、无效报文、无效请求等数据的分析,给出公有链网络阻塞等风险;通过对节点的网络处理能力的分析,给出网络能够承受的负载能力,当实际负载接近网络能够承受的负载时,给出风险预警等。分析项包括区块链交易信息、公有链网络报文收集、节点信息等。分析方法为根据有效/无效交易数量,以及网络请求数量等,结合公有链的Mempool设置、Gas Limit设置等,监控网络拥堵程度,当网络存在阻塞可能时,给出网络风险预警;通过对节点的网络处理能力的获取,计算公有链网络的负载能力,监控网络实际负载,当实际负载接近理论阈值时,给出网络风险预警。
共识风险分析用于通过对不同共识算法中验证人节点的信息统计,有效识别区块链的共识风险。如POW共识算法,通过对矿工节点数量、算力进行分析,评估算力分布,识别共识风险;POS共识算法,通过对验证人节点权益分布分析,识别共识风险;DPOS共识算法,通过对验证人节点连通情况,识别共识风险;PBFT共识算法,通过对出块节点和投票节点连通情况,识别共识风险;Raft共识算法,通过对节点是否在线,识别共识风险等。通过对共识风险的识别,有效预警区块链的运行安全。分析项包括区块链共识算法、节点运行状况和网络状况等。分析方法包括根据不同的共识算法特性,采用不同的公式,以节点运行数据和节点网络数据作为参数,计算共识安全系数,并根据设置的网络安全系数阈值,发出预警报告。
合约调用异常风险分析用于通过对合约运行情况,给出合约异常调用风险预警。分析项包括整体数据(包括合约总量、24小时活跃账户数、24小时调用总数、24小时部署合约数)、合约列表(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署/更新时间)、合约详情(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署时间、合约ID、合约类型、所在区块)、合约调用数据(调用时间、交易费、转入方、转出方)、合约state解析等。分析方法包括综合采集的合约整体数据(包括合约总量、24小时活跃账户数、24小时调用总数、24小时部署合约数),根据结合大量采集的运行数据和历史数据,计算评估出正常平均值,根据即时数据超出平均值比例获取合约整体安全系数,并根据设置的安全系数阈值,发出预警报告。结合合约列表数据(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署/更新时间)、合约详情数据(包括合约名称、24小时活跃账户数、24小时调用次数、代码审计状态、最新部署时间、合约ID、合约类型、所在区块)、合约调用数据数据(调用时间、交易费、转入方、转出方),计算获取合约部署、更新,合约调用频率,合约异常调用,并综合以上数据,计算具体合约的安全系数。通过对合约state的解析数据进行分析,针对异常数据进行预警报告,例如以太坊的ERC20的state数据可以对ERC20 Token进行风险预警。合约漏洞预警为通过使用形式化验证等技术手段,并结合已有的合约漏洞库,当公有链网络中部署的合约存在漏洞隐患,进行漏洞报告。
账户交易异常风险分析用于通过对公有链的账户信息进行分析,为账户存在的风险进行风险预警报告。分析项包括账户交易调用数量、账户Token(令牌)持有数量等。分析方法为通过对账户历史调用交易数量的分析,针对异常交易调用情况,给出风险预警;针对账户持有的Token被异常转移、处理,给出风险预警;针对账户持有的Token被大额操作,给出风险预警等。
价值分析用于通过对公有链运行状况的数据汇总整理,给出价值分析,并针对公有链异常运行,给出价值预警(综合TPS、区块数、交易数、合约调用数的全网比重,判断该公链的影响范围,定义其链本身产生的价值程度)。分析项包括公有链的运行状况(包括公有链的链信息汇总、合约信息汇总、账户信息汇总、Token信息汇总、节点风险、网络风险、共识风险、合约风险、账户风险等)。分析方法包括综合收集的公有链运行数据,以及处理分析后的结果数据,根据计算公式,给出价值分析系数。
市场分析包括市场趋势分析和市场异常转移分析。
市场趋势分析为帮助监测者观察代币的市场整体买入/卖出趋势,分析方法为根据交易所资金流转与币种交易等数据,判断用户正在买入该币种还是在抛出该币种。
市场异常转移分析为通过对公有链token的供应、token的增发与销毁以及token的流向进行数据分析,并结合Market数据,给出市场分析报告,并针对异常转移等给出风险预警。分析项包括token的供应、token的增发与销毁、token的转移、Market数据等。分析方法包括对各类数据进行汇总整理,统计分析。
基于上述任一实施例,数据处理单元120还包括:
身份服务管理子单元,用于对多个操作账户的身份信息和操作权限进行管理。
具体地,身份服务管理子单元采用基于角色的控制方式,通过映射用户、角色和功能的关系,实现对多个操作账户的身份信息和操作权限进行管理,控制用户在区块链监测系统中进行操作和查看内容。同时系统提供可视化的权限配置管理模块,方便管理员进行操作。
基于上述任一实施例,数据处理单元120还包括:
数据缓存子单元,用于对热点数据进行缓存处理,热点数据为访问次数超过预设次数的运行数据和/或数据分析结果。
具体地,数据缓存子单元将热点数据进行数据缓存处理,解决高并发和大数据场景下热点数据访问性能差的问题,提高了数据处理单元的数据访问速度。
基于上述任一实施例,数据处理单元120还包括:
数据预警子单元,用于对多个运行数据进行实时监测,若任一运行数据超过预设阈值,则基于预设通知方式推送监测预警信息。
具体地,对于不同的运行数据,可以在系统控制台中设置预警策略。数据预警子单元根据预警策略,使用实时计算框架,通过分布式的计算任务,实时的对多个运行数据指标进行聚合分析,一旦有运行数据达到阈值,则生成监测预警信息,根据用户设置的预设通知方式对相关用户进行推送和告警。预设通知方式包括短信、邮件、站内信等。
基于上述任一实施例,数据展示单元130包括Web展示子单元和/或大屏展示子单元;
Web展示子单元用于展示所有运行数据;大屏展示子单元用于展示核心运行数据和/或数据分析结果。
具体地,Web展示子单元可以对所有运行数据进行展示,可以用于对大屏展示子单元中的风险、安全等分析提供数据支撑。Web展示子单元的主要功能包括网络监测、合约监测、DApp监测、行情监测、节点监测和告警。对于不同的区块链网络,每个功能采用相同的页面和接口架构,根据区块链网络的差异对页面进行微调。
大屏展示子单元用于展示核心运行数据和数据分析结果。例如,对区块链存在的安全性、异常情况、项目方风险、市场风险等进行实时展示,帮助监管人员实时掌握区块链风险并及时对问题进行处理;同时汇聚同类区块链,参考其网络、应用、账户、市场情况,进行综合排行、评分,帮助监管人员快速发现高价值区块链并实施奖励或扶持。
基于上述任一实施例,图3为本发明提供的区块链监测系统的结构示意图之二,如图3所示,该区块链监测系统包括顺次电相连的数据采集单元、数据处理单元和数据展示单元。
数据采集单元实现对联盟链、公有链、监测链的运行数据采集。联盟链(包括监测从链)以及公有链通过代理节点或监测节点接入的方式,接入目标区块链网络,获取相关数据信息。不同的异构区块链数据格式、数据类型不同,系统会为每一种区块链网络设计对应的数据适配实例,匹配对应的数据项,最终适配器进行数据汇聚整合,完成数据采集工作。最后包括监测链数据、公链市场行情数据等都是通过可信数据接口直接获取数据。
数据处理单元对采集到的运行数据进行数据转储、数据分析、展示层适配,同时实现对身份服务的管理。汇聚采集的数据,进行结构化调整并转储到关系型数据库。数据分析对整合后的数据进行计算分析,并结合ELK日志分析管理,提供一系列的区块链网络风险与价值分析,通过prometheus监控报警系统进行告警。数据处理单元还面向不同页面开发不同的接口,提供基础数据与数据分析。身份服务管理负责角色、权限、账户等的统一管理。
监测Web端实现对系统采集的全量数据的展示,用于对监测大屏中的风险、安全等分析提供数据支撑,同时为运营、运维人员提供全量数据展示。监测Web端主要实现的功能包括:网络监测、合约监测、DApp监测、行情监测、节点监测和告警。对于不同的区块链网络,每个功能采用相同的页面和接口架构,根据区块链网络的差异对页面进行微调。
监测大屏主要展示核心数据和数据分析结果。对区块链存在的安全性、异常情况、项目方风险、市场风险等进行实时展示,帮助监管人员实时掌握区块链风险并及时对问题进行处理;同时汇聚同类区块链,参考其网络、应用、账户、市场情况,进行综合排行、评分,帮助监管人员快速发现高价值区块链并实施奖励或扶持。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种区块链监测系统,其特征在于,包括顺次电相连的数据采集单元、数据处理单元和数据展示单元;
所述数据采集单元,用于采集待监测区块链网络的运行数据;所述待监测区块链网络的类型为公有链和联盟链;所述联盟链包括监测链网从链;
所述数据处理单元,用于对所述待监测区块链网络的运行数据进行处理,得到数据分析结果;
所述数据展示单元,用于可视化展示所述运行数据和/或所述数据分析结果;
所述数据采集单元包括数据接入子单元、数据采集适配器子单元和数据结构适配子单元;
所述数据接入子单元,用于基于所述待监测区块链网络的架构,采用监测节点接入或者代理节点接入的方式与所述待监测区块链网络连接;
所述数据采集适配器子单元,用于基于所述待监测区块链网络的数据类型,调用相应的数据采集适配器,通过所述数据接入子单元采集所述待监测区块链网络的运行数据;
所述数据结构适配子单元,用于对采集得到的所述运行数据进行第一结构化处理和/或持久化处理;
所述数据接入子单元,用于:
在所述待监测区块链网络为公有链或者允许监测节点接入的联盟链的情况下,采用监测节点接入的方式与所述待监测区块链网络连接;
在所述待监测区块链网络为不允许监测节点接入的联盟链的情况下,采用代理节点接入的方式与所述待监测区块链网络连接。
2.根据权利要求1所述的区块链监测系统,其特征在于,所述数据接入子单元,还用于与第三方可信数据源接口连接;
所述数据采集适配器子单元还用于基于所述数据接入子单元获取第三方可信数据。
3.根据权利要求1所述的区块链监测系统,其特征在于,所述数据处理单元包括数据转储子单元、数据分析子单元和数据展示适配子单元;
所述数据转储子单元,用于对所述运行数据进行第二结构化处理,并将所述运行数据存储至关系数据库;
所述数据分析子单元,用于基于所述关系数据库中的运行数据的数据类型,采用实时方式和/或批量方式进行统计分析,得到数据分析结果;
所述数据展示适配子单元,用于基于所述数据展示单元中的展示页面类型,向所述数据展示单元提供相应的接口。
4.根据权利要求3所述的区块链监测系统,其特征在于,所述数据分析子单元具体用于:
若所述待监测区块链网络的类型为联盟链,则对所述待监测区块链网络进行稳定性分析、风险分析和项目分析中的至少一种;
所述稳定性分析包括节点运行稳定性分析、网络运行稳定性分析和程序运行稳定性分析中的至少一种;
所述风险分析包括节点安全风险分析、网络安全风险分析、共识风险分析和合约调用异常风险分析中的至少一种;
所述项目分析包括项目活跃度分析、项目参与度分析和项目异常情况分析中的至少一种。
5.根据权利要求3所述的区块链监测系统,其特征在于,所述数据分析子单元具体用于:
若所述待监测区块链网络的类型为公有链,则对所述待监测区块链网络进行风险分析、价值分析和市场分析的至少一种;
所述风险分析包括节点异常风险分析、网络异常运行风险分析、共识风险分析、合约调用异常风险分析和账户交易异常风险分析中的至少一种;
所述市场分析包括市场趋势分析和/或市场异常转移分析。
6.根据权利要求3所述的区块链监测系统,其特征在于,所述数据处理单元还包括:
身份服务管理子单元,用于对多个操作账户的身份信息和操作权限进行管理。
7.根据权利要求3所述的区块链监测系统,其特征在于,所述数据处理单元还包括:
数据缓存子单元,用于对热点数据进行缓存处理,所述热点数据为访问次数超过预设次数的运行数据和/或数据分析结果。
8.根据权利要求3所述的区块链监测系统,其特征在于,所述数据处理单元还包括:
数据预警子单元,用于对多个运行数据进行实时监测,若任一运行数据超过预设阈值,则基于预设通知方式推送监测预警信息。
9.根据权利要求1至8任一项所述的区块链监测系统,其特征在于,所述数据展示单元包括Web展示子单元和/或大屏展示子单元;
所述Web展示子单元用于展示所有运行数据;
所述大屏展示子单元用于展示核心运行数据和/或所述数据分析结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110068301.8A CN112787890B (zh) | 2021-01-19 | 2021-01-19 | 区块链监测系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110068301.8A CN112787890B (zh) | 2021-01-19 | 2021-01-19 | 区块链监测系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112787890A CN112787890A (zh) | 2021-05-11 |
CN112787890B true CN112787890B (zh) | 2022-09-27 |
Family
ID=75757669
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110068301.8A Active CN112787890B (zh) | 2021-01-19 | 2021-01-19 | 区块链监测系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112787890B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113329081A (zh) * | 2021-05-28 | 2021-08-31 | 深圳技术大学 | 一种区块链服务接入方法、装置及计算机可读存储介质 |
US11816087B2 (en) * | 2021-07-13 | 2023-11-14 | Tata Consultancy Services Limited | Method and system for blockchain monitoring |
CN113489156A (zh) * | 2021-07-21 | 2021-10-08 | 厦门莲隐科技有限公司 | 一种对Ethereum链上行为实时监控分析系统 |
CN117408592B (zh) * | 2023-12-14 | 2024-04-09 | 上海文景信息科技有限公司 | 一种基于区块链的多式联运一单制物流追溯方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109617759A (zh) * | 2018-12-04 | 2019-04-12 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 区块链系统稳定性测试方法、装置、设备及存储介质 |
CN110309657A (zh) * | 2019-06-20 | 2019-10-08 | 四川大学 | 区块链的安全风险评估方法 |
CN110334155A (zh) * | 2019-07-09 | 2019-10-15 | 佛山市伏宸区块链科技有限公司 | 一种基于大数据整合的区块链威胁情报分析方法及系统 |
CN111262959A (zh) * | 2020-01-13 | 2020-06-09 | 平安科技(深圳)有限公司 | 区块链节点访问方法、装置及存储介质 |
CN112134890A (zh) * | 2020-09-24 | 2020-12-25 | 广州瀚海科技有限公司 | 一种基于区块链技术的网络安全智能预警系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506203B (zh) * | 2016-10-25 | 2019-12-10 | 杭州云象网络技术有限公司 | 一种应用于区块链的节点监控系统 |
US11474854B2 (en) * | 2018-10-30 | 2022-10-18 | International Business Machines Corporation | Transformation of inter-organization process for execution via blockchain |
US10949417B2 (en) * | 2018-11-26 | 2021-03-16 | Bank Of America Corporation | Blockchain augmented internet of things (“IoT”) device-based system for dynamic supply chain tracking |
CN110213171B (zh) * | 2019-06-03 | 2022-11-11 | 杭州云象网络技术有限公司 | 一种基于联盟链技术的数据流量监测与控制方法 |
CN111125737B (zh) * | 2019-12-25 | 2022-07-19 | 河北先河环保科技股份有限公司 | 基于区块链的环境监测系统 |
CN111798081A (zh) * | 2020-05-11 | 2020-10-20 | 国网江西省电力有限公司电力科学研究院 | 一种基于区块链技术的乡村电气化项目管理系统 |
-
2021
- 2021-01-19 CN CN202110068301.8A patent/CN112787890B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109617759A (zh) * | 2018-12-04 | 2019-04-12 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | 区块链系统稳定性测试方法、装置、设备及存储介质 |
CN110309657A (zh) * | 2019-06-20 | 2019-10-08 | 四川大学 | 区块链的安全风险评估方法 |
CN110334155A (zh) * | 2019-07-09 | 2019-10-15 | 佛山市伏宸区块链科技有限公司 | 一种基于大数据整合的区块链威胁情报分析方法及系统 |
CN111262959A (zh) * | 2020-01-13 | 2020-06-09 | 平安科技(深圳)有限公司 | 区块链节点访问方法、装置及存储介质 |
CN112134890A (zh) * | 2020-09-24 | 2020-12-25 | 广州瀚海科技有限公司 | 一种基于区块链技术的网络安全智能预警系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112787890A (zh) | 2021-05-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112787890B (zh) | 区块链监测系统 | |
CN106713332B (zh) | 网络数据的处理方法、装置和系统 | |
US8359328B2 (en) | Party reputation aggregation system and method | |
US8165993B2 (en) | Business intelligence system with interface that provides for immediate user action | |
US20100070981A1 (en) | System and Method for Performing Complex Event Processing | |
CN108763957A (zh) | 一种数据库的安全审计系统、方法及服务器 | |
CN105871605A (zh) | 一种基于电力营销大数据的运维监控平台 | |
CA3115124A1 (en) | Continuous and anonymous risk evaluation | |
AU2019201687A1 (en) | Network device vulnerability prediction | |
CN113094385B (zh) | 一种基于软件定义开放工具集的数据共享融合平台及方法 | |
CN106651463A (zh) | 金融机构服务接入系统及其接入方法 | |
US11750630B2 (en) | Real-time validation of application data | |
CN112598368A (zh) | 污水处理在线监管平台 | |
CN108596496A (zh) | 一种用于发电设备数据分析的模块化混合云服务系统 | |
CN112598513B (zh) | 识别股东风险交易行为的方法及装置 | |
CN104811506A (zh) | 基于无线传感器网络的油脂储藏远程监管系统及方法 | |
CN112348310A (zh) | 一种网络行为的风险评估方法与系统 | |
WO2023284299A1 (zh) | 工程项目监管方法及系统 | |
CN110532312A (zh) | 一种基于大数据的工业互联云平台系统 | |
CN113794719A (zh) | 一种基于Elasticsearch技术网络异常流量分析方法、装置和电子设备 | |
CN110209903A (zh) | 一种基于大数据的工业互联云平台系统 | |
CN113709140B (zh) | 一种基于综合审计的云大数据智能安全管控系统 | |
Jianhao | RETRACTED: Design and Implementation of Bank Wind Control Anti-fraud Project Based on Big Data Technology | |
CN112801788A (zh) | 一种互联网股权融资平台监控系统及监控方法 | |
CN111402046A (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 |