基于联盟链的数据处理方法、装置、设备及可读存储介质与流程

文档序号:34040943发布日期:2023-05-05 14:03阅读:31来源:国知局
基于联盟链的数据处理方法、装置、设备及可读存储介质与流程

本发明涉及区块链,特别涉及一种基于联盟链的数据处理方法、装置、电子设备及可读存储介质。


背景技术:

1、区块链是利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全,生成不可篡改和不可伪造的分布式账本,它的本质也是一个去中心化分布式的数据库。随着社会对去中心化需求的日渐旺盛,联盟链系统在各个领域陆续落地,联盟链系统是指有若干个机构共同参与管理的区块链,每个机构都运行着一个或多个节点,其中的数据只允许系统内不同的机构进行读写和发送交易,并且共同来记录交易数据。

2、然而,在联盟链场景中,由于多链的引入,一个区块链节点往往同时属于多个区块链,随着越来越多的机构的加入,区块链系统的节点复杂度越来越高,存储成本会越来越高。

3、针对上述的问题,业内提出“区块裁剪”方案,即对区块进行裁剪备份,将区块链账本中区块号小的区块进行裁剪,与现有的区块链账本分离,缩小当前区块链账本体积。但是,现有技术中将区块数据进行裁剪备份并没有从本质上解决存储问题,裁剪出的区块需要备份,为了保证备份的安全性,就需要将区块备份在相对安全的分布式文件系统中,增大了维护成本。

4、因此,现有联盟链系统无法较好地解决节点数日益膨胀带来的存储成本增多的问题。


技术实现思路

1、为了解决现有联盟链系统无法较好地解决节点数日益膨胀带来的存储成本增多的问题,本发明提供了一种基于联盟链的数据处理方法、装置、电子设备及可读存储介质。

2、为解决上述问题,本发明实施例提供了一种基于联盟链的数据处理方法,所述联盟链包括共识集群、全节点和轻节点,所述方法包括:

3、根据交易请求生成区块数据;所述区块数据包含全量交易信息;

4、将所述区块数据从所述共识集群广播到所述全节点并由所述全节点包装成轻数据;所述轻数据包含非全量交易信息;

5、将所述轻数据从所述全节点发送至所述轻节点;

6、基于merkel树的验证规则对所述轻数据进行校验并更新到数据库;所述数据库包括世界状态数据库和历史数据库,所述世界状态数据库仅存储当前的轻数据;

7、将所述轻数据从所述轻节点处丢弃。

8、可选地,所述全量交易信息包含交易证书信息和交易详情;所述非全量交易信息包含交易来源、交易去向和交易金额。

9、可选地,所述根据交易请求生成区块数据,包括:

10、接收交易请求;

11、对所述交易请求进行背书验证得到背书结果;

12、将所述背书结果返回给客户端节点;所述客户端节点为连接到所述全节点上并与所述区块链进行通信的节点;

13、接收由所述客户端节点根据背书策略收集所述背书结果后生成的交易结果;

14、将所述交易结果进行排序得到区块数据。

15、可选地,所述对所述交易请求进行背书验证得到背书结果,包括:

16、利用客户端节点的公钥验证所述交易请求的签名;

17、对验证通过后的所述交易请求进行模拟得到模拟结果;

18、利用客户端节点的私钥对所述模拟结果进行签名得到背书结果。

19、可选地,所述基于merkel树的验证规则对所述轻数据进行校验并更新到数据库,包括:

20、对所述轻数据进行拆解得到交易的merkel树;

21、基于merkel树的验证规则,校验merkel树的各个叶子节点中包含的交易hash是否有效,若有效,则获取交易的有效标识;所述有效标识为标识该交易有效性的布尔型字段;

22、根据所述有效标识将所述轻数据更新到数据库。

23、可选地,所述基于区块链的数据处理方法还包括:

24、通过所述轻节点从所述世界状态数据库查询交易的最新状态信息;

25、以及,通过所述轻节点从所述历史数据库查询历史交易信息。

26、可选地,所述基于区块链的数据处理方法还包括:

27、当所述轻节点接收到查询所述区块数据的区块查询请求时,将所述区块查询请求从所述轻节点转发到所述全节点并由所述全节点进行查询;

28、将所述区块查询请求对应的查询结果从所述全节点返回给所述轻节点;

29、根据所述查询结果作出对应的响应。

30、为了解决上述问题,本发明实施例还提供一种基于联盟链的数据处理装置,所述联盟链包括共识集群、全节点和轻节点,所述装置包括:

31、生成模块,用于根据交易请求生成区块数据;所述区块数据包含全量交易信息;

32、包装模块,用于将所述区块数据从所述共识集群广播到所述全节点并由所述全节点包装成轻数据;所述轻数据包含非全量交易信息;

33、发送模块,用于将所述轻数据从所述全节点发送至所述轻节点;

34、更新模块,用于基于merkel树的验证规则对所述轻数据进行校验并更新到数据库;所述数据库包括世界状态数据库和历史数据库,所述世界状态数据库仅存储当前的轻数据;

35、丢弃模块,用于将所述轻数据从所述轻节点处丢弃。

36、为了解决上述问题,本发明实施例还提供一种电子设备,所述电子设备包括:

37、至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述所述的基于联盟链的数据处理方法。

38、为了解决上述问题,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的基于联盟链的数据处理方法。

39、本发明的实施例提供的技术方案可以包括以下有益效果:

40、本发明实施例中,联盟链包括共识集群、全节点和轻节点,首先根据交易请求生成包含全量交易信息的区块数据,然后将区块数据从共识集群广播到全节点并由全节点包装成只有非全量交易信息的轻数据,将轻数据从全节点发送至轻节点,接着基于merkel树的验证规则对轻数据进行校验并更新到世界状态数据库和历史数据库,并将轻数据从轻节点处丢弃。通过将区块数据存储在全节点处,轻节点不存储任何区块数据,对交易进行正确校验后就将交易信息更新到世界状态数据库和历史数据库中,解决了现有联盟链系统无法较好地解决节点数日益膨胀带来的存储成本增多的问题,能够极大降低了硬件存储成本。

41、此外,本方案中联盟链的运行环境为可信环境,原始的交易集合中包含了全量交易信息,本发明实施例对交易进行处理,择取关键交易信息(即非全量交易信息)组成简单交易集合及merkel树的结构,因为可信环境下的联盟链的轻节点并不需要验证交易来源的正确性,只需要校验交易本身的正确性和存在性,择取关键交易信息可以轻量化传输报文,在报文网络扩散过程中减轻网络压力。轻节点的引入极大减轻了交易信息传输的体积,减少了区块数据传输的字节量级,减轻了通信压力,有效降低了交易延迟。

42、此外,轻节点不存储交易证书信息和交易详情,能够更好的保护隐私性。

43、应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。

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