CN111414210B - 基于主链生成侧链的方法、装置及计算机可读存储介质 - Google Patents

基于主链生成侧链的方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN111414210B
CN111414210B CN202010216421.3A CN202010216421A CN111414210B CN 111414210 B CN111414210 B CN 111414210B CN 202010216421 A CN202010216421 A CN 202010216421A CN 111414210 B CN111414210 B CN 111414210B
Authority
CN
China
Prior art keywords
chain
side chain
node
request transaction
registration
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
Application number
CN202010216421.3A
Other languages
English (en)
Other versions
CN111414210A (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.)
Beijing Xinchuang Zhichain Technology Co ltd
Original Assignee
Beijing Xinchuang Zhichain 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 Beijing Xinchuang Zhichain Technology Co ltd filed Critical Beijing Xinchuang Zhichain Technology Co ltd
Priority to CN202010216421.3A priority Critical patent/CN111414210B/zh
Publication of CN111414210A publication Critical patent/CN111414210A/zh
Application granted granted Critical
Publication of CN111414210B publication Critical patent/CN111414210B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User profiles; Roaming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本文涉及区块链技术领域,尤其涉及一种基于主链生成侧链的方法、装置及计算机可读存储介质。为了更加快速、便捷的生成从属于主链的侧链,本文提供的方法通过配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;根据所述侧链注册文件中的侧链注册信息在主链区块中注册侧链;配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建。从而生成了从属于主链的侧链,保证了主链与侧链之间安全通信,并且可以根据主链快速生成侧链。

Description

基于主链生成侧链的方法、装置及计算机可读存储介质
技术领域
本文涉及区块链技术领域,尤其涉及一种基于主链生成侧链的方法、装置及计算机可读存储介质。
背景技术
分布式账本系统(DLS),也可称为共识网络和/或区块链网络,使参与的实体能够安全地、不可篡改地存储数据。在不引用任何特定用例的情况,DLS通常被称为区块链网络。
区块链网络的示例类型可包括公有区块链网络、私有区块链网络和联盟区块链网络。公有区块链网络向所有实体开放以使用DLS,并开放参与共识过程。私有区块链网络针对特定实体提供,该实体集中控制读写权限。联盟区块链网络针对选定的实体组群提供,这些实体组群控制共识过程并包括访问控制层。区块链具有去中心化、反篡改、数据一致性存储、过程透明可追踪等技术优势,其被认为在金融、征信、物联网、经济贸易结算、资产管理等众多领域都拥有广泛的应用前景。
而在众多条链中,相关资产都是独立的,为了解决不同链之间交易问题,跨链技术随之而生,跨链最基本的意义就是要实现价值的流通,解决不同链之间的具有价值的数据的孤岛问题,通过跨链技术打通组成更大的泛区块链网络,变得越来越有实际意义。例如,有1个独立的供应链区块链和1个独立的商品售卖区块链,2个区块链合起来,才能涵盖一个商品从生产到售卖的整个生命周期。如果通过跨链技术将2个区块链的数据打通实现共享和交换,就能实现一个商品的全生命周期的追溯,以及基于实现全生命周期的数据挖掘等,这将对现实生产具有非常重要的参考价值和指导意义。
但是,现有技术中都是通过人工手动方式配置主链网络从而生成侧链网络,但是这种生成方式速度慢,建立的侧链也不能快速的与主链通信,造成主链和侧链之间跨链通信的瓶颈。
发明内容
为解决现有技术中的技术问题,本文实施例提供了一种基于主链生成侧链的方法、装置及计算机可读存储介质,可以基于主链快速的生成属于该主链的侧链,并且能够实现主链与侧链之间的数据安全,以及方便的主链与侧链之间进行相互通信。
本文提供了一种基于主链生成侧链的方法,包括,
配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;
根据所述侧链注册文件中的侧链注册信息在主链区块中注册侧链;
配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;
根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建。
本文还提供了一种基于主链生成侧链的装置,包括,
侧链注册单元,用于配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;
侧链注册单元,用于根据所述侧链注册文件中的侧链注册信息在主链的区块中注册侧链;
侧链创世配置单元,用于配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;
侧链创世单元,用于根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建。
本文还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
本文还提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现上述的方法。
利用本文实施例,可以根据主链的数据结构、代码结构、安全架构等特点便捷的生成属于该主链的侧链,并且提高主链与侧链的通信安全,扩展主链的应用领域以及主链的存储空间。
附图说明
为了更清楚地说明本文实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本文的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本文实施例的区块链结构示意图;
图2所示为本文实施例基于主链生成侧链方法的流程图;
图3所示为本文实施例基于主链生成侧链方法的具体流程图;
图4所示的本文实施例验证侧链注册请求交易的方法流程图;
图5所示为本文实施例一种基于主链生成侧链的装置结构示意图;
图6所示为本文实施例节点的结构示意图。
具体实施方式
下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。
如图1所示为本文实施例的区块链结构示意图,在该图中,包括主链网络100和第一侧链网络200以及第二侧链网络300,还可以包括更多的侧链网络,由于所有的区块链网络都基于互联网,因此有的互联网中的计算机(或服务器)很难用地域或者空间的方式确切的区分其为主链网络100中的节点还是哪个侧链网络中的节点,因此在附图1中以“链”状来描述主链网络和侧链网络,但在真实网络环境中可能更加复杂。
在本文的系统环境中,所有的侧链网络200或300均与主链网络100连接并分别可以与主链网络100进行通信(即数据传输),但是第一侧链网络200与第二侧链网络300之间不能进行直接的通信,需通过主链网络100进行“转达”。在主链网络100或者侧链网络200、300中“转达”数据信息时都是通过各自网络中的中继节点完成,例如,第一侧链网络200通过其内部的中继节点与主链网络100中的中继节点通信,将查询、存储等数据信息发送给主链网络100中的中继节点,主链网络中的中继节点将需要发送给第二侧链网络300的数据信息发送给第二侧链网络300的中继节点。
在每一条侧链网络中都保存有自己侧链网络的共享账簿,主链中也保留了主链的共享账簿。
第一种情况,当例如第一侧链网络中的用户与另一个在所述第一侧链网络中的用户进行交易时,第一侧链网络的决策者节点(即可以根据交易数据生成区块的节点)根据交易数据生成区块,并在符合数量要求的决策者节点进行共识验证通过后加入该第一侧链网络的共享账簿中。
第二种情况,当例如第一侧链网络中的用户与主链网络中的用户进行交易时(或者需要在主链网路中存储、查询等交易时),第一侧链网络的决策者节点根据交易数据生成区块,在符合数量要求的决策者节点进行共识验证通过后加入该第一侧链网络的共享账簿中,并且第一侧链网络的中继节点将该交易数据进行特定的哈希运算构成该第一侧链网络的哈希链中的一个哈希节点,该第一侧链网络中的中继节点将哈希节点的哈希值以及交易数据发送给主链网络中的中继节点,主链网络中的中继节点根据哈希值和交易数据进行验证,以便于确定该交易数据的安全性,再根据该交易数据进行后续处理,例如完成交易或者查询、存储等,然后根据该交易数据生成主链网络的区块,并加入到主链网络的区块链中。
第三种情况,当例如第一侧链网络中的用户与第二侧链网络中的用户进行交易时(或者需要在该第二侧链网路中存储、查询等交易时),第一侧链网络的决策者节点根据交易数据生成区块,在符合数量要求的决策者节点进行共识验证通过后加入该第一侧链网络的共享账簿中,并且第一侧链网络的中继节点将该交易数据进行特定的哈希运算构成该第一侧链网络的哈希链中的一个哈希节点,该第一侧链网络中的中继节点将该哈希节点的哈希值以及交易数据发送给主链网络中的中继节点,主链网络中的中继节点根据哈希值和交易数据进行验证,以便于确定该交易数据的安全性;主链在确定了第一侧链发送来的交易数据的安全性后,将根据该交易数据生成新的哈希值,再将该交易数据和新哈希值发送到第二侧链网络中的中继节点,第二侧链网络对该交易数据和哈希值进行验证,再根据该交易数据进行后续处理,例如完成交易或者查询、存储等,然后根据该交易数据生成第二侧链网络的区块,并加入到第二侧链网络的区块链中。
第四种情况,当例如主链网络中的用户需要与第一侧链网络中的用户进行交易时(或者需要在该第一侧链网路中存储、查询等交易时),主链网络的决策者节点根据交易数据生成区块,在符合数量要求的决策者节点进行共识验证通过后加入主链网络的共享账簿中,并且主链网络的中继节点将该交易数据进行特定的哈希运算构成该主链网络的哈希链中的一个哈希节点,该主链网络中的中继节点将该哈希节点的哈希值以及交易数据发送给第一侧链网络中的中继节点,第一侧链网络中的中继节点根据哈希值和交易数据进行验证,以便于确定该交易数据的安全性。
虽然主链网络和侧链网络之间可以通过通信来进行跨链交易,但是侧链的建立是个亟需解决的问题,以下本文通过不同的实施例描述了根据主链网络(以下称为主链)建立侧链网络(侧链)的方案。
第一实施例
如图2所示为本文实施例基于主链生成侧链方法的流程图,在本实施例中描述了基于主链生成侧链的过程,具体包括如下步骤:
步骤201,配置侧链注册文件。
在本步骤中,在配置侧链注册文件中包括侧链注册信息,其中侧链注册信息包括,
侧链的属性信息,其中侧链的属性信息包括,侧链名称,侧链第一个验证者节点名称,侧链拥有者账户地址,侧链的所属组织。
其中,验证者节点为区块链网络中可以产生区块以及进行共识验证的节点。侧链拥有者为可以向主链管理者发起该侧链注册请求的用户,其中主链管理者可以是一个机构(公司)或者其它组织,表现为主链中管理者账户,经过该主链管理者账户发起的侧链注册请求交易和侧链创世请求交易都经由该主链管理者账户进行签名,从而智能合约可以根据该签名来验证侧链注册请求交易和侧链创世请求交易的合法性。
侧链的所属组织为拥有该侧链的组织或者个人,通常来说,所属组织是公司。
侧链注册信息还包括,侧链的通信信息,其中侧链的通信信息包括,该侧链能够与所属主链通信,该侧链能够与同源主链下的哪些侧链通信,侧链通过哪个节点作为该侧链的中继节点,从而实现侧链与主链之间的通信。例如,前述的侧链与主链之间通信的几种情况。该侧链的通信信息可以为预先设定的规则,不用在侧链注册文件中写入,例如侧链和主链之间可以通信,不允许侧链和侧链之间直接通信,侧链和侧链之间的通信需要通过主链进行转发等。
步骤202,根据所述侧链注册文件中的侧链注册信息在主链区块中注册侧链。
在本步骤中,根据所述侧链注册文件构造侧链注册请求交易,并将所述侧链注册请求交易在主链中进行广播,通过主链的网络治理合约(netgovernance)执行侧链注册请求交易。
其中,根据所述侧链注册文件构造侧链注册请求交易包括,将所述侧链注册文件中的侧链注册信息放入到指定数据结构的字段中,再利用RLP编码(RecursiveLengthPrefix,递归的长度前缀编码),由主链管理者账户签名,从而形成侧链注册请求交易。
主链上的任意节点,例如观察者节点或者验证者节点,使用主链管理者账户发起该侧链注册请求交易,并且在主链中广播该侧链注册请求交易,主链中的验证者节点生成相应区块。
其中,观察者节点为不生成区块以及不进行共识验证的节点,通常这种节点只是进行区块同步和执行区块等工作的节点,也就是区块链网络中的普通节点。其中,执行区块是在验证者节点生成区块并在区块链网络中进行广播后,观察者节点接收到生成的区块,执行区块中的侧链注册请求交易,将交易的执行结果更新到该节点(本地)的共享账簿中。在主链或者侧链中都存在观察者节点以及验证者节点。
由主链管理者账户发起侧链注册请求交易是指,使用主链管理者账户的私钥对侧链注册请求交易进行签名,从而智能合约接收到交易后,才能判断该侧链注册请求交易是由主链管理者同意后的交易,从而才能进行验证后的侧链注册。
其中,通过所述网络治理合约的侧链注册接口(RegisterSideChain)接收所述侧链注册请求交易。
所述执行侧链的注册请求交易包括,主链中的网络治理合约对上述侧链注册信息进行验证,例如验证侧链注册信息中的侧链名称的唯一性进行验证,验证侧链拥有者账户地址格式是否合法,验证侧链的所属组织是否为注册过的组织,所有验证通过后,将侧链注册请求交易广播到主链中,验证者节点产生包括上述侧链注册请求交易的区块。
在接收到该侧链注册请求交易后,通过所述主链中的网络治理合约(netgovernance)执行所述侧链的注册请求交易,验证侧链注册请求交易中侧链注册文件信息的合法性。
在执行侧链的注册请求交易过程中判断该侧链的ID是否唯一,如果该侧链的ID唯一则继续判断侧链的其他信息是否合法,例如侧链拥有者的账户地址是否合法,侧链的所属组织是否和法等。
所述侧链注册文件中的侧链名称用于按照预定规则生成侧链ID,所述预定规则为主链ID+侧链名称,例如主链ID为bcb;侧链名称为chainName,该侧链的ID为bcbchainName。或者还可以根据其他规则生成侧链ID,例如以编号形式确定侧链的ID。
或者,还可以先验证侧链注册文件的信息是否和法,例如侧链名称是否唯一,侧链的所述组织是否出自预定组织列表,侧链拥有者的账户地址是否合法,当验证侧链注册文件的信息合法时,再通过预定规则生成侧链ID。
上述验证侧链注册文件信息合法性的步骤可以互相借鉴、结合。
在主链上广播所述侧链注册请求交易,每个节点都将执行该侧链注册请求交易,并将验证通过的侧链注册请求交易存储入各自的本地内存池。主链的验证者节点在生成区块时,根据本地内存池中验证通过的侧链注册请求交易将包括侧链注册信息的侧链注册请求交易写入区块,并在主链中广播该区块以进行共识验证。作为可替换的,在本步骤中,还可以将包括侧链注册信息的侧链注册请求交易的执行结果写入到区块中,并在主链中广播该区块以进行共识验证,其中,侧链注册请求交易的执行结果中包括了侧链注册请求交易的执行状态(即是否合法的信息)、侧链ID、以及其他侧链注册信息。
此时,主链的观察者节点接收到该区块后,执行该区块,也就是验证该区块中的所有侧链注册请求交易,网络治理合约将执行所述侧链注册请求交易的执行结果输出,该侧链注册请求交易的执行结果中包括了侧链注册请求交易的执行状态(即是否合法的信息)、侧链ID、以及其他侧链注册信息,当通过验证后,将侧链注册请求交易执行结果写入该观察者节点本地的共享账簿中。
步骤203,配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点。
在本步骤中,所述配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点进一步包括,导出所述指定的主链节点的公钥,根据所述侧链创世文件中的侧链第一个验证者节点的名称命名该指定的主链节点的名称,确定所述侧链第一个验证者节点的唯一资源定位符(URL)。
其中,所述指定的主链节点可能没有名称,则将该指定的主链节点的名称命名为侧链第一个验证者节点的名称;作为另一个实施例,所述指定的主链节点已有名称,则将该指定节点的已有名称替换为侧链第一个验证者节点的名称。
在进一步的实施例中,还可以包括确定奖励接收地址,即,对在所述侧链中生成区块的节点(用户)的奖励;
还可以包括确定燃料价格比例,设定侧链的燃料价格与主链燃料价格的比例关系,即,在该侧链中进行写入操作时所消耗的权限值,也就是说,在该侧链的共享账簿中每进行一次写入操作发起交易的一方都要消耗一定的权限值,这是为了提高侧链资源利用率,尽量将能够不在区块链(侧链)中进行的计算等工作放在单机或者线下进行,从而能够提高侧链的写入效率,节省侧链的资源消耗。而燃料价格比例是指侧链中的写入操作所消耗的权限值与主链写入操作所消耗的权限值呈比例关系,该比例关系可能大于1或者小于1,亦或者相等。
在本步骤中由于将主链中的节点派生为侧链的第一个验证者节点,从而侧链的验证者节点以及由该侧链验证者节点后续生成的其他节点都将会遵循与主链节点相同的代码结构和安全机制,这样的主链和侧链之间通信的安全性将会由于相同的代码结构和安全机制得到统一,并且主链和侧链之间的通信也将会变得更容易实现。
在进一步的实施例中,可以指定主链观察者节点作为侧链的第一个验证者节点,也可以指定主链验证者节点作为侧链的第一个验证者节点。
步骤204,根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建。
在本步骤中,根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建进一步包括,
根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息生成侧链创世请求交易,并将该侧链创世请求交易在所述主链中进行广播;
根据所述侧链创世请求交易执行所述侧链的创建。
在上述步骤中,所述侧链注册信息可以为存储于主链区块的共享账簿中的侧链注册请求交易的执行结果中的侧链注册信息,也可以为主链中各节点本地共享账簿中侧链注册请求交易的执行结果中的侧链注册信息,其中,侧链注册信息例如包括侧链的属性信息,或者包括侧链的属性信息以及侧链的通信信息等;所述侧链创世文件中的信息为侧链创世所需要的信息,例如包括所述指定的主链节点的公钥,所述侧链第一个验证者节点的名称,所述侧链第一个验证者节点的URL等信息。上述侧链注册信息以及侧链创世文件中的信息都是创建侧链所需要的信息(侧链创世信息)。如此,创建侧链的行为可以受到主链管理者的控制,确保侧链创建的行为可控,增加侧链的安全性。
其中,根据所述侧链创世请求交易执行所述侧链的创建进一步包括,
在主链中广播所述侧链创世请求交易;
当所述指定的主链节点接收到所述侧链创世请求交易后,根据所述侧链创世请求交易中的信息将该指定的主链节点派生为所述侧链的第一个验证者节点。
在上述步骤中,当所述指定的主链节点接收到所述侧链创世请求交易后,根据所述侧链创世请求交易中的信息将该指定的主链节点派生为所述侧链的第一个验证者节点进一步包括,
根据所述侧链创世请求交易中的指定主链节点的公钥以及接收到所述侧链创世请求交易的主链节点的公钥来判断所述接收到所述侧链创世请求交易的主链节点是否为所述指定的主链节点;
当接收到所述侧链创世请求交易的主链节点为所述指定的主链节点,则根据所述侧链创世请求交易中的信息生成侧链创世脚本,并删除所述指定的主链节点的本地状态数据和主链区块数据;
重新启动所述指定的主链节点后,运行所述侧链创世脚本配置所述指定的主链节点,将所述指定的主链节点转变为所述侧链第一个验证者节点。
第二实施例
如图3所示为本文实施例基于主链生成侧链方法的具体流程图,在本实施例中描述了具体如何在主链中派生出侧链的方式,具体包括如下步骤:
步骤301,配置侧链注册文件。
所述侧链注册文件包括侧链注册信息,侧链注册信息进一步包括侧链的属性信息,其中侧链的属性信息包括,侧链名称,侧链第一个验证者节点名称,侧链拥有者账户地址,侧链的所属组织。
所述侧链注册信息还可以包括侧链的通信信息,其中侧链的通信信息包括,该侧链能够与所属主链通信,该侧链能够与同源主链下的哪些侧链通信。
步骤302,向主链管理者发起该侧链注册请求。
在本步骤中,可以通过计算机在线上(通过联网的方式)向主链管理者的计算机发送该侧链注册请求,例如可以通过台式计算机或者移动电话等方式通过互联网向主链管理者的计算机发送侧链注册文件,从而发起侧链注册请求,该互联网可以为主链以外的网络,或者也可以包括主链的网络。
在本步骤中,还可以通过USB等设备在线下(不联网的方式)向主链管理者的计算机发送该侧链注册请求,例如可以通过U盘的方式将侧链注册文件传送给主链管理者的计算机,从而发起侧链注册请求。
步骤303,根据所述侧链注册文件构造侧链注册请求交易。
主链管理者接收到侧链注册请求后,提取所述侧链注册文件中的侧链注册信息,并将所述侧链注册信息作为交易信息,并由主链管理者账户所在的节点(例如某台计算机)发起一笔交易,该交易为侧链注册请求交易。主链管理者通过该主链管理者账户的私钥对所述侧链注册请求交易进行签名。
其中,对侧链注册请求交易进行签名可以为,通过第一哈希运算计算(例如Hash256)侧链注册请求交易的摘要,将所述摘要通过主链管理者账户的私钥进行加密。
步骤304,将所述侧链注册请求交易在主链中进行广播。
在本步骤中,将上述的侧链注册请求交易以及采用主链管理者账户私钥加密的摘要作为一个数据包在主链中进行广播。
步骤305,网络治理合约验证所述侧链注册请求交易是否由主链管理者账户签名,如果由主链管理者账户签名,则进入步骤306,否则进入步骤316。
在本步骤中,验证侧链注册请求交易是否由主链管理者账户签名可以通过如图4所示的本文实施例验证侧链注册请求交易的方法实现,包括如下步骤:
步骤401,接收上述由主链管理者账户发出的包括侧链注册请求交易以及由主链管理者账户私钥签名摘要的数据包。
步骤402,对数据包中的侧链注册请求交易进行相同的第一哈希运算,得到第一结果。
步骤403,利用所述主链管理者账户的公钥对所述加密的摘要进行解密,得到第二结果;
步骤404,比较所述第一结果和第二结果是否相同,如果相同则进入步骤405,否则进入步骤406。
步骤405,侧链注册请求交易通过验证。
步骤406,不通过验证。
步骤306,验证所述侧链注册请求交易中的侧链注册信息是否合法,如果合法则进入步骤307,否则进入步骤316。
在本步骤中,网络治理合约执行所述侧链注册请求交易,例如根据所述侧链注册文件中的侧链名称按照预定规则生成侧链ID,所述预定规则为主链ID+侧链名称,例如主链ID为bcb;侧链名称为chainName,该侧链的ID为bcbchainName。或者还可以根据其他规则生成侧链ID,例如以编号形式确定侧链的ID。
网络治理合约进一步执行该侧链注册请求交易中,判断该侧链的ID是否唯一,如果该侧链的ID唯一则继续判断侧链的其他信息是否合法,例如侧链的所述组织是否出自预定组织列表,侧链拥有者的账户地址是否合法,侧链的所属组织是否和法等。
或者,还可以先验证侧链注册文件的信息是否和法,例如侧链名称是否唯一,侧链的所述组织是否符合预定义的规则(例如组织名称是否主链ID+组织名称首字母等),侧链拥有者的账户地址是否合法,当验证侧链注册文件的信息合法时,再通过预定规则生成侧链ID。
网络治理合约执行侧链的注册请求交易后,得到包括侧链ID、状态码(表示验证是否通过)、侧链名称、侧链第一个验证者节点名称、侧链拥有者账户地址、侧链的所属组织等侧链注册信息的执行结果,执行上述验证的网络治理合约所在的节点将根据该侧链注册请求交易的执行结果来决定是否将侧链的注册请求交易放入本地的内存池中,并在主链中广播该侧链注册请求交易,主链中的其他节点(包括验证者节点和观察者节点)同样会执行该侧链注册请求交易,并将验证通过后的侧链注册请求交易存储入各自的内存池中。
步骤307,主链的验证者节点将侧链的注册信息写入主链的区块。
在本步骤中,主链的验证者节点在生成区块时,将包括侧链注册信息的侧链注册请求交易的执行结果加入到区块中。
作为可替换的实施例,主链的验证者节点在生成区块时还可以将本地内存池中合法的包括侧链注册信息的侧链注册请求交易加入到区块中。
当验证者节点在主链中广播该区块时,主链中的各节点也将执行区块中每笔侧链注册请求交易,并将执行包括侧链注册信息的侧链注册请求交易的执行结果保存到各自节点的本地账簿中,由此即完成了侧链的注册请求。通过将包括了侧链注册信息的侧链注册信息请求交易写入到区块中,这样主链的区块中就可以存储有该侧链创世所需的部分信息,例如上述步骤中侧链的属性信息和侧链的通信息等。
步骤308,配置侧链创世文件,并将指定的主链观察者节点作为所述侧链的第一个验证者节点。
侧链的拥有者将侧链创世所需要的另一部分信息配置为侧链创世文件,其中指定哪一个主链观察者节点或者验证者节点(后均以主链观察者节点举例说明)将成为所述侧链的第一个验证者节点,导出该指定的主链观察者节点的公钥,确定所述侧链第一个验证者节点的名称,并指定所述侧链第一个验证者节点的URL。
在所述侧链创世文件中还可以包括,确定奖励接收地址,即,对在所述侧链中生成区块的节点(用户)的奖励以及确定燃料价格比例。
通过将指定的主链观察者节点转变为侧链的第一个验证者节点,可以确保主链与基于该主链生成的侧链的代码结构、安全机制、系统结构等都保持一致,从而可以方便主链与该侧链进行通信,并且由于基于主链生成的侧链两者之间的安全性一致,保证了整个主链-侧链系统的安全性。
步骤309,根据主链区块中的侧链注册信息以及侧链创世文件中的信息构建侧链创世请求交易,并在所述主链中广播。
在主链区块的共享账簿中寻找该侧链注册请求交易中的侧链注册信息,例如可以通过主链中的查询指令,查询侧链ID为XXX的侧链注册请求交易,并且根据找到的侧链注册请求交易,提取其中的侧链注册信息。
将上述注册信息以及步骤308中的侧链创世文件中的信息合并,作为侧链创世请求交易中的交易信息,并将该侧链创世请求交易广播到主链中。
在本步骤中,可以通过主链的任意一个节点发起该侧链创世请求交易。
或者,在另一个实施例中,还可以根据节点本地的共享账簿存储的侧链注册请求交易执行结果中包括的侧链注册信息以及侧链创世文件中的信息构建侧链创世请求交易,并在所述主链中广播。
步骤310,主链中的智能合约执行所述侧链创世请求交易。
在本步骤中,例如采用网络治理合约来执行所述侧链创世请求交易,验证所述侧链创世请求交易中指定的主链观察者节点的公钥是否为该主链的中观察者节点的公钥,或者验证该主链观察者节点的公钥格式是否符合要求,还可以验证侧链第一个验证者节点的名称是否符合格式要求,还可以验证侧链第一个验证者节点的URL格式否是正确等;并验证侧链ID是否唯一、侧链所属组织是否为预先定义的组织列表中的一员。
该执行结果中包括了侧链创世请求交易的执行状态(即是否合法的信息)、以及侧链注册信息、侧链创世文件中用于侧链创世的信息。
当验证通过后,将侧链创世请求交易在主链上广播。
步骤311,主链节点接收所述侧链创世请求交易的广播,生成相应区块。
在本步骤中,主链节点接收到侧链创世请求交易,并在本地再次执行该侧链创世请求交易,验证通过后,在各自的本地内存池中存储该侧链创世请求交易。
当主链验证者节点生成区块时,将该验证者节点的内存池中包括侧链创世信息的侧链创世请求交易加入区块中,在该侧链创世请求交易中包括侧链的创世信息。
后续步骤中,还包括广播区块到其他节点进行共识验证等步骤,在此不再赘述。
步骤312,主链节点根据侧链创世请求交易中的侧链创世文件中的信息,判断是否为指定的主链观察者节点,如果是指定的主链观察者节点则进入步骤313,否则进入步骤316。
在本步骤中,主链的节点接收到上述侧链创世请求交易,验证该节点自身的公钥是否与所述侧链创世请求交易中指定的主链观察者节点公钥相同,如果相同则该接收节点为指定的主链观察者节点,否则不是指定的观察者节点。
步骤313,在指定的主链观察者节点上生成针对侧链的创世脚本。
在本步骤中,根据侧链创世请求交易中的侧链注册信息以及侧链创世文件中的侧链创世信息生成创世脚本,并清空该指定的主链观察者节点上的主链区块数据,以及本地状态数据。其中,本地状态数据可以为0、1的布尔值,或者为其他数据类型的参数。
步骤314,根据侧链的创世脚本,重新启动该指定的主链观察者节点。
在本步骤中,指定的主链观察者节点重启后根据所述侧链的创世脚本,重新配置该指定的主链观察者节点计算机中的参数,按照该重新配置的参数运行软件程序,从而该指定的主链观察者节点变换为侧链的第一个验证者节点。
其中,所述重新配置的参数可以包括例如:
1、对创世文件进行签名,签名信息保存为genesis.json.sig文件;
2、将侧链验证者节点信息列表更新到validators.json(侧链的所有验证者节点的信息列表);
3、根据当前节点公钥信息重写priv_validators.json(侧链每个节点的状态信息文件,包括当前节点的地址,公钥,高度等信息),根据公钥生成侧链地址,更新地址,name(当前节点的名称);将last_height(当前节点的区块高度)、last_round(共识的轮次)、last_step(到达的共识步骤)全部重置为0。
步骤315,根据第一个验证者节点,不断产生新的侧链节点,从而生成侧链。
在本步骤中,例如可以首先搭建一个侧链节点以观察侧链的第一个验证者节点,新搭建的节点即为侧链的观察者节点;待侧链的观察者节点同步侧链的第一个验证者节点的所有区块数据后,可以将该观察者节点通过链上交易将其角色变更为验证者节点;具体方法为:
1、导出所述观察者节点公钥,确定角色变更后的该观察者节点作为验证者节点的名称、接收奖励的奖励地址。
2、将以上信息打包为添加验证者节点的请求交易。
3、将交易广播到主链,主链上的节点治理合约(governance)执行交易后,即可将观察者节点变更为验证者节点。
步骤316,丢弃交易数据。
第三实施例
如图5所示为本文实施例一种基于主链生成侧链的装置结构示意图,在本示例中所描述的装置可以为由通用处理器来实现的装置,或者由特别设计的电路来实现各功能模块功能的装置,还可以通过计算机、服务器、平板电脑等数据处理装置执行上述方法,本实施例中的装置具体包括:
侧链注册配置单元501,用于配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;
侧链注册单元502,用于根据所述侧链注册文件中的侧链注册信息在主链的区块中注册侧链;
侧链创世配置单元503,用于配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;
侧链创世单元504,用于根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建。
根据本文的一个实施例,所述侧链注册单元进一步用于,根据所述侧链注册文件构造侧链注册请求交易,并将所述侧链注册请求交易在主链中进行广播,通过网络治理合约在主链的区块中注册侧链。
根据本文的一个实施例,所述侧链注册单元进一步用于,使用主链管理者账户发起该侧链注册请求交易。
根据本文的一个实施例,所述侧链注册单元进一步用于,将所述侧链注册信息的执行结果写入所述主链的区块中。
根据本文的一个实施例,所述侧链创世配置单元进一步用于,导出所述指定的主链节点的公钥;
确定所述侧链第一个验证者节点的唯一资源定位符。
根据本文的一个实施例,所述侧链创世单元进一步用于,根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息生成侧链创世请求交易,并将该侧链创世请求交易在所述主链中进行广播;
根据所述侧链创世请求交易执行所述侧链的创建。
根据本文的一个实施例,所述侧链创世单元进一步用于,在主链中广播所述侧链创世请求交易;
当所述指定的主链节点接收到所述侧链创世请求交易后,根据所述侧链创世请求交易中的信息将该指定的主链节点派生为所述侧链的第一个验证者节点。
根据本文的一个实施例,所述侧链创世单元进一步用于,根据所述侧链创世请求交易中的指定主链节点的公钥以及接收到所述侧链创世请求交易的主链节点的公钥来判断所述接收到所述侧链创世请求交易的主链节点是否为所述指定的主链节点;
当接收到所述侧链创世请求交易的主链节点为所述指定的主链节点,则根据所述侧链创世请求交易中的信息生成侧链创世脚本,并删除所述指定的主链节点的本地状态数据和主链区块数据;
重新启动所述指定的主链节点后,运行所述侧链创世脚本配置所述指定的主链节点,将所述指定的主链节点转变为所述侧链第一个验证者节点。
如图6所示为本文实施例节点的结构示意图,在本实施例中描述了侧链网络中的节点以及主链网络中的节点的结构,可以包括观察者节点、验证者节点或其他职能节点,所述节点在本实施例中被称为计算设备,计算设备602可以包括一个或多个处理设备604,诸如一个或多个中央处理单元(CPU),每个处理单元可以实现一个或多个硬件线程。计算设备602还可以包括任何存储资源606,其用于存储诸如代码、设置、数据等之类的任何种类的信息。非限制性的,比如,存储资源606可以包括以下任一项或多种组合:任何类型的RAM,任何类型的ROM,闪存设备,硬盘,光盘等。更一般地,任何存储资源都可以使用任何技术来存储信息。进一步地,任何存储资源可以提供信息的易失性或非易失性保留。进一步地,任何存储资源可以表示计算设备602的固定或可移除部件。在一种情况下,当处理设备604执行被存储在任何存储资源或存储资源的组合中的相关联的指令时,计算设备602可以执行相关联指令的任一操作。计算设备602还包括用于与任何存储资源交互的一个或多个驱动机构608,诸如硬盘驱动机构、光盘驱动机构等。
计算设备602还可以包括输入/输出模块610(I/O),其用于接收各种输入(经由输入设备612)和用于提供各种输出(经由输出设备614))。一个具体输出设备可以包括呈现设备616和相关联的图形用户接口(GUI)618。在其他实施例中,还可以不包括输入/输出模块610(I/O)、输入设备612以及输出设备614,仅作为网络中的一台计算设备。计算设备602还可以包括一个或多个网络接口620,其用于经由一个或多个通信链路622与其他设备交换数据。一个或多个通信总线624将上文所描述的部件耦合在一起。
通信链路622可以以任何方式实现,例如,通过局域网、广域网(例如,因特网)、点对点连接等、或其任何组合。通信链路622可以包括由任何协议或协议组合支配的硬连线链路、无线链路、路由器、网关功能、名称服务器等的任何组合。
本文实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;
根据所述侧链注册文件中的侧链注册信息在主链区块中注册侧链;
配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;
根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息,在所述侧链的第一个验证者节点开始所述侧链的创建。
本文实施例提供的计算机设备还可以实现图2-图4中的方法。
对应于图2-图4中的方法,本文实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法的步骤。
本文实施例还提供一种计算机可读指令,其中当处理器执行所述指令时,其中的程序使得处理器执行如图2至图4所示的方法。
应理解,在本文的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本文实施例的实施过程构成任何限定。
还应理解,在本文实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本文的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本文所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本文实施例方案的目的。
另外,在本文各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本文的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本文各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本文中应用了具体实施例对本文的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本文的方法及其核心思想;同时,对于本领域的一般技术人员,依据本文的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本文的限制。

Claims (7)

1.一种基于主链生成侧链的方法,其特征在于包括,
配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;
根据所述侧链注册文件中的侧链注册信息在主链区块中注册侧链;
配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;
根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息生成侧链创世请求交易,并将该侧链创世请求交易在所述主链中进行广播;
根据所述侧链创世请求交易中的指定主链节点的公钥以及接收到所述侧链创世请求交易的主链节点的公钥来判断所述接收到所述侧链创世请求交易的主链节点是否为所述指定的主链节点;
当接收到所述侧链创世请求交易的主链节点为所述指定的主链节点,则根据所述侧链创世请求交易中的信息生成侧链创世脚本,并删除所述指定的主链节点的本地状态数据和主链区块数据;
重新启动所述指定的主链节点后,运行所述侧链创世脚本配置所述指定的主链节点,将所述指定的主链节点转变为所述侧链第一个验证者节点,在所述侧链的第一个验证者节点开始所述侧链的创建。
2.根据权利要求1所述的方法,其特征在于,根据所述侧链注册文件中的侧链注册信息在主链的区块中注册侧链进一步包括,
根据所述侧链注册文件构造侧链注册请求交易,并将所述侧链注册请求交易在主链中进行广播,通过网络治理合约执行在主链的区块中注册侧链。
3.根据权利要求2所述的方法,其特征在于,在根据所述侧链注册文件构造侧链注册请求交易之后还包括,使用主链管理者账户发起该侧链注册请求交易。
4.根据权利要求2所述的方法,其特征在于,通过网络治理合约执行在主链区块中注册侧链进一步包括,将包括所述侧链注册信息的侧链注册请求交易执行结果写入所述主链的区块中。
5.根据权利要求1所述的方法,其特征在于,配置侧链创世文件进一步包括,
导出所述指定的主链节点的公钥;
确定所述侧链第一个验证者节点的唯一资源定位符。
6.一种基于主链生成侧链的装置,其特征在于包括,
侧链注册配置单元,用于配置侧链注册文件,在所述侧链注册文件中包括侧链注册信息;
侧链注册单元,用于根据所述侧链注册文件中的侧链注册信息在主链的区块中注册侧链;
侧链创世配置单元,用于配置侧链创世文件,并将指定的主链节点作为所述侧链的第一个验证者节点;
侧链创世单元,用于根据所述侧链注册请求交易的执行结果中的侧链注册信息以及所述侧链创世文件中的信息生成侧链创世请求交易,并将该侧链创世请求交易在所述主链中进行广播;
根据所述侧链创世请求交易中的指定主链节点的公钥以及接收到所述侧链创世请求交易的主链节点的公钥来判断所述接收到所述侧链创世请求交易的主链节点是否为所述指定的主链节点;
当接收到所述侧链创世请求交易的主链节点为所述指定的主链节点,则根据所述侧链创世请求交易中的信息生成侧链创世脚本,并删除所述指定的主链节点的本地状态数据和主链区块数据;
重新启动所述指定的主链节点后,运行所述侧链创世脚本配置所述指定的主链节点,将所述指定的主链节点转变为所述侧链第一个验证者节点,在所述侧链的第一个验证者节点开始所述侧链的创建。
7.一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现上述权利要求1-5的方法。
CN202010216421.3A 2020-03-25 2020-03-25 基于主链生成侧链的方法、装置及计算机可读存储介质 Active CN111414210B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010216421.3A CN111414210B (zh) 2020-03-25 2020-03-25 基于主链生成侧链的方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010216421.3A CN111414210B (zh) 2020-03-25 2020-03-25 基于主链生成侧链的方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN111414210A CN111414210A (zh) 2020-07-14
CN111414210B true CN111414210B (zh) 2023-11-17

Family

ID=71491443

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010216421.3A Active CN111414210B (zh) 2020-03-25 2020-03-25 基于主链生成侧链的方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN111414210B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111970370B (zh) * 2020-08-26 2021-06-22 电子科技大学 基于面向通信设备体系的多层区块链协议拓展系统及方法
CN112600945B (zh) * 2021-03-04 2021-06-04 暗链科技(深圳)有限公司 分布式区块链服务系统及其构建方法、存储介质
EP4087209A1 (en) * 2021-05-06 2022-11-09 Siemens Aktiengesellschaft Encrypted data transmission between channels of a decentralized distributed database
CN113259464B (zh) * 2021-06-02 2021-11-02 支付宝(杭州)信息技术有限公司 组建区块链子网的方法和区块链系统
CN113067896B (zh) * 2021-06-02 2021-09-24 支付宝(杭州)信息技术有限公司 区块链子网中加入节点的方法和区块链系统
CN113067904B (zh) * 2021-06-02 2021-09-14 支付宝(杭州)信息技术有限公司 组建区块链子网的方法和区块链系统
CN113098984B (zh) * 2021-06-02 2021-08-31 支付宝(杭州)信息技术有限公司 基于注册机制形成多层区块链系统的方法和区块链系统
CN113259117B (zh) * 2021-06-02 2021-09-24 支付宝(杭州)信息技术有限公司 同步节点信息列表的方法
CN113067895B (zh) * 2021-06-02 2021-08-31 支付宝(杭州)信息技术有限公司 组建区块链子网的方法和区块链系统
CN113259119B (zh) * 2021-06-02 2021-10-29 支付宝(杭州)信息技术有限公司 区块链消息的分发方法及装置
CN113067903B (zh) * 2021-06-02 2021-09-24 支付宝(杭州)信息技术有限公司 组建区块链子网的方法和区块链系统
CN113837760B (zh) * 2021-11-25 2022-08-26 腾讯科技(深圳)有限公司 数据处理方法、装置、计算机设备以及存储介质
CN114363349B (zh) * 2021-12-31 2024-04-02 支付宝(杭州)信息技术有限公司 区块链子网的启动方法及装置
CN116582295A (zh) * 2023-04-04 2023-08-11 无锡多优多网络科技有限公司 一种防止主链和侧链互相影响的区块链系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107464106A (zh) * 2017-07-25 2017-12-12 北京果仁宝科技有限公司 区块链主链与侧链间交易的方法及系统
CN107729471A (zh) * 2017-10-13 2018-02-23 上海策赢网络科技有限公司 一种区块链及其生成方法与设备
CN110233802A (zh) * 2019-05-14 2019-09-13 天津大学 一种构建一主链多侧链的区块链架构的方法
CN110311958A (zh) * 2019-06-14 2019-10-08 柳州市蓝海数链科技有限公司 一种区块链网络系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10592979B2 (en) * 2017-07-26 2020-03-17 International Business Machines Corporation Managing blockchain transactions

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107464106A (zh) * 2017-07-25 2017-12-12 北京果仁宝科技有限公司 区块链主链与侧链间交易的方法及系统
CN107729471A (zh) * 2017-10-13 2018-02-23 上海策赢网络科技有限公司 一种区块链及其生成方法与设备
CN110233802A (zh) * 2019-05-14 2019-09-13 天津大学 一种构建一主链多侧链的区块链架构的方法
CN110311958A (zh) * 2019-06-14 2019-10-08 柳州市蓝海数链科技有限公司 一种区块链网络系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
区块链性能扩展与安全研究;毛志来;刘亚楠;孙惠平;陈钟;;信息网络安全(第03期);全文 *

Also Published As

Publication number Publication date
CN111414210A (zh) 2020-07-14

Similar Documents

Publication Publication Date Title
CN111414210B (zh) 基于主链生成侧链的方法、装置及计算机可读存储介质
JP7362654B2 (ja) 分割されたブロックチェーンネットワークにおけるブロックチェーンのブロックの維持管理
WO2020107919A1 (zh) 基于创新性的信誉证明共识协议的分布式网络及生态系统
CN111431903B (zh) 一种跨链中继方法、装置以及计算机可读存储介质
CN110741372A (zh) 用于管理区块链网络上的交易的计算机实现的系统和方法
JP2019517175A (ja) ブロックチェーンを用いる論理ゲート機能の実装
CN108960825A (zh) 基于区块链的电子签名方法及装置、电子设备
KR20210128452A (ko) 블록체인 네트워크를 통한 이전을 구현하는 컴퓨터 구현 시스템 및 방법
CN112527912B (zh) 基于区块链网络的数据处理方法、装置及计算机设备
CN108022090B (zh) 虚拟账户管理方法、设备、系统及可读存储介质
CN112163950A (zh) 一种方便扩展、节点资源复用的区块链链网构建方法、系统及终端设备
CN110098938B (zh) 一种可信任委托式链下加速解决方法及系统
WO2020139190A1 (en) Hybrid blockchain architecture with computing pool
CN113256297B (zh) 基于区块链的数据处理方法、装置、设备及可读存储介质
CN113255014B (zh) 一种基于区块链的数据处理方法以及相关设备
CN111815321A (zh) 交易提案的处理方法、装置、系统、存储介质和电子装置
Zhang et al. Deconstructing Blockchains: Concepts, Systems, and Insights.
CN116595094A (zh) 基于区块链的联邦学习激励方法、装置、设备和存储介质
Kumar et al. Front-End IoT application for the bitcoin based on proof of elapsed time (PoET)
CN112202564B (zh) 交易传递方法、装置、电子设备及可读存储介质
CN114448639B (zh) 具有唯一性和密钥安全的去中心化身份系统及实现方法
CN112988852B (zh) 基于区块链的数据管理方法、设备以及介质
Singh et al. IoT–Blockchain Integration-Based Applications Challenges and Opportunities
CN115577382A (zh) 基于区块链的智能合约部署方法及相关设备
CN111507728A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201009

Address after: 1-1107, 10-11 / F, building 1, 168 Guang'anmenwai street, Xicheng District, Beijing 100055

Applicant after: Beijing Xinchuang zhichain Technology Co.,Ltd.

Address before: 1-1208, 11 / F, building 1, 168 Guang'anmenwai street, Xicheng District, Beijing 100055

Applicant before: BEIJING CHUANGSHI ZHILIAN INFORMATION TECHNOLOGY Research Institute

GR01 Patent grant
GR01 Patent grant