区块链的数据处理和同步方法、装置、设备及存储介质制造方法及图纸

技术编号:20801154 阅读:26 留言:0更新日期:2019-04-06 14:59
本发明专利技术实施例公开了一种区块链的数据处理和同步方法、装置、设备及存储介质。区块链的数据处理方法应用于区块链节点,该方法包括:在确定满足设定触发条件时,确定待创建检查点的至少一个同步区块;根据区块链中的同步区块的数据计算检查点的检查点标识;将检查点标识在区块链网络中传输,以请求其他区块链节点进行验证,并反馈认可签名;如果接收到的认可签名符合生效条件,则在本地对应于同步区块记录检查点标识和认可签名。采用本发明专利技术实施例的技术方案,若其他节点需进行区块同步时,则可以以检查点为单位,依据检查点标识获取同步区块,直接将同步区块的数据导入节点本地,不需要重复执行校验,因此能够加速数据同步。

Block Chain Data Processing and Synchronization Method, Device, Equipment and Storage Media

The embodiment of the invention discloses a block chain data processing and synchronization method, device, device and storage medium. The data processing method of block chain is applied to block chain nodes. The method includes: determining at least one synchronous block to be created when setting trigger conditions are satisfied; calculating checkpoint identification according to the data of synchronous blocks in block chain; transmitting checkpoint identification in block chain network to request other block chain nodes to verify and feedback. Authenticated signature; if the received authorized signature meets the validity conditions, it corresponds locally to the synchronous block record checkpoint identification and authorized signature. According to the technical scheme of the embodiment of the present invention, if other nodes need block synchronization, the synchronization block can be acquired by checkpoint as a unit, and the data of the synchronization block can be directly imported into the node locally according to the checkpoint identification, so the data synchronization can be accelerated without repeated checking.

【技术实现步骤摘要】
区块链的数据处理和同步方法、装置、设备及存储介质
本专利技术实施例涉及区块链技术,尤其涉及一种区块链的数据处理和同步方法、装置、设备及存储介质。
技术介绍
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。通常情况下,区块链网络中的每个节点都会维护全量的区块数据,而区块链网络会不停的产生新的区块,久而久之,每个节点需要维护的数据量就会越来越大。而区块链属于链式数据结构,每个区块指向上一个区块,因此,验证数据的有效性就需要从创世区块开始,顺序的对每个区块进行校验。而对于一个新加入区块链网络的节点来说,需要先同步所有的历史区块数据并且进行逐个的有效性校验,才能开始同步最新的区块。而历史区块数据往往很大,因此,该同步过程需耗费很长时间。
技术实现思路
本专利技术实施例提供一种区块链的数据处理和同步方法、装置、设备及存储介质,以加快区块数据的同步。第一方面,本专利技术实施例提供了一种区块链的数据处理方法,应用于区块链节点,该方法包括:在确定满足设定触发条件时,确定待创建检查点的至少一个同步区块;根据区块链中的同步区块的数据计算所述检查点的检查点标识;将所述检查点标识在区块链网络中传输,以请求其他区块链节点进行验证,并反馈认可签名;如果接收到的认可签名符合生效条件,则在本地对应于同步区块记录所述检查点标识和认可签名。第二方面,本专利技术实施例还提供了一种区块链的数据同步方法,应用于区块链节点,该方法包括:向检查节点发起区块同步请求,并接收检查节点反馈的同步区块的数据和、检查点标识和认可签名,其中,所述检查点标识为检查节点根据同步区块的数据计算确定,所述认可签名为其他节点对检查点标识进行验证反馈给所述检查节点的;根据所述认可签名验证所述检查点标识的真实性;如果所述检查点标识真实,则根据所述检查点标识验证所述同步区块的数据真实性;所述同步区块的数据真实性验证通过,则存储所述同步区块的数据。第三方面,本专利技术实施例还提供了一种区块链的数据处理装置,配置于区块链节点中,该装置包括:检查区块确定模块,用于在确定满足设定触发条件时,确定待创建检查点的至少一个同步区块;标识计算模块,用于根据区块链中的同步区块的数据计算所述检查点的检查点标识;标识传输模块,用于将所述检查点标识在区块链网络中传输,以请求其他区块链节点进行验证,并反馈认可签名;记录模块,用于如果接收到的认可签名符合生效条件,则在本地对应于同步区块记录所述检查点标识和认可签名。第四方面,本专利技术实施例还提供了一种区块链的数据同步装置,配置于区块链节点中,该装置包括:通信模块,用于向检查节点发起区块同步请求,并接收检查节点反馈的同步区块的数据和、检查点标识和认可签名,其中,所述检查点标识为检查节点根据同步区块的数据计算确定,所述认可签名为其他节点对检查点标识进行验证反馈给所述检查节点的;标识验证模块,用于根据所述认可签名验证所述检查点标识的真实性;数据验证模块,用于如果所述检查点标识真实,则根据所述检查点标识验证所述同步区块的数据真实性;数据存储模块,用于所述同步区块的数据真实性验证通过,则存储所述检查区块的数据。第五方面,本专利技术实施例还提供了一种设备,该设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现第一方面中任意所述的区块链的数据处理方法,或者实现第二方面中任意所述的区块链的数据同步方法。第六方面,本专利技术实施例还提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面中任意所述的区块链的数据处理方法,或者实现第二方面中任意所述的区块链的数据同步方法。本专利技术实施例提供的区块链的数据处理和同步方法、装置、设备及存储介质,本机节点在确定满足设定触发条件时,则执行检查点的创建操作,确定待创建检查点的至少一个同步区块、基于同步区块的数据计算检查点的检查点标识以及请求其他区块链节点对检查点标识进行验证并反馈认可签名,而后在接收到的认可签名符合生效条件的情况下,在本地记录同步区块、检查点标识及认可签名三者之间的关联关系,进而完成本次检查点的创建。若某一区块链节点如新加入区块链网络的节点需进行区块同步,则可以以检查点为单位,依据检查点标识获取同步区块,直接将同步区块的数据导入节点本地,不需要再重复执行校验,因此能够加速数据同步。附图说明图1是本专利技术实施例一中提供的一种区块链的数据处理方法的流程图;图2是本专利技术实施例二中提供的一种区块链的数据处理方法的流程图;图3是本专利技术实施例三中提供的一种区块链的数据处理方法的流程图;图4是本专利技术实施例四中提供的一种区块链的数据同步方法的流程图;图5是本专利技术实施例五中提供的一种区块链的数据同步方法的流程图;图6是本专利技术实施例六中提供的一种区块链的数据处理装置的结构示意图;图7是本专利技术实施例七中提供的一种区块链的数据同步装置的结构示意图;图8是本专利技术实施例八中提供的一种设备的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1为本专利技术实施例一提供的一种区块链的数据处理方法的流程图,本实施例可适用于区块链网络中为同步区块创建检查点的数据处理情况,创建的检查点例如可适用于区块链网络中,某个节点如新加入区块链网络的节点需进行区块同步的场景。所适用的区块链可以是公有链、私有链或者联盟链。本专利技术实施例的方案应用于区块链节点,该方法可以由区块链的数据处理装置来执行,该装置可采用软件和/或硬件的方式实现,并可集成于承载区块链节点的计算设备中。参见图1,该方法具体包括:S110,在确定满足设定触发条件时,确定待创建检查点的至少一个同步区块。本实施例中,设定触发条件是指预先设定的区块链网络中的节点创建检查点时所要满足的规则;该设定触发条件可以在区块链创建时预先约定,存储于区块链创世区块中,即区块链的第0个区块中,或独立于区块链存储于节点本地;还可以在区块链创建过程中基于投票选择机制,添加到区块链的某个区块中,如可以以智能合约的形式,或其他区块链网络认可的形式提交到区块链网络中,并存储在某个区块里面等。示例性的,设定触发条件可以配置于区块链创世区块中或更新配置区块的部署数据中。其中,部署数据是指参与区块链网络的节点,本地所需部署的包括检查点创建条件等运行机制,该部署数据可以以智能合约的形式,提交到区块链网络中,并存储在某个区块里面。可选的,满足设定触发条件可以是本地区块链当前状态满足区块链创世区块中或更新配置区块的部署数据中创建检查点的规定,如可以是本地区块链当前区块高度满足预设区块高度间隔,当前区块高度是指区块链当前的区块个数如100。也可以是其他的触发通知机制,用于通知本机节点创建检查点等,本实施例中对此不做限定。所谓检查点也可成为存档点,用于指示对某一区间如预设区块高度间隔内的区块进行存档处理,而预设区块高度间隔内所包含的区块即为同步区块。且,检查点一般可以指同步区块的结束位置,而同步区块的起始位置默认为本机节点上一次所创建的检查点的位置,此外,同本文档来自技高网...

【技术保护点】
1.一种区块链的数据处理方法,其特征在于,应用于区块链节点,所述方法包括:在确定满足设定触发条件时,确定待创建检查点的至少一个同步区块;根据区块链中的同步区块的数据计算所述检查点的检查点标识;将所述检查点标识在区块链网络中传输,以请求其他区块链节点进行验证,并反馈认可签名;如果接收到的认可签名符合生效条件,则在本地对应于同步区块记录所述检查点标识和认可签名。

【技术特征摘要】
1.一种区块链的数据处理方法,其特征在于,应用于区块链节点,所述方法包括:在确定满足设定触发条件时,确定待创建检查点的至少一个同步区块;根据区块链中的同步区块的数据计算所述检查点的检查点标识;将所述检查点标识在区块链网络中传输,以请求其他区块链节点进行验证,并反馈认可签名;如果接收到的认可签名符合生效条件,则在本地对应于同步区块记录所述检查点标识和认可签名。2.根据权利要求1所述的方法,其特征在于,如果接收到的认可签名符合生效条件,则在本地对应于同步区块记录所述检查点标识和认可签名,包括:从接收到的认可签名中获取经其他区块链节点私钥签名的检查点标识,以及获取其他区块链节点的公钥;如果通过所述公钥验证所述签名的检查点标识有效,则确定所述认可签名有效;如果有效的认可签名的数量符合生效条件,则在本地对应于同步区块记录所述检查点标识和认可签名。3.根据权利要求1所述的方法,其特征在于,根据区块链中的同步区块的数据计算所述检查点的检查点标识,包括:将所述区块链中的同步区块的区块数据和本地表数据导出,形成同步区块文件;根据所述同步区块文件中的数据,计算所述检查点的检查点标识。4.根据权利要求3所述的方法,其特征在于,将所述区块链中的同步区块的区块数据和本地表数据导出,形成同步区块文件,包括:将所述区块链中的同步区块的区块数据和本地表数据导出,形成一个同步区块文件;或将所述区块链中的同步区块的区块数据和本地表数据,按照数据类型表分别导出,形成多个同步区块文件。5.根据权利要求3所述的方法,其特征在于:所述区块数据包括区块体和区块头,所述区块体用于存储未花费交易输出数据;所述本地表数据用于存储智能合约的运行函数和执行结果,以及用于存储交易历史数据。6.根据权利要求4所述的方法,其特征在于,根据所述同步区块文件中的数据,计算所述检查点的检查点标识,包括:根据所述同步区块文件中的数据计算哈希值,作为所述检查点标识;或将各个同步区块文件分别计算文件哈希值,根据各个文件哈希值建立梅克尔树,将梅克尔树的根作为所述检查点标识。7.根据权利要求1所述的方法,其特征在于:所述设定触发条件和生效条件,配置于区块链创世区块中或更新配置区块的部署数据中。8.根据权利要求1所述的方法,其特征在于,确定待创建检查点的至少一个同步区块,包括:将本地所存的最新区块高度,减去设定偏移区块量,以及减去设定检测范围区块量,所获得的差值序号区块作为同步区块的起点区块,起点区块加上设定检测范围区块量作为同步区块的终点区块。9.一种区块链的数据同步方法,其特征在于,应用于区块链节点,包括:向检查节点发起区块同步请求,并接收检查节点反馈的同步区块的数据、检查点标识和认可签名,其中,所述检查点标识为检查节点根据同步区块的数据计算确定,所述认可签名为其他节点对检查点标识进行验证反馈给所述检查节点的;根据所述认可签名验证所述检查点标识的真实性;如果所述检查点标识真实,则根据所述检查点标识验证所述同步区块的数据真实性;所述同步区块的数据真实性验证通过,则...

【专利技术属性】
技术研发人员:荆博
申请(专利权)人:百度在线网络技术北京有限公司
类型:发明
国别省市:北京,11

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

1