CN110557420B - 一种独立子链的运行方法及系统 - Google Patents
一种独立子链的运行方法及系统 Download PDFInfo
- Publication number
- CN110557420B CN110557420B CN201810558266.6A CN201810558266A CN110557420B CN 110557420 B CN110557420 B CN 110557420B CN 201810558266 A CN201810558266 A CN 201810558266A CN 110557420 B CN110557420 B CN 110557420B
- Authority
- CN
- China
- Prior art keywords
- chain
- sub
- block
- node
- main chain
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Marketing (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种独立子链的运行方法,包括以下步骤:生成子链配置文件提交到主链上,处理该交易并打入主链的块中,生成子链创世区块,主链复制节点,并清空数据,将主链副本拷贝到全新的节点上,启动子链进程,校验创世区块类型,加载节点嗅探器,扫描主链网络,获取可信节点,将创世区块发送到主链进行验证,全部验证通过后子链开始加载本地子链区块数据,子链节点完成本地子链区块数据加载后开始扫描子链网络,子链同步最新数据,子链网络数据同步,开始工作,本发明还公开了一种独立子链的运行系统,本发明的有益效果为提高系统在多业务场景下的存储性能与交易处理性。
Description
技术领域
本发明属于区块链领域,尤其涉及种独立子链的运行方法及系统。
背景技术
随着比特币的出现,区块链技术的应用场景越来越广,现有的区块链中,绝大多数并不支持主链与子链的结构,少部分支持子链的,实际上是同一个节点的不同数据。这种区块链结构存在一些问题:比如没有子链结构,将可能导致未来所有的业务都放在主链上,这样会导致所有交易瓶颈都积压在主链上,从而导致各业务实际性能可分配的性能很低;而同节点的子链结构由于实际存储与处理都在同一个节点,这将导致未来该节点越来越庞大,存储与交易负担越来越大,性能也将越来越低,这些问题在区块链承载业务量变大时,将变得尤为突出。
发明内容
本发明所要解决的技术问题在于提供一种存储性能与交易处理性能更优的独立子链的运行方法及系统。
为解决上述技术问题,本发明的技术解决方案是:
一种独立子链的运行方法,包括如下步骤:
(1)生成子链配置文件;
(2)将子链配置文件以交易的形式提交到主链上;
(3)主链处理所述交易并打入主链的块中;
(4)主链按所述子链配置文件生成子链创世区块;
(5)主链复制一份与之完全相同的节点,并清空副本中的数据;
(6)主链节点将链创世区块放入主链副本中;
(7)将主链副本拷贝到全新的节点上;
(8)在新节点上启动子链进程;
(9)校验创世区块类型,当创世区块为子链时,加载节点嗅探器;
(10)节点嗅探器扫描主链网络,并获取可信节点;
(11)子链将创世区块发送到主链进行验证;
(12)主链根据创世区块包含的交易信息在主链验证是否有该子链,当有该子链时,进一步验证该子链创世区块签名是否与主链记录一致;
(13)全部验证通过后子链开始加载本地子链区块数据;
(14)子链节点完成本地子链区块数据加载后开始扫描子链网络;
(15)子链网络扫描完成后,子链从子链网络同步最新数据;
(16)子链网络数据同步完成后,子链区块锻造器开始工作。
进一步的,步骤(1)中所述子链配置文件包括打块周期时间、第一个块奖励、减半时间及初始保留。
进一步的,步骤(10)通过拜占庭算法获取已扫描到节点中的可信节点。
进一步的,所述创世区块锻造器用于生成和验证子链的创世区块。
一种独立子链的运行系统,包括如下模块:
子链配置管理模块,用于生成子链配置文件;
交易管理模块,用于将子链配置文件以交易的形式提交到主链上,并由主链处理该交易并打入主链的块中;
创世区块锻造模块a,用于将主链按照子链配置文件生成子链创世区块;
节点副本管理模块,用于将主链节点复制一份自己,清空副本中的数据,并将子链创世区块放入主链副本中,以及将主链副本拷贝到全新的节点上;
创世区块管理模块,用于校验创世区块类型,当创世区块为子链时,加载节点嗅探模块;
节点嗅探模块a,用于扫描主链网络,并获取可信节点;
数据发送模块,用于使子链将创世区块发送到主链进行验证;
创世区块锻造模块b,用于使主链根据创世区块包含的交易信息在主链验证是否有该子链,当有该子链时,进一步验证该子链创世区块签名是否与主链记录一致;
区块管理模块a,用于全部验证通过后子链开始加载本地子链区块数据;
节点嗅探模块b,用于使子链节点完成本地子链区块数据加载后开始扫描子链网络;
区块管理模块b,用于使子链网络扫描完成后,子链从子链网络同步最新数据;
区块锻造模块,用于使子链网络数据同步完成后,子链区块锻造器开始工作;
上述子链配置管理模块、交易管理模块、创世区块锻造模块a、节点副本管理模块、创世区块管理模块、节点嗅探模块a、创世区块锻造模块b、区块管理模块a、节点嗅探模块b,区块管理模块b、区块锻造模块采用顺序连接。
进一步的,所述子链配置管理模块中的子链配置文件包括打块周期时间、第一个块奖励、减半时间及初始保留。
进一步的,所述节点嗅探模块a通过通过拜占庭算法获取已扫描到节点中的可信节点。
附图说明
图1是本发明对应方法的流程图;
图2是本发明对应系统的结构框架图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
如图1所示,一种独立子链的运行方法,包括如下步骤:
1.创建子链,其中具体包括:
(1)将打块周期时间、第一个块奖励、减半时间、初始保留这些信息录入,并生成子链配置文件;
(2)将步骤(1)中生成的子链配置文件提交到主链上,本实施例中选择以交易的形式提交;
(3)主链处理步骤(2)中交易的数据,并将处理完的结果打入主链的块中,在本实施例中,打块的步骤具体包括:启动系统,确定系统CPU核心数量确定交易数据最大分组,采用求模的方式,将前面的分组数据依次映射到CPU组上、CPU对CPU组上的交易数据进行签名、验证,完成交易,将CPU组上的交易结算的结果通过权益汇总的形式输出,系统生成权益汇总记录;
(4)主链按照步骤(1)中的子链配置文件生成子链创世区块;
(5)主链节点复制一份自己,并清空副本中的数据;
(6)主链节点将步骤(4)中生成的子链创世区块放入主链副本中;
(7)将主链副本拷贝到全新的节点上;
(8)子链创建完成。
2.启动及验证子链,其中具体包括:
(1)在新节点上启动步骤1中创建的子链进程;
(2)校验创世区块的类型;
(3)当检验的结果显示创世区块不是子链时,不加载节点嗅探器,当检验的结果显示创世区块是子链时,加载节点嗅探器;
(4)当步骤(3)中校验的结果是创世区块是子链,并已加载节点嗅探器后,用节点嗅探器扫描主链网络以寻找可信节点,本实施例中选用拜占庭算法寻找可信节点;
(5)子链将创世区块发送到主链进行验证;
(6)主链根据创世区块包含的交易信息在主链验证是否有该子链;
(7)主链继续验证子链创世区块签名是否与主链记录一致;
(8)全部验证通过后子链开始加载本地子链区块数据;
(9)子链节点完成本地子链区块数据加载后开始扫描子链网络;
(10)子链网络扫描完成后,子链从子链网络同步最新数据;
(11)子链网络数据同步完成后,子链区块锻造器开始工作;
(12)启动及验证子链完成。
本实施例设计了独立子链,即由主链完全复制一份跟自己一摸一样的节点,但是不复制数据与创世区块,然后根据特定业务规则生成与主链有依赖关系的创世区块,并将此后所有的此类业务都发送到子链上进行处理,而子链也部署在独立的节点上独立运行,这样直接一部分业务的计算与存储消耗分担到了多个不同的节点上,从而极大的提升了业务处理的能力,并为未来全网计算能力交易总量的无限扩展提供了基础。
如图2所示,本发明还公开了一种独立子链的运行系统,包括子链配置管理模块、交易管理模块、创世区块锻造模块a、节点副本管理模块、创世区块管理模块、节点嗅探模块a、创世区块锻造模块b、区块管理模块a、节点嗅探模块b,区块管理模块b、区块锻造模块;
其中:
子链配置管理模块,用于生成子链配置文件;
交易管理模块,用于将子链配置文件以交易的形式提交到主链上,并由主链处理该交易并打入主链的块中;
创世区块锻造模块a,用于将主链按照子链配置文件生成子链创世区块;
节点副本管理模块,用于将主链节点复制一份自己,清空副本中的数据,并将子链创世区块放入主链副本中,以及将主链副本拷贝到全新的节点上;
创世区块管理模块,用于校验创世区块类型,当创世区块为子链时,加载节点嗅探模块;
节点嗅探模块a,用于扫描主链网络,并获取可信节点;
数据发送模块,用于使子链将创世区块发送到主链进行验证;
创世区块锻造模块b,用于使主链根据创世区块包含的交易信息在主链验证是否有该子链,当有该子链时,进一步验证该子链创世区块签名是否与主链记录一致;
区块管理模块a,用于全部验证通过后子链开始加载本地子链区块数据;
节点嗅探模块b,用于使子链节点完成本地子链区块数据加载后开始扫描子链网络;
区块管理模块b,用于使子链网络扫描完成后,子链从子链网络同步最新数据;
区块锻造模块,用于使子链网络数据同步完成后,子链区块锻造器开始工作;
在本实施例中上述模块采用顺序连接。
本发明极大的提升了业务处理的能力,并为未来全网计算能力交易总量的无限扩展提供了基础。
以上所述,仅是本发明的较佳实施例而已,并非对本发明的技术范围作任何限制,故但凡依本发明的权利要求和说明书所做的变化或修饰,皆应属于本发明专利涵盖的范围之内。
Claims (7)
1.一种独立子链的运行方法,包括如下步骤:
(1)生成子链配置文件;
(2)将子链配置文件以交易的形式提交到主链上;
(3)主链处理所述交易并打入主链的块中;
(4)主链按所述子链配置文件生成子链创世区块;
(5)主链复制一份与之完全相同的节点,并清空副本中的数据;
(6)主链节点将子链创世区块放入主链副本中;
(7)将主链副本拷贝到全新的节点上;
(8)在新节点上启动子链进程;
(9)校验创世区块类型,当创世区块为子链时,加载节点嗅探器;
(10)节点嗅探器扫描主链网络,并获取可信节点;
(11)子链将创世区块发送到主链进行验证;
(12)主链根据创世区块包含的交易信息在主链验证是否有该子链,当有该子链时,进一步验证该子链创世区块签名是否与主链记录一致;
(13)全部验证通过后子链开始加载本地子链区块数据;
(14)子链节点完成本地子链区块数据加载后开始扫描子链网络;
(15)子链网络扫描完成后,子链从子链网络同步最新数据;
(16)子链网络数据同步完成后,子链区块锻造器开始工作。
2.根据权利要求1所述独立子链的运行方法,其特征在于步骤(1)中所述子链配置文件包括打块周期时间、第一个块奖励、减半时间及初始保留。
3.根据权利要求1所述独立子链的运行方法,其特征在于步骤(10)通过拜占庭算法获取已扫描到节点中的可信节点。
4.根据权利要求1至3任一所述独立子链的运行方法,其特征在于所述创世区块锻造器用于生成和验证子链的创世区块。
5.一种独立子链的运行系统,包括如下模块:
子链配置管理模块,用于生成子链配置文件;
交易管理模块,用于将子链配置文件以交易的形式提交到主链上,并由主链处理该交易并打入主链的块中;
创世区块锻造模块a,用于将主链按照子链配置文件生成子链创世区块;
节点副本管理模块,用于将主链节点复制一份自己,清空副本中的数据,并将子链创世区块放入主链副本中,以及将主链副本拷贝到全新的节点上;
创世区块管理模块,用于校验创世区块类型,当创世区块为子链时,加载节点嗅探模块;
节点嗅探模块a,用于扫描主链网络,并获取可信节点;
数据发送模块,用于使子链将创世区块发送到主链进行验证;
创世区块锻造模块b,用于使主链根据创世区块包含的交易信息在主链验证是否有该子链,当有该子链时,进一步验证该子链创世区块签名是否与主链记录一致;
区块管理模块a,用于全部验证通过后子链开始加载本地子链区块数据;
节点嗅探模块b,用于使子链节点完成本地子链区块数据加载后开始扫描子链网络;
区块管理模块b,用于使子链网络扫描完成后,子链从子链网络同步最新数据;
区块锻造模块,用于使子链网络数据同步完成后,子链区块锻造器开始工作;
上述子链配置管理模块、交易管理模块、创世区块锻造模块a、节点副本管理模块、创世区块管理模块、节点嗅探模块a、创世区块锻造模块b、区块管理模块a、节点嗅探模块b,区块管理模块b、区块锻造模块采用顺序连接。
6.根据权利要求5所述独立子链的运行系统,其特征在于所述子链配置管理模块中的子链配置文件包括打块周期时间、第一个块奖励、减半时间及初始保留。
7.根据权利要求5所述独立子链的运行系统,其特征在于所述节点嗅探模块a通过通过拜占庭算法获取已扫描到节点中的可信节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810558266.6A CN110557420B (zh) | 2018-06-01 | 2018-06-01 | 一种独立子链的运行方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810558266.6A CN110557420B (zh) | 2018-06-01 | 2018-06-01 | 一种独立子链的运行方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110557420A CN110557420A (zh) | 2019-12-10 |
CN110557420B true CN110557420B (zh) | 2021-09-21 |
Family
ID=68734970
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810558266.6A Active CN110557420B (zh) | 2018-06-01 | 2018-06-01 | 一种独立子链的运行方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110557420B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113377762A (zh) * | 2020-03-10 | 2021-09-10 | 本无链科技(深圳)有限公司 | 一种用于区块链子链的发布系统及方法 |
CN111651450B (zh) * | 2020-04-20 | 2023-10-10 | 山东浪潮科学研究院有限公司 | 一种基于区块链的区块复制方法、装置、设备及介质 |
CN112163950A (zh) * | 2020-09-25 | 2021-01-01 | 湖南和信安华区块链科技有限公司 | 一种方便扩展、节点资源复用的区块链链网构建方法、系统及终端设备 |
CN113052697B (zh) * | 2021-03-10 | 2023-08-01 | 从法信息科技有限公司 | 一种基于可信度的跨链任务执行方法、装置和电子设备 |
CN113067903B (zh) * | 2021-06-02 | 2021-09-24 | 支付宝(杭州)信息技术有限公司 | 组建区块链子网的方法和区块链系统 |
CN113067904B (zh) * | 2021-06-02 | 2021-09-14 | 支付宝(杭州)信息技术有限公司 | 组建区块链子网的方法和区块链系统 |
CN113382025B (zh) * | 2021-08-12 | 2021-10-08 | 环球数科集团有限公司 | 一种在通证交换的过程中对使用者身份的检验方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107528886A (zh) * | 2017-07-25 | 2017-12-29 | 中国科学院计算技术研究所 | 区块链全网拆分方法与系统 |
-
2018
- 2018-06-01 CN CN201810558266.6A patent/CN110557420B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107528886A (zh) * | 2017-07-25 | 2017-12-29 | 中国科学院计算技术研究所 | 区块链全网拆分方法与系统 |
Non-Patent Citations (4)
Title |
---|
Dynamically Adjusting the Mining Capacity in Cryptocurrency with Binary Blockchain;Yoohwan Kim,等;《International Journal of Networked and Distributed Computing》;20180101;第6卷(第1期);全文 * |
使用双区块链的防伪溯源系统;刘家稷,等;《信息安全学报》;20180515;全文 * |
区块链技术:架构及进展;邵奇峰,等;《计算机学报》;20171115;全文 * |
干货:一文带你读懂区块链五大类;JIMI;《链道学社》;20180505;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110557420A (zh) | 2019-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110557420B (zh) | 一种独立子链的运行方法及系统 | |
CN108846659B (zh) | 基于区块链的转账方法、装置及存储介质 | |
CN109936457B (zh) | 区块链多方见证方法、装置、设备及计算机可读存储介质 | |
CN108932348B (zh) | 区块链的合并处理方法、装置、区块链节点及存储介质 | |
CN108492108A (zh) | 区块链跨链通信方法、系统和计算机可读存储介质 | |
CN109951547B (zh) | 事务请求并行处理方法、装置、设备和介质 | |
CN109033475A (zh) | 一种文件存储方法、装置、设备及存储介质 | |
CN112527912B (zh) | 基于区块链网络的数据处理方法、装置及计算机设备 | |
CN114281888A (zh) | 一种区块链共识方法、装置、设备及存储介质 | |
CN110505228B (zh) | 基于边缘云架构的大数据处理方法、系统、介质及装置 | |
CN111679978B (zh) | 一种程序测试方法、程序测试装置、电子设备及存储介质 | |
CN112506771A (zh) | 一种报文比对方法和装置 | |
CN114238703A (zh) | 事件流程编排方法、装置及应用 | |
JP2020204898A (ja) | 分散台帳システムの運用管理方法、分散台帳システムの運用管理システム、および分散台帳システムの運用管理プログラム | |
CN112202647B (zh) | 区块链网络中的测试方法、装置及测试设备 | |
CN109522723A (zh) | Poc脚本生成方法、装置、电子设备及存储介质 | |
CN113904854A (zh) | 一种基于商密算法的区块链数据加密方法及装置 | |
CN111026569B (zh) | 一种在联盟链中修复指定区块数据的方法 | |
CN112069259A (zh) | 一种基于区块链的多云环境数据存储系统及方法 | |
CN109389271B (zh) | 应用性能管理方法及系统 | |
CN111694588B (zh) | 引擎升级检测方法、装置、计算机设备和可读存储介质 | |
CN111432027B (zh) | 平行链区块同步方法、设备和存储介质 | |
CN114465714A (zh) | 联盟链中的节点配置方法及系统 | |
CN114372799A (zh) | 一种平行链系统及其共识方法、设备及储存介质 | |
CN116701452A (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 |
Effective date of registration: 20210401 Address after: Room 2201, 703c, Desai science and technology building, 9789 Shennan Avenue, high tech Zone community, Yuehai street, Nanshan District, Shenzhen, Guangdong 518000 Applicant after: Benchainless Technology (Shenzhen) Co.,Ltd. Address before: 361000 unit 11, 201, building B, 86 Haijing Road, Xiamen area, China (Fujian) pilot Free Trade Zone, Xiamen City, Fujian Province Applicant before: XIAMEN INSTINCT BLOCKCHAIN TECHNOLOGY Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |