CN112527908A - 一种区块链网络的构建方法及增加节点方法、介质及设备 - Google Patents
一种区块链网络的构建方法及增加节点方法、介质及设备 Download PDFInfo
- Publication number
- CN112527908A CN112527908A CN202011530584.5A CN202011530584A CN112527908A CN 112527908 A CN112527908 A CN 112527908A CN 202011530584 A CN202011530584 A CN 202011530584A CN 112527908 A CN112527908 A CN 112527908A
- Authority
- CN
- China
- Prior art keywords
- node
- block chain
- nodes
- network
- voting
- 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.)
- Pending
Links
Images
Classifications
-
- 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
-
- 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/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Data Mining & Analysis (AREA)
- Marketing (AREA)
- Health & Medical Sciences (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Computing Systems (AREA)
- General Business, Economics & Management (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及区块链技术领域,本发明提供了一种区块链网络的构建方法及增加节点方法、介质及设备,所述区块链网络包括:不少于三层网络结构,所述网络结构中第一层为主节点,第二层为与主节点相连接的N个子节点,其中N为大于2的整数;第三层为与每个所述子节点依次连接的Mi个次级节点,其中Mi为小于等于N的自然数,i=1、2、……、N;所述构建方法包括:在所述基于N叉树的区块链网络中,通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识,其中,T为小于等于N的正整数;所述投票共识通过后,通过广播的方式将投票共识通过的网络结构广播至整个区块链网络中。
Description
技术领域
本公开涉及区块链技术领域,更为具体来说,本公开涉及一种区块链网络的构建方法及增加节点方法、介质及设备。
背景技术
区块链技术起源于2008年,因为具有去中心化、透明性、开放性、自治性、匿名性和信息不可篡改等特点,被认为是继大型机、个人电脑、互联网、移动社交网络之后计算范式的第五次颠覆式创新,是人类信用进化史上继血亲信用、贵金属信用、央行纸币信用之后的第四个里程碑。区块链技术为解决中心化机构普遍存在的高成本、低效率和数据存储不安全等问题提供了解决方案。
当用户想要访问区块链中的一条具体数据信息时,对于一个完全节点就需要遍历区块内存储的全部数据。但是,随着区块链应用的广泛普及,区块链中保存的数据量也会急剧增加,区块链中节点的排布也不规律,在一条完整的区块链上进行数据查询效率随之越来越慢。因此,如何提高在一条完整区块链上的数据查询效率则越来越重要。
现有技术中不存在节点之间有规律的体系,导致两个节点之间的数据传输可能路径较长,效率低下;现有技术中更不存在如何有规律的在体系中添加新节点的方法。
发明内容
为解决现有技术中不存在节点之间有规律的体系,导致两个节点之间的数据传输可能路径较长,效率低下以及如何有规律的在体系中添加新节点的方法的技术问题。
为实现上述技术目的,本公开提供了一种基于N叉树的区块链网络的构建方法,所述区块链网络包括:
不少于三层网络结构,所述网络结构中第一层为主节点,第二层为与主节点相连接的N个子节点,其中N为大于2的整数;
第三层为与每个所述子节点依次连接的Mi个次级节点,其中Mi为小于等于N的自然数,i=1、2、……、N;
所述构建方法包括:
在所述基于N叉树的区块链网络中,通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识,其中,T为小于等于N的正整数;
所述投票共识通过后,通过广播的方式将投票共识通过的网络结构广播至整个区块链网络中。
进一步,所述投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票介质时间和/或投票规则。
进一步,所述通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识具体包括:
所述监督节点根据所述投票公告信息查询符合投票资格的锚节点,
所述监督节点对一个或多个所述符合投票资格的锚节点进行私钥签名;
所述监督节点将私钥签名后的区块链的公钥和/或区块链标识广播在区块链网络中,其中所述公钥和/或区块链标识通过所述多个符合投票资格的锚节点投票选出。
进一步,所述监督节点根据所述投票公告信息查询符合投票资格的锚节点,查询获得所述符合投票资格的锚节点的区块链公钥和/或区块链标识;
所述监督节点对一个或多个所述符合投票资格的锚节点的区块链公钥和/或区块链标识进行私钥签名。
为实现上述技术目的,本公开还能够提供一种基于N叉树的区块链网络的节点增加方法,所述区块链网络包括:
不少于三层网络结构,所述网络结构中第一层为主节点,第二层为与主节点相连接的N个子节点,其中N为大于2的整数;
第三层为与每个所述子节点依次连接的Mi个次级节点,其中Mi为小于等于N的自然数,i=1、2、……、N;
所述方法包括:
对所述区块链网络中存在空闲节点的子节点或次级节点,在所述基于N叉树的区块链网络中发起共识;
新增节点通过将令牌转移到基于N叉树的区块链网络而加入该基于N叉树的区块链网络,以成为区块链网络中的新成员;
若整个区块链网络有不少于预设阈值的节点同意增加该新增节点,则将整个N叉树区块链网络的网络结构通过广播共享给所述要连结该子节点或次级节点的节点。
进一步,所述新增节点通过将令牌转移到基于N叉树的区块链网络而加入该基于N叉树的区块链网络,以成为区块链网络中的新成员具体包括:
将新增节点通过将令牌转移接入区块链网络、并向区块链网络中其它节点声明新增节点的数据分级分类权限信息;
区块链网络中其它节点验证新增节点的数据分级分类信息后,记录新增节点的数据分级分类权限信息并写入区块链。
进一步,所述令牌转移具体包括:
通过多个参与区块链交易的第一节点之间的间接令牌交易集合的转移来实现;
获取所述间接令牌交易集合的子集,其中,所述子集包括所述参与节点是输入节点或输出节点的交易;所述间接令牌交易集合基于所述令牌转移过程中所述第一数量的令牌和预定数量的交易轮次生成;
对于所述子集中的每个间接令牌交易,与包括在所述间接令牌交易中相应的参与区块链交易的第二节点协作,以生成所述第一节点和所述第二节点之间的所述间接令牌交易的通道;
以及与其他所有第一节点协作,使用已生成的所述通道执行所述子集的间接令牌交易以实现所述令牌转移。
进一步,所述生成所述第一节点和所述第二节点之间的所述间接令牌交易的通道具体包括:
与所述第二节点协作以,
生成第一区块链交易,用于提交令牌以转移到所述间接令牌交易的输出地址;
生成第二区块链交易,将提交的令牌返回到所述间接令牌交易的输入地址;以及
生成第三区块链交易,用于将提交的令牌转移到所述间接令牌交易的输出地址。
为实现上述技术目的,本公开还能够提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时用于实现上述的基于N叉树的区块链网络的构建方法的步骤。
为实现上述技术目的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的基于N叉树的区块链网络的构建方法的步骤。
为实现上述技术目的,本公开还能够提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时用于实现上述的基于N叉树的区块链网络的节点增加方法的步骤。
为实现上述技术目的,本公开还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的基于N叉树的区块链网络的节点增加方法的步骤。
本公开的有益效果为:
通过本申请的基于N叉树的区块链网络构建方法,能够将混乱的节点规范为N叉树规律排布的区块链网络结构。同时能够在规范的N叉树结构的区块链网络中新增节点。通过规范的N叉树规律排布的区块链网络结构,能够实现节点之间的快速数据传输。
附图说明
图1示出了本公开的实施例1所构建的区块链网络的结构示意图;
图2示出了现有技术的区块链网络存储结构局部示意图;
图3示出了本公开的实施例1所构建的区块链网络的改进实施方式结构示意图;
图4示出了本公开的实施例1的流程示意图;
图5示出了本公开的实施例2的流程示意图;
图6示出了本公开的实施例4的结构示意图;
图7示出了本公开的实施例6的结构示意图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在附图中示出了根据本公开实施例的各种结构示意图。这些图并非是按比例绘制的,其中为了清楚表达的目的,放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状以及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
如图2所示:
示出了采用现有技术的区块链网络存储结构的部分示意图:
不难看出,现有技术的区块链网络存储结构其节点的排布非常混乱,不能形成有规律的体系,导致两个节点之间难以实现数据通信或者链路较长,数据传输效率低下。同时,现有技术的区块链网络结构当某一个节点出现问题故障后,该节点下的所有子节点都会出现无法访问整个区块链网络的故障,形成“孤岛”,同时出现故障的节点想在整个区块链网络中寻找好的节点进行连接非常困难。
基于上述现有技术存在的问题,本公开在区块链在通信领域的数据传输应用层面做了改进,具体的指提出了一种新的基于N叉树的区块链网络存储结构,同时本公开提供了该新的基于N叉树的区块链网络存储结构的构建方法以及节点新增方法,下面结合几个具体的实施例详解本公开的技术方案。
实施例一:
如图1所示:
本公开提供了一种基于N叉树的区块链网络存储结构,包括:
不少于三层网络结构,所述网络结构中第一层为主节点,第二层为与主节点相连接的N个子节点,其中N为大于2的整数;
第三层为每个所述子节点依次连接的Mi个次级节点,其中Mi为小于等于N的自然数,i=1、2、……、N。
其中,所述第一层、第二层、第三层表示所述区块链网络的数据存储深度。
上述技术方案的技术效果是:
通过基于N叉树的区块链网络结构,通过N叉树的规律的节点排布,有效提高了区块链网络的节点排布规律性,更为规律的区块链网络能够提高通信领域数据传输网络中数据在节点之间的传输效率。
第一层为主节点;
第二层为N个与所述主节点相连接的子节点,其中N为大于2的整数;
第三层为Mi个次级节点依次与其对应的第N个子节点相连接,其中Mi为小于等于N的自然数,i=1、2、……、N。
第三层总节点个数为:S
式中,i=1、2、……、N,N为第二层子节点的总数,N为大于2的整数,Mi第二层第i个子节点下的次级节点个数。
应用本申请的基于N叉树的区块链网络存储结构的区块链网络,相对传统的区块链网络,节点排布规律,在进行网络中的节点数据访问查找时可以大量节约查找数据的用时。
进一步地,所述N个子节点的排布规律按照第一时间参数从左至右升序排布;
所述Mi个次级节点的排布规律按照第二时间参数从左至右升序排布。
上述进一步的技术方案的技术效果为:具体限定了本申请的区块链网络存储结构中的节点在各层的排布方式,由于是按照对应的时间参数从左至右升序排布的,在进行数据遍历查找的过程中可以大量节约时间。
优选地,所述第一时间参数和所述第二时间参数由节点接入区块链网络的时间先后顺序决定,越早接入区块链网络的节点对应的时间参数越小,该节点在区块链网络中同层级排布中越靠左。
上述优选技术方案的技术效果为:由加入区块链网络的时间先后顺序决定,使整个区块链网络的节点排布更为规律。
进一步地,N等于3,所述基于N叉树的区块链网络存储结构为基于三叉树的区块链网络存储结构。
上述进一步的技术方案的技术效果为:三叉树相对于二叉树过于高的树深度,可以再较少的树深度实现同二叉树一样数量的节点在区块链网络中的存储,即同样的节点数量,用三叉树实现所需的网络结构层数远小于利用二叉树实现。同时采用三叉树在代码层级实现上又是相对简单便捷的。以及,采用三叉树可以具有多种数据周游方式可供用户根据实际需要进行灵活选择。
进一步地,如图3所示,本公开的基于N叉树的区块链网络存储结构还可以做如下改进:
当所述区块链网络的网络结构为四层结构时,第四层为每个所述次级节点依次连接的Pji个下一级节点,其中Pji为小于等于Mi的自然数,j=1、2、……、Mi。
采用此进一步改进方案的有益效果是:
此进一步改进技术方案具体限定了本申请的区块链网络存储结构为四层网络结构的存储结构。相对三层的网络存储结构实现本申请N叉树区块链网络结构,对于例如100万个节点数量,三层网络结构需要N=1000左右来实现全部节点在区块链在网络中的存储,在代码级实现过程中编译工作过于复杂,而采用四层网络结构在N=100时即可实现百万级的节点数量在整个区块链网络中的存储,在不增加整个区块链网络层深度复杂程度的基础上极大程度的减小了代码级实现本申请的区块链网络结构的工作量。
进一步地,所述N个子节点的排布规律按照第一时间参数从左至右升序排布;
所述Mi个次级节点的排布规律按照第二时间参数从左至右升序排布;
所述Pji个下一级节点的排布规律按照第三时间参数从左至右升序排布。
优选地,所述第一时间参数、所述第二时间参数和所述第三时间参数由节点接入区块链网络的时间先后顺序决定,越早接入区块链网络的节点对应的时间参数越小,该节点在区块链网络中同层级排布中越靠左。
进一步地,若所述Pji等于Mi,则此次级节点饱和,不能继续连接新的下一级节点;
若Pji小于Mi,则此次级节点不饱和,可以继续连接新的下一级节点。
关于本公开的所述基于N叉树的区块链网络存储结构的所述构建方法包括:
S101:在所述基于N叉树的区块链网络中,通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识,其中,T为小于等于N的正整数;
S102:所述投票共识通过后,通过广播的方式将投票共识通过的网络结构广播至整个区块链网络中。
进一步,所述投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票介质时间和/或投票规则。
进一步,所述通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识具体包括:
S1011:所述监督节点根据所述投票公告信息查询符合投票资格的锚节点,
S1012:所述监督节点对一个或多个所述符合投票资格的锚节点进行私钥签名;
S1013:所述监督节点将私钥签名后的区块链的公钥和/或区块链标识广播在区块链网络中,其中所述公钥和/或区块链标识通过所述多个符合投票资格的锚节点投票选出。
进一步,所述监督节点根据所述投票公告信息查询符合投票资格的锚节点,查询获得所述符合投票资格的锚节点的区块链公钥和/或区块链标识;
所述监督节点对一个或多个所述符合投票资格的锚节点的区块链公钥和/或区块链标识进行私钥签名。
具体地,
本公开的共识方法可以通过监督节点接收投票发起方节点在区块链网络中广播的投票公告信息,所述投票公告信息包括∶投票资格条件、所述监督节点的标识信息、待投票信息、投票截止时间和投票规则。
所述区块链网络包括所述投票发起方节点、所述监督节点、记账节点和待投票的节点。
电子投票发起方节点可以是区块链网络中任意的参与节点,也就是说,区块链网络中任意的参与节点可作为一次投票的发起方节点,该发起方节点可设定投票节点需要满足的资格条件、以及具体的待投票信息。
监督节点具体可以是存储有完备的用户身份信息的数据库,监督节点可根据投票节点的资格条件生成投票节点的身份认证信息。
待投票的节点可以是区块链网络中任意的一个或多个参与节点。
具体的,电子投票发起方节点在区块链网络中广播投票公告信息,所述投票公告信息包括∶投票资格条件、所述监督节点的标识信息、待投票信息、投票截止时间和投票规则。当监督节点接收到该电子投票公告信息后,从该电子投票公告信息中提取投票资格条件。
所述监督节点根据所述投票资格条件,查询获得多个符合投票资格的锚节点的区块链公钥和/或区块链标识。
该监督节点根据该投票资格条件,并在该监督节点的数据库中查询符合投票资格的锚节点,进一步,查询获得该符合投票资格的锚节点的区块链公钥和/或区块链标识。
所述监督节点对所述多个符合投票资格的投票节点的区块链公钥和/或区块链标识进行私钥签名。
所述监督节点将私钥签名后的所述多个符合投票资格的投票选出的区块链公钥和/或区块链标识广播在区块链网络中。同时,监督节点将本申请的N叉树排布的网络结构广播至整个区块链网络中。
实施例二:
在实施例一的基础上,本公开的基于N叉树的区块链网络存储结构还可以新增节点;
若所述Mi等于N,则此子节点饱和,不能继续连接新的次级节点;
若Mi小于N,则此子节点不饱和,可以继续连接新的次级节点。
具体地,当节点不饱和时,可以继续连接新的次级节点。当区块链网络中的某个节点故障时,该故障节点可以遍历整个区块链网络寻找不饱和存在空余链的节点进行连接,快速恢复节点功能。
在进行节点恢复连接时,待接入网络的故障节点及其相连的其他下属节点在所述待接入网络的故障节点与存在空余链的节点进行连接时,所述待接入网络的故障节点及其相连的其他下属节点整体接入区块链网络。
上述技术方案的技术效果为:限定了各个节点何时为饱和状态不可增加下一级节点,何时为不饱和状态可以进一步增加下一级节点。不饱和状态的节点可以增加新的节点,也可以重新连接存在问题的故障节点。
当一个节点处于不饱和状态时则可以使用本公开的实施例二所公开的基于N叉树的网络存储结构的新增节点的方法。
所述基于N叉树的网络存储结构的新增节点的方法包括:
S201:对所述区块链网络中存在空闲节点的子节点或次级节点,在所述基于N叉树的区块链网络中发起共识;
S202:新增节点通过将令牌转移到基于N叉树的区块链网络而加入该基于N叉树的区块链网络,以成为区块链网络中的新成员;
S203:若整个区块链网络有不少于预设阈值的节点同意增加该新增节点,则将整个N叉树区块链网络的网络结构通过广播共享给所述要连结该子节点或次级节点的节点。
进一步,所述S202具体包括:
S2021:将新增节点通过将令牌转移接入区块链网络、并向区块链网络中其它节点声明新增节点的数据分级分类权限信息;
S2022:区块链网络中其它节点验证新增节点的数据分级分类信息后,记录新增节点的数据分级分类权限信息并写入区块链。
进一步,所述S202中的所述令牌转移具体包括:
通过多个参与区块链交易的第一节点之间的间接令牌交易集合的转移来实现;
获取所述间接令牌交易集合的子集,其中,所述子集包括所述参与节点是输入节点或输出节点的交易;所述间接令牌交易集合基于所述令牌转移过程中所述第一数量的令牌和预定数量的交易轮次生成;
对于所述子集中的每个间接令牌交易,与包括在所述间接令牌交易中相应的参与区块链交易的第二节点协作,以生成所述第一节点和所述第二节点之间的所述间接令牌交易的通道;
以及与其他所有第一节点协作,使用已生成的所述通道执行所述子集的间接令牌交易以实现所述令牌转移。
进一步,所述生成所述第一节点和所述第二节点之间的所述间接令牌交易的通道具体包括:
与所述第二节点协作以,
生成第一区块链交易,用于提交令牌以转移到所述间接令牌交易的输出地址;
生成第二区块链交易,将提交的令牌返回到所述间接令牌交易的输入地址;以及
生成第三区块链交易,用于将提交的令牌转移到所述间接令牌交易的输出地址。
每个交易通常具有一个或多个输入和一个或多个输出。嵌入到输入和输出中的脚本指定了如何以及由谁访问交易的输出。交易的输出可以是作为交易结果的值被转移到的地址。然后,这些令牌作为可用的交易输出与该输出地址相关联。在加密货币(例如比特币)环境中,可用的交易输出可称为未花费的交易输出。后续的交易可以引用该地址作为输入,以便将这些令牌转移到一个或多个其他地址。
本申请的增加节点的共识机制可以采用区块链技术领域的共识机制实现。
具体地,本申请的增加节点的共识机制可以采用如下方案实现:
新增节点通过将令牌转移到基于N叉树的区块链网络而加入区块链网络,以成为区块链网络的新成员,所述基于N叉树的区块链网络与阈值签名方案相关联,针对所述阈值签名方案,所述新增节点控制私钥份额,所述令牌的转移在工作量证明区块链网络上进行;以及
所述新增节点经过所述基于N叉树的区块链网络的其他节点的投票,以响应于质询者对提议者的工作成果的质询,针对所述工作成果的正确性达成分布式共识,所述质询响应于请求者所作出的请求,其中,达成所述分布式共识包括:
部署虚拟链,以达成解决所述质询的分布式共识,所述虚拟链是权益证明区块链,其中所述虚拟链的计算节点是所述基于N叉树的区块链网络的成员节点;以及
在解决所述质询时终止所述虚拟链。
新增节点加入N叉树网络后,在下次其他节点要加入基于N叉树的区块链网络时,可以重新参与共识的投票。
对于基于N叉树的区块链网络而言,其每一层的节点排布均按照一定规律进行排布,优选地,所述基于N叉树的区块链网络按照节点加入网络的先后顺序从左至右依次进行排布,当一个空闲节点要加入所述基于N叉树的区块链网络时,优先填补所能加入的最高一层节点将高层区块链网络优先填补完整。
实施例三:
本公开还能够提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时用于实现上述的基于N叉树的区块链网络的构建方法的步骤。
所述存储介质可以是非易失性的,也可以是非易失性的。所述存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
进一步地,所述存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
实施例四:
本公开还提供了一种电子设备301,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的基于N叉树的区块链网络的构建方法的步骤。
图6为一个实施例中电子设备的内部结构示意图。如图6所示,该电子设备包括通过系统总线连接的处理器、存储介质、存储器和网络接口。其中,该计算机设备的存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种基于N叉树的区块链网络的构建方法。该电设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种基于N叉树的区块链网络的构建方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
该电子设备包括但不限于智能电话、计算机、平板电脑、可穿戴智能设备、人工智能设备、移动电源等。
所述处理器在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器内的程序或者模块(例如执行远端数据读写程序等),以及调用存储在所述存储器内的数据,以执行电子设备的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器以及至少一个处理器等之间的连接通信。
图6仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图6示出的结构并不构成对所述电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。
可选地,该电子设备还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
进一步地,所述计算机可用存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
实施例五:
本公开还能够提供一种计算机存储介质,其上存储有计算机程序,计算机程序被处理器执行时用于实现上述的基于N叉树的区块链网络的节点增加方法的步骤。
所述存储介质可以是非易失性的,也可以是非易失性的。所述存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
进一步地,所述存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
实施例六:
本公开还提供了一种电子设备401,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的基于N叉树的区块链网络的节点增加方法的步骤。
图7为一个实施例中电子设备的内部结构示意图。如图7所示,该电子设备包括通过系统总线连接的处理器、存储介质、存储器和网络接口。其中,该计算机设备的存储介质存储有操作系统、数据库和计算机可读指令,数据库中可存储有控件信息序列,该计算机可读指令被处理器执行时,可使得处理器实现一种基于N叉树的区块链网络的节点增加方法。该电设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该计算机设备的存储器中可存储有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种基于N叉树的区块链网络的节点增加方法。该计算机设备的网络接口用于与终端连接通信。本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
该电子设备包括但不限于智能电话、计算机、平板电脑、可穿戴智能设备、人工智能设备、移动电源等。
所述处理器在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器内的程序或者模块(例如执行远端数据读写程序等),以及调用存储在所述存储器内的数据,以执行电子设备的各种功能和处理数据。
所述总线可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述总线被设置为实现所述存储器以及至少一个处理器等之间的连接通信。
图7仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图7示出的结构并不构成对所述电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
进一步地,所述电子设备还可以包括网络接口,可选地,所述网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。
可选地,该电子设备还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
进一步地,所述计算机可用存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
通过本申请的基于N叉树的区块链网络构建方法,能够将混乱的节点规范为N叉树规律排布的区块链网络结构。同时能够在规范的N叉树结构的区块链网络中新增节点。通过规范的N叉树规律排布的区块链网络结构,能够实现节点之间的快速数据传输。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。本公开的范围由所附权利要求及其等价物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (10)
1.一种基于N叉树的区块链网络的构建方法,所述区块链网络包括:
不少于三层网络结构,所述网络结构中第一层为主节点,第二层为与主节点相连接的N个子节点,其中N为大于2的整数;
第三层为与每个所述子节点依次连接的Mi个次级节点,其中Mi为小于等于N的自然数,i=1、2、……、N;
其特征在于,所述构建方法包括:
在所述基于N叉树的区块链网络中,通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识,其中,T为小于等于N的正整数;
所述投票共识通过后,通过广播的方式将投票共识通过的网络结构广播至整个区块链网络中。
2.根据权利要求1所述的方法,其特征在于,所述投票公告信息包括:投票资格条件、所述监督节点的标识信息、待投票信息、投票介质时间和/或投票规则。
3.根据权利要求1所述的方法,其特征在于,所述通过对每T个节点由监督节点进行投票公告信息广播的方式,以进行一次投票共识具体包括:
所述监督节点根据所述投票公告信息查询符合投票资格的锚节点,
所述监督节点对一个或多个所述符合投票资格的锚节点进行私钥签名;
所述监督节点将私钥签名后的区块链的公钥和/或区块链标识在区块链网络中进行广播,其中所述公钥和/或区块链标识通过所述多个符合投票资格的锚节点投票选出。
4.根据权利要求3所述的方法,其特征在于,所述监督节点根据所述投票公告信息查询符合投票资格的锚节点,查询获得所述符合投票资格的锚节点的区块链公钥和/或区块链标识;
所述监督节点对一个或多个所述符合投票资格的锚节点的区块链公钥和/或区块链标识进行私钥签名。
5.一种基于N叉树的区块链网络的节点增加方法,所述区块链网络包括:
不少于三层网络结构,所述网络结构中第一层为主节点,第二层为与主节点相连接的N个子节点,其中N为大于2的整数;
第三层为与每个所述子节点依次连接的Mi个次级节点,其中Mi为小于等于N的自然数,i=1、2、……、N;
其特征在于,所述方法包括:
对所述区块链网络中存在空闲节点的子节点或次级节点,在所述基于N叉树的区块链网络中发起共识;
新增节点通过将令牌转移到基于N叉树的区块链网络而加入该基于N叉树的区块链网络,以成为区块链网络中的新成员;
若整个区块链网络有不少于预设阈值的节点同意增加该新增节点,则将整个N叉树区块链网络的网络结构通过广播共享给所述要连结该子节点或次级节点的节点。
6.根据权利要求5所述的方法,其特征在于,所述新增节点通过将令牌转移到基于N叉树的区块链网络而加入该基于N叉树的区块链网络,以成为区块链网络中的新成员具体包括:
将新增节点通过将令牌转移接入区块链网络、并向区块链网络中其它节点声明新增节点的数据分级分类权限信息;
区块链网络中其它节点验证新增节点的数据分级分类信息后,记录新增节点的数据分级分类权限信息并写入区块链。
7.根据权利要求6所述的方法,其特征在于,所述令牌转移具体包括:
通过多个参与区块链交易的第一节点之间的间接令牌交易集合的转移来实现;
获取所述间接令牌交易集合的子集,其中,所述子集包括所述参与节点是输入节点或输出节点的交易;所述间接令牌交易集合基于所述令牌转移过程中所述第一数量的令牌和预定数量的交易轮次生成;
对于所述子集中的每个间接令牌交易,与包括在所述间接令牌交易中相应的参与区块链交易的第二节点协作,以生成所述第一节点和所述第二节点之间的所述间接令牌交易的通道;
以及与其他所有第一节点协作,使用已生成的所述通道执行所述子集的间接令牌交易以实现所述令牌转移。
8.根据权利要求7所述的方法,其特征在于,所述生成所述第一节点和所述第二节点之间的所述间接令牌交易的通道具体包括:
与所述第二节点协作以,
生成第一区块链交易,用于提交令牌以转移到所述间接令牌交易的输出地址;
生成第二区块链交易,用于将提交的令牌返回到所述间接令牌交易的输入地址;以及
生成第三区块链交易,用于将提交的令牌转移到所述间接令牌交易的输出地址。
9.一种电子设备,包括存储器、处理器,所述存储器上存储有可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1~4任一项中所述基于N叉树的区块链网络的构建方法的步骤或权利要求5~8任一项中所述基于N叉树的区块链网络的节点增加方法的步骤。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时用于实现权利要求1~4任一项中所述的基于N叉树的区块链网络的构建方法对应的步骤或权利要求5~8任一项中所述的基于N叉树的区块链网络的节点增加方法对应的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011530584.5A CN112527908A (zh) | 2020-12-22 | 2020-12-22 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
PCT/CN2021/124729 WO2022134783A1 (zh) | 2020-12-22 | 2021-10-19 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011530584.5A CN112527908A (zh) | 2020-12-22 | 2020-12-22 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112527908A true CN112527908A (zh) | 2021-03-19 |
Family
ID=75002349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011530584.5A Pending CN112527908A (zh) | 2020-12-22 | 2020-12-22 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN112527908A (zh) |
WO (1) | WO2022134783A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022134783A1 (zh) * | 2020-12-22 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
CN116032940A (zh) * | 2023-02-20 | 2023-04-28 | 安徽中科晶格技术有限公司 | 基于宕机容忍的区块链见证共识方法、装置、设备及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101975822B1 (ko) * | 2018-10-26 | 2019-05-08 | (주)리그시스템 | 프라이빗 블록체인 네트워크 시스템 및 경량화된 고성능 블록체인 기반 합의 방법 |
CN109543075B (zh) * | 2018-11-14 | 2020-09-22 | 全链通有限公司 | 区块生成方法和系统 |
WO2020138532A1 (ko) * | 2018-12-27 | 2020-07-02 | 서강대학교 산학협력단 | 사물 인터넷 환경을 위한 동적 블라인드 투표기반의 블록체인 합의방법 |
CN109961287A (zh) * | 2019-02-12 | 2019-07-02 | 众安信息技术服务有限公司 | 一种区块链的监管方法及监管系统 |
CN110933098B (zh) * | 2019-12-05 | 2022-04-08 | 全链通有限公司 | 基于区块链的电子投票方法、设备及存储介质 |
CN112527908A (zh) * | 2020-12-22 | 2021-03-19 | 深圳壹账通智能科技有限公司 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
-
2020
- 2020-12-22 CN CN202011530584.5A patent/CN112527908A/zh active Pending
-
2021
- 2021-10-19 WO PCT/CN2021/124729 patent/WO2022134783A1/zh active Application Filing
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022134783A1 (zh) * | 2020-12-22 | 2022-06-30 | 深圳壹账通智能科技有限公司 | 一种区块链网络的构建方法及增加节点方法、介质及设备 |
CN116032940A (zh) * | 2023-02-20 | 2023-04-28 | 安徽中科晶格技术有限公司 | 基于宕机容忍的区块链见证共识方法、装置、设备及介质 |
CN116032940B (zh) * | 2023-02-20 | 2023-06-06 | 安徽中科晶格技术有限公司 | 基于宕机容忍的区块链见证共识方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2022134783A1 (zh) | 2022-06-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Resource allocation and trust computing for blockchain-enabled edge computing system | |
CN109600230B (zh) | 一种区块链共识机制实现系统及其实现方法 | |
CN112527908A (zh) | 一种区块链网络的构建方法及增加节点方法、介质及设备 | |
CN109146677B (zh) | 并行构建区块链视图的方法、计算机系统和可读存储介质 | |
CN102789394B (zh) | 一种并行处理消息的方法、装置、节点及服务器集群 | |
CN114020845A (zh) | 区块链网络管理方法、系统、电子设备及存储介质 | |
CN114185895A (zh) | 数据导入导出方法、装置、电子设备及存储介质 | |
CN113890712A (zh) | 数据传输方法、装置、电子设备及可读存储介质 | |
Cao et al. | A survey on security in consensus and smart contracts | |
CN112256472B (zh) | 分布式数据调取方法、装置、电子设备及存储介质 | |
CN112217639B (zh) | 数据的加密共享方法、装置、电子设备及计算机存储介质 | |
CN113434501A (zh) | 关系型数据库表的存储方法、设备及可读存储介质 | |
CN115795521B (zh) | 访问控制方法、装置、电子设备及存储介质 | |
CN112364102A (zh) | 一种基于区块链的大数据交易方法、装置、介质及设备 | |
CN116823437A (zh) | 基于配置化风控策略的准入方法、装置、设备及介质 | |
CN112257078B (zh) | 一种基于tee技术的区块链加解密服务安全可信系统 | |
CN112333269A (zh) | 一种区块链网络存储结构、工作方法、装置、介质及设备 | |
CN114626103A (zh) | 数据一致性比对方法、装置、设备及介质 | |
CN115687384A (zh) | Uuid标识生成方法、装置、设备及存储介质 | |
CN117632395A (zh) | 工作流处理方法、装置、设备、存储介质和程序产品 | |
CN114254278A (zh) | 用户账号合并方法、装置、计算机设备以及存储介质 | |
CN113076069A (zh) | 双缓存方法、装置、电子设备及计算机可读存储介质 | |
CN117914943B (zh) | 数据订阅及推送方法、装置、设备及介质 | |
WO2020019315A1 (zh) | 一种基于图数据的计算运行调度方法、系统、计算机可读介质及设备 | |
CN116843454B (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 |