[发明专利]区块链网络的分叉回归方法和装置有效
申请号: | 201811073870.6 | 申请日: | 2018-09-14 |
公开(公告)号: | CN109300036B | 公开(公告)日: | 2020-08-14 |
发明(设计)人: | 段兵;肖伟 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06Q40/04 | 分类号: | G06Q40/04;G06F16/901 |
代理公司: | 北京市铸成律师事务所 11313 | 代理人: | 陈建焕;杨瑾瑾 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 网络 分叉 回归 方法 装置 | ||
本发明实施例提出一种区块链网络的分叉回归方法和装置。该方法包括:在检测到当前区块处于区块链网络的分叉链上的情况下,获取所述分叉链从所述区块链网络的主干链上开始分叉的起点区块的标识;根据所述起点区块的标识查找所述起点区块的快照信息;利用所述起点区块的快照信息,将所述当前区块中的状态变量回归到所述起点区块的状态变量。本发明实施例通过对区块中状态变量进行快照得到快照信息,能够支持快速的分叉回归,对交易上链速度有极大的提升作用。
技术领域
本发明涉及互联网技术领域,尤其涉及一种区块链网络的分叉回归方法和装置。
背景技术
随着区块链技术的快速发展,对区块链的交易验证速度要求越来越高。从区块链历史发展来看,比特币打包7-9个交易每秒(TPS,Transaction Per Second)。作为第二代公链的以太坊,性能在35TPS左右。提升交易上链速度的关键是出块速度。在不考虑硬件限制的情况下,出块的时间主要在于共识速度,以及分叉的回归速度。而且越快的共识,越无法单方面无限的提升出块速度。一定程度之后,会受限制于分叉的回归速度。
目前比特币使用撤销(undo)日志进行分叉回归。以太坊使用梅克尔帕特里夏树(MPT,Merkle Patricia Tree)树进行状态存储,MPT树的状态只能串行修改,交易速度受限,无法实现快速回归。
发明内容
本发明实施例提供一种区块链网络的分叉回归方法和装置,以解决现有技术中的一个或多个技术问题。
第一方面,本发明实施例提供了一种区块链网络的分叉回归方法,包括:
在检测到当前区块处于区块链网络的分叉链上的情况下,获取所述分叉链从所述区块链网络的主干链上开始分叉的起点区块的标识;
根据所述起点区块的标识查找所述起点区块的快照信息;
利用所述起点区块的快照信息,将所述当前区块中的状态变量回归到所述起点区块的状态变量。
结合第一方面,本发明实施例在第一方面的第一种实现方式中,还包括:
在签发区块时,将需要提交的各交易的状态变量保存到键值数据库中;
对需要提交的各交易的状态变量进行快照,得到所签发的区块的快照信息;
建立所签发的区块的标识与其快照信息之间的映射关系。
结合第一方面的第一种实现方式,本发明实施例在第一方面的第二种实现方式中,对需要提交的各交易的状态变量进行快照,得到所签发的区块的快照信息,还包括:
判断所述交易的状态变量是否发生变化;
如果所述交易的状态变量发生变化,则在所签发的区块的快照信息中保存所述交易的变化后的状态变量;
如果所述交易的状态变量未发生变化,则在所签发的区块的快照信息中保存所述交易的未发生变化的状态变量的索引,所述索引为所述交易的状态变量在键值数据库中的存储地址。
结合第一方面或其任意一种实现方式,本发明实施例在第一方面的第三种实现方式中,还包括:
获取交易的空间标识;
将所述交易加入所述空间标识对应的交易处理队列。
结合第一方面的第三种实现方式,本发明实施例在第一方面的第四种实现方式中,还包括:
在执行所述交易时,如果需要对不同交易处理队列的状态变量进行一致性修改,则向需要一致性修改的各交易处理队列发起数据存储的准备请求;
如果收到需要一致性修改的所有交易处理队列回复的准备就绪的响应,则允许对所述所有交易处理队列的状态变量进行一致性修改;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811073870.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:交易处理的方法及装置
- 下一篇:交易进度显示方法及装置