首页> 中国专利> 基于联盟区块链含多子链的区块链管理系统及方法

基于联盟区块链含多子链的区块链管理系统及方法

摘要

本发明公开一种基于联盟区块链含多子链的区块链管理系统及方法,包括系统管理模块及与系统管理模块连接的区块链主子链管理模块、区块链信息查询模块和区块链操作模块;区块链主子链管理模块包括主链管理部及若干子链管理部,主链管理部、各子链管理部分别与系统管理模块连接;区块链信息查询模块包括节点信息查询单元、区块信息查询单元、交易信息查询单元及区块链统计信息单元,节点信息查询单元、区块信息查询单元、交易信息查询单元、区块链统计信息单元分别与系统管理模块连接;区块链操作模块包括群组创建单元、节点加入单元及智能合约管理单元,群组创建单元、节点加入单元、智能合约管理单元分别与系统管理模块连接。本发明实现了可视化区块链群组管理、节点管理、服务器管理。

著录项

  • 公开/公告号CN114676110A

    专利类型发明专利

  • 公开/公告日2022-06-28

    原文格式PDF

  • 申请/专利权人 鼎链数字科技(深圳)有限公司;

    申请/专利号CN202210224524.3

  • 发明设计人 刘雄;

    申请日2022-03-07

  • 分类号G06F16/21;G06F16/23;G06F16/28;G06F16/2455;G06F16/27;G06F21/62;G06F21/60;G06F21/33;G06F21/64;

  • 代理机构广州市华学知识产权代理有限公司;

  • 代理人张秋弟

  • 地址 518000 广东省深圳市坪山区坪山街道六联社区坪山大道2007号创新广场B1703-5

  • 入库时间 2023-06-19 15:47:50

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-06-28

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及区块链管理领域,特别是涉及一种基于联盟区块链含多子链的区块链管理系统及方法。

背景技术

区块链作为一种分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式,本身并不具备可视化的属性,无论是查看区块链的状态,对区块链主链、子链、群组、节点的管理,还是进行智能合约的部署、升级等操作,都需要具备较高的专业水平,通过复杂的操作或者命令行方式进行查询和其他操作。联盟区块链网络中存在多条链的情况下,尤其需要可视化、更便捷的系统,对多条链的信息展示及管理。

现有的公开可查的区块链管理系统通常只具备区块链的信息浏览功能,不能够进行智能合约上传、部署、升级、查询等相关操作。现有的公开可查的区块链管理系统对链的管理不够精细,不能详细到对子链、群组、节点及服务器的管理。现有的公开可查的区块链管理系统通常只具备对单一主链或子链的管理,并不支持多链的管理。

现有公开可查的区块链管理系统数据查询一般可分为从数据库查询数据和从区块链账本查询数据。数据库查询数据,需要先将数据从区块链账本同步到数据库,区块链管理系统从数据库查询数据,这样存在数据库遭篡改的风险,查询的结果的真实性不能保证;而如果是直接从区块链账本查询数据,则因区块链账本数据量较大,并且是非结构化的数据,从区块链账本直接查询数据效率较低。

发明内容

本发明的目的是克服现有技术中的不足之处,提供一种基于联盟区块链含多子链的区块链管理系统及方法。

本发明的目的是通过以下技术方案来实现的:

一种基于联盟区块链含多子链的区块链管理系统,包括:系统管理模块及与所述系统管理模块连接的区块链主子链管理模块、区块链信息查询模块和区块链操作模块;

所述区块链主子链管理模块包括主链管理部及若干子链管理部,所述主链管理部、各所述子链管理部分别与所述系统管理模块连接;

所述区块链信息查询模块包括节点信息查询单元、区块信息查询单元、交易信息查询单元及区块链统计信息单元,所述节点信息查询单元、所述区块信息查询单元、所述交易信息查询单元、所述区块链统计信息单元分别与所述系统管理模块连接;

所述区块链操作模块包括群组创建单元、节点加入单元及智能合约管理单元,所述群组创建单元、所述节点加入单元、所述智能合约管理单元分别与所述系统管理模块连接。

优选的,所述主链管理部包括第一链信息查询单元、第一区块信息查询单元和第一交易信息查询单元,所述第一链信息查询单元、第一区块信息查询单元和第一交易信息查询单元分别与所述系统管理模块连接。

优选的,在一个所述子链管理部中,所述子链管理部包括第二链信息查询单元、第二区块信息查询单元和第二交易信息查询单元,所述第二链信息查询单元、第二区块信息查询单元和第二交易信息查询单元分别与所述系统管理模块连接。

优选的,所述区块链管理系统还包括请求数据接口模块,所述请求数据接口模块与所述系统管理模块连接。

优选的,所述请求数据接口模块包括请求解析单元、路由分发单元及信息转发单元,所述请求解析单元、所述路由分发单元和所述信息转发单元分别与所述系统管理模块连接。

优选的,所述区块链管理系统还包括全局搜索模块,所述全局搜索模块与所述系统管理模块连接。

本发明还提供一种基于联盟区块链含多子链的区块链管理系统的区块链管理方法,包括如下步骤:

S1、获取区块链数据信息,更新数据库数据;

S2、获取数据查询请求,访问更新后数据库的数据,返回所述数据;

S3、获取管理操作请求,调用SDK数据,返回数据处理并更新数据库数据。

优选的,所述步骤S1具体包括:

S110、获取区块链数据请求,接收区块链数据信息;

S120、解析并存储所述区块链信息;

S130、更新所述区块链信息。

优选的,所述步骤S2具体包括:

S210、接收数据查询请求,对所述数据查询请求进行转换,调用相应的查询方法;

S220、调用SDK数据并访问数据库,返回数据;

S230、对所述返回数据进行处理,返回JSON格式数据;

S240、对所述JSON格式数据进行处理,渲染页面及数据。

优选的,所述步骤S3具体包括:

S310、接收管理操作请求,解析所述管理操作请求,将字符串转换成区块链平台可识别的格式;

S320、调用SDK数据,对管理操作进行处理,返回处理结果;

S330、更新数据库信息,对处理结果进行处理,渲染页面及数据。

本发明相比于现有技术的优点及有益效果如下:

本发明为一种基于联盟区块链含多子链的区块链管理系统及方法,支持多链管理,所述多链管理即支持多条链的区块链信息查询、智能合约管理等操作。多链是一种区块链的部署结构,能够增大事务吞吐量,提高交易速度,提供业务隔离等功能。并且将不同模块进行分离部署,提高了系统的健壮性、可维护性、可扩展性。本发明通过使用证书对消息进行签名的方式,加强了安全性。只有具有相应证书的区块链管理系统模块,才能够对区块链平台进行相应的操作。本发明实现了可视化区块链群组管理、节点管理、服务器管理。

附图说明

图1为本发明一实施方式的基于联盟区块链含多子链的区块链管理系统的结构示意图;

图2为本发明一实施方式的基于联盟区块链含多子链的区块链管理方法的流程图;。

具体实施方式

为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。

请参阅图1,一种基于联盟区块链含多子链的区块链管理系统,包括:系统管理模块及与所述系统管理模块连接的区块链主子链管理模块、区块链信息查询模块和区块链操作模块;

所述区块链主子链管理模块包括主链管理部及若干子链管理部,所述主链管理部、各所述子链管理部分别与所述系统管理模块连接;需要说明的是,区块链主子链管理,包含主链管理和若干各子链管理,实现对区块链主链子链的管理和信息查看。主链管理主要对子链进行管理,包括群组增删改查、节点的增删改查等;每个子链管理提供链信息查询、区块信息查询、交易信息查询功能。

所述区块链信息查询模块包括节点信息查询单元、区块信息查询单元、交易信息查询单元及区块链统计信息单元,所述节点信息查询单元、所述区块信息查询单元、所述交易信息查询单元、所述区块链统计信息单元分别与所述系统管理模块连接;需要说明的是,区块链信息查询包括区块链的节点信息查询、区块信息查询、交易信息查询、区块链统计信息四大模块。所述区块链信息查询部分针对不同类型的查询请求,分为两种查询方式。第一种,查询列表信息,通过对请求的解析,在数据库中查询相应的内容,并将其转换为JSON格式发送至客户端,由客户端将其通过web形式渲染在浏览器中,实现数据的可视化展示;第二种,查询详细信息通过对请求的解析,在区块链网络中查询相应的内容,并将其转换为JSON格式发送至客户端,由客户端将其通过web形式渲染在浏览器中,实现数据的可视化展示。

所述区块链操作模块包括群组创建单元、节点加入单元及智能合约管理单元,所述群组创建单元、所述节点加入单元、所述智能合约管理单元分别与所述系统管理模块连接。需要说明的是,区块链操作包括群组创建、节点加入、智能合约管理三大模块。所述区块链操作部分通过对请求的解析,向区块链网络发起区块链的操作,并将操作结果使用JSON格式返回至客户端,由客户端将其通过web形式渲染在浏览器中。

如此,本发明支持多链管理,所述多链管理即支持多条链的区块链信息查询、智能合约管理等操作。多链是一种区块链的部署结构,能够增大事务吞吐量,提高交易速度,提供业务隔离等功能。本发明引入了微服务的开发方式,将不同模块进行分离部署,提高了系统的健壮性、可维护性、可扩展性。本发明通过使用证书对消息进行签名的方式,加强了安全性。只有具有相应证书的区块链管理系统模块,才能够对区块链平台进行相应的操作。本发明采用了前后端分离的设计,即遵循前后端接口协议的情况下,后端部分与前端部分可分离使用。如果需要对不同的区块链平台进行可视化管理,只需要修改与区块链接口相关的后端服务代码即可。

进一步地,所述主链管理部包括第一链信息查询单元、第一区块信息查询单元和第一交易信息查询单元,所述第一链信息查询单元、第一区块信息查询单元和第一交易信息查询单元分别与所述系统管理模块连接。

进一步地,在一个所述子链管理部中,所述子链管理部包括第二链信息查询单元、第二区块信息查询单元和第二交易信息查询单元,所述第二链信息查询单元、第二区块信息查询单元和第二交易信息查询单元分别与所述系统管理模块连接。

需要说明的是,所述区块链管理系统还包括请求数据接口模块,所述请求数据接口模块与所述系统管理模块连接。所述请求数据接口模块包括请求解析单元、路由分发单元及信息转发单元,所述请求解析单元、所述路由分发单元和所述信息转发单元分别与所述系统管理模块连接。

区块链管理系统架构可分为表示层、接口层、业务服务层、基础能力层和区块链平台层。

表示层可提供数据展示以及用户交互界面,包括主链管理、子链管理、统计信息查询、全局搜索、群组管理、节点管理、节点管理、服务器管理、智能合约管理、系统管理。

接口层可提供前后端接口,包括请求解析、路由分发、信息转发。

业务服务层可以处理具体的业务逻辑,向区块链或数据库仓库请求数据并将数据结果返回表示层,具体的业务服务包括链信息服务、区块信息服务、交易信息服务、群组管理服务、节点管理服务、服务器管理服务、智能合约管理服务、统计信息服务、系统管理服务。

基础能力层可以为业务服务层提供基础服务,包括区块链交互服务和数据库服务。

区块链平台层可提供节点、账本、智能合约等区块链相关功能。

还需要说明的是,所述区块链管理系统还包括全局搜索模块,所述全局搜索模块与所述系统管理模块连接。

另外,本发明的区块链管理系统包含区块链核心组件集、业务服务集、表示层模块集、工具集四部分。

区块链核心组件集,区块链平台提供的SDK,包括公共支撑组件、账本功能组件、节点功能组件、智能合约功能组件等,是区块链平台主要的核心组件,为管理系统提供区块链提供必要的区块链管理接口。公共支撑组件:提供密码功能、日志功能、数据传输协议等区块链公共功能的组件;账本功能:提供区块链账本存储、查询功能;节点功能:区块链节点数据传输、数据读写等功能;智能合约功能:提供智能合约部署升级、调用功能。

区块链管理系统业务服务集,接收并处理具体的业务逻辑请求的服务,包括主链管理服务、子链管理服务、群组管理服务、节点管理服务、服务器管理服务、系统管理服务、统计信息查询服务、全局搜索服务等。

表示层模块集,区块链管理系统交互展示层,接收用户的输入信息以及后端服务器返回信息的展示,包括搜索模块、动态交互模块、静态信息模块。

工具集,数据库模块,包括数据库的账本信息、数据库驱动以及数据库调用接口,为区块链管理系统提供数据服务。

系统模块功能中,业务实现层的应用模块包括:主子链管理(区块信息模块、交易信息模块、节点信息模块)、区块链信息概览模块、统计图表模块、群组管理、节点管理、服务器管理、智能合约管理模块、系统管理。

区块信息模块:展示区块链上的区块的信息,包括区块的当前哈希值、区块号、区块的前一区块的哈希值、区块的产生时间、区块包含的交易数量、区块内的交易列表;

交易信息模块:展示区块链上的交易的信息,包括交易号、交易哈希值、交易所属的区块号、交易引用的智能合约名称、交易使用的智能合约的方法名称、交易产生的时间、交易的读集合、交易的写集合、交易的状态;

节点信息模块:展示各个节点的主要信息,展示节点的列表。主要包括Node节点在线状态、Node节点的链高度、共识节点的在线状态、CA节点的在线状态等;

区块链信息概览模块:展示所选择的链的概要信息,包括最新产生区块的区块号、最新产生区块的产生时间、当前链高度、当前交易总量、Node节点数量、智能合约总数、CA节点数量、组织数量;

统计图表模块:对区块链上的数据进行统计,并以图表形式展示,主要包括区块链上的区块数量在一定时间内的变化、交易数量在一定时间内的变化等;

群组管理:查看并管理区块链网络中的群组;节点管理:查看并管理区块链节点;节点管理:查看并管理区块链节点;智能合约管理模块:对智能合约进行操作,主要包括部署、升级;系统管理:区块链管理系统的用户、角色、菜单等基本系统信息管理。

本发明多链管理能力:设计主链和子链管理,主链主要对整个区块链网络的群组、节点、子链等公共基础信息进行管理;主链下可以有多条子链,每条子链能单独查看区块信息、交易信息、节点信息的查看。

对区块链进行操作的能力:包括智能合约的部署升级、群组管理、节点管理、服务器管理等功能。

数据库设计:选择内嵌数据库,安装驱动后调用数据库接口实现数据的存取功能。

全局搜索能力:包括区块精确搜索、区块模糊搜索、交易精确搜索、交易模糊搜索等功能。

展示区块链信息的能力:包括区块信息展示、交易信息展示、节点信息展示、智能合约信息展示等功能。

系统管理:系统管理包含用户管理、角色管理、菜单管理,赋予不同的用户角色对应的权限,实现用户权限控制。

可以理解,现有公开可查的区块链管理系统数据源通常是直接从区块链账本中读取数据展现,列表查询、条件筛选、数据统计等操作的时效性偏低。现有公开可查的区块链管理系统数据源采用数据库通常采用独立数据库软件,对数据库的依赖较高,数据库需独立运营,增加服务器的负载。

本发明针对区块链平台的可视化管理问题,结合Web技术和数据库技术进行了探索研究,提出了一种基于内嵌数据库的可视化区块链管理系统,能够对区块链进行可视化操作,使得区块链的群组管理、节点管理、智能合约管理等复杂的操作可以更加简单方便,使用区块链账本数据加数据库数据结合的数据查询方式,充分发挥区块链账本数据的不可篡改以及数据库数据查询的灵活高效的特点,保障数据真实性的同时也能兼顾数据查询的时效性,而选用内嵌数据库也使得区块链管理系统更加轻便、简洁。

本发明旨在利用Web的可视化技术对区块链平台的数据进行可视化展示,包括节点信息、区块信息、交易信息等基本信息的查看,让用户轻松的查看区块链平台的节点状态、区块列表、区块详情、交易列表、交易详情等区块链信息;对区块信息、交易信息能够通过搜索功能快速查询;提供了模糊搜索的功能,可以通过区块哈希的一部分、交易哈希的一部分、区块号、交易号进行搜索。

本发明旨在利用Web的可视化技术对区块链平台进行群组的管理、节点管理、服务器管理、智能合约管理等操作。对区块链群组、节点、服务器、智能合约信息及其对应的关系有更加直观的展现,实时展示各个节点的状态,出现异常情况能够快速直观地发现。

本发明相比于当前公开的区块链管理系统,有更加丰富的功能,除了信息查询、搜索、统计图表之外,还具备了进行智能合约的部署、升级的可视化操作功能。本发明通过数据库可以查询到链上概要信息,基于所述链上概要信息,展现了各种区块链数据图表,包括一定周期内区块数量的变化、一定周期内交易数量的变化等图表。使用本发明能够轻松实现对区块链网络的状态监控以及异常状态的及时预警。

区块链操作包括智能合约管理、群组管理、节点管理、服务器管理四大模块。所述区块链操作部分通过对请求的解析,向区块链网络发起对智能合约、区块链群组、区块链节点、区块链服务器的操作,并将操作结果使用JSON格式返回至客户端,由客户端将其通过web形式渲染在浏览器中。

本发明还新增了区块链信息概览模块:展示所选择的链的概要信息,包括最新产生区块的区块号、最新产生区块的产生时间、当前链高度、当前交易总量、Node节点数量、智能合约总数、CA节点数量、组织数量;统计图表模块:对区块链上的数据进行统计,并以图表形式展示,主要包括区块链上的区块数量在一定时间内的变化、交易数量在一定时间内的变化等。

请参阅图2,本发明还提供一种基于联盟区块链含多子链的区块链管理系统的区块链管理方法,包括如下步骤:

S1、获取区块链数据信息,更新数据库数据;

S2、获取数据查询请求,访问更新后数据库的数据,返回所述数据;

S3、获取管理操作请求,调用SDK数据,返回数据处理并更新数据库数据。

具体地,所述步骤S1具体包括:

S110、获取区块链数据请求,接收区块链数据信息;

S120、解析并存储所述区块链信息;

S130、更新所述区块链信息。

本发明系统的全局搜索事务处理流程如下:

A1:服务器安装区块链管理系统;

A2:客户端向前端服务器发起访问请求;

A3:前端服务器将页面返回至客户端;

A4:客户端像后端服务器发起搜索请求;

A5:后端服务器将请求字段中的字符串进行预处理。如果是哈希值,调用通过哈希值查找数据的方法;如果是数字,调用通过区块号/交易号查找数据的方法。

A6:后端服务器从数据库/区块链网络中查询到所需信息,并将其转换成JSON格式,返回至客户端;

A7:客户端渲染页面,展示查询到的数据。

通过哈希值查找数据的方法:不完整的哈希值:通过正则表达式匹配的方式在数据库中查找区块哈希/交易哈希跟传入的哈希值相匹配的记录,并将其封装为数组;完整的哈希值:向区块链网络发起查询请求,通过哈希值查找区块/交易信息,将查找到的区块/交易信息解析;

通过数值查找数据的方法:查找的是概要信息:精确查询数据库中区块号/交易号与传入的数值相匹配的记录,并封装为数组。查找的是详细信息:向区块链网络发起查询请求,通过区块号/交易号查询区块信息/交易信息,将查找到的区块/交易信息解析;

具体地,所述步骤S2具体包括:

S210、接收数据查询请求,对所述数据查询请求进行转换,调用相应的查询方法;

S220、调用SDK数据并访问数据库,返回数据;

S230、对所述返回数据进行处理,返回JSON格式数据;

S240、对所述JSON格式数据进行处理,渲染页面及数据。

系统的查询事务处理流程如下:

A1:主机安装区块链管理系统

A2:客户端向前端服务器发起访问请求。

A3:前端服务器将页面返回至客户端;

A4:客户端像后端服务器发起查询请求;

A5:后端服务器通过查询请求的类型分别采用不同的查询方法:

查找的是概要信息或者条件筛选列表:查询数据库中区块号/交易号与传入的区块号/交易号范围相匹配的记录,并封装为数组;

查找的是详细信息:向区块链网络发起查询请求,通过区块哈希/交易哈希查询区块信息/交易信息,将查找到的区块/交易信息解析;

并将其转换成JSON格式,返回至客户端;

A6:客户端渲染页面,展示查询到的数据。

具体地,所述步骤S3具体包括:

S310、接收管理操作请求,解析所述管理操作请求,将字符串转换成区块链平台可识别的格式;

S320、调用SDK数据,对管理操作进行处理,返回处理结果;

S330、更新数据库信息,对处理结果进行处理,渲染页面及数据。

系统的区块链管理(智能合约管理为例)事务处理流程如下:

A1:主机安装区块链管理系统

A2:客户端向前端服务器发起访问请求。

A3:前端服务器将页面返回至客户端。

A4:客户端将操作字段发送至后端服务器,由智能合约模块进行处理。

A5:智能合约模块的后端服务器将接收到的字段进行格式转换,向区块链网络发起相应的操作请求;

A6:区块链网络将操作结果返回给后端服务器的智能合约模块;

A7:后端服务器的智能合约模块将操作结果转换成JSON格式,返回至客户端;

A8:客户端渲染页面,展示查询到的数据。

请参阅图2,显示了基于区块链和web的区块链管理系统的区块链操作处理过程示意图。具体的安装流程如下:

A1:用户在客户端中输入操作所需参数值。

A2:客户端将参数值通过HTTP协议传送至后端服务器。

A3:智能合约的后端服务器将参数进行适配之后,对消息进行签名,将操作请求消息发送至区块链网络。

A4:区块链网络验证身份,身份合法的情况下,调用区块链SDK执行区块链操作,否则拒绝操作。

A5:区块链网络将执行结果返回至后端服务器。

A6:后端服务器将执行结果转换为JSON格式,发送至客户端。

A7:客户端对接收到的返回结果进行渲染。

本发明实现可视化区块链群组管理、节点管理、服务器管理以及实现可视化管理区块链平台智能合约的方法。一种通过前后端分离的模式和微服务的架构进行开发、区块链平台提供的SDK或者RESTful API的方式对平台进行操作、使用证书进行身份认证、使用数据库作为查询信息的仓库的区块链管理系统。使用区块链账本查询和数据库查询相结合的方法,避免大量的查询服务直接与区块链平台联系,保护了区块链平台和业务平台的隔离性,避免了对区块链平台频繁地大量查询,同时提高了信息查询的速度。

本发明采用内嵌轻量级数据库,优化了条件筛选查询、列表查询、数据统计等在区块链账本中不易实现的查询,并且内嵌轻量级数据库减少服务器负债,更便于部署及迁移。本发明后端服务器保存证书和密钥,对发送至区块链平台的消息进行签名,区块链平台通过后端服务器发送的签名消息进行身份识别,其他类似的通过某种来自后端服务器的凭证对请求方的身份进行识别。

以上所述实施方式仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号