CN112291318A - 一种区块链网络节点添加方法、系统、存储介质和装置 - Google Patents

一种区块链网络节点添加方法、系统、存储介质和装置 Download PDF

Info

Publication number
CN112291318A
CN112291318A CN202011125789.5A CN202011125789A CN112291318A CN 112291318 A CN112291318 A CN 112291318A CN 202011125789 A CN202011125789 A CN 202011125789A CN 112291318 A CN112291318 A CN 112291318A
Authority
CN
China
Prior art keywords
node
information
sequencing
nodes
added
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.)
Granted
Application number
CN202011125789.5A
Other languages
English (en)
Other versions
CN112291318B (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.)
Hangzhou Yunxiang Network Technology Co Ltd
Original Assignee
Hangzhou Yunxiang Network Technology Co Ltd
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 Hangzhou Yunxiang Network Technology Co Ltd filed Critical Hangzhou Yunxiang Network Technology Co Ltd
Priority to CN202011125789.5A priority Critical patent/CN112291318B/zh
Publication of CN112291318A publication Critical patent/CN112291318A/zh
Application granted granted Critical
Publication of CN112291318B publication Critical patent/CN112291318B/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

本发明公开了一种区块链网络节点添加方法及区块链系统,区块链添加节点的方法包括:所述添加节点通过设置智能合约完成,同时还包括触发所述智能合约对数据库在添加节点的过程中进行信息更新,具体实现步骤包括:添加用户节点:首先,申请添加用户节点相关证书;然后,从已有排序节点上同步账本数据;添加排序节点:首先,申请添加排序节点相关证书;然后,更新区块链上的配置块信息;最后,将添加的排序节点信息写入配置块中。

Description

一种区块链网络节点添加方法、系统、存储介质和装置
技术领域
本发明属于区块链技术领域,具体涉及一种区块链网络节点添加方法、系统、存储介质和装置。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法计算机技术的新型应用模式,是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证不可篡改和不可伪造,具有去中心化、开放性、信息不可篡改等特征。区块链主要分为公有链、联盟链和私有链三种。其中联盟链是联盟组织间常用的区块链类型,其作为联盟组织间的数据交换的基础设施平台,即为各联盟组织成员提供交易平台,各组织在联盟区块链上实现交易过程。随着联盟链的应用推广,各项技术也日趋进步,但在添加节点这块的技术尚未十分完善。区块链网络自由而开放,区块链节点时刻面临需要添加的情况,目前涉及添加节点方面现有的一些方案存在效率较低,无法适应区块链动态变化的网络的问题。
专利号为CN2019103148198的专利《一种区块链可视化节点组织配置管理方法》公开了一种区块链可视化组织配置管理方法,提供了一种区块链节点(peer节点、orderer节点)组织配置界面,同时区块链节点的管理职能也可以通过集成页面进行添加节点、吊销节点、配置节点组织下的user用户等行为也可以通过此方法进行操作,其节点添加、吊销和配置节点还需要通过人工进行操作。
专利号为CN2019108387369的专利《区块链网络中加入节点的方法和区块链系统》公开了一种区块链网络中加入节点的方法和区块链系统,该发明公开包括:区块链网络中的第一已有共识节点接收添加节点的交易请求,并针对该添加节点的交易请求发起共识;达成共识后,已有共识节点执行所述添加节点的交易,在本地节点列表中已有共识节点的编号的基础上为所述待添加节点编号;所述待添加节点同步区块链上的区块数据;所述已有共识节点发起视图切换;所述视图切换完成后,所述待添加节点参与所述区块链的共识过程。
针对此,需要提供一种区块链网络添加节点的方法。
发明内容
本发明基于上述背景和现有技术所存在的问题,拟设计一种区块链网络节点添加方法,其能够提高区块链添加节点的效率。本发明的方案结合智能合约和数据库进行交互实现一种高效的区块链自动添加节点过程。
为了实现本发明的这些目的和其它优点,提供了一种区块链网络节点添加方法,所述添加节点包括添加节点过程,所述添加节点通过设置智能合约完成,同时还包括触发所述智能合约对数据库在添加节点的过程中进行信息更新,具体设计实现步骤包括:
(A)添加用户节点:首先,申请添加用户节点相关证书;然后,从已有排序节点上同步账本数据;
(B)添加排序节点:首先,申请添加排序节点相关证书;然后,更新区块链上的配置块信息;最后,将添加的排序节点信息写入配置块中。
进一步地,所述添加用户节点具体实现步骤包括:
申请添加用户节点相关证书;
验证节点端口冲突情况,所述节点是要添加的用户节点,所述验证端口冲突的方法是将原有用户节点信息从数据库中取出,将所述要添加的用户节点信息加入所述数据库,再进行检测,所述检测通过调用安装或加入接口时会调用的端口冲突验证代码执行;所述端口冲突检测进行检测的端口包括:用户节点端口、排序节点端口、智能合约端口、区块解析功能端口、数据库端口等相关端口;
完成所述端口检测后,会根据用户输入信息和配置文件信息生成对应的各种信息,所述各种信息包括节点启动时的环境变量、运行的端口、挂载的文件(证书)、使用的证书、节点的标识(身份标识)等其中的一种或几种;所述对应的各种信息通过控制器生成;
从所述数据库中取出已有排序节点信息,所述排序节点信息用于后续调用SDK,所述排序节点包括本组织的排序节点和外部的排序节点,所述排序节点基于节点信息列表和其他节点组织列表进行调用;
生成证书文件并将所述证书的信息存入数据库;
在集群中创建用户节点实例,所述集群用于运维管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件、启动数据库、获取锚节点信息、启动用户节点容器其中的一种或几种;
从排序节点上同步账本数据;
启动所述节点实例后,用户节点加入公共链,加入所述公共链后安装公共链合约,完成所述安装后同步公共链区块;
完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;
通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;
将新增节点添加入数据库。
进一步地,所述添加排序节点,具体实现步骤包括:
申请添加排序节点相关证书;
验证节点端口冲突情况,基于所述冲突情况完成冲突检测,所述节点是要添加的排序节点;
完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输,所述排序节点包括本组织和其他组织的排序节点;
获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;
初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新;
更新区块链上的配置块信息;
将添加的排序节点信息写入配置块中。
进一步地,所述初始化排序节点,具体实现步骤包括:
调用SDK生成对应节点的证书文件,所述对应节点为需要添加的排序节点;
根据跨网情况生成所述排序节点需要新增的排序节点信息和共识集群节点信息;
将所述排序节点信息加入配置块中,得到更新的配置块信息,所述配置块包括系统链的配置块、公共链的配置块以及所有当前组织已加入的通道配置块;
对所述配置块信息进行签名;
将所述配置块信息广播到区块链网络;
从数据库中获取创世区块数据,创建所述排序节点实例;
将所述排序节点新增的排序节点信息保存到数据库;
向其他组织发送更新排序节点信息。
另一方面,本发明提出了一种区块链节点添加系统,具体组成包括:
用户节点添加模块:用于申请添加用户节点相关证书;验证节点端口冲突情况,完成所述验证后再进行检测,所述检测通过调用安装或加入接口时会调用的端口冲突验证代码执行;完成所述端口检测后,根据用户输入信息和配置文件信息生成对应的各种信息;从所述数据库中取出排序节点信息,所述排序节点信息用于后续调用SDK;生成证书文件并将所述证书的信息存入数据库;在集群中创建用户节点实例,所述集群用于运维和管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件、启动数据库、获取锚节点信息、启动用户节点容器其中的一种或几种;从排序节点上同步账本数据;启动所述节点实例后,用户节点加入公共链,加入所述公共链后安装公共链合约,完成所述安装后同步公共链区块;完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;将新增节点添加入数据库。
排序节点添加模块:用于申请添加排序节点证书;验证节点端口冲突情况,基于所述冲突情况完成冲突检测;完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输;获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新;更新区块链上的配置块信息;将添加的排序节点信息写入配置块中。
节点添加智能合约模块:用于管理和维护添加节点涉及到的智能合约,实现智能合约的触发和调用,以及相关智能合约配置模块的安装、部署和实例化;用于被处理器执行时实现以上任意一项或多项所述的方法步骤;
节点添加数据库模块:用于存储节点添加方法步骤中添加节点涉及到的各类各种信息。
第三方面,本发明提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现以上任意一项的方法和步骤。
第四方面,本发明提出了一种区块链网络节点添加装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时可实现以上任意一项的方法和步骤。
本发明至少包括的有益效果:本发明设计实现了一种用户节点和排序节点自动添加的方法,自动添加通过设置触发智能合约实现,其触发智能合约的过程还包括与数据库的交互,保证区块链(联盟链)全网相关组织、节点数据在实时同步和更新过程中的稳定,通过智能合约自动地维护区块链节点的信息更新,实现了一种区块链高效添加节点的过程。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,本发明的附图内容作为本发明的实施例,落入本发明的保护范围。
图1为本发明添加用户节点的实现流程图;
图2为本发明添加排序节点的实现流程图。
具体实施方式
为了清晰地阐述本发明,使本发明实施例的目的、技术方案和优点更加清楚,下面结合了本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,以令本领域技术人员参照说明书文字能够据以实施。下面将附图结合具体实施方式对本发明的技术加以详细说明。
本发明实现了一种区块链自动添加节点的设计方法,所述添加节点包括添加节点过程,所述添加节点通过设置智能合约完成,同时还包括触发所述智能合约对数据库(例如采用CouchDB数据库)在添加节点的过程中进行信息更新,具体实现步骤包括:
具体实施例1:
Step1:添加用户节点的一种实现形式如图1所示,可描述为:首先,申请添加用户节点相关证书;然后,从已有排序节点上同步账本数据。实现步骤具体还包括:
S11:申请添加用户节点相关证书;验证节点端口冲突情况,所述节点是要添加的用户节点,所述验证端口冲突的方法是将原有用户节点信息从数据库中取出,将所述用户节点信息加入所述数据库,再进行检测,所述检测通过调用安装接口(setup)或加入接口(join)时会调用的端口冲突验证代码执行;所述端口冲突检测进行检测的端口包括:用户节点端口、排序节点端口、智能合约端口、区块解析功能端口、数据库端口;
S12:完成所述端口检测后,会根据用户输入信息和配置文件信息生成对应的各种信息,即buildinfo,所述各种信息包括节点启动时的环境变量、运行的端口、挂载的文件(证书)、使用的证书、节点的标识(身份标识)等;通过控制器(例如命名为controller的控制器)生成所述对应的各种信息;
S13:从所述数据库中取出已有排序节点信息,所述排序节点信息用于后续调用SDK,所述排序节点包括本组织的排序节点和外部的排序节点,所述排序节点基于节点信息列表t_node_info和其他节点组织列表t_node_other_org进行调用;
S14:生成证书文件并将所述证书的信息存入数据库;
S15:在集群中创建用户节点实例,所述集群用于运维管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件(或创建configmap)、启动CouchDB数据库、获取锚节点信息、启动用户节点容器;
S16:从所述已有排序节点上同步账本数据;启动所述节点实例后,用户节点加入公共链(publicchain),加入所述公共链后安装公共链合约(publicchaincode),完成所述安装后同步公共链区块;
S17:完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;
S18:通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;
S19:将新增节点添加入数据库。
具体实施例2:
Step2:如图2所示为本发明添加排序节点的一种实现形式,可概述为:首先,申请证书;然后,更新区块链上的配置块信息;最后,将添加的排序节点信息写入配置块中;所述添加排序节点,具体实现步骤还包括:
S21:申请添加排序节点相关证书;验证节点端口冲突情况,基于所述冲突情况完成冲突检测,所述节点是要添加的排序节点;
S22:完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输,所述排序节点包括本组织和其他组织的排序节点;
S23:获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;
S24:初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新。所述初始化排序节点,具体实现步骤还包括:
S241:调用SDK生成对应节点的证书文件,所述对应节点为需要添加的排序节点;
S242:根据跨网情况生成所述排序节点需要新增的排序节点信息和共识集群节点信息;
S243:将所述排序节点信息加入配置块中,得到更新的配置块信息,所述配置块包括系统链的配置块、公共链的配置块以及所有当前组织已加入的通道配置块;
S244:对所述配置块信息进行签名;
S245:将所述配置块信息广播到区块链网络;
S246:从数据库中获取创世区块数据,创建所述排序节点实例;
S247:将所述排序节点新增的排序节点信息保存到数据库;
S248:向其他组织发送更新排序节点信息。
S25:更新区块链上的配置块信息;
S26:将添加的排序节点信息写入配置块中。
具体实施例3:
本实施例提出了一种区块链添加节点系统,具体组成包括:
A.用户节点添加模块:用于申请添加用户节点相关证书;验证节点端口冲突情况,完成所述验证后再进行检测,所述检测通过调用安装或加入接口时会调用的端口冲突验证代码执行;完成所述端口检测后,根据用户输入信息和配置文件信息生成对应的各种信息;从所述数据库中取出已有排序节点信息,用于后续调用SDK;生成证书文件并将所述证书的信息存入数据库;在集群中创建用户节点实例,所述集群用于运维和管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件、启动数据库、获取锚节点信息、启动用户节点容器其中的一种或几种;从排序节点上同步账本数据;启动所述节点实例后,用户节点加入公共链,加入所述公共链后安装公共链合约,完成所述安装后同步公共链区块;完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;将新增节点添加入数据库。
B.排序节点添加模块:用于申请添加排序节点证书;验证节点端口冲突情况,基于所述冲突情况完成冲突检测;完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输;获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新;更新区块链上的配置块信息;将添加的排序节点信息写入配置块中。
C.节点添加智能合约模块:包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,用于管理和维护添加节点涉及到的智能合约,实现智能合约的触发和调用,以及相关智能合约配置模块的安装、部署和实例化;所述处理器执行所述计算机程序时实现以上Step1到Step2中所述任意一项的方法步骤;
D.节点添加数据库模块:用于存储节点添加方法步骤中添加节点涉及到的各类各种信息。用于存储本发明上述任意一项所述的方法步骤中添加节点涉及到的各类各种信息,例如用户节点信息、排序节点信息、节点启动时的环境变量信息、运行的端口信息、挂载的文件信息(证书信息)、使用的证书信息、节点的标识信息(身份标识信息)、配置块信息,容器信息、启动用户容器信息、账本数据、路由信息、组织信息、共识集群节点信息、创世区块数据、地址信息、共识节点信息和各种更新信息等。
具体实施例4:
本实施例提出了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现以下的方法和步骤,对区块链添加节点的方法通过设置智能合约完成,同时还包括触发所述智能合约对数据库在添加节点的过程中进行信息更新,具体设计实现步骤包括:
第1步:添加用户节点:首先,申请添加用户节点相关证书;然后,从已有排序节点上同步账本数据;
第2步:添加排序节点:首先,申请添加排序节点相关证书;然后,更新区块链上的配置块信息;最后,将添加的排序节点信息写入配置块中。
在一个实施例中,处理器执行计算机程序时,所述添加用户节点具体实现步骤包括:
第1步:申请添加用户节点相关证书;
第2步:验证节点端口冲突情况,所述节点是要添加的用户节点,所述验证端口冲突的方法是将原有用户节点信息从数据库中取出,将所述要要添加的用户节点信息加入所述数据库,再进行检测,所述检测通过调用安装或加入接口时会调用的端口冲突验证代码执行;
第3步:完成所述端口检测后,会根据用户输入信息和配置文件信息生成对应的各种信息,所述各种信息包括节点启动时的环境变量、运行的端口、挂载的文件、使用的证书、节点的标识其中的一种或几种;所述各种信息通过控制器生成;
第4步:从所述数据库中取出排序节点信息,所述排序节点信息用于后续调用SDK,所述排序节点包括本组织的排序节点和外部的排序节点,所述排序节点基于节点信息列表和其他节点组织列表进行调用;
第5步:生成证书文件并将所述证书的信息存入数据库;
第6步:在集群中创建用户节点实例,所述集群用于运维和管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件、启动数据库、获取锚节点信息、启动用户节点容器其中的一种或几种;
第7步:从所述已有排序节点上同步账本数据;
第8步:启动所述节点实例后,用户节点加入公共链,加入所述公共链后安装公共链合约,完成所述安装后同步公共链区块;
第9步:完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;
第10步:通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;
第11步:将新增节点添加入数据库。
在一个实施例中,处理器执行计算机程序时,所述端口冲突检测进行检测的端口包括:用户节点端口、排序节点端口、智能合约端口、区块解析功能端口、数据库端口等各种相关端口。
在一个实施例中,处理器执行计算机程序时,所述添加排序节点,具体实现步骤还包括:
第1步:申请添加排序节点相关证书;
第2步:验证节点端口冲突情况,基于所述冲突情况完成冲突检测,所述节点是要添加的排序节点;
第3步:完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输,所述排序节点包括本组织和其他组织的排序节点;
第4步:获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;
第5步:初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新;
第6步:更新区块链上的配置块信息;
第7步:将添加的排序节点信息写入配置块中。
在一个实施例中,处理器执行计算机程序时,所述初始化排序节点,具体实现步骤包括:
第1步:调用SDK生成对应节点的证书文件,所述对应节点为需要添加的排序节点;
第2步:根据跨网情况生成所述排序节点需要新增的排序节点信息和共识集群节点信息;
第3步:将所述排序节点信息加入配置块中,得到更新的配置块信息,所述配置块包括系统链的配置块、公共链的配置块以及所有当前组织已加入的通道配置块;
第4步:对所述配置块信息进行签名;
第5步:将所述配置块信息广播到区块链网络;
第6步:从数据库中获取创世区块数据,创建所述排序节点实例;
第7步:将所述排序节点新增的排序节点信息保存到数据库;
第8步:向其他组织发送更新排序节点信息。
实施例5:
本实施例提出了一种区块链添加节点装置,该区块链添加节点装置可以是服务器也可以是移动终端。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该数据库用于计算机设备的所有数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现区块链网络添加节点方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。

Claims (10)

1.一种区块链网络节点添加方法,其特征在于,所述添加节点通过设置智能合约完成,同时还包括触发所述智能合约对数据库在添加节点的过程中进行信息更新,具体实现步骤包括:
添加用户节点:首先,申请添加用户节点相关证书;然后,从已有排序节点上同步账本数据;
添加排序节点:首先,申请添加排序节点相关证书;然后,更新区块链上的配置块信息;最后,将添加的排序节点信息写入配置块中。
2.根据权利要求1所述的区块链网络节点添加方法,其特征在于,所述添加用户节点具体实现步骤包括:
申请添加用户节点相关证书;
验证节点端口冲突情况,所述节点是要添加的用户节点,完成所述验证后再进行检测,所述检测通过调用安装或加入接口时会调用的端口冲突验证代码执行;
完成所述端口检测后,会根据用户输入信息和配置文件信息生成对应的各种信息;
从所述数据库中取出排序节点信息,所述排序节点信息为已有排序节点,用于后续调用SDK,所述排序节点包括本组织的排序节点和外部的排序节点,所述排序节点基于节点信息列表和其他节点组织列表进行调用;
生成证书文件并将所述证书的信息存入数据库;
在集群中创建用户节点实例,所述集群用于运维和管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件、启动数据库、获取锚节点信息、启动用户节点容器其中的一种或几种;
从所述已有排序节点上同步账本数据;
启动所述节点实例后,用户节点加入公共链,加入所述公共链后安装公共链合约,完成所述安装后同步公共链区块;
完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;
通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;
将新增节点添加入数据库。
3.根据权利要求2所述的区块链网络节点添加方法,其特征在于,所述端口冲突检测进行检测的端口包括:用户节点端口、排序节点端口、智能合约端口、区块解析功能端口、数据库端口其中的一种或几种。
4.根据权利要求2所述的区块链网络节点添加方法,其特征在于,所述验证端口冲突的方法是将原有用户节点信息从数据库中取出,将所述要添加的用户节点信息加入所述数据库。
5.根据权利要求2所述的区块链网络节点添加方法,其特征在于,所述根据用户输入信息和配置文件信息生成对应的各种信息包括节点启动时的环境变量、运行的端口、挂载的文件、使用的证书、节点的标识其中的一种或几种;所述各种信息通过控制器生成。
6.根据权利要求1所述的区块链网络节点添加方法,其特征在于,所述添加排序节点,具体实现步骤还包括:
申请添加排序节点相关证书;
验证节点端口冲突情况,基于所述冲突情况完成冲突检测,所述节点是要添加的排序节点;
完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输,所述排序节点包括本组织和其他组织的排序节点;
获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;
初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新;
更新区块链上的配置块信息;
将添加的排序节点信息写入配置块中。
7.根据权利要求6所述的区块链网络节点添加方法,其特征在于,所述初始化排序节点,具体实现步骤包括:
调用SDK生成对应节点的证书文件,所述对应节点为需要添加的排序节点;
根据跨网情况生成所述排序节点需要新增的排序节点信息和共识集群节点信息;
将所述排序节点信息加入配置块中,得到更新的配置块信息,所述配置块包括系统链的配置块、公共链的配置块以及所有当前组织已加入的通道配置块;
对所述配置块信息进行签名;
将所述配置块信息广播到区块链网络;
从数据库中获取创世区块数据,创建所述排序节点实例;
将所述排序节点新增的排序节点信息保存到数据库;
向其他组织发送更新排序节点信息。
8.一种用于支持区块链网络节点添加的系统,其特征在于,具体组成包括:
用户节点添加模块:用于申请添加用户节点相关证书;验证节点端口冲突情况,完成所述验证后再进行检测,所述检测通过调用安装或加入接口时会调用的端口冲突验证代码执行;完成所述端口检测后,根据用户输入信息和配置文件信息生成对应的各种信息;从数据库中取出已有排序节点信息,所述排序节点信息用于后续调用SDK;生成证书文件并将所述证书的信息存入数据库;在集群中创建用户节点实例,所述集群用于运维和管理各节点的创建和配置过程,所述节点实例基于不同容器编排工具有不同的过程,所述不同的过程涉及获取证书文件、启动数据库、获取锚节点信息、启动用户节点容器其中的一种或几种;从排序节点上同步账本数据;启动所述节点实例后,用户节点加入公共链,加入所述公共链后安装公共链合约,完成所述安装后同步公共链区块;完成以上操作后更新公共链上组织信息,其他组织可以通过公共链获取到所述组织新添加节点后的信息;通知其他组织更新路由信息,所述更新路由信息通过公共链管理添加节点的组织名的列表,所述列表在其他组织获取更新信息时同步,所述同步实现其他组织更新列表中存在的组织名的组织信息;将新增节点添加入数据库;
排序节点添加模块:用于申请添加排序节点相关证书;验证节点端口冲突情况,基于所述冲突情况完成冲突检测;完成冲突检测后,获取当前数据库中所有的排序节点信息,用于后续调用SDK时的信息传输;获取本组织的用户节点信息,用于后续智能合约调用时指定背书节点;初始化排序节点,完成排序节点添加及全网对于添加排序节点信息的更新;更新区块链上的配置块信息;将添加的排序节点信息写入配置块中;
节点添加智能合约模块:用于管理和维护增加节点涉及到的智能合约,实现智能合约的触发和调用,以及相关智能合约配置模块的安装、部署和实例化;
节点添加数据库模块:用于存储节点增加方法步骤中增加节点涉及到的各类各种信息。
9.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的方法步骤。
10.一种区块链节点添加装置,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任意一项所述的方法步骤。
CN202011125789.5A 2020-10-20 2020-10-20 一种区块链网络节点添加方法、系统、存储介质和装置 Active CN112291318B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011125789.5A CN112291318B (zh) 2020-10-20 2020-10-20 一种区块链网络节点添加方法、系统、存储介质和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011125789.5A CN112291318B (zh) 2020-10-20 2020-10-20 一种区块链网络节点添加方法、系统、存储介质和装置

Publications (2)

Publication Number Publication Date
CN112291318A true CN112291318A (zh) 2021-01-29
CN112291318B CN112291318B (zh) 2022-11-11

Family

ID=74424490

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011125789.5A Active CN112291318B (zh) 2020-10-20 2020-10-20 一种区块链网络节点添加方法、系统、存储介质和装置

Country Status (1)

Country Link
CN (1) CN112291318B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113377873A (zh) * 2021-06-25 2021-09-10 中关村智慧城市产业技术创新战略联盟 一种基于联盟链的知识产权保护区块链构建方法
CN113435786A (zh) * 2021-07-21 2021-09-24 杭州云象网络技术有限公司 用于节点管理的区块链运维监管方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107171829A (zh) * 2017-04-24 2017-09-15 杭州趣链科技有限公司 一种基于bft共识算法实现的动态节点管理方法
CN109474584A (zh) * 2018-10-29 2019-03-15 中化能源科技有限公司 一种基于规则的区块链网络自动许可加入方法
CN109660639A (zh) * 2018-12-11 2019-04-19 深圳市网心科技有限公司 一种数据上传方法、设备、系统及介质
CN110599069A (zh) * 2019-09-29 2019-12-20 腾讯科技(深圳)有限公司 基于区块链网络的应用评价方法及装置
CN110611647A (zh) * 2019-03-06 2019-12-24 张超 一种区块链系统上的节点加入方法和装置
CN110727731A (zh) * 2019-09-05 2020-01-24 阿里巴巴集团控股有限公司 区块链网络中加入节点的方法和区块链系统
CN111431867A (zh) * 2020-03-06 2020-07-17 杭州云象网络技术有限公司 一种基于区块链BaaS平台的节点接入方法
CN111464353A (zh) * 2020-03-31 2020-07-28 财付通支付科技有限公司 区块链节点管理方法、装置、计算机以及可读存储介质
CN111628886A (zh) * 2020-04-14 2020-09-04 苏宁金融科技(南京)有限公司 私有云环境下组建区块链网络的方法、装置、计算机设备

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107171829A (zh) * 2017-04-24 2017-09-15 杭州趣链科技有限公司 一种基于bft共识算法实现的动态节点管理方法
CN109474584A (zh) * 2018-10-29 2019-03-15 中化能源科技有限公司 一种基于规则的区块链网络自动许可加入方法
CN109660639A (zh) * 2018-12-11 2019-04-19 深圳市网心科技有限公司 一种数据上传方法、设备、系统及介质
CN110611647A (zh) * 2019-03-06 2019-12-24 张超 一种区块链系统上的节点加入方法和装置
CN110727731A (zh) * 2019-09-05 2020-01-24 阿里巴巴集团控股有限公司 区块链网络中加入节点的方法和区块链系统
US20200120157A1 (en) * 2019-09-05 2020-04-16 Alibaba Group Holding Limited System and method for adding node in blockchain network
CN110599069A (zh) * 2019-09-29 2019-12-20 腾讯科技(深圳)有限公司 基于区块链网络的应用评价方法及装置
CN111431867A (zh) * 2020-03-06 2020-07-17 杭州云象网络技术有限公司 一种基于区块链BaaS平台的节点接入方法
CN111464353A (zh) * 2020-03-31 2020-07-28 财付通支付科技有限公司 区块链节点管理方法、装置、计算机以及可读存储介质
CN111628886A (zh) * 2020-04-14 2020-09-04 苏宁金融科技(南京)有限公司 私有云环境下组建区块链网络的方法、装置、计算机设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113377873A (zh) * 2021-06-25 2021-09-10 中关村智慧城市产业技术创新战略联盟 一种基于联盟链的知识产权保护区块链构建方法
CN113435786A (zh) * 2021-07-21 2021-09-24 杭州云象网络技术有限公司 用于节点管理的区块链运维监管方法

Also Published As

Publication number Publication date
CN112291318B (zh) 2022-11-11

Similar Documents

Publication Publication Date Title
CN110569309B (zh) 用于实现区块链的设备、方法、系统以及介质
CN110413304B (zh) 基于区块链网络的智能合约热升级方法及装置
CN109493072B (zh) 一种基于联盟区块链的隐私合约保护的方法
CN112291318B (zh) 一种区块链网络节点添加方法、系统、存储介质和装置
CN109981279B (zh) 一种区块链系统、通信方法、装置、设备及介质
US20210176328A1 (en) Management Services for Distributed Computing Architectures Using Rolling Changes
CN110730081B (zh) 基于区块链网络的证书吊销方法、相关设备及介质
CN110597918A (zh) 一种账户管理方法、装置及计算机可读存储介质
CN110599166A (zh) 一种区块链内获取交易依赖关系的方法及装置
CN110764918A (zh) 一种容器集群中主节点管理方法
CN114116166A (zh) 基于智能合约的任务执行方法及装置
CN112398908B (zh) 一种区块链网络节点删除方法、系统、存储介质和装置
CN115134075A (zh) 跨子网调用方法、装置、电子设备和存储介质
CN113067899B (zh) 一种启动/关闭区块链节点服务的方法和装置
CN114710350B (zh) 一种可调用资源的分配方法、装置、电子设备和存储介质
US20230266994A1 (en) Migration of computational units in distributed networks
Llorens-Carrodeguas et al. An architecture for the 5G control plane based on SDN and data distribution service
CN115378605A (zh) 基于区块链的数据处理方法及装置
CN114710492A (zh) 直连通道的建立方法及装置
CN113259459A (zh) 区块链子网运行状态的控制方法和区块链系统
CN112291327A (zh) 区块链节点管理方法、装置及电子设备
CN106254947B (zh) 处理资源的扩展方法和装置
CN104216803A (zh) 一种退服节点的数据备份方法及装置
KR20150137766A (ko) 가상머신 스택 생성 시스템 및 방법
CN114363349B (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