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