一种基于区块链系统的共同父节点获取方法和装置制造方法及图纸

技术编号:33359971 阅读:16 留言:0更新日期:2022-05-11 22:14
本发明专利技术提出了一种基于区块链系统的共同父节点获取方法和装置,包括:将动态树中的第一节点对称转换为所述第一节点所在平铺树树链的根节点;分离所述第一节点在辅助树上的父节点的右子节点,并将所述第一节点作为所述父节点的右子节点;将动态树中的所述父节点对称转换为所述父节点所在平铺树树链的根节点;将所述动态树处于第一形态时的根节点到第二节点的访问路径作为重链对称转换到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态;获取所述动态树处于第二形态时所述第一节点和第二节点所在辅助树的根节点。本发明专利技术提高了获取节点效率。本发明专利技术提高了获取节点效率。本发明专利技术提高了获取节点效率。

【技术实现步骤摘要】
一种基于区块链系统的共同父节点获取方法和装置


[0001]本申请涉及区块链领域,尤其涉及一种基于区块链系统的共同父节点获取方法和装置。

技术介绍

[0002]在区块链系统中,难以避免分叉。当接收到分叉链的新区块时,需要回到分叉点重新根据规则选择主链,此时需要获取两个区块节点的共同父节点,从共同父节点进行计算。目前常用的获取共同父节点的方法例如回溯法,效率不高,计算量较大,影响区块链的整体性能。

技术实现思路

[0003]为解决上述技术问题之一,本专利技术提供了一种基于区块链系统的共同父节点获取方法和装置。具体包括:
[0004]根据本公开的具体实施方式,一种基于区块链系统的共同父节点获取方法,包括:
[0005]S101、将动态树中的第一节点对称转换为所述第一节点所在平铺树树链的根节点,所述动态树中包含有至少一条平铺树树链,所述至少一条平铺树树链中的一条包含所述第一节点;
[0006]S102、分离所述第一节点在辅助树上的父节点的右子节点,并将所述第一节点作为所述父节点的右子节点;
[0007]S103、将动态树中的所述父节点对称转换为所述父节点所在平铺树树链的根节点,并将所述父节点作为新的第一节点后重复执行S101至S103,直至新的第一节点在辅助树上不存在父节点时结束执行步骤,使所述动态树处于第一形态;
[0008]S104、将所述动态树处于第一形态时的根节点到第二节点的访问路径作为重链对称转换到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态,所述第一节点和第二节点位于同一个动态树中;
[0009]S105、获取所述动态树处于第二形态时所述第一节点和第二节点所在辅助树的根节点,所述辅助树的根节点为所述第一节点和第二节点的共同父节点。
[0010]可选的,还包括:
[0011]判断所述第一节点在辅助树上是否存在父节点;
[0012]当所述第一节点在辅助树上存在父节点时,执行S102至S103;
[0013]当所述第一节点在辅助树上不存在父节点时结束执行步骤。
[0014]可选的,所述将所述动态树处于第一形态时的根节点到第二节点的访问路径作为重链旋转到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态,包括:
[0015]S1041、将动态树处于第一形态时的第二节点对称转换为所述第二节点所在平铺树树链的根节点,所述动态树中包含有至少一条平铺树树链,所述至少一条平铺树树链中
的一条包含所述第二节点;
[0016]S1042、分离所述第二节点在辅助树上的父节点的右子节点,并将所述第二节点作为所述父节点的右子节点;
[0017]S1043、将动态树处于第一形态时的所述父节点旋转为所述父节点所在平铺树树链的根节点,并将所述父节点作为新的第二节点后重复执行S102至S103,直至新的第二节点在辅助树上不存在父节点时结束执行步骤,使所述动态树处于第二形态。
[0018]可选的,还包括:
[0019]判断所述第二节点在辅助树上是否存在父节点;
[0020]当所述第二节点在辅助树上存在父节点时,执行S102至S103;
[0021]当所述第二区块在辅助树上不存在父区块时结束执行步骤。
[0022]根据本公开的具体实施方式,本公开提供一种基于区块链系统的共同父节点获取装置,包括:
[0023]第一转化单元,用于将动态树中的第一节点对称转换为所述第一节点所在平铺树树链的根节点,所述动态树中包含有至少一条平铺树树链,所述至少一条平铺树树链中的一条包含所述第一节点;
[0024]判断单元,用于分离所述第一节点在辅助树上的父节点的右子节点,并将所述第一节点作为所述父节点的右子节点;
[0025]第二转换单元,用于将动态树中的所述父节点对称转换为所述父节点所在平铺树树链的根节点,并将所述父节点作为新的第一节点后重复执行S101至S103,直至新的第一节点在辅助树上不存在父节点时结束执行步骤,使所述动态树处于第一形态;
[0026]第三转换单元,用于将所述动态树处于第一形态时的根节点到第二节点的访问路径作为重链对称转换到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态,所述第一节点和第二节点位于同一个动态树中;
[0027]获取单元,用于获取所述动态树处于第二形态时所述第一节点和第二节点所在辅助树的根节点,所述辅助树的根节点为所述第一节点和第二节点的共同父节点。
[0028]可选的,还包括:
[0029]判断所述第一节点在辅助树上是否存在父节点;
[0030]当所述第一节点在辅助树上存在父节点时,执行S102至S103;
[0031]当所述第一节点在辅助树上不存在父节点时结束执行步骤。
[0032]可选的,所述将所述动态
[0033]树处于第一形态时的根节点到第二节点的访问路径作为重链旋转到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态,包括:
[0034]将动态树处于第一形态时的第二节点对称转换为所述第二节点所在平铺树树链的根节点,所述动态树中包含有至少一条平铺树树链,所述至少一条平铺树树链中的一条包含所述第二节点;
[0035]分离所述第二节点在辅助树上的父节点的右子节点,并将所述第二节点作为所述父节点的右子节点;
[0036]将动态树处于第一形态时的所述父节点旋转为所述父节点所在平铺树树链的根节点,并将所述父节点作为新的第二节点后重复执行S102至S103,直至新的第二节点在辅
助树上不存在父节点时结束执行步骤,使所述动态树处于第二形态。
[0037]可选的,还包括:
[0038]判断所述第二节点在辅助树上是否存在父节点;
[0039]当所述第二节点在辅助树上存在父节点时,执行S102至S103;
[0040]当所述第二区块在辅助树上不存在父区块时结束执行步骤。
[0041]根据本公开的具体实施方式,本公开提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上任一项所述的方法。
[0042]根据本公开的具体实施方式,本公开提供一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上任一项所述的方法。
[0043]本专利技术通过动态树构建树链,通过在动态树中对两个节点进行处理后实现了快速获取公共父节点的方法,简化了计算步骤,提高了获取效率,使得区块链的性能获得明显的提升。
附图说明
[0044]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0045]图1为本实施例提供的基于区块链系统的共同父节点获取方法的流程图;
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于区块链系统的共同父节点获取方法,其特征在于包括:S101、将动态树中的第一节点对称转换为所述第一节点所在平铺树树链的根节点,所述动态树中包含有至少一条平铺树树链,所述至少一条平铺树树链中的一条包含所述第一节点;S102、分离所述第一节点在辅助树上的父节点的右子节点,并将所述第一节点作为所述父节点的右子节点;S103、将动态树中的所述父节点对称转换为所述父节点所在平铺树树链的根节点,并将所述父节点作为新的第一节点后重复执行S101至S103,直至新的第一节点在辅助树上不存在父节点时结束执行步骤,使所述动态树处于第一形态;S104、将所述动态树处于第一形态时的根节点到第二节点的访问路径作为重链对称转换到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态,所述第一节点和第二节点位于同一个动态树中;S105、获取所述动态树处于第二形态时所述第一节点和第二节点所在辅助树的根节点,所述辅助树的根节点为所述第一节点和第二节点的共同父节点。2.根据权利要求1所述的方法,其特征在于还包括:判断所述第一节点在辅助树上是否存在父节点;当所述第一节点在辅助树上存在父节点时,执行S102至S103;当所述第一节点在辅助树上不存在父节点时结束执行步骤。3.根据权利要求1至2任一项所述的方法,其特征在于,所述将所述动态树处于第一形态时的根节点到第二节点的访问路径作为重链旋转到所述动态树处于第一形态时树根所在的树链,使所述动态树处于第二形态,包括:S1041、将动态树处于第一形态时的第二节点对称转换为所述第二节点所在平铺树树链的根节点,所述动态树中包含有至少一条平铺树树链,所述至少一条平铺树树链中的一条包含所述第二节点;S1042、分离所述第二节点在辅助树上的父节点的右子节点,并将所述第二节点作为所述父节点的右子节点;S1043、将动态树处于第一形态时的所述父节点旋转为所述父节点所在平铺树树链的根节点,并将所述父节点作为新的第二节点后重复执行S102至S103,直至新的第二节点在辅助树上不存在父节点时结束执行步骤,使所述动态树处于第二形态。4.根据权利要求3所述的方法,其特征在于,还包括:判断所述第二节点在辅助树上是否存在父节点;当所述第二节点在辅助树上存在父节点时,执行S102至S103;当所述第二区块在辅助树上不存在父区块时结束执行步骤。5.一种基于区块链系统的共同父节点获取装置,其特征在于包括:第一转化单元,用于将动态树中的第一节点对称转换为所述第一节点所在平铺树树链的根节点,所述动态树中包含有至少一条平...

【专利技术属性】
技术研发人员:安鹏
申请(专利权)人:宁波工程学院
类型:发明
国别省市:

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

1