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

技术编号:36732143 阅读:10 留言:0更新日期:2023-03-04 09:59
本发明专利技术提供了一种区块链交易处理方法、装置及系统,属于通信技术领域。区块链交易处理方法,由背书节点执行,包括:接收客户端针对交易的提案proposal请求,所述proposal请求包括所述交易的标识;访问背书节点的本地账本,根据所述交易的标识验证所述proposal请求的唯一性,并对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集。本发明专利技术的技术方案能够提升Fabric的处理性能。技术方案能够提升Fabric的处理性能。技术方案能够提升Fabric的处理性能。

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


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

技术介绍

[0002]当前主流的区块链平台fabric网络中,一个完整的区块链交易信息需要经过模拟(背书节点)、0排序(排序节点)、验证(确认节点)三个环节后,该交易信息才能上链永久保存。Fabric网络中,模拟节点和验证节点都称为peer节点,排序节点为order节点。除order节点外,所有peer节点都需要参与交易的验证,即都充当验证节点的角色。背书节点为peer节点的子集,根据组织的背书策略来设定哪些节点充当背书角色。
[0003]现有技术中,背书节点对于收到的客户端的交易的请求,在不作任何身份验证的情况下就开始消息唯一性的确认。这种处理方式,容易造成恶意客户端对背书节点的DoS攻击。恶意客户端通过不间断的发送大量的、交易ID唯一的交易的请求,从而使背书节点资源耗尽,影响整个Fabric网络的可用性及安全。

技术实现思路

[0004]本专利技术要解决的技术问题是提供一种区块链交易处理方法、装置及系统,能够提升Fabric的处理性能。
[0005]为解决上述技术问题,本专利技术的实施例提供技术方案如下:
[0006]一方面,提供一种区块链交易处理方法,由背书节点执行,包括:
[0007]接收客户端针对交易的提案proposal请求,所述proposal请求包括所述交易的标识;
[0008]访问背书节点的本地账本,根据所述交易的标识验证所述proposal请求的唯一性,并对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集。
[0009]一些实施例中,接收客户端针对交易的proposal请求的步骤之后,访问背书节点的本地账本的步骤之前,所述方法还包括:
[0010]对所述proposal请求进行合法性验证;
[0011]所述访问背书节点的本地账本的步骤具体包括:
[0012]在验证所述proposal请求的发送方为合法用户后,访问所述背书节点的本地账本。
[0013]一些实施例中,接收客户端针对交易的proposal请求的步骤之后,访问背书节点的本地账本的步骤之前,所述方法还包括:
[0014]对至少一个所述客户端的所述proposal请求进行临时缓存。
[0015]一些实施例中,所述访问背书节点的本地账本的步骤具体包括:
[0016]在缓存的所述proposal请求满足预设条件后,访问背书节点的本地账本,所述预设条件包括以下任一项:
[0017]缓存的所述proposal请求的数量大于等于预设的第一阈值;
[0018]缓存的所述proposal请求占据的缓存大小大于等于预设的第二阈值;
[0019]预配置的定时器超时。
[0020]一些实施例中,所述根据所述交易的标识验证所述proposal请求的唯一性的步骤包括:
[0021]访问背书节点的本地账本,查找所述交易的标识;
[0022]若所述本地账本中存在所述交易的标识,则所述proposal请求不唯一;若所述本地账本中不存在所述交易的标识,则所述proposal请求唯一。
[0023]一些实施例中,生成所述交易对应的读写集的步骤之后,所述方法还包括:
[0024]对所述读写集进行签名后返回给所述客户端。
[0025]本专利技术实施例还提供了一种区块链交易处理装置,应用于背书节点,包括收发机和处理器,
[0026]所述收发机用于接收客户端针对交易的提案proposal请求,所述proposal请求包括所述交易的标识;
[0027]所述处理器用于访问背书节点的本地账本,根据所述交易的标识验证所述proposal请求的唯一性,并对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集。
[0028]一些实施例中,所述处理器还用于对所述proposal请求进行合法性验证;在验证所述proposal请求的发送方为合法用户后,访问所述背书节点的本地账本。
[0029]一些实施例中,所述处理器还用于对至少一个所述客户端的所述proposal请求进行临时缓存。
[0030]一些实施例中,所述处理器具体用于在缓存的所述proposal请求满足预设条件后,访问背书节点的本地账本,所述预设条件包括以下任一项:
[0031]缓存的所述proposal请求的数量大于等于预设的第一阈值;
[0032]缓存的所述proposal请求占据的缓存大小大于等于预设的第二阈值;
[0033]预配置的定时器超时。
[0034]一些实施例中,所述处理器具体用于访问背书节点的本地账本,查找所述交易的标识;若所述本地账本中存在所述交易的标识,则所述proposal请求不唯一;若所述本地账本中不存在所述交易的标识,则所述proposal请求唯一。
[0035]一些实施例中,所述处理器还用于对所述读写集进行签名后返回给所述客户端。
[0036]本专利技术实施例还提供了一种区块链交易系统,包括如上所述的区块链交易处理装置。
[0037]本专利技术实施例还提供了一种区块链交易处理装置,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序;所述处理器执行所述程序时实现如上所述的区块链交易处理方法。
[0038]所述处理器用于接收客户端针对交易的提案proposal请求,所述proposal请求包括所述交易的标识;访问背书节点的本地账本,根据所述交易的标识验证所述proposal请求的唯一性,并对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集。
[0039]一些实施例中,所述处理器还用于对所述proposal请求进行合法性验证;在验证
所述proposal请求的发送方为合法用户后,访问所述背书节点的本地账本。
[0040]一些实施例中,所述处理器还用于对至少一个所述客户端的所述proposal请求进行临时缓存。
[0041]一些实施例中,所述处理器具体用于在缓存的所述proposal请求满足预设条件后,访问背书节点的本地账本,所述预设条件包括以下任一项:
[0042]缓存的所述proposal请求的数量大于等于预设的第一阈值;
[0043]缓存的所述proposal请求占据的缓存大小大于等于预设的第二阈值;
[0044]预配置的定时器超时。
[0045]一些实施例中,所述处理器具体用于访问背书节点的本地账本,查找所述交易的标识;若所述本地账本中存在所述交易的标识,则所述proposal请求不唯一;若所述本地账本中不存在所述交易的标识,则所述proposal请求唯一。
[0046]一些实施例中,所述处理器还用于对所述读写集进行签名后返回给所述客户端。
[0047]本专利技术实施例还提供了一种计算机可读存储介本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种区块链交易处理方法,其特征在于,由背书节点执行,包括:接收客户端针对交易的提案proposal请求,所述proposal请求包括所述交易的标识;访问背书节点的本地账本,根据所述交易的标识验证所述proposal请求的唯一性,并对所述proposal请求关联的操作进行模拟执行,生成所述交易对应的读写集。2.根据权利要求1所述的区块链交易处理方法,其特征在于,接收客户端针对交易的proposal请求的步骤之后,访问背书节点的本地账本的步骤之前,所述方法还包括:对所述proposal请求进行合法性验证;所述访问背书节点的本地账本的步骤具体包括:在验证所述proposal请求的发送方为合法用户后,访问所述背书节点的本地账本。3.根据权利要求1所述的区块链交易处理方法,其特征在于,接收客户端针对交易的proposal请求的步骤之后,访问背书节点的本地账本的步骤之前,所述方法还包括:对至少一个所述客户端的所述proposal请求进行临时缓存。4.根据权利要求3所述的区块链交易处理方法,其特征在于,所述访问背书节点的本地账本的步骤具体包括:在缓存的所述proposal请求满足预设条件后,访问背书节点的本地账本,所述预设条件包括以下任一项:缓存的所述proposal请求的数量大于等于预设的第一阈值;缓存的所述proposal请求占据的缓存大小大于等于预设的第二阈值;预配置的定时器超时。5.根据权利要求1所述的区块链交易处理方法,其特征...

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

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

1