CN111628886B - 私有云环境下组建区块链网络的方法、装置、计算机设备 - Google Patents
私有云环境下组建区块链网络的方法、装置、计算机设备 Download PDFInfo
- Publication number
- CN111628886B CN111628886B CN202010290401.0A CN202010290401A CN111628886B CN 111628886 B CN111628886 B CN 111628886B CN 202010290401 A CN202010290401 A CN 202010290401A CN 111628886 B CN111628886 B CN 111628886B
- Authority
- CN
- China
- Prior art keywords
- blockchain network
- channel
- configuration information
- node
- information
- 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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- 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/12—Discovery or management of network topologies
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及计算机领域,具体涉及一种私有云环境下组建区块链网络的方法、装置、计算机设备和存储介质。所述方法包括:响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;获取待添加节点对应的区块链网络指定信息和组织配置信息;根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;根据组织配置信息更新目标应用通道的通道配置信息;向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。本发明实施例能够实现让用户在私有云环境中与其他用户组建区块链网络。
Description
技术领域
本申请涉及计算机领域,特别是涉及一种私有云环境下组建区块链网络的方法、装置、计算机设备和存储介质。
背景技术
在区块链管理系统中,目前有提供公有云服务的BaaS(Blockchain-as-a-Service,区块链即服务平台)系统,其是指将区块链框架嵌入云计算平台,利用云服务基础设施的部署和管理优势,为开发者提供便捷、高性能的区块链生态环境和生态配套服务,支持开发者的业务拓展及运营支持的区块链开放平台。用户可以向服务商申请硬件资源和网络资源来创建区块链网络,或者搭建新节点以加入其他区块链网络。
用户也可以在自己的私有云环境中创建区块链网络。出于安全考虑,用户自己的私有云环境不会对外提供服务,因此用户使用现有的提供公有云服务的BaaS系统难以对部署于私有云环境中的硬件设施进行管理。用户也可以搭建私有的BaaS系统来管理该硬件设施,可是目前私有的BaaS系统不能支持用户与其他使用私有的BaaS系统的用户一起组建区块链网络。
发明内容
本发明针对现有技术的缺点,提供了一种私有云环境下组建区块链网络的方法、装置、计算机设备和存储介质,本发明实施例实现让用户在私有云环境中与其他用户组建区块链网络。
本发明根据第一方面提供了一种私有云环境下组建区块链网络的方法,在一个实施例中,方法包括:
响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;
获取待添加节点对应的区块链网络指定信息和组织配置信息;
根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;
根据组织配置信息更新目标应用通道的通道配置信息;
向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。
在一个实施例中,根据组织配置信息更新目标应用通道的通道配置信息,包括:
获取目标应用通道对应的当前通道配置信息;
根据当前通道配置信息和组织配置信息生成配置更新交易文件;
根据配置更新交易文件更新目标应用通道的通道配置信息。
在一个实施例中,获取目标应用通道对应的当前通道配置信息,包括:
获取目标应用通道当前通道配置区块;
对当前通道配置区块进行解码,得到目标应用通道对应的当前通道配置信息;
在一个实施例中,根据当前通道配置信息和组织配置信息生成配置更新交易文件,包括:
将组织配置信息添加到当前通道配置信息中,得到新的当前通道配置信息;
将新的当前通道配置信息与当前通道配置信息进行对比,获得增量信息,将增量信息进行打包,生成配置更新交易文件。
在一个实施例中,根据配置更新交易文件更新目标应用通道的通道配置信息,包括:
对配置更新交易文件进行验证;
若配置更新交易文件通过验证,根据配置更新交易文件生成新的通道配置区块;
将新的通道配置区块添加到目标应用通道对应的区块链中。
在一个实施例中,向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道,包括:
向BaaS系统发送与目标区块链网络对应的节点添加支持信息;
接收BaaS系统发送的账本信息同步请求,账本信息同步请求是BaaS系统根据接收到的节点添加支持信息生成的;
将与账本信息同步请求对应的账本信息发送给BaaS系统。
本发明根据第二方面提供了一种私有云环境下组建区块链网络的装置,在一个实施例中,该装置包括:
节点确定模块,用于响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;
对应信息获取模块,用于获取待添加节点对应的区块链网络指定信息和组织配置信息;
网络信息确定模块,用于根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;
配置信息更新模块,用于根据组织配置信息更新目标应用通道的通道配置信息;
支持信息发送模块,用于向BaaS系统发送述目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。
在一个实施例中,所述配置信息更新模块,包括:
当前配置获取子模块,用于获取目标应用通道对应的当前通道配置信息;
配置文件生成子模块,用于根据当前通道配置信息和组织配置信息生成配置更新交易文件;
配置信息更新子模块,用于根据配置更新交易文件更新目标应用通道的通道配置信息。
本发明根据第三方面提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一方法的实施例的步骤。
本发明根据第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述任一方法的实施例的步骤。
在本发明实施例中,响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;获取待添加节点对应的区块链网络指定信息和组织配置信息;根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;根据组织配置信息更新目标应用通道的通道配置信息;向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道,从而能够实现让用户在私有云环境中与其他用户组建区块链网络。
附图说明
图1为一个实施例中一种私有云环境下组建区块链网络的方法的应用环境图;
图2为一个实施例中一种私有云环境下组建区块链网络的方法的流程示意图;
图3为一个实施例中更新通道配置信息的流程示意图;
图4为一个实施例中一种私有云环境下组建区块链网络的装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅用以解释本申请,并不用于限定本申请。
如图1所示为本发明一个实施例中一种私有云环境下组建区块链网络的方法的应用环境。本实施例中涉及到的区块链网络是由属于不同组织的节点构建而成。一个组织可以在一个区块链网络中拥有多个节点。一个区块链网络中的部分组织可以通过加入同一应用通道来进行通信,在应用通道中信息只有已加入应用通道中的组织能够看到,应用通道可以看成是区块链网络中部分组织的私有通信子网。
在本实施例中,用户(指组织)可以在自己的私有云环境中部署BaaS系统,进而可以通过自己的BaaS系统来创建区块链网络,还可以通过自己的BaaS系统加入其他用户创建的区块链网络中。如图1所示,第一用户在自己的私有云环境部署了第一BaaS系统,第二用户在自己的私有云环境部署了第二BaaS系统(第一BaaS系统和第二BaaS系统是结构相同的系统,这里为了方便区别,以“第一”“第二”进行区分)。在私有云部署中,用户的BaaS系统可以包括有应用服务器、Master服务器和Slave服务器。Slave服务器可以是由Fabric容器组成,包括Peer节点(也叫网络节点)和Orderer节点(也叫排序节点、共识节点等)等,其中,Peer节点或Orderer节点的数量可以是一个或多个。Master服务器由BaaS系统的管理功能组成。应用服务器提供图形化的管理界面,用户可以通过该管理界面向Master服务器下发指令,从而使用Master服务器的接口对Slave服务器中的区块链底层系统进行管理。
第一BaaS系统和第二BaaS系统在进行交互时,第一BaaS系统会开放自己的Master服务器对外的公网IP和端口,供第二BaaS系统中的Master服务器访问。第一BaaS系统开放自己的Slave服务器中Kafka和Orderer节点对应的公网IP和端口,供第二BaaS系统中的Slave服务器中的Peer和Orderer节点访问。当然,第二BaaS系统访问第一BaaS系统之前需要开通访问公网IP和端口的网络访问权限。具体地,在各个BaaS系统中的应用服务器、Master服务器或Slave服务器都可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
如图2所示是本发明一个实施例提供的一种私有云环境下组建区块链网络的方法,应用于图1所示的第一BaaS系统,需要说明的是,为了在以下说明中方便与执行主体第一BaaS系统区分,将“权利要求书”和“发明内容”中的BaaS系统标示为第二BaaS系统。该方法包括以下步骤:
步骤S110:响应于第二BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点。
在本实施例中,第一BaaS系统中有由第一用户创建的至少一个区块链网络,其他用户可以通过部署于自己私有云环境中的BaaS系统来加入第一用户创建的区块链网络。本实施例中是第二用户通过部署于自己私有云环境中的第二BaaS系统向第一BaaS系统发送区块链网络加入请求。
具体地,步骤S110之前还包括,响应于用户(即创建了区块链网络的用户,这里指第一用户)的区块链网络加入邀请指令,向第二BaaS系统发送区块链网络加入邀请通知。也就是说,要加入第一用户创建的区块链网络,需要先得到第一用户的区块链网络加入邀请,之后才能请求加入第一用户创建的区块链网络。更具体地,在第二BaaS系统接收到第一BaaS系统发送的区块链网络加入邀请通知之后,第二用户可以向第二BaaS系统下发外部区块链网络加入指令,第二BaaS系统接收到该指令后确定与该指令对应的待添加节点以及与该待添加节点对应的区块链网络指定信息,并生成待添加节点对应的组织配置信息,然后将该添加节点的节点标识以及与其对应的区块链网络指定信息和组织配置信息包含在区块链网络加入请求中。其中,区块链网络指定信息包括用户(即申请加入区块链网络的用户,这里指第二用户)指定要加入的目标区块链网络的网络标识和目标应用通道的通道标识,目标应用通道是目标区块链网络拥有的多条应用通道中的一条应用通道(目标区块链网络当前可能只有一条应用通道,那么目标应用通道即是指目标区块链网络拥有的应用通道),该待添加节点是用户(这里的用户指第二用户)指定的要加入目标应用通道的节点。
步骤S120:获取待添加节点对应的区块链网络指定信息和组织配置信息。
在本实施例中,如上所述,第一BaaS系统确定区块链网络加入请求对应的待添加节点之后,从区块链网络加入请求中获取待添加节点对应的区块链网络指定信息和组织配置信息。
步骤S130:根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道。
在本实施例中,区块链网络指定信息包括有目标区块链网络的网络标识和目标应用通道的通道标识,因而,第一BaaS系统可以通过该网络标识来确定目标区块链网络,以及通过该通道标识来确定目标应用通道。
S140:根据组织配置信息更新目标应用通道的通道配置信息。
在本实施例中,第一BaaS系统获取到待添加节点的组织配置信息之后就根据组织配置信息更新目标应用通道的通道配置信息。在更新目标应用通道的通道配置信息之后,待添加节点所属的组织就拥有在目标应用通道进行操作的权限。
S150:向第二BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示第二BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。
在本实施例中,第一BaaS系统在成功更新目标应用通道的通道配置信息之后,待添加节点所属的组织就具备了在目标应用通道进行操作的权限,然而,组织要在应用通道中进行的操作需要通过peer节点来实现,因此第一BaaS系统在执行完步骤S140之后还需要执行步骤S150。
具体地,第一BaaS系统会获取目标区块链网络的系统通道对应的创世区块(即系统通道的初始区块)作为节点添加支持信息,然后将其发送给第二BaaS系统,当第二BaaS系统根据该节点添加支持信息将待添加节点加到目标应用通道之后,待添加节点对应的组织就能通过待添加节点在目标应用通道中进行实际的操作了,也就是说第二BaaS系统将待添加节点加到目标应用通道之后,第二用户才算是真正加入到第一用户创建的目标区块链网络中,从而实现用户将硬件资源部署于自己的私有云环境中也能够与其他用户一起组建区块链网络。
在一个实施例中,如图3所示,第一BaaS系统根据组织配置信息更新目标应用通道的通道配置信息的步骤,具体包括:
S141:获取目标应用通道对应的当前通道配置信息;
S142:根据当前通道配置信息和组织配置信息生成配置更新交易文件;
S143:根据配置更新交易文件更新目标应用通道的通道配置信息。
在本实施例中,需要说明的是,每个应用通道都对应一个独立的共享账本(sharedledger,或者可以称为区块链),应用通道中的各个节点都有一份共享账本的拷贝。共享账本或者说区块链是链式数据结构,区块链中的数据单元是区块,多个区块按照产生顺序串联起来就构成了区块链,通常每个区块会包括前一区块的哈希值、时间戳以及一条或多条经过背书的交易记录。应用通道的通道配置信息就记录于区块链中的某一个区块,这个区块也可以称为通道配置区块,与其他区块不同的是,通道配置区块中不会包含任何交易记录,只包含有应用通道的配置信息。
当第一BaaS系统在获取目标应用通道对应的当前通道配置信息时,需要先获取目标应用通道的当前通道配置区块,当前通道配置区块是时间上最新的通道配置区块,具体地,第一BaaS系统可以通过预置的SDK(Software Development Kit,软件开发工具包)来获取当前通道配置区块,然后对获取到的当前通道配置区块进行解码,得到目标应用通道对应的当前通道配置信息,其中,将当前通道配置区块解码后可以得到json格式的文件,这样可以方便后续对当前通道配置信息进行更新。
第一BaaS系统在获得当前通道配置信息后,将之前获得的待添加节点对应的组织配置信息添加到当前通道配置信息中,从而得到新的当前通道配置信息,再将新的当前通道配置信息与该当前通道配置信息进行对比以得到两者之间的增量信息,将该增量信息进行打包以生成配置更新交易文件,最后根据配置更新交易文件来更新目标应用通道的通道配置信息。通道配置信息的更新实际上也是一种交易,或者说可以看成是对共享账本的更新,共享账本的更新需要得到应用通道中其他组织的同意,具体地,第一BaaS系统会发起账本更新提议,其他组织会对该账本更新提议进行响应,也就是将自己的数字签名加入响应中,并用自己的组织管理员身份证书对响应进行签名,当其他组织完成签名后,第一BaaS系统就向目标区块链网络发起通道配置更新请求,而orderer节点会收集这些账本更新提议的响应,之后基于这些响应以及当前通道配置区块生成一个新的区块,这个新的区块即是新的通道配置区块,然后将这个新的通道配置区块添加到目标应用通道对应的区块链中,具体是orderer节点会将新的通道配置区块分发给目标应用通道中其他组织对应的节点,其他组织对应的节点会将该区块更新到自己负责维护的共享账本上,这样就完成了共享账本的更新。
在一个实施例中,向第二BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示第二BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道,包括:
向第二BaaS系统发送与目标区块链网络对应的节点添加支持信息;
接收第二BaaS系统发送的账本信息同步请求,账本信息同步请求是第二BaaS系统根据接收到的节点添加支持信息生成的;
将与账本信息同步请求对应的账本信息发送给第二BaaS系统。
在本实施例中,节点添加支持信息是目标区块链网络的创世区块,创世区块是目标区块链网络的系统通道的初始区块。需要说明的是,一个区块链网络只有一个系统通道,但可以有一个或多个应用通道,应用通道是提供给区块链网络中的部分成员进行通信的通道,而系统通道是提供给orderer节点用来管理区块链网络中所有应用通道的通道。当第一BaaS系统将目标区块链网络对应的创世区块发送给第二BaaS系统后,第二BaaS系统会基于该目标区块链网络对应的创世区块来生成账本信息同步请求。具体地,第二BaaS系统中的orderer节点会在获取到创世区块之后,自动向第一BaaS系统发送用于同步系统通道账本的账本信息同步请求,第一BaaS系统在接收到该请求后,就将系统通道账本剩余的账本信息(即与账本信息同步请求对应的账本信息)发送给第二BaaS系统中的orderer节点。
进一步地,当第二BaaS系统中的待添加节点被添加到目标区块链网络中的目标应用通道之后,待添加节点也会自动向第一BaaS系统发送用于同步应用通道账本的应用通道账本同步请求,第一BaaS系统在接收到该请求后,就将目标应用通道的共享账本发送给第二BaaS系统中的待添加节点。具体地,待添加节点是向该目标应用通道中的初始orderer节点发送应用通道账本同步请求,该请求中会包含目标应用通道的通道标识。
在一个实施例中,第一用户通过第一BaaS系统也可以加入其他用户通过其BaaS系统建立的区块链网络。第一用户加入其他用户建立的区块链网络的过程与上述实施例介绍的第二用户加入本用户(即第一用户)建立的区块链网络的过程相似。
以下是第一用户通过第一BaaS系统加入第二用户通过第二BaaS系统建立的区块链网络的过程,包括步骤S210-S250。(需要说明的是,以下内容仅是示例,比如第一用户也可以加入其他用户如第三用户或第四用户等建立的区块链网络)
步骤S210:第一BaaS系统响应于用户(这里指第一用户)下发的外部区块链网络加入指令,确定外部区块链网络加入指令对应的待添加节点及其区块链网络指定信息,区块链网络指定信息包括用户指定要加入的目标区块链网络的网络标识和目标应用通道的通道标识,待添加节点是用户指定的节点;
步骤S220:生成待添加节点对应的组织配置信息;
步骤S230:向第二BaaS系统发送区块链网络加入请求,区块链网络加入请求与组织配置信息和区块链网络指定信息关联;
步骤S240:接收第二BaaS系统发送的节点添加支持信息,节点添加支持信息是第二BaaS系统响应于区块链网络加入请求,获取与待添加节点对应的组织配置信息和区块链网络指定信息,根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道,根据组织配置信息更新目标应用通道的通道配置信息之后发送的;
步骤S250:根据节点添加支持信息将待添加节点加入目标应用通道。
关于本实施例中介绍的第一用户加入其他用户建立的区块链网络的过程的具体限定可以参见前述实施例中的限定,在此不再赘述。
在一个实施例中,如图4所示,提供了一种私有云环境下组建区块链网络的装置,包括以下模块:
节点确定模块110,用于响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;
对应信息获取模块120,用于获取待添加节点对应的区块链网络指定信息和组织配置信息;
网络信息确定模块130,用于根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;
配置信息更新模块140,用于根据组织配置信息更新目标应用通道的通道配置信息;
支持信息发送模块150,用于向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。
在一个实施例中,配置信息更新模块140,包括:
当前配置获取子模块,用于获取目标应用通道对应的当前通道配置信息;
配置文件生成子模块,用于根据当前通道配置信息和组织配置信息生成配置更新交易文件;
配置信息更新子模块,用于根据配置更新交易文件更新目标应用通道的通道配置信息。
在一个实施例中,当前配置获取子模块,包括:
当前配置区块获取单元,用于获取目标应用通道当前通道配置区块;
配置区块解码单元,用于对当前通道配置区块进行解码,得到目标应用通道对应的当前通道配置信息。
在一个实施例中,配置文件生成子模块,包括:
新配置信息获得单元,用于将组织配置信息添加到当前通道配置信息中,得到新的当前通道配置信息;
新配置信息打包单元,用于将新的当前通道配置信息与当前通道配置信息进行对比,获得增量信息,将增量信息进行打包,生成配置更新交易文件。
在一个实施例中,配置信息更新子模块,包括:
交易文件验证单元,用于对配置更新交易文件进行验证;
区块生成单元,用于当配置更新交易文件通过验证时,根据配置更新交易文件生成新的通道配置区块;
上链单元,用于将新的通道配置区块添加到目标应用通道对应的区块链中。
在一个实施例中,支持信息发送模块150,包括:
支持信息发送子模块,用于向BaaS系统发送节点添加支持信息;
同步请求接收子模块,用于接收BaaS系统发送的账本信息同步请求,账本信息同步请求是BaaS系统根据接收到的节点添加支持信息生成的;
账本信息发送子模块,用于将与账本信息同步请求对应的账本信息发送给BaaS系统。
在一个实施例中,该私有云环境下组建区块链网络的装置,还包括以下模块:
节点信息确定模块210,用于响应于用户下发的外部区块链网络加入指令,确定外部区块链网络加入指令对应的待添加节点及其区块链网络指定信息,区块链网络指定信息包括用户指定要加入的目标区块链网络的网络标识和目标应用通道的通道标识,待添加节点是用户指定的节点;
配置信息生成模块220,用于生成待添加节点对应的组织配置信息;
网络加入请求发送模块230,用于向BaaS系统发送区块链网络加入请求,区块链网络加入请求与组织配置信息和区块链网络指定信息关联;
支持信息接收模块240,用于接收BaaS系统发送的节点添加支持信息,节点添加支持信息是BaaS系统响应于区块链网络加入请求,获取与待添加节点对应的组织配置信息和区块链网络指定信息,根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道,根据组织配置信息更新目标应用通道的通道配置信息之后发送的;
应用通道加入模块250,用于根据节点添加支持信息将待添加节点加入目标应用通道。
关于上述实施例中介绍的私有云环境下组建区块链网络的装置的具体限定可以参见上文中对于私有云环境下组建区块链网络的方法的限定,在此不再赘述。上述私有云环境下组建区块链网络的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储区块链网络及其系统通道/应用通道的相关信息等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种私有云环境下组建区块链网络的方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;获取待添加节点对应的区块链网络指定信息和组织配置信息;根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;根据组织配置信息更新目标应用通道的通道配置信息;向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。
在一个实施例中,处理器执行计算机程序,实现根据组织配置信息更新目标应用通道的通道配置信息时,还实现以下步骤:
获取目标应用通道对应的当前通道配置信息;根据当前通道配置信息和组织配置信息生成配置更新交易文件;根据配置更新交易文件更新目标应用通道的通道配置信息。
在一个实施例中,处理器执行计算机程序,实现获取目标应用通道对应的当前通道配置信息时,还实现以下步骤:
获取目标应用通道当前通道配置区块;对当前通道配置区块进行解码,得到目标应用通道对应的当前通道配置信息。
在一个实施例中,处理器执行计算机程序,实现根据当前通道配置信息和组织配置信息生成配置更新交易文件时,还实现以下步骤:
将组织配置信息添加到当前通道配置信息中,得到新的当前通道配置信息;将新的当前通道配置信息与当前通道配置信息进行对比,获得增量信息,将增量信息进行打包,生成配置更新交易文件。
在一个实施例中,处理器执行计算机程序,实现根据配置更新交易文件更新目标应用通道的通道配置信息时,还实现以下步骤:
对配置更新交易文件进行验证;若配置更新交易文件通过验证,根据配置更新交易文件生成新的通道配置区块;将新的通道配置区块添加到目标应用通道对应的区块链中。
在一个实施例中,处理器执行计算机程序,实现向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道时,还实现以下步骤:
向BaaS系统发送与目标区块链网络对应的节点添加支持信息;接收BaaS系统发送的账本信息同步请求,账本信息同步请求是BaaS系统根据接收到的节点添加支持信息生成的;将与账本信息同步请求对应的账本信息发送给BaaS系统。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
响应于BaaS系统发送的区块链网络加入请求,确定区块链网络加入请求对应的待添加节点;获取待添加节点对应的区块链网络指定信息和组织配置信息;根据区块链网络指定信息确定待添加节点要加入的目标区块链网络和目标应用通道;根据组织配置信息更新目标应用通道的通道配置信息;向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道。
在一个实施例中,计算机程序被处理器执行,根据组织配置信息更新目标应用通道的通道配置信息时,还实现以下步骤:
获取目标应用通道对应的当前通道配置信息;根据当前通道配置信息和组织配置信息生成配置更新交易文件;根据配置更新交易文件更新目标应用通道的通道配置信息。
在一个实施例中,计算机程序被处理器执行,获取目标应用通道对应的当前通道配置信息时,还实现以下步骤:
获取目标应用通道当前通道配置区块;对当前通道配置区块进行解码,得到目标应用通道对应的当前通道配置信息。
在一个实施例中,计算机程序被处理器执行,根据当前通道配置信息和组织配置信息生成配置更新交易文件时,还实现以下步骤:
将组织配置信息添加到当前通道配置信息中,得到新的当前通道配置信息;将新的当前通道配置信息与当前通道配置信息进行对比,获得增量信息,将增量信息进行打包,生成配置更新交易文件。
在一个实施例中,计算机程序被处理器执行,根据配置更新交易文件更新目标应用通道的通道配置信息时,还实现以下步骤:
对配置更新交易文件进行验证;若配置更新交易文件通过验证,根据配置更新交易文件生成新的通道配置区块;将新的通道配置区块添加到目标应用通道对应的区块链中。
在一个实施例中,计算机程序被处理器执行,向BaaS系统发送与目标区块链网络对应的节点添加支持信息,以指示BaaS系统根据节点添加支持信息将待添加节点加入目标应用通道时,还实现以下步骤:
向BaaS系统发送与目标区块链网络对应的节点添加支持信息;接收BaaS系统发送的账本信息同步请求,账本信息同步请求是BaaS系统根据接收到的节点添加支持信息生成的;将与账本信息同步请求对应的账本信息发送给BaaS系统。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种私有云环境下组建区块链网络的方法,其特征在于,应用于部署于第一用户的私有云环境的第一BaaS系统;所述方法包括:
响应于部署于第二用户的私有云环境的第二BaaS系统发送的区块链网络加入请求,确定所述区块链网络加入请求对应的待添加节点;
获取所述待添加节点对应的区块链网络指定信息和组织配置信息;
根据所述区块链网络指定信息确定所述待添加节点要加入的目标区块链网络和目标应用通道;所述目标区块链网络包括一个系统通道和一个或多个应用通道;
根据所述组织配置信息更新所述目标应用通道的通道配置信息;
向所述第二BaaS系统发送与所述目标区块链网络对应的节点添加支持信息,以指示所述第二BaaS系统根据所述节点添加支持信息将所述待添加节点加入所述目标应用通道,包括:向所述第二BaaS系统中的共识节点发送与所述目标区块链网络对应的节点添加支持信息,所述节点添加支持信息是所述目标区块链网络的系统通道的初始区块;接收所述第二BaaS系统中的共识节点根据所述节点添加支持信息生成的用于同步系统通道账本的账本信息同步请求,将系统通道账本剩余的账本信息发送给所述第二BaaS系统中的共识节点。
2.如权利要求1所述的私有云环境下组建区块链网络的方法,其特征在于,所述根据所述组织配置信息更新所述目标应用通道的通道配置信息,包括:
获取所述目标应用通道对应的当前通道配置信息;
根据所述当前通道配置信息和所述组织配置信息生成配置更新交易文件;
根据所述配置更新交易文件更新所述目标应用通道的通道配置信息。
3.如权利要求2所述的私有云环境下组建区块链网络的方法,其特征在于,所述获取所述目标应用通道对应的当前通道配置信息,包括:
获取所述目标应用通道当前通道配置区块;
对所述当前通道配置区块进行解码,得到所述目标应用通道对应的当前通道配置信息。
4.如权利要求2所述的私有云环境下组建区块链网络的方法,其特征在于,所述根据所述当前通道配置信息和所述组织配置信息生成配置更新交易文件,包括:
将所述组织配置信息添加到所述当前通道配置信息中,得到新的当前通道配置信息;
将所述新的当前通道配置信息与所述当前通道配置信息进行对比,获得增量信息,将所述增量信息进行打包,生成配置更新交易文件。
5.如权利要求2所述的私有云环境下组建区块链网络的方法,其特征在于,所述根据所述配置更新交易文件更新所述目标应用通道的通道配置信息,包括:
对所述配置更新交易文件进行验证;
若所述配置更新交易文件通过验证,根据所述配置更新交易文件生成新的通道配置区块;
将所述新的通道配置区块添加到所述目标应用通道对应的区块链中。
6.一种私有云环境下组建区块链网络的装置,其特征在于,应用于部署于第一用户的私有云环境的第一BaaS系统;所述装置包括:
节点确定模块,用于响应于部署于第二用户的私有云环境的第二BaaS系统发送的区块链网络加入请求,确定所述区块链网络加入请求对应的待添加节点;
对应信息获取模块,用于获取所述待添加节点对应的区块链网络指定信息和组织配置信息;
网络信息确定模块,用于根据所述区块链网络指定信息确定所述待添加节点要加入的目标区块链网络和目标应用通道;所述目标区块链网络包括一个系统通道和一个或多个应用通道;
配置信息更新模块,用于根据所述组织配置信息更新所述目标应用通道的通道配置信息;
支持信息发送模块,用于向所述第二BaaS系统发送与所述目标区块链网络对应的节点添加支持信息,以指示所述第二BaaS系统根据所述节点添加支持信息将所述待添加节点加入所述目标应用通道;
所述支持信息发送模块,具体用于向所述第二BaaS系统中的共识节点发送与所述目标区块链网络对应的节点添加支持信息,所述节点添加支持信息是所述目标区块链网络的系统通道的初始区块;接收所述第二BaaS系统中的共识节点根据所述节点添加支持信息生成的用于同步系统通道账本的账本信息同步请求,将系统通道账本剩余的账本信息发送给所述第二BaaS系统中的共识节点。
7.如权利要求6所述的私有云环境下组建区块链网络的装置,其特征在于,所述配置信息更新模块,包括:
当前配置获取子模块,用于获取目标应用通道对应的当前通道配置信息;
配置文件生成子模块,用于根据当前通道配置信息和组织配置信息生成配置更新交易文件;
配置信息更新子模块,用于根据配置更新交易文件更新目标应用通道的通道配置信息。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010290401.0A CN111628886B (zh) | 2020-04-14 | 2020-04-14 | 私有云环境下组建区块链网络的方法、装置、计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010290401.0A CN111628886B (zh) | 2020-04-14 | 2020-04-14 | 私有云环境下组建区块链网络的方法、装置、计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111628886A CN111628886A (zh) | 2020-09-04 |
CN111628886B true CN111628886B (zh) | 2023-06-09 |
Family
ID=72259710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010290401.0A Active CN111628886B (zh) | 2020-04-14 | 2020-04-14 | 私有云环境下组建区块链网络的方法、装置、计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111628886B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112291318B (zh) * | 2020-10-20 | 2022-11-11 | 杭州云象网络技术有限公司 | 一种区块链网络节点添加方法、系统、存储介质和装置 |
CN113014656B (zh) * | 2021-03-09 | 2023-04-07 | 北京百度网讯科技有限公司 | 私有云信息同步方法和装置 |
CN116155518A (zh) * | 2021-11-22 | 2023-05-23 | 中兴通讯股份有限公司 | 数据通信方法及其装置、存储介质、程序产品 |
CN115086353A (zh) * | 2022-05-06 | 2022-09-20 | 讯飞智元信息科技有限公司 | 区块链事件处理方法及相关装置、设备、平台和存储介质 |
CN115314374B (zh) * | 2022-07-06 | 2024-02-06 | 京东科技信息技术有限公司 | 区块链节点的部署方法、设备、存储介质及程序产品 |
CN115695440A (zh) * | 2022-09-20 | 2023-02-03 | 天翼电子商务有限公司 | 一种基于gossip通信的分布式区块链BaaS系统 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110417896A (zh) * | 2019-07-31 | 2019-11-05 | 中国工商银行股份有限公司 | 基于云的区块链动态组网的系统及方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107911421B (zh) * | 2017-10-30 | 2020-05-15 | 上海点融信息科技有限责任公司 | 用于配置区块链中跨网络通信的方法、设备和计算机存储介质 |
CN108305072B (zh) * | 2018-01-04 | 2021-02-26 | 上海点融信息科技有限责任公司 | 部署区块链网络的方法、设备和计算机存储介质 |
CN109246179B (zh) * | 2018-06-30 | 2021-06-01 | 华为技术有限公司 | 维护区块链的方法和装置、服务器和计算机可读存储介质 |
-
2020
- 2020-04-14 CN CN202010290401.0A patent/CN111628886B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110417896A (zh) * | 2019-07-31 | 2019-11-05 | 中国工商银行股份有限公司 | 基于云的区块链动态组网的系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111628886A (zh) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111628886B (zh) | 私有云环境下组建区块链网络的方法、装置、计算机设备 | |
CN109728954B (zh) | 联盟链节点管理系统以及方法 | |
US11615195B2 (en) | Systems and methods for providing multi-node resiliency for blockchain peers | |
CN109683826B (zh) | 用于分布式存储系统的扩容方法和装置 | |
US20190266134A1 (en) | Data migration method, apparatus, and storage medium | |
CN113169952B (zh) | 一种基于区块链技术的容器云管理系统 | |
WO2018228337A1 (zh) | 业务数据存储方法、计算机可读存储介质以及电子设备 | |
CN109981279B (zh) | 一种区块链系统、通信方法、装置、设备及介质 | |
CN111294379B (zh) | 区块链网络服务平台及其权限托管方法、存储介质 | |
CN106911648B (zh) | 一种环境隔离方法及设备 | |
CN111737104A (zh) | 区块链网络服务平台及其测试用例共享方法、存储介质 | |
CN109857751A (zh) | 基于区块链的跨平台数据更新方法、装置和计算机设备 | |
CN106452836B (zh) | 主节点设置方法及装置 | |
CN111400112A (zh) | 分布式集群的存储系统的写入方法、装置及可读存储介质 | |
CN110730081B (zh) | 基于区块链网络的证书吊销方法、相关设备及介质 | |
CN110597918A (zh) | 一种账户管理方法、装置及计算机可读存储介质 | |
CN114528601B (zh) | 基于区块链数据的访问方法和装置、处理器及电子设备 | |
CN113609231A (zh) | 一种维护区块链系统的网络架构信息的方法和装置 | |
CN110113217B (zh) | 微服务管理方法、装置、管理平台及存储介质 | |
CN112039910A (zh) | 一种认证与权限的统一管理的方法、系统、设备及介质 | |
CN114465714A (zh) | 联盟链中的节点配置方法及系统 | |
US20210067402A1 (en) | Disaster Recovery of Cloud Resources | |
CN113934577A (zh) | 一种跨数据中心部署的区块链网络共识节点的灾备方法 | |
CN113093995A (zh) | 一种云盘数据的迁移方法和系统 | |
CN108599979B (zh) | 非ha模式向ha模式转换的方法和装置 |
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 |