基于区块链的交易处理方法及相关装置与流程

文档序号:41243686发布日期:2025-03-14 12:12阅读:18来源:国知局
基于区块链的交易处理方法及相关装置与流程

本技术涉及计算机,例如可涉及区块链和云计算。具体而言,本技术涉及一种基于区块链的交易处理方法及相关装置。


背景技术:

1、区块链技术能够通过分布式节点的验证和共识机制解决去中心化系统节点间的信任建立的问题,实现了去中心化、分布式的信任建立机制,从而在信息传输的同时完成价值的转移。区块链的交易隐私、安全性、数据的不变性及可审计性、完整性、系统透明性和容错性,使得区块链在多个领域中被广泛应用,包括身份管理、智能交通、供应链管理、物联网、工业互联网、能源互联网等。

2、区块链节点的运行依赖于对交易的验证。在相关技术中,主要是利用一个全节点完整验证交易并同步交易,会导致区块链的交易验证的效率较低的问题。


技术实现思路

1、本技术实施例提供了一种基于区块链的交易处理方法及相关装置,用于解决区块链的交易验证的效率较低的技术问题,以实现提高区块链的交易验证的效率的技术效果。

2、一方面,本技术实施例提供了一种基于区块链的交易处理方法,包括:

3、获取交易内存池中的至少一个交易;

4、执行至少一个交易中的每一交易,并获取在执行交易的过程中得到的交易相关消息集,交易相关消息集包括每一交易对应的交易相关消息,交易相关消息包括交易数据、交易数据的来源信息和交易数据的去向信息;

5、基于交易相关消息集构建交易相关消息树,交易相关消息树包括第一节点、各第一节点连接的第二节点和各第二节点一一对应连接的交易相关消息,一个第一节点表征了一个交易的第一哈希值,一个第一节点连接的每一第二节点表征了一个交易对应的每一交易相关消息的第二哈希值;

6、基于各第一节点对应的第一哈希值确定交易相关消息集的消息根哈希值;

7、将交易相关消息树和消息根哈希值存储至目标区块,并将目标区块发送至第一区块链节点,以使得第一区块链节点确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息,并基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证。

8、可选的,交易相关消息树的每一第二节点对应的第二哈希值是通过以下方式确定的:

9、确定第二节点连接的交易相关消息中的交易数据的第一子哈希值、来源信息的第二子哈希值和去向信息的第三子哈希值;

10、基于第二节点连接的交易相关消息对应的第一子哈希值、第二子哈希值和第三子哈希值,确定第二节点所对应的第二哈希值,其中,第二哈希值分别与第一子哈希值、第二子哈希值和第三子哈希值正相关。

11、可选的,目标区块预先存储有至少一个交易,方法还包括:

12、确定至少一个交易中的每一交易的第三哈希值;

13、基于各交易的第三哈希值,确定至少一个交易的交易根哈希值;

14、将交易相关消息树和消息根哈希值存储至目标区块,包括:

15、将交易相关消息树、消息根哈希值和交易根哈希值存储至目标区块,以使得第一区块链节点在基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证时,还基于交易根哈希值对目标交易相关消息进行共识验证。

16、可选的,目标区块包括区块头、区块体和区块体附件,交易根哈希值存储在区块头,至少一个交易存储在区块体,交易相关消息树存储在区块体附件,消息根哈希值存储在区块头或区块体中的至少一项。

17、可选的,将交易相关消息树和消息根哈希值存储至目标区块,包括:

18、若第一区块链节点所同步的其中一个全节点为不可信节点,则将完整的交易相关消息树和消息根哈希值存储至目标区块;

19、若第一区块链节点所同步的任一全节点为可信节点,则确定交易相关消息树中满足预设条件的目标交易相关消息,并删除交易相关消息树中除目标交易相关消息外的其他交易相关消息,以及将删除其他交易相关消息后的交易相关消息树和消息根哈希值存储至目标区块。

20、可选的,确定交易相关消息树中满足预设条件的目标交易相关消息,包括:

21、确定第一区块链节点关注的目标账户;

22、基于目标账户,从交易相关消息树中确定满足预设条件的目标交易相关消息;

23、其中,来源信息包括来源账户,去向信息包括去向账户,预设条件包括:

24、交易相关消息中的来源账户或去向账户中的至少一项与第一区块链节点关注的账户一致。

25、可选的,确定第一区块链节点关注的目标账户,包括:

26、获取第一区块链节点关联的预置账户集,预置账户集包括第一区块链节点关注的所有账户;

27、将预置账户集中的至少一个账户作为目标账户;

28、方法还包括:

29、响应于针对预置账户集的更新操作,对预置账户集进行更新处理,得到新的预置账户集,以在获取第一区块链节点关联的预置账户集时,获取第一区块链节点关联的新的预置账户集;

30、其中,更新操作包括增加或减少预置账户集中的第一区块链节点关注的账户。

31、另一方面,本技术实施例还提供了一种基于区块链的交易处理方法,包括:

32、获取来自第二区块链节点的目标区块,目标区块存储有消息根哈希值和交易相关消息树,目标区块存储的交易相关消息树包括第一节点、各第一节点连接的第二节点和至少一个第二节点一一对应连接的交易相关消息,一个第一节点表征了至少一个交易中的一个交易的第一哈希值,一个第一节点连接的每一第二节点表征了一个交易对应的每一交易相关消息的第二哈希值,至少一个交易是从交易内存池中获取的,交易相关消息包括交易数据、交易数据的来源信息和交易数据的去向信息;

33、确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息;

34、基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证。

35、可选的,基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证,包括:

36、对于每一目标交易相关消息,确定目标交易相关消息的第四哈希值;

37、对于每一目标交易相关消息,将目标交易相关消息的第四哈希值,作为交易相关消息树中目标交易相关消息连接的第二节点对应的哈希值;

38、对于目标区块存储的交易相关消息树中的每一第一节点,基于第一节点连接的每一第二节点对应的哈希值,确定第一节点对应的第五哈希值;

39、基于各第一节点对应的第五哈希值确定待验证消息哈希值;

40、若待验证消息哈希值与消息根哈希值一致,则确定目标交易相关消息共识验证通过;

41、若待验证消息哈希值与消息根哈希值不一致,则确定目标交易相关消息共识验证不通过。

42、可选的,确定目标交易相关消息的第四哈希值,包括:

43、确定目标交易相关消息中的交易数据的第四子哈希值、来源信息的第五子哈希值和去向信息的第六子哈希值;

44、基于目标交易相关消息对应的第四子哈希值、第五子哈希值和第六子哈希值,确定目标交易相关消息的第四哈希值,其中,第四哈希值分别与第四子哈希值、第五子哈希值和第六子哈希值正相关。

45、可选的,目标区块还存储有至少一个交易和交易根哈希值,方法还包括:

46、确定至少一个交易中的每一交易的第六哈希值;

47、基于各交易的第六哈希值确定待验证交易哈希值;

48、若待验证交易哈希值与交易根哈希值不一致,则确定目标交易相关消息共识验证不通过;

49、若待验证消息哈希值与消息根哈希值一致,则确定目标交易相关消息共识验证通过,包括:

50、若待验证消息哈希值与消息根哈希值一致且待验证交易哈希值与交易根哈希值一致,则确定目标交易相关消息共识验证通过。

51、可选的,应用于第一区块链节点,目标区块包括区块头、区块体和区块体附件,交易根哈希值存储在区块头,至少一个交易存储在区块体,交易相关消息树存储在区块体附件,消息根哈希值存储在区块头或区块体附件,方法还包括:

52、在目标交易相关消息共识验证通过的情况下,基于每一目标内部交易消息中的交易数据、来源信息和去向信息执行交易,以及删除区块体附件中的数据,并基于删除数据后的目标区块更新第一区块链节点存储的区块链。

53、可选的,应用于第一区块链节点,确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息,包括以下的任一项:

54、将交易相关消息树中的每一交易相关消息作为目标交易相关消息,其中,目标区块存储的交易相关消息树是通过确定交易相关消息树中满足预设条件的目标交易相关消息,并删除除目标交易相关消息外的其他交易相关消息得到的;

55、确定第一区块链节点关注的目标账户,并基于目标账户,从目标区块存储的交易相关消息树中确定满足预设条件的目标交易相关消息;

56、其中,来源信息包括来源账户,去向信息包括去向账户,预设条件包括:

57、交易相关消息中的来源账户或去向账户中的至少一项与第一区块链节点关注的账户一致。

58、可选的,确定第一区块链节点关注的目标账户,包括:

59、获取第一区块链节点关联的预置账户集,预置账户集包括第一区块链节点关注的所有账户;

60、将预置账户集中的至少一个账户作为目标账户;

61、方法还包括:

62、响应于针对预置账户集的更新操作,对预置账户集进行更新处理,得到新的预置账户集,以在获取第一区块链节点关联的预置账户集时,获取第一区块链节点关联的新的预置账户集;

63、其中,更新操作包括增加或减少预置账户集中的第一区块链节点关注的账户。

64、另一方面,本技术实施例提供了一种区块链网络,包括第一区块链节点和第二区块链节点,其中:

65、第二区块链节点用于获取交易内存池中的至少一个交易,执行至少一个交易中的每一交易,并获取在执行交易的过程中得到的交易相关消息集,交易相关消息集包括每一交易对应的交易相关消息,交易相关消息包括交易数据、交易数据的来源信息和交易数据的去向信息,基于交易相关消息集构建交易相关消息树,交易相关消息树包括第一节点、各第一节点连接的第二节点和各第二节点一一对应连接的交易相关消息,一个第一节点表征了一个交易的第一哈希值,一个第一节点连接的每一第二节点表征了一个交易对应的每一交易相关消息的第二哈希值,基于各第一节点对应的第一哈希值确定交易相关消息集的消息根哈希值,将交易相关消息树和消息根哈希值存储至目标区块,并将目标区块发送至第一区块链节点;

66、第一区块链节点用于确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息,并基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证。

67、另一方面,本技术实施例还提供了一种基于区块链的交易处理装置,包括:

68、第一获取模块,用于获取交易内存池中的至少一个交易;

69、第二获取模块,用于执行至少一个交易中的每一交易,并获取在执行交易的过程中得到的交易相关消息集,交易相关消息集包括每一交易对应的交易相关消息,交易相关消息包括交易数据、交易数据的来源信息和交易数据的去向信息;

70、消息树构建模块,用于基于交易相关消息集构建交易相关消息树,交易相关消息树包括第一节点、各第一节点连接的第二节点和各第二节点一一对应连接的交易相关消息,一个第一节点表征了一个交易的第一哈希值,一个第一节点连接的每一第二节点表征了一个交易对应的每一交易相关消息的第二哈希值;

71、哈希值确定模块,用于基于各第一节点对应的第一哈希值确定交易相关消息集的消息根哈希值;

72、第一交易处理模块,用于将交易相关消息树和消息根哈希值存储至目标区块,并将目标区块发送至第一区块链节点,以使得第一区块链节点确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息,并基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证。

73、另一方面,本技术实施例还提供了一种基于区块链的交易处理装置,包括:

74、第三获取模块,用于获取来自第二区块链节点的目标区块,目标区块存储有消息根哈希值和交易相关消息树,目标区块存储的交易相关消息树包括第一节点、各第一节点连接的第二节点和至少一个第二节点一一对应连接的交易相关消息,一个第一节点表征了至少一个交易中的一个交易的第一哈希值,一个第一节点连接的每一第二节点表征了一个交易对应的每一交易相关消息的第二哈希值,至少一个交易是从交易内存池中获取的,交易相关消息包括交易数据、交易数据的来源信息和交易数据的去向信息;

75、目标消息确定模块,用于确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息;

76、第二交易处理模块,用于基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证。

77、另一方面,本技术实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,处理器执行计算机程序以实现任一申请实施例的方法的步骤。

78、另一方面,本技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现任一申请实施例的方法的步骤。

79、另一方面,本技术实施例还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现任一申请实施例的方法的步骤。

80、本技术实施例,通过第二区块链节点获取交易内存池中的至少一个交易,执行至少一个交易中的每一交易,并获取在执行交易的过程中得到的交易相关消息集,交易相关消息集包括每一交易对应的交易相关消息,基于交易相关消息集构建交易相关消息树,交易相关消息树包括第一节点、各第一节点连接的第二节点和各第二节点一一对应连接的交易相关消息,基于各第一节点对应的第一哈希值确定交易相关消息集的消息根哈希值,将交易相关消息树和消息根哈希值存储至目标区块,并将目标区块发送至第一区块链节点,则第一区块链节点确定目标区块存储的交易相关消息树中满足预设条件的目标交易相关消息,基于目标区块存储的交易相关消息树和消息根哈希值对目标交易相关消息进行共识验证,由于第一区块链节点仅验证交易相关消息集中满足预设条件的目标交易相关消息,可以解决区块链的交易验证的效率较低的技术问题以及解决数据安全性和可用性较低的技术问题,以实现提高区块链的交易验证的效率以及兼顾数据安全性和可用性的技术效果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1