平行链监督共识方法、设备和存储介质技术

技术编号:27938357 阅读:8 留言:0更新日期:2021-04-02 14:19
本发明专利技术提供一种平行链监督共识方法、设备和存储介质,涉及区块链等技术领域,该方法包括:执行第一平行链的第一高度的各共识交易以获得通过共识的第一执行结果,在主链上将第一平行链的第一预共识高度更新为第一高度,将连续增长高度加一以更新连续增长高度;在连续增长高度大于第一数值时,在主链上将第一平行链的第一共识高度加一以更新第一共识高度;在第二执行结果与第三执行结果不同时,在主链上将第一预共识高度和第一共识高度更新为第三高度减一,并将连续增长高度清零;执行若干重新生成的第三高度的监督交易和/或共识交易,返回判断第二执行结果与第三执行结果是否相同。本申请保证平行链共识正确增长。

【技术实现步骤摘要】
平行链监督共识方法、设备和存储介质
本申请涉及平行链
,具体涉及一种平行链监督共识方法、设备和存储介质。
技术介绍
在现有平行链技术中,假设平行链parachain1上有平行链共识节点N1~N7;假设N1~N5对所生成的区块block(100)联合作弊,即使N6、N7发现N1~N5联合作弊,N6、N7根据所生成的区块block(100)生成的共识交易也无法改变block(100)的平行链共识贡献。即,联合作弊的执行结果与N6、N7的执行结果不同,N6、N7也只能被动接收,不能对最终共识结果产生纠正,可能造成资产损失。
技术实现思路
鉴于现有技术中的上述缺陷或不足,期望提供一种保证平行链共识正确增长的平行链监督共识方法、设备和存储介质。第一方面,本专利技术提供一种适用于主链节点的平行链监督共识方法,平行链配置有一个或多个监督节点,上述方法包括:执行第一平行链的第一高度的各共识交易以获得通过共识的第一执行结果,在主链上将第一平行链的第一预共识高度更新为第一高度,将连续增长高度加一以更新连续增长高度;在连续增长高度大于第一数值时,在主链上将第一平行链的第一共识高度加一以更新第一共识高度;执行第一平行链的第三高度的各监督交易以获得通过共识的第二执行结果;其中,监督交易由第一平行链的各监督节点在监测到所生成的第三高度的第二平行链区块的执行结果与第三执行结果不同时根据第二平行链区块生成,第三高度大于第一共识高度且不大于第一预共识高度,第三执行结果为执行第一平行链的第三高度的各共识交易所获得的通过共识的执行结果;以及,判断第二执行结果与第三执行结果是否相同:否,则在主链上将第一预共识高度和第一共识高度更新为第三高度减一,并将连续增长高度清零;以及,执行若干重新生成的第三高度的监督交易和/或共识交易,并在获得重新通过共识的第二执行结果和/或第三执行结果后,返回判断第二执行结果与第三执行结果是否相同;其中,重新生成的第三高度的共识交易由第一平行链的共识节点在检查出上一次生成的第三高度的共识交易错误时生成,重新生成的第一高度的监督交易由第一平行链的监督节点在检查出上一次生成的第三高度的监督交易错误时生成。第二方面,本专利技术提供一种适用于监督节点的平行链监督共识方法,平行链配置有一个或多个监督节点,上述方法包括:从主链获取并执行当前平行链的第一高度的各共识交易以获得通过共识的第一执行结果;其中,各共识交易还用于供各主链节点执行各共识交易以获得通过共识的第一执行结果,第一执行结果用于供各主链节点在主链上将当前平行链的第一预共识高度更新为第一高度;监测所生成的第一高度的第一平行链区块的执行结果是否与第一执行结果相同:是,则在当前平行链上将当前平行链的第一预共识高度更新为第一高度,将连续增长高度加一以更新连续增长高度;以及,在连续增长高度大于第一数值时,在当前平行链上将当前平行链的第一共识高度加一以更新第一共识高度;否,则根据第一平行链区块生成第一监督交易并发送至主链,以供各主链节点执行包括第一监督交易的第一高度的各监督交易以获得通过共识的第二执行结果,并判断第一执行结果与第二执行结果是否相同:否,则在主链上将第一预共识高度和当前平行链的第一共识高度更新为第一高度减一;以及,从主链获取并执行各监督交易以获得通过共识的第二执行结果;以及,判断第一执行结果与第二执行结果是否相同:否,则在当前平行链上将第一预共识高度和第一共识高度更新为第一高度减一,并将连续增长高度清零;以及,检查上一次生成的第一监督交易是否错误:是,则重新生成第一监督交易并发送至主链,以供各主链节点执行若干重新生成的第一高度的监督交易和/或共识交易,并在获得重新通过共识的第二执行结果和/或第一执行结果后,返回判断第一执行结果与第二执行结果是否相同;其中,重新生成的第一高度的共识交易由当前平行链的共识节点在检查出上一次生成的第一高度的共识交易错误时生成;其它重新生成的第一高度的监督交易由当前平行链的其它监督节点在检查出上一次生成的第一高度的监督交易错误时生成;以及,从主链获取并执行各重新生成的第一高度的共识交易和/或监督交易,并在获得重新通过共识的第一执行结果和/或第二执行结果后,返回判断第一执行结果与第二执行结果是否相同。第三方面,本专利技术提供一种适用于共识节点的平行链监督共识方法,平行链配置有一个或多个监督节点,上述方法包括:从主链获取并执行当前平行链的第一高度的各共识交易以获得通过共识的第一执行结果,在当前平行链上将当前平行链的第一预共识高度更新为第一高度,将连续增长高度加一以更新连续增长高度;其中,各共识交易还用于供各主链节点执行各共识交易以获得通过共识的第一执行结果,第一执行结果用于供各主链节点在主链上将当前平行链的第一预共识高度更新为第一高度;在连续增长高度大于第一数值时,在当前平行链上将当前平行链的第一共识高度加一以更新第一共识高度;执行当前平行链的第三高度的各监督交易以获得通过共识的第二执行结果;其中,监督交易由当前平行链的各监督节点在监测到所生成的第三高度的第二平行链区块的执行结果与第三执行结果不同时根据第二平行链区块生成,第三高度大于当前的第一共识高度且不大于当前的第一预共识高度,第三执行结果为执行第一平行链的第三高度的各共识交易所获得的通过共识的执行结果;判断第二执行结果与第三执行结果是否相同:否,则在当前平行链上将第一预共识高度和第一共识高度更新为第三高度减一,并将连续增长高度清零;以及,检查上一次生成的第三高度的第一共识交易是否错误:是,则重新生成第一共识交易并发送至主链,以供各主链节点执行若干重新生成的第三高度的监督交易和/或包括第一共识交易的共识交易,并在获得重新通过共识的第二执行结果和/或第三执行结果后,返回判断第二执行结果与第三执行结果是否相同;其中,其它重新生成的第三高度的共识交易由当前平行链的其它共识节点在检查出上一次生成的第三高度的共识交易错误时生成;其它重新生成的第三高度的监督交易由当前平行链的监督节点在检查出上一次生成的第三高度的监督交易错误时生成;以及,从主链获取并执行各重新生成的第三高度的共识交易和/或监督交易,并在获得重新通过共识的第二执行结果和/或第三执行结果后,返回判断第二执行结果与第三执行结果是否相同。第四方面,本专利技术还提供一种设备,包括一个或多个处理器和存储器,其中存储器包含可由该一个或多个处理器执行的指令以使得该一个或多个处理器执行根据本专利技术各实施例提供的平行链监督共识方法。第五方面,本专利技术还提供一种存储有计算机程序的存储介质,该计算机程序使计算机执行根据本专利技术各实施例提供的平行链监督共识方法。本专利技术诸多实施例提供的平行链监督共识方法、设备和存储介质通过执行第一平行链的第一高度的各共识交易以获得通过共识的第一执行结果,在主链上将第一平行链的第一预共识高度更新为第一高度,将连续增长高度加一以更新连本文档来自技高网...

【技术保护点】
1.一种平行链监督共识方法,其特征在于,平行链配置有一个或多个监督节点,所述方法适用于主链节点,所述方法包括:/n执行第一平行链的第一高度的各共识交易以获得通过共识的第一执行结果,在主链上将所述第一平行链的第一预共识高度更新为所述第一高度,将连续增长高度加一以更新所述连续增长高度;/n在所述连续增长高度大于第一数值时,在主链上将所述第一平行链的第一共识高度加一以更新所述第一共识高度;/n执行所述第一平行链的第三高度的各监督交易以获得通过共识的第二执行结果;其中,所述监督交易由所述第一平行链的各监督节点在监测到所生成的所述第三高度的第二平行链区块的执行结果与第三执行结果不同时根据所述第二平行链区块生成,所述第三高度大于所述第一共识高度且不大于所述第一预共识高度,所述第三执行结果为执行所述第一平行链的第三高度的各共识交易所获得的通过共识的执行结果;以及,/n判断所述第二执行结果与所述第三执行结果是否相同:/n否,则在主链上将所述第一预共识高度和所述第一共识高度更新为所述第三高度减一,并将所述连续增长高度清零;以及,/n执行若干重新生成的所述第三高度的监督交易和/或共识交易,并在获得重新通过共识的第二执行结果和/或第三执行结果后,返回所述判断所述第二执行结果与所述第三执行结果是否相同;其中,重新生成的所述第三高度的共识交易由所述第一平行链的共识节点在检查出上一次生成的所述第三高度的共识交易错误时生成,重新生成的所述第一高度的监督交易由所述第一平行链的监督节点在检查出上一次生成的所述第三高度的监督交易错误时生成。/n...

【技术特征摘要】
1.一种平行链监督共识方法,其特征在于,平行链配置有一个或多个监督节点,所述方法适用于主链节点,所述方法包括:
执行第一平行链的第一高度的各共识交易以获得通过共识的第一执行结果,在主链上将所述第一平行链的第一预共识高度更新为所述第一高度,将连续增长高度加一以更新所述连续增长高度;
在所述连续增长高度大于第一数值时,在主链上将所述第一平行链的第一共识高度加一以更新所述第一共识高度;
执行所述第一平行链的第三高度的各监督交易以获得通过共识的第二执行结果;其中,所述监督交易由所述第一平行链的各监督节点在监测到所生成的所述第三高度的第二平行链区块的执行结果与第三执行结果不同时根据所述第二平行链区块生成,所述第三高度大于所述第一共识高度且不大于所述第一预共识高度,所述第三执行结果为执行所述第一平行链的第三高度的各共识交易所获得的通过共识的执行结果;以及,
判断所述第二执行结果与所述第三执行结果是否相同:
否,则在主链上将所述第一预共识高度和所述第一共识高度更新为所述第三高度减一,并将所述连续增长高度清零;以及,
执行若干重新生成的所述第三高度的监督交易和/或共识交易,并在获得重新通过共识的第二执行结果和/或第三执行结果后,返回所述判断所述第二执行结果与所述第三执行结果是否相同;其中,重新生成的所述第三高度的共识交易由所述第一平行链的共识节点在检查出上一次生成的所述第三高度的共识交易错误时生成,重新生成的所述第一高度的监督交易由所述第一平行链的监督节点在检查出上一次生成的所述第三高度的监督交易错误时生成。


2.根据权利要求1所述的方法,其特征在于,所述监督交易由所述第一平行链的各监督节点在监测到所生成的所述第三高度的第二平行链区块为非空区块,且所述第二平行链区块的执行结果与第三执行结果不同时根据所述第二平行链区块生成。


3.一种平行链监督共识方法,其特征在于,平行链配置有一个或多个监督节点,所述方法适用于监督节点,所述方法包括:
从主链获取并执行当前平行链的第一高度的各共识交易以获得通过共识的第一执行结果;其中,各所述共识交易还用于供各主链节点执行各所述共识交易以获得通过共识的第一执行结果,所述第一执行结果用于供各主链节点在主链上将当前平行链的第一预共识高度更新为所述第一高度;
监测所生成的所述第一高度的第一平行链区块的执行结果是否与所述第一执行结果相同:
是,则在当前平行链上将当前平行链的第一预共识高度更新为所述第一高度,将连续增长高度加一以更新所述连续增长高度;以及,
在所述连续增长高度大于第一数值时,在当前平行链上将当前平行链的第一共识高度加一以更新所述第一共识高度;
否,则根据所述第一平行链区块生成第一监督交易并发送至主链,以供各主链节点执行包括所述第一监督交易的所述第一高度的各监督交易以获得通过共识的第二执行结果,并判断所述第一执行结果与所述第二执行结果是否相同:否,则在主链上将所述第一预共识高度和当前平行链的第一共识高度更新为所述第一高度减一;以及,
从主链获取并执行各所述监督交易以获得通过共识的第二执行结果;以及,
判断所述第一执行结果与所述第二执行结果是否相同:
否,则在当前平行链上将所述第一预共识高度和所述第一共识高度更新为所述第一高度减一,并将所述连续增长高度清零;以及,
检查上一次生成的所述第一监督交易是否错误:
是,则重新生成所述第一监督交易并发送至主链,以供各主链节点执行若干重新生成的所述第一高度的监督交易和/或共识交易,并在获得重新通过共识的第二执行结果和/或第一执行结果后,返回所述判断所述第一执行结果与所述第二执行结果是否相同;其中,重新生成的所述第一高度的共识交易由当前平行链的共识节...

【专利技术属性】
技术研发人员:马登极王志文吴思进
申请(专利权)人:杭州复杂美科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1