区块链数据校验方法、数据处理方法、装置及设备制造方法及图纸

技术编号:26846834 阅读:20 留言:0更新日期:2020-12-25 13:10
本发明专利技术公开了一种区块链数据校验方法、数据处理方法、装置及设备,属于区块链技术领域。本方法通过将第一区块中存储的第一目标特征值与目标区块的上一个区块的特征值进行对比,以确定该目标区块的上一个区块是否合法,并将该第二区块中存储的第二目标特征值与该目标区块的下一个区块的特征值进行比对,以确定该目标区块是否合法。即使区块内的交易数据发生改变,区块内存储的第一目标特征值和第二目标特征值不会发生改变,因此,直接根据第一目标特征值或第二目标特征值来校验区块是否合法,不会影响到最终的校验结果,从而校验结果较为准确。

【技术实现步骤摘要】
区块链数据校验方法、数据处理方法、装置及设备
本专利技术涉及区块链
,特别涉及一种区块链数据校验方法、数据处理方法、装置、计算机设备以及存储介质。
技术介绍
区块链系统中的节点设备可以共同维护同一个存储交易数据的区块链,区块链中每个区块内都存储本区块的特征值以及父特征值,父特征值为本区块上一个区块的特征值,从而使得的多个区块可以组成一个区块链,为了保证区块链内各个区块之间的连接性,区块链系统内的节点设备需要校验区块链中的各个区块是否合法。区块链数据校验可以是以下过程:对于任一区块,获取该区块的特征值以及区块的父特征值;再获取该区块的上一个区块的特征值以及该区块的下一个区块的父特征值,当该区块的父特征值与上一个区块的特征值一致,且该区块的特征值与下一个区块的父特征值一致时,该区块合法,否则,该区块不合法。有的时候区块链内的交易数据需要被合法修改,那么修改后的区块实际上应该是合法,由于区块的特征值取决于区块内存储的交易数据,当区块内的交易数据被修改时,区块的特征值也会随之改变,一旦区块的特征值发生改变,该区块的特征值与下一个区块的父特征值不一致,若按照上述校验方法,则该区块不合法。因此,通过上述校验方法来校验区块链上的区块是否合法时,校验结果不准确。
技术实现思路
本专利技术实施例提供了一种区块链数据校验方法、数据处理方法、装置及设备,能够解决校验结果不准确的问题。该技术方案如下:第一方面,提供一种区块链数据校验方法,所述方法用于校验区块链上的区块数据是否合法,所述区块链中包括第一区块,所述第一区块中存储有第一目标特征值,所述区块链中还包括第二区块,所述第二区块中存储有第二目标特征值,所述方法包括:获取所述区块链上的一个目标区块;当所述目标区块为第一区块时,将所述第一区块中存储的第一目标特征值与所述目标区块的上一个区块的特征值进行对比,以确定所述目标区块的上一个区块是否合法;当所述目标区块为第二区块时,将所述第二区块中存储的第二目标特征值与所述目标区块的下一个区块的特征值进行比对,以确定所述目标区块是否合法。在一种可能实现方式中,所述第二区块中还包括第三目标特征值,当所述目标区块为第二区块时,所述方法还包括:将所述第三目标特征值与所述目标区块的上一个区块的特征值进行对比,以确定所述目标区块的上一个区块是否合法。在一种可能实现方式中,所述第二区块中还包括原始特征值以及修改特征值,所述原始特征值是所述第二区块的交易数据修改前的特征值,所述更新特征值是所述第二区块的交易数据修改后的特征值,当所述目标区块为第一区块,且所述目标区块的上一区块为第二区块时,所述方法还包括:将目标区块的第一目标特征值与所述目标区块的上一区块的原始特征值进行对比,以确定所述目标区块的上一区块是否合法。基于上述可能的实现方式,通过将第一区块中存储的第一目标特征值与目标区块的上一个区块的特征值进行对比,以确定该目标区块的上一个区块是否合法,并将该第二区块中存储的第二目标特征值与该目标区块的下一个区块的特征值进行比对,以确定该目标区块是否合法。即使区块内的交易数据发生改变,区块内存储的第一目标特征值和第二目标特征值不会发生改变,因此,直接根据第一目标特征值或第二目标特征值来校验区块是否合法,不会影响到最终的校验结果,从而校验结果较为准确。第二方面,提供了一种数据处理方法,该方法包括:查询区块链系统的区块链上的区块;当在所述区块链上的第一区块内查询到第一交易数据时,生成第二交易数据,所述第二交易数据携带所述第一交易数据在所述区块链上的位置信息;在所述区块链系统中广播所述第二交易数据;将第二区块存储在所述区块链上,所述第二区块携带所述第二交易数据;基于所述第一交易数据在所述区块链上的位置信息以及所述第二交易数据,对所述区块链上的所述第一区块内的所述第一交易数据进行替换,得到所述区块链上的第三区块。基于上述可能的实现方式,通过当在区块链上查询到第一交易数据时,生成携带第一交易数据在区块链上的位置信息的第二交易数据,当第二交易数据被存储至区块链上时,将在区块链上查询到的第一交易数据替换为第二交易数据,当该第一交易数据携带非法信息时,通过将第一交易数据替换为目标交易数据,从而可以去除第一交易数据中的非法信息,当将该区块链上的所有携带非法信息的交易数据都替换后,无需人为操作,就能够在区块链系统中实现对非法信息的大范围的去除,大大提高了非法信息的处理效率。在一种可能实现方式中,所述查询区块链系统的区块链上的区块包括:每将一个区块存储在所述区块链上后,检测所述区块;或,每经过预设时长后,检测所述预设时长内被存储至所述区块链上的区块。基于上述可能的实现方式,通过实时查询区块链上的区块,可以提高查询区块的实时性,或每经过预设时长后,监管节点设备才会对区块链上的区块进行一次查询操作,从而可以避免监管节点设备进行多次查询操作。在一种可能实现方式中,所述对所述区块链上的所述第一区块内的所述第一交易数据进行替换包括:将所述区块链上的所述第一区块内的所述第一交易数据替换为所述第二交易数据。在一种可能实现方式中,所述第二交易数据还携带第一特征值,所述第一特征值为所述第一区块未存储所述第一交易数据时的特征值;所述第二交易数据还携带第二特征值和第三特征值中的至少一项,所述第二特征值为所述区块链上所述第一区块相邻的区块的特征值,所述第三特征值为所述第一区块未进行交易数据替换时的特征值。在一种可能实现方式中,所述方法还包括:获取所述第一区块的区块内容;将所述区块内容中的所述第一交易数据替换为所述第二交易数据;计算替换后的所述第一区块的特征值,得到所述第一特征值。在一种可能实现方式中,所述第二交易数据中的交易内容为空或为非空的预设内容。在一种可能实现方式中,所述对所述区块链上的所述第一区块内的所述第一交易数据进行替换包括:当所述第二交易数据携带第三交易数据时,将所述区块链上的所述第一区块内的所述第一交易数据替换为所述第三交易数据;所述方法还包括:根据所述第三区块之后、所述第二区块之前的所有区块,重新生成多个区块;将所述第三区块之后、所述第二区块之前的所有区块替换为所述多个区块。基于上述可能的实现方式,将该第三区块之后、该第二区块之前的所有区块替换为该多个区块后,就可以保证区块链的完整性。在一种可能实现方式中,所述第二交易数据还携带第四特征值,所述第四特征值为所述多个区块中最后一个区块的特征值。在一种可能实现方式中,获取所述第一区块的区块内容和所述第一区块之后所有区块的区块内容;将所述第一区块的区块内容中的所述第一交易数据替换为所述第三交易数据;根据替换后的所述第一区块的区块内容、所述第一区块之后所有区块的区块内容,重新生成多个区块;将所述多个区块中最后一块区块的特征值确定为所述第四特征值。在本文档来自技高网...

【技术保护点】
1.一种区块链数据校验方法,其特征在于,所述方法用于校验区块链上的区块数据是否合法,所述区块链中包括第一区块,所述第一区块中存储有第一目标特征值,所述区块链中还包括第二区块,所述第二区块中存储有第二目标特征值,所述方法包括:/n获取所述区块链上的一个目标区块;/n当所述目标区块为第一区块时,将所述第一区块中存储的第一目标特征值与所述目标区块的上一个区块的特征值进行对比,以确定所述目标区块的上一个区块是否合法;/n当所述目标区块为第二区块时,将所述第二区块中存储的第二目标特征值与所述目标区块的下一个区块的特征值进行比对,以确定所述目标区块是否合法。/n

【技术特征摘要】
1.一种区块链数据校验方法,其特征在于,所述方法用于校验区块链上的区块数据是否合法,所述区块链中包括第一区块,所述第一区块中存储有第一目标特征值,所述区块链中还包括第二区块,所述第二区块中存储有第二目标特征值,所述方法包括:
获取所述区块链上的一个目标区块;
当所述目标区块为第一区块时,将所述第一区块中存储的第一目标特征值与所述目标区块的上一个区块的特征值进行对比,以确定所述目标区块的上一个区块是否合法;
当所述目标区块为第二区块时,将所述第二区块中存储的第二目标特征值与所述目标区块的下一个区块的特征值进行比对,以确定所述目标区块是否合法。


2.根据权利要求1所述的方法,其特征在于,所述第二区块中还包括第三目标特征值,当所述目标区块为第二区块时,所述方法还包括:将所述第三目标特征值与所述目标区块的上一个区块的特征值进行对比,以确定所述目标区块的上一个区块是否合法。


3.根据权利要求1所述的方法,其特征在于,所述第二区块中还包括原始特征值以及修改特征值,所述原始特征值是所述第二区块的交易数据修改前的特征值,所述更新特征值是所述第二区块的交易数据修改后的特征值,当所述目标区块为第一区块,且所述目标区块的上一区块为第二区块时,所述方法还包括:将目标区块的第一目标特征值与所述目标区块的上一区块的原始特征值进行对比,以确定所述目标区块的上一区块是否合法。


4.一种数据处理方法,其特征在于,所述方法包括:
查询区块链系统的区块链上的区块;
当在所述区块链上的第一区块内查询到第一交易数据时,生成第二交易数据,所述第二交易数据携带所述第一交易数据在所述区块链上的位置信息;
在所述区块链系统中广播所述第二交易数据;
将第二区块存储在所述区块链上,所述第二区块携带所述第二交易数据;
基于所述第一交易数据在所述区块链上的位置信息以及所述第二交易数据,对所述区块链上的所述第一区块内的所述第一交易数据进行替换,得到所述区块链上的第三区块。


5.根据权利要求4所述的方法,其特征在于,所述查询区块链系统的区块链上的区块包括:
每将一个区块存储在所述区块链上后,检测所述区块;或,
每经过预设时长后,检测所述预设时长内被存储至所述区块链上的区块。


6.根据权利要求4所述的方法,其特征在于,所述对所述区块链上的所述第一区块内的所述第一交易数据进行替换包括:
将所述区块链上的所述第一区块内的所述第一交易数据替换为所述第二交易数据。


7.根据权利要求6所述的方法,其特征在于,所述第二交易数据还携带第一特征值,所述第一特征值为所述第一区块未存储所述第一交易数据时的特征值;
所述第二交易数据还携带第二特征值和第三特征值中的至少一项,所述第二特征值为所述区块链上所述第一区块相邻的区块的特征值,所述第三特征值为所述第一区块未进行交易数据替换时的特征值。


8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
获取所述第一区块的区块内容;
将所述区块内容中的所述第一交易数据替换为所述第二交易数据;
计算替换后的所述第一区块的特征值,得到所述第一特征值。


9.根据权利要求6所述的方法,其特征在于,所述第二交易数据中的交易内容为空或为非空的预设内容。


10.根据权利要求4所述的方法,其特征在于,所述对所述区块链上的所述第一区块内的所述第一交易数据进行替换包括:
当所述第二交易数据携带第三交易数据时,将所述区块链上的所述第一区块内的所述第一交易数据替换为所述第三交易数据;
所述方法还包括:
根据所述第三区块之后、所述第二区块之前的所有区块,重新生成多个区块;
将所述第三区块之后、所述第二区块之前的所有区块替换为所述多个区块。


11.根据权利要求10所述的方法,其特征在于,所述第二交易数据还携带第四特征值,所述第四特征值为所述多个区块中最后一个区块的特征值。


12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
获取所述第一区块的区块内容和所述第一区块之后所有区块的区块内容;
将所述第一区块的区块内容中的所述第一交易数据替换为所述第三交易数据;
根据替换后的所述第一区块的区块内容、所述第一区块之后所有区块的区块内容,重新生成多个区块;
将所述多个区块中最后一块区块的特征值确定为所述第四特征值。


13.根据权利要求10所述的方法,其特征在于,所述方法还包括:
当在所述区块链上的第一区块内查询到第一交易数据时,在所述区块链系统内广播停止服务消息,所述停止服务消息用于指示停止将监管节点设备以外的节点设备所广播的普通交易数据打包至区块的服务。


14.根据权利要求10所述的方法,其特征在于,所述第三交易数据中的交易内容为空或为非空的预设内容。


15.一种数据处理方法,其特征在于,所述方法包括:
查询区块链系统的区块链上的区块;
当在所述区块链上的第二区块内查询到第二交易数据时,获取所述第二区块内的所述第二交易数据,所述第二交易数据携带第一交易数据在所述区块链上的位置信息;<...

【专利技术属性】
技术研发人员:刘勋徐嗣焘檀景辉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1