[发明专利]区块链网络中的节点初始化方法和装置有效
申请号: | 201811102294.3 | 申请日: | 2018-09-20 |
公开(公告)号: | CN109189859B | 公开(公告)日: | 2020-10-16 |
发明(设计)人: | 荆博 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06Q20/38;H04L29/08 |
代理公司: | 北京市铸成律师事务所 11313 | 代理人: | 杨瑾瑾;陈建焕 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 网络 中的 节点 初始化 方法 装置 | ||
本发明实施例提出一种区块链网络中的节点初始化方法和装置。其中,该方法包括:从区块链网络中选取全节点,所述全节点中包括至少一个具有检查点标记的区块,所述检查点标记用于禁止区块分叉;从所述全节点中确定出具有检查点标记的目标区块;将所述全节点中从创世区块到所述目标区块的头部数据下载到本地保存。本发明实施例中,通过检查点标记禁止的区块分叉,并利用检查点标记可以从全节点中确定出目标区块,有利于为需要初始化的节点,下载准确的区块的头部数据。
技术领域
本发明涉及互联网技术领域,尤其涉及一种区块链网络中的节点初始化方法和装置。
背景技术
区块链网络包括大量的全节点。这些全节点维护有全量的账本数据。全节点会实时同步每个区块的完整数据,因而可以对区块的有效性做出正确的判断。
在区块链网络中,还包括一些轻量级节点,例如手机移动客户端。由于它们的存储空间有限,不能存储历史全部的区块数据。并且,移动客户端的带宽有限,流量费用较高,如果当区块大小较大,且出块速度较快时,实时同步每个区块的完整数据到移动客户端也是不现实的。一些轻量级技术,只实时同步部分区块数据到移动客户端。例如,百度超级链的区块链网络向轻量级节点实时同步区块头和区块所包含的交易标识列表。在轻量级节点的客户端本地维护一个区块头链数据库。
每个接入区块链网络的一个新移动设备,都需要重建历史区块记录。
发明内容
本发明实施例提供一种区块链网络中的节点初始化方法和装置,以解决现有技术中的一个或多个技术问题。
第一方面,本发明实施例提供了一种区块链网络中的节点初始化方法,包括:
从区块链网络中选取全节点,所述全节点中包括至少一个具有检查点标记的区块,所述检查点标记用于禁止区块分叉;
从所述全节点中确定出具有检查点标记的目标区块;
将所述全节点中从创世区块到所述目标区块的头部数据下载到本地保存。
在一种实施方式中,从所述全节点中确定出具有检查点标记的目标区块,包括:
获取多个所述全节点所包括的相同区块;
将所述相同区块中最后一个具有检查点标记的区块,确定为所述目标区块。
在一种实施方式中,所述检查点标记包括检查点的标识、禁止分叉的区块的标识和第一梅克尔树的根节点。
在一种实施方式中,所述方法还包括:
通过计算第一梅克尔树的方式验证所述目标区块的检查点标记。
在一种实施方式中,通过计算第一梅克尔树的方式验证所述目标区块的检查点标记,包括:
利用上一个检查点的标识,以及从上一个具有检查点标记的区块到当前区块的禁止分叉的各区块的标识,作为第一梅克尔树的叶子节点,计算第一梅克尔树的根节点;
比较计算得到的根节点与所述目标区块的检查点标记中的第一梅克尔树的根节点是否一致;
如果一致,则对所述目标区块的检查点标记的验证通过。
在一种实施方式中,将所述全节点中从创世区块到所述目标区块的头部数据下载到本地保存,包括:
从多个所述全节点中的任意一个全节点的区块头链数据库中,下载从创世区块到所述目标区块的头部数据;
将下载的数据保存到新接入节点本地的区块头链数据库中。
在一种实施方式中,所述头部数据包括当前区块的标识、上一个区块的标识和第二梅克尔树的根节点,所述第二梅克尔树的叶子节点包括当前区块所包括的各交易的标识。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811102294.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电池化成装置
- 下一篇:一种车联网中能效资源分配的优化方法