CN110392121B - 平行链区块生成方法、设备和存储介质 - Google Patents

平行链区块生成方法、设备和存储介质 Download PDF

Info

Publication number
CN110392121B
CN110392121B CN201910823192.9A CN201910823192A CN110392121B CN 110392121 B CN110392121 B CN 110392121B CN 201910823192 A CN201910823192 A CN 201910823192A CN 110392121 B CN110392121 B CN 110392121B
Authority
CN
China
Prior art keywords
parallel chain
block
temporary
chain
parallel
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
CN201910823192.9A
Other languages
English (en)
Other versions
CN110392121A (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 Fuzamei Technology Co Ltd
Original Assignee
Hangzhou Fuzamei 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 Fuzamei Technology Co Ltd filed Critical Hangzhou Fuzamei Technology Co Ltd
Priority to CN201910823192.9A priority Critical patent/CN110392121B/zh
Publication of CN110392121A publication Critical patent/CN110392121A/zh
Application granted granted Critical
Publication of CN110392121B publication Critical patent/CN110392121B/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/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种平行链区块生成方法、设备和存储介质,该方法包括:在第一主链区块共识成功后,根据第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库,以供各第一平行链节点从本地数据库同步相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;其中,临时平行链队列中的临时平行链区块根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,临时平行链区块包括对应主链区块的第一区块哈希和区块高度,注册信息包括第一平行链节点的平行链名称。本申请降低平行链节点同步平行链区块的带宽、降低平行链节点同步平行链区块的耗时时长。

Description

平行链区块生成方法、设备和存储介质
技术领域
本申请涉及区块链技术领域,具体涉及一种平行链区块生成方法、设备和存储介质。
背景技术
在申请人所提出的平行链机制(具体可参考申请人所申请的各项平行链专利文本)中,平行链节点需要通过遍历每一个主链区块获取所有本平行链的平行链交易从而生成平行链区块;而实际上并不是每一个主链区块都拥有本平行链的平行链交易,上述机制将造成浪费带宽、耗时长的问题。
发明内容
鉴于现有技术中的上述缺陷或不足,期望提供一种降低平行链节点同步平行链区块的带宽、降低平行链节点同步平行链区块的耗时时长的的平行链区块生成方法、设备和存储介质。
第一方面,本发明提供一种适用于主链节点的平行链区块生成方法,上述方法包括:
在第一主链区块共识成功后,根据第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库,以供各第一平行链节点从本地数据库同步相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;
其中,临时平行链队列中的临时平行链区块根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,临时平行链区块包括对应主链区块的第一区块哈希和区块高度,注册信息包括第一平行链节点的平行链名称。
第二方面,本发明提供一种适用于平行链节点的平行链区块生成方法,上述方法包括:
从主链节点的本地数据库同步当前平行链相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;
其中,各临时平行链队列由主链节点在第一主链区块共识成功后根据第一主链区块对应更新,临时平行链队列中的临时平行链区块由主链节点根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,临时平行链区块包括对应主链区块的第一区块哈希和区块高度,注册信息包括第一平行链节点的平行链名称。
第三方面,本发明还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本发明各实施例提供的平行链区块生成方法。
第四方面,本发明还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本发明各实施例提供的平行链区块生成方法。
本发明诸多实施例提供的平行链区块生成方法、设备和存储介质通过在第一主链区块共识成功后,根据第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库,以供各第一平行链节点从本地数据库同步相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;其中,临时平行链队列中的临时平行链区块根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,临时平行链区块包括对应主链区块的第一区块哈希和区块高度,注册信息包括第一平行链节点的平行链名称的方法,降低平行链节点同步平行链区块的带宽、降低平行链节点同步平行链区块的耗时时长。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例提供的一种平行链区块生成方法的流程图。
图2为图1所示方法的一种优选实施方式中步骤S12的流程图。
图3为图1所示方法的另一种优选实施方式中步骤S12的流程图。
图4为本发明一实施例提供的另一种平行链区块生成方法的流程图。
图5为图4所示方法的一种优选实施方式中步骤S22的流程图。
图6为图4所示方法的另一种优选实施方式中步骤S22的流程图。
图7为本发明一实施例提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为本发明一实施例提供的一种平行链区块生成方法的流程图。如图1所示,在本实施例中,本发明提供一种适用于主链节点的平行链区块生成方法,上述方法包括:
S12:在第一主链区块共识成功后,根据第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库,以供各第一平行链节点从本地数据库同步相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;
其中,临时平行链队列中的临时平行链区块根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,临时平行链区块包括对应主链区块的第一区块哈希和区块高度,注册信息包括第一平行链节点的平行链名称。
具体地,假设主链节点为A,第一平行链节点为a和b;a的注册信息包括a的平行链名称chain1;b的注册信息包括b的平行链名称chain2;第一主链区块为block(100);
在步骤S12中,在block(100)共识成功后,A根据block(100)更新a的临时平行链队列queue(chain1)和b的临时平行链队列queue(chain2),并存入本地数据库;
a从A的本地数据库同步queue(chain1)的临时平行链区块以生成平行链区块并执行;b从A的本地数据库同步queue(chain2)的临时平行链区块以生成平行链区块并执行。
在更多实施例中,注册信息可以根据实际需求配置为由第一平行链节点向主链节点发送注册请求后,主链节点根据注册请求存储注册信息;或,由人为配置,例如由管理员配置,主链节点存储管理员配置的注册信息,可实现相同的技术效果。
上述实施例降低平行链节点同步平行链区块的带宽,以及,降低平行链节点同步平行链区块的耗时时长,改善用户体验。
图2为图1所示方法的一种优选实施方式中步骤S12的流程图。如图2所示,在一优选实施例中,注册信息还包括对应平行链的第一空块间隔,步骤S12包括:
S121:在第一主链区块共识成功后,判断第一主链区块中是否包括第一平行链的平行链交易:
是,则执行步骤S122:生成第一平行链的第一临时平行链区块以更新第一平行链的临时平行链队列并存入本地数据库;
否,则执行步骤S123:判断不包括第一平行链的平行链交易的主链区块的连续数量是否不小于第一平行链的第一空块间隔:
是,则执行步骤S124:生成第一平行链的第一临时空块以更新第一平行链的临时平行链队列并存入本地数据库。
具体地,假设a、b对应平行链的第一空块间隔均为50,即,chain1和chain2的第一空块间隔均为50;block(100)中有零条chain1的平行链交易,两条chain2的平行链交易tx1和tx2;block(51)~block(99)均不包括chain1和chain2的平行链交易;
对于A-a:
在步骤S121中,在block(100)共识成功后,A判断block(100)中是否包括chain1的平行链交易:
由于block(100)中有零条chain1的平行链交易则执行步骤S123:A判断不包括chain1的平行链交易的主链区块的连续数量是否不小于chain1的第一空块间隔:
block(51)~block(99)均不包括chain1的平行链交易,block(100)中有零条chain1的平行链交易,不包括chain1的平行链交易的主链区块的连续数量为50,不小于chain1的第一空块间隔,则执行步骤S124:A生成chain1的第一临时空块以更新第一平行链的临时平行链队列并存入本地数据库;
a从A的本地数据库同步第一临时平行链空块以生成第一平行链空块并执行。
对于A-b:
在步骤S121中,在block(100)共识成功后,A判断block(100)中是否包括chain2的平行链交易:
由于block(100)中有两条chain2的平行链交易tx1和tx2,则执行步骤S122:生成chain2的第一临时平行链区块以更新第一平行链的临时平行链队列并存入本地数据库;
b从A的本地数据库同步第一临时平行链区块以生成第一平行链区块并执行。
在更多实施例中,还可以根据实际需求配置第一空块间隔的数值,例如,配置为100,可实现相同的技术效果。
上述实施例使得即使在较长时间内没有某一平行链的平行链交易,用户仍能通过平行链产生的空块感知到平行链在正常运行,进一步改善用户体验。
图3为图1所示方法的另一种优选实施方式中步骤S12的流程图。如图3所示,在一优选实施例中,注册信息还包括对应平行链的第一起始同步高度,步骤S12包括:
S126:根据第一起始同步高度确定选取第一主链区块的起始高度;
S127:在第一主链区块共识成功后,根据第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库。
假设有第一应用场景,第一应用场景如下:
a对应平行链的第一空块间隔均为50,a对应平行链的第一起始同步高度为1000,即,chainl的第一空块间隔均为50,chain1的第一起始同步高度为1000;若A从区块高度为0时开始生成a对应平行链的临时平行链队列,在真正生成包含有chain1的平行链交易的临时平行链区块之前会生成20个临时平行链空块,且这20个临时平行链空块无意义;
针对第一应用场景所产生的问题,可以通过步骤S126至步骤S127解决;
具体地,以每个线程相应生成一个平行链的临时平行链队列为例;假设线程1用于生成chain1的临时平行链队列,线程2用于生成chain2的临时平行链队列;a对应平行链的第一起始同步高度为1000,即,chainl的第一起始同步高度为1000;b对应平行链的第一起始同步高度为2000,即,chain2的第一起始同步高度为2000;
线程1:
在步骤S126中,A根据a对应平行链的第一起始同步高度确定选取第一主链区块的起始高度,即,A选取a的起始高度为1000;
在步骤S127中,A在block(1000)共识成功后,根据block(1000)更新a对应的临时平行链队列并存入本地数据库,即根据block(1000)更新chain1的临时平行链队列并存入本地数据库。
线程2:
在步骤S126中,A根据b对应平行链的第一起始同步高度确定选取第一主链区块的起始高度,即,A选取b的起始高度为2000;
在步骤S127中,A在block(2000)共识成功后,根据block(2000)更新b对应的临时平行链队列并存入本地数据库,即,根据block(2000)更新chain2的临时平行链队列并存入本地数据库。
在更多实施例中,也可以在同一个线程中生成所有平行链的临时平行链队列,可实现相同的技术效果。当配置为在同一个线程中生成所有平行链的临时平行链队列时,主链节点还需要判断第一主链区块的区块高度与各平行链的第一起始同步高度的大小;假设待共识成功的第一主链区块为block(990),A判断第一主链区块的区块高度与各平行链的第一起始同步高度的大小,由于990小于chain1和chain2的第一起始同步高度,则不根据block(990)更新chain1和chain2的临时平行链队列;假设待共识成功的第一主链区块为block(1990),A判断第一主链区块的区块高度与各平行链的第一起始同步高度的大小,由于1990小于chain2的第一起始同步高度,则不根据block(1990)更新chain2的临时平行链队列。
优选地,临时平行链区块还包括上一临时平行链区块所对应的主链区块的第二区块哈希,第二区块哈希用于供平行链节点在同步第二临时平行链区块时验证第二临时平行链区块的第二区块哈希与当前平行链的最新平行链区块所对应的主链区块的区块哈希是否相同:
是,则根据第二临时平行链区块生成平行链区块并执行;
否,则向前遍历临时平行链区块队列中的临时平行链区块,直至找到第三临时平行链区块;其中,第三临时平行链区块的第二区块哈希与当前平行链中的第二平行链区块所对应的主链区块的区块哈希相同;以及,
删除根据第二平行链区块后的所有平行链区块;以及,
根据第三临时平行链区块生成平行链区块并执行。
假设有第二应用场景,第二应用场景如下:
a从A的本地数据库同步临时平行链区块队列的临时平行链区块,当a所同步的第二临时平行链区块的第二区块哈希与当前平行链的最新平行链区块所对应的主链区块的区块哈希不同时,若直接根据第二临时平行链区块生成平行链区块,则生成的平行链区块出错;
针对第二应用场景所产生的问题,可以通过本实施例的方法解决。
具体地,假设A根据block(180)生成block(19_临_平),根据block(200)生成第二临时平行链区块block(20_临_平);第二临时平行链区块的第二区块哈希为blockhash(180);
a此时的最新平行链区块为block(19_平),a需要根据block(20_临_平)生成block(20_平)并执行,此时a的最新平行链区块所对应的主链区块的区块哈希为blockhash(180)′;
假设blockhash(180)与blockhash(180)′不同,在当前实施例中:
a验证blockhash(180)与blockhash(180)′是否相同:
由于blockhash(180)与blockhash(180)′不同,则向前遍历临时平行链区块队列中的临时平行链区块,直至找到第三临时平行链区块;其中,第三临时平行链区块的第二区块哈希与当前平行链中的第二平行链区块所对应的主链区块的区块哈希相同;以及,
a删除根据第二平行链区块后的所有平行链区块;以及,
a根据第三临时平行链区块生成平行链区块并执行。
此时,a已回滚不正确的临时平行链区块,再根据正确的临时平行链区块生成正确的平行链区块。
在一优选实施例中,主链节点每次重启时,读取各平行链的状态配置项:
若所读取的平行链的状态配置项为中止,则暂停更新相对应的临时平行链队列;
若所读取的平行链的状态配置项为终止,则终止更新相对应的临时平行链队列,并删除相对应的临时平行链队列。
在更多实施例中,还可以根据实际需求配置状态配置项,例如,将中止配置为1,将终止配置为2,可实现相同的技术效果。
图4为本发明一实施例提供的另一种平行链区块生成方法的流程图。如图4所示,在本实施例中,本发明提供一种适用于平行链节点的平行链区块生成方法,上述方法包括:
S22:从主链节点的本地数据库同步当前平行链相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;
其中,各临时平行链队列由主链节点在第一主链区块共识成功后根据第一主链区块对应更新,临时平行链队列中的临时平行链区块由主链节点根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,临时平行链区块包括对应主链区块的第一区块哈希和区块高度,注册信息包括第一平行链节点的平行链名称。
上述实施例的平行链区块生成原理可参考图1所示的方法,此处不再赘述。
图5为图4所示方法的一种优选实施方式中步骤S22的流程图。如图5所示,在一优选实施例中,注册信息还包括当前平行链的第一空块间隔,用于供主链节点在第一主链区块中不包括当前平行链的平行链交易时判断不包括当前平行链的平行链交易的主链区块的连续数量是否不小于第一空块间隔:是,则生成当前平行链的第一临时空块以更新当前平行链的临时平行链队列并存入本地数据库,步骤S22包括:
S221:从主链节点的本地数据库同步第一临时空块以生成第一空块并执行。
上述实施例的平行链区块生成原理可参考图2所示的方法,此处不再赘述。
优选地,注册信息还包括当前平行链的第一起始同步高度,用于供主链节点根据当前平行链的第一起始同步高度确定选取第一主链区块的起始高度。
上述实施例的平行链区块生成原理可参考图3所示的方法,此处不再赘述。
图6为图4所示方法的另一种优选实施方式中步骤S22的流程图。如图6所示,在一优选实施例中,临时平行链区块还包括上一临时平行链区块所对应的主链区块的第二区块哈希,步骤S22包括:
S223:验证待同步的第二临时平行链区块的第二区块哈希与当前平行链的最新平行链区块所对应的主链区块的区块哈希是否相同:
是,则执行步骤S224:根据第二临时平行链区块生成平行链区块并执行;
否,则执行步骤S225:向前遍历临时平行链区块队列中的临时平行链区块,直至找到第三临时平行链区块;其中,第三临时平行链区块的第二区块哈希与当前平行链中的第二平行链区块所对应的主链区块的区块哈希相同;以及,
S226:删除根据第二平行链区块后的所有平行链区块;以及,
S227:根据第三临时平行链区块生成平行链区块并执行。
上述实施例的平行链区块生成原理可参考图1所示的平行链区块生成方法的一种优选实施例所示的方法,此处不再赘述。
图7为本发明一实施例提供的一种设备的结构示意图。如图7所示,作为另一方面,本申请还提供了一种设备700,包括一个或多个中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分707加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM703中,还存储有设备700操作所需的各种程序和数据。CPU701、ROM702以及RAM703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本公开的实施例,上述任一实施例描述的平行链区块生成方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行平行链区块生成方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。
作为又一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例的装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,该程序被一个或者一个以上的处理器用来执行描述于本申请的平行链区块生成方法。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这根据所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以通过执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以通过专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,例如,各所述单元可以是设置在计算机或移动智能设备中的软件程序,也可以是单独配置的硬件装置。其中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离本申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (10)

1.一种平行链区块生成方法,其特征在于,适用于主链节点,所述方法包括:
在第一主链区块共识成功后,根据所述第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库,以供各第一平行链节点从所述本地数据库同步相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;
其中,所述临时平行链队列中的临时平行链区块根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,所述临时平行链区块包括对应主链区块的第一区块哈希和区块高度,所述注册信息包括所述第一平行链节点的平行链名称。
2.根据权利要求1所述的方法,其特征在于,所述注册信息还包括对应平行链的第一空块间隔,所述根据所述第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库包括:
判断所述第一主链区块中是否包括第一平行链的平行链交易:
是,则生成所述第一平行链的第一临时平行链区块以更新所述第一平行链的临时平行链队列并存入本地数据库;
否,则判断不包括所述第一平行链的平行链交易的主链区块的连续数量是否不小于所述第一平行链的第一空块间隔:是,则生成所述第一平行链的第一临时空块以更新所述第一平行链的临时平行链队列并存入本地数据库。
3.根据权利要求1所述的方法,其特征在于,所述注册信息还包括对应平行链的第一起始同步高度,所述在第一主链区块共识成功后,根据所述第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库包括:
根据所述第一起始同步高度确定选取所述第一主链区块的起始高度;
在第一主链区块共识成功后,根据所述第一主链区块更新各第一平行链节点相对应的临时平行链队列并存入本地数据库。
4.根据权利要求1所述的方法,其特征在于,所述临时平行链区块还包括上一临时平行链区块所对应的主链区块的第二区块哈希,所述第二区块哈希用于供平行链节点在同步第二临时平行链区块时验证所述第二临时平行链区块的第二区块哈希与当前平行链的最新平行链区块所对应的主链区块的区块哈希是否相同:
是,则根据所述第二临时平行链区块生成平行链区块并执行;
否,则向前遍历所述临时平行链区块队列中的临时平行链区块,直至找到第三临时平行链区块;其中,所述第三临时平行链区块的第二区块哈希与当前平行链中的第二平行链区块所对应的主链区块的区块哈希相同;以及,
删除根据所述第二平行链区块后的所有平行链区块;以及,
根据所述第三临时平行链区块生成平行链区块并执行。
5.一种平行链区块生成方法,其特征在于,适用于平行链节点,所述方法包括:
从主链节点的本地数据库同步当前平行链相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行;
其中,各所述临时平行链队列由主链节点在第一主链区块共识成功后根据所述第一主链区块对应更新,所述临时平行链队列中的临时平行链区块由所述主链节点根据所存储的若干第一平行链节点的注册信息从第一主链区块中筛选相对应的平行链的平行链交易生成,所述临时平行链区块包括对应主链区块的第一区块哈希和区块高度,所述注册信息包括所述第一平行链节点的平行链名称。
6.根据权利要求5所述的方法,其特征在于,所述注册信息还包括当前平行链的第一空块间隔,用于供主链节点在所述第一主链区块中不包括当前平行链的平行链交易时判断不包括当前平行链的平行链交易的主链区块的连续数量是否不小于所述第一空块间隔:是,则生成当前平行链的第一临时空块以更新当前平行链的临时平行链队列并存入本地数据库,所述从主链节点的本地数据库同步当前平行链相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行包括:
从所述主链节点的本地数据库同步所述第一临时空块以生成第一空块并执行。
7.根据权利要求5所述的方法,其特征在于,所述注册信息还包括当前平行链的第一起始同步高度,用于供所述主链节点根据当前平行链的第一起始同步高度确定选取所述第一主链区块的起始高度。
8.根据权利要求5所述的方法,其特征在于,所述临时平行链区块还包括上一临时平行链区块所对应的主链区块的第二区块哈希,所述从主链节点的本地数据库同步当前平行链相对应的临时平行链队列的临时平行链区块以生成平行链区块并执行包括:
验证待同步的第二临时平行链区块的第二区块哈希与当前平行链的最新平行链区块所对应的主链区块的区块哈希是否相同:
是,则根据所述第二临时平行链区块生成平行链区块并执行;
否,则向前遍历所述临时平行链区块队列中的临时平行链区块,直至找到第三临时平行链区块;其中,所述第三临时平行链区块的第二区块哈希与当前平行链中的第二平行链区块所对应的主链区块的区块哈希相同;以及,
删除根据所述第二平行链区块后的所有平行链区块;以及,
根据所述第三临时平行链区块生成平行链区块并执行。
9.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1-8中任一项所述的方法。
10.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一项所述的方法。
CN201910823192.9A 2019-09-02 2019-09-02 平行链区块生成方法、设备和存储介质 Active CN110392121B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910823192.9A CN110392121B (zh) 2019-09-02 2019-09-02 平行链区块生成方法、设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910823192.9A CN110392121B (zh) 2019-09-02 2019-09-02 平行链区块生成方法、设备和存储介质

Publications (2)

Publication Number Publication Date
CN110392121A CN110392121A (zh) 2019-10-29
CN110392121B true CN110392121B (zh) 2021-10-01

Family

ID=68289661

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910823192.9A Active CN110392121B (zh) 2019-09-02 2019-09-02 平行链区块生成方法、设备和存储介质

Country Status (1)

Country Link
CN (1) CN110392121B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111008249B (zh) * 2019-12-04 2023-04-07 杭州复杂美科技有限公司 平行链区块同步方法、设备和存储介质
CN111432027B (zh) * 2020-04-14 2023-04-14 杭州复杂美科技有限公司 平行链区块同步方法、设备和存储介质
CN111524011B (zh) * 2020-05-06 2023-05-30 杭州复杂美科技有限公司 平行链共识确认方法、设备和存储介质
CN112184436B (zh) * 2020-09-24 2021-07-16 成都质数斯达克科技有限公司 数据同步方法、电子设备及可读存储介质
CN112804322B (zh) * 2021-01-11 2022-06-28 杭州复杂美科技有限公司 区块生成方法、计算机设备和存储介质
CN112948497B (zh) * 2021-03-05 2022-05-24 杭州复杂美科技有限公司 平行链区块生成方法、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10109027B1 (en) * 2010-09-01 2018-10-23 Brian T. Stack Database access and community electronic medical records system
CN109325762A (zh) * 2018-08-30 2019-02-12 杭州复杂美科技有限公司 平行链跨链交易方法、设备和存储介质
CN109410045A (zh) * 2018-08-30 2019-03-01 杭州复杂美科技有限公司 一种平行链共识方法、设备和存储介质
CN109447605A (zh) * 2018-10-24 2019-03-08 百度在线网络技术(北京)有限公司 一种基于区块链的链货币兑换方法、装置、设备和介质
WO2019055585A1 (en) * 2017-09-12 2019-03-21 Kadena Llc PARALLEL CHAIN ARCHITECTURE FOR BLOCK CHAIN SYSTEMS
CN110060050A (zh) * 2018-12-31 2019-07-26 莆田市烛火信息技术有限公司 一种区块链网络的平行链管理系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10046228B2 (en) * 2016-05-02 2018-08-14 Bao Tran Smart device

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10109027B1 (en) * 2010-09-01 2018-10-23 Brian T. Stack Database access and community electronic medical records system
WO2019055585A1 (en) * 2017-09-12 2019-03-21 Kadena Llc PARALLEL CHAIN ARCHITECTURE FOR BLOCK CHAIN SYSTEMS
CN109325762A (zh) * 2018-08-30 2019-02-12 杭州复杂美科技有限公司 平行链跨链交易方法、设备和存储介质
CN109410045A (zh) * 2018-08-30 2019-03-01 杭州复杂美科技有限公司 一种平行链共识方法、设备和存储介质
CN109447605A (zh) * 2018-10-24 2019-03-08 百度在线网络技术(北京)有限公司 一种基于区块链的链货币兑换方法、装置、设备和介质
CN110060050A (zh) * 2018-12-31 2019-07-26 莆田市烛火信息技术有限公司 一种区块链网络的平行链管理系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
多链架构设计必读:平行链节点如何快速发现主链数据被篡改?;weixin_43829193;《https://blog.csdn.net/weixin_43829193/article/details/93378447》;20190623;全文 *

Also Published As

Publication number Publication date
CN110392121A (zh) 2019-10-29

Similar Documents

Publication Publication Date Title
CN110392121B (zh) 平行链区块生成方法、设备和存储介质
CN109271446B (zh) 一种平行链数据同步方法、设备和存储介质
CN109410045B (zh) 一种平行链共识方法、设备和存储介质
CN110113408B (zh) 一种区块同步方法、设备和存储介质
CN110084601B (zh) 平行链主链交易状态同步方法、设备和存储介质
CN108984662B (zh) 一种区块链数据同步方法
CN110083745B (zh) 数据查询方法、设备和存储介质
CN109388677B (zh) 集群之间数据同步方法、装置、设备及其存储介质
CN109587271B (zh) 主链平行链架构系统及区块同步方法、设备和存储介质
CN111798316B (zh) 平行链共识方法、设备和存储介质
CN111861471A (zh) 平行链共识方法、平行链区块回滚方法、设备和存储介质
CN110445843B (zh) 平行链区块推送方法、设备和存储介质
CN107197036A (zh) 一种基于区块链的信息一致处理方法及终端
CN111008249B (zh) 平行链区块同步方法、设备和存储介质
CN111242780A (zh) 共识交易发送方法、设备和存储介质
CN110837505A (zh) 状态数据存储方法、状态数据同步方法、设备和存储介质
CN111259074A (zh) 区块同步方法、设备和存储介质
CN110516006B (zh) 平行链区块生成方法、设备和存储介质
CN110287263B (zh) 平行链自共识方法、设备和存储介质
CN111405037A (zh) 区块同步方法、设备和存储介质
CN111523896A (zh) 防攻击方法、设备和存储介质
CN111432027B (zh) 平行链区块同步方法、设备和存储介质
CN110535922B (zh) 状态数据存储方法和平行链区块生成方法
CN110795288B (zh) 数据获取方法、设备和存储介质
CN111290733B (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
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20191029

Assignee: Hangzhou DUOLIAN Technology Co.,Ltd.

Assignor: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Contract record no.: X2022330000090

Denomination of invention: Parallel chain block generation method, device and storage medium

Granted publication date: 20211001

License type: Common License

Record date: 20220516

Application publication date: 20191029

Assignee: Hangzhou left chain Technology Co.,Ltd.

Assignor: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Contract record no.: X2022330000092

Denomination of invention: Parallel chain block generation method, device and storage medium

Granted publication date: 20211001

License type: Common License

Record date: 20220516

Application publication date: 20191029

Assignee: Hangzhou Kulian Technology Co.,Ltd.

Assignor: HANGZHOU FUZAMEI TECHNOLOGY Co.,Ltd.

Contract record no.: X2022330000091

Denomination of invention: Parallel chain block generation method, device and storage medium

Granted publication date: 20211001

License type: Common License

Record date: 20220516

EE01 Entry into force of recordation of patent licensing contract