区块链交易处理方法、装置及系统制造方法及图纸

技术编号:36731989 阅读:7 留言:0更新日期:2023-03-04 09:59
本发明专利技术提供了一种区块链交易处理方法、装置及系统,属于区块链技术领域。区块链交易处理方法,由背书节点执行,包括:接收客户端针对交易的提案proposal请求;对所述proposal请求进行合法性验证后,对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集;对所述交易中的第一交易进行验证,验证通过后为所述第一交易添加预设标记;向所述客户端返回proposal响应消息,所述proposal响应消息包括添加预设标记后的第一交易。本发明专利技术的技术方案能够提升Fabric的处理性能。术方案能够提升Fabric的处理性能。术方案能够提升Fabric的处理性能。

【技术实现步骤摘要】
区块链交易处理方法、装置及系统


[0001]本专利技术涉及区块链
,特别是指一种区块链交易处理方法、装置及系统。

技术介绍

[0002]当前主流的区块链平台fabric网络中,一个完整的区块链交易信息需要经过模拟(背书节点)、0排序(排序节点)、验证(确认节点)三个环节后,该交易信息才能上链永久保存。Fabric网络中,模拟节点和验证节点都称为peer节点,排序节点为order节点。除order节点外,所有peer节点都需要参与交易的验证,即都充当验证节点的角色。背书节点为peer节点的子集,根据组织的背书策略来设定哪些节点充当背书角色。
[0003]现有技术中,背书节点作为确认节点,收到排序节点发来的区块后进行拆分处理,通过依次访问本地账本对块中包含的每条交易进行逐一检查确认。这种方式,大大增加了交易确认时间,降低了Fabric的处理性能。

技术实现思路

[0004]本专利技术要解决的技术问题是提供一种区块链交易处理方法、装置及系统,能够提升Fabric的处理性能。
[0005]为解决上述技术问题,本专利技术的实施例提供技术方案如下:
[0006]一方面,提供一种区块链交易处理方法,由背书节点执行,包括:
[0007]接收客户端针对交易的提案proposal请求;
[0008]对所述proposal请求进行合法性验证后,对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集;
[0009]对所述交易中的第一交易进行验证,验证通过后为所述第一交易添加预设标记;
[0010]向所述客户端返回proposal响应消息,所述proposal响应消息包括添加预设标记后的第一交易。
[0011]一些实施例中,向所述客户端返回proposal响应消息的步骤之后,所述方法还包括:
[0012]接收排序节点发送的区块,所述区块包括打包成块的多个交易;
[0013]对所述区块进行拆分,得到多个交易,判定所述多个交易中携带预设标记的第一交易有效。
[0014]一些实施例中,所述预设标记携带在所述proposal响应消息中的以下任一字段中:
[0015]response status字段;
[0016]list of<key,value>read字段;
[0017]新增的预设字段。
[0018]一些实施例中,所述对所述区块进行拆分,得到多个交易的步骤之后,所述方法还包括:
[0019]对所述多个交易中未携带预设标记的第二交易进行签名验证;
[0020]对签名验证后的所述第二交易进行临时缓存,访问所述背书节点的本地账本,通过打包的方式对所述第二交易进行并行验证。
[0021]一些实施例中,所述对签名验证后的所述第二交易进行临时缓存,访问所述背书节点的本地账本的步骤具体包括:
[0022]在缓存的所述第二交易满足预设条件后,访问所述背书节点的本地账本,所述预设条件包括以下任一项:
[0023]缓存的所述第二交易的数量大于等于预设的第一阈值;
[0024]缓存的所述第二交易占据的缓存大小大于等于预设的第二阈值;
[0025]预配置的定时器超时。
[0026]本专利技术实施例还提供了一种区块链交易处理装置,应用于背书节点,包括收发机和处理器,
[0027]所述收发机用于接收客户端针对交易的提案proposal请求;
[0028]所述处理器用于对所述proposal请求进行合法性验证后,对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集;对所述交易中的第一交易进行验证,验证通过后为所述第一交易添加预设标记;
[0029]所述收发机还用于向所述客户端返回proposal响应消息,所述proposal响应消息包括添加预设标记后的第一交易。
[0030]一些实施例中,所述收发机还用于接收排序节点发送的区块,所述区块包括打包成块的多个交易;
[0031]所述处理器还用于对所述区块进行拆分,得到多个交易,判定所述多个交易中携带预设标记的第一交易有效。
[0032]一些实施例中,所述预设标记携带在所述proposal响应消息中的以下任一字段中:
[0033]response status字段;
[0034]list of<key,value>read字段;
[0035]新增的预设字段。
[0036]一些实施例中,所述处理器还用于对所述多个交易中未携带预设标记的第二交易进行签名验证;对签名验证后的所述第二交易进行临时缓存,访问所述背书节点的本地账本,通过打包的方式对所述第二交易进行并行验证。
[0037]一些实施例中,所述处理器具体用于在缓存的所述第二交易满足预设条件后,访问所述背书节点的本地账本,所述预设条件包括以下任一项:
[0038]缓存的所述第二交易的数量大于等于预设的第一阈值;
[0039]缓存的所述第二交易占据的缓存大小大于等于预设的第二阈值;
[0040]预配置的定时器超时。
[0041]本专利技术实施例还提供了一种区块链交易系统,包括如上所述的区块链交易处理装置。
[0042]本专利技术实施例还提供了一种区块链交易处理装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;所述处理器执行所述程序时实现如
上所述的区块链交易处理方法。
[0043]所述处理器用于接收客户端针对交易的提案proposal请求;对所述proposal请求进行合法性验证后,对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集;对所述交易中的第一交易进行验证,验证通过后为所述第一交易添加预设标记;向所述客户端返回proposal响应消息,所述proposal响应消息包括添加预设标记后的第一交易。
[0044]一些实施例中,所述处理器还用于接收排序节点发送的区块,所述区块包括打包成块的多个交易;对所述区块进行拆分,得到多个交易,判定所述多个交易中携带预设标记的第一交易有效。
[0045]一些实施例中,所述预设标记携带在所述proposal响应消息中的以下任一字段中:
[0046]response status字段;
[0047]list of<key,value>read字段;
[0048]新增的预设字段。
[0049]一些实施例中,所述处理器还用于对所述多个交易中未携带预设标记的第二交易进行签名验证;对签名验证后的所述第二交易进行临时缓存,访问所述背书节点的本地账本,通过打包的方式对所述第二交易进行并行验证。
[0050]一些实施例中,所述处理器具体用于在缓存的所述第二交易满足预设条件后,访问所述背书节点的本地账本,所述预设条件包括以下任一项:
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
中任一项所述的区块链交易处理方法。9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器...

【专利技术属性】
技术研发人员:任兰芳杨波粟栗
申请(专利权)人:中国移动通信集团有限公司
类型:发明
国别省市:

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

1