基于区块链的交易共识处理方法及装置、电子设备制造方法及图纸

技术编号:20365337 阅读:24 留言:0更新日期:2019-02-16 17:38
一种基于区块链的交易共识处理方法,所述区块链中的节点设备至少包括一主节点设备以及若干从节点设备;其中,所述主节点设备基于纠删码算法将提议的交易数据分割为指定数量的数据分片,包括:接收所述主节点设备单播发送的所述交易数据的数据分片;其中,所述主节点设备单播发送至各节点设备的数据分片不同;将接收到的数据分片广播发送至所述区块链中的其它各节点设备;以及,接收所述其它各节点设备广播发送的所述交易数据的数据分片;确定接收到的所述交易数据的数据分片的数量是否达到纠删码恢复阈值;如果是,基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,以完成对所述交易数据的原始内容的共识处理。

【技术实现步骤摘要】
基于区块链的交易共识处理方法及装置、电子设备
本说明书一个或多个实施例涉及区块链
,尤其涉及一种基于区块链的交易共识处理方法及装置、电子设备。
技术介绍
区块链技术,也被称之为分布式账本技术,是一种由若干台计算设备共同参与“记账”,共同维护一份完整的分布式数据库的新兴技术。由于区块链技术具有去中心化、公开透明、每台计算设备可以参与数据库记录、并且各计算设备之间可以快速的进行数据同步的特性,使得区块链技术已在众多的领域中广泛的进行应用
技术实现思路
本说明书提出一种基于区块链的交易共识处理方法,所述区块链中的节点设备至少包括一主节点设备以及若干从节点设备;其中,所述主节点设备基于纠删码算法将提议的交易数据分割为指定数量的数据分片,所述方法包括:接收所述主节点设备单播发送的所述交易数据的数据分片;其中,所述主节点设备单播发送至各节点设备的数据分片不同;将接收到的数据分片广播发送至所述区块链中的其它各节点设备;以及,接收所述其它各节点设备广播发送的所述交易数据的数据分片;确定接收到的所述交易数据的数据分片的数量是否达到纠删码恢复阈值;如果是,基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,以完成对所述交易数据的原始内容的共识处理。可选的,所述方法还包括:确定本节点设备是否被选举为所述主节点设备;如果是,基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片;以及,将所述指定数量的数据分片分别单播发送至其它各节点设备。可选的,所述区块链搭载的共识算法为pbft算法;所述接收所述主节点设备单播发送的所述交易数据的数据分片,包括:接收所述主节点设备单播发送的Pre-Prepare消息;其中,所述Pre-Prepare消息中包括所述交易数据的数据分片;获取并保存所述Pre-Prepare消息中的数据分片。可选的,所述将接收到的数据分片广播发送至所述区块链中的其它各节点设备,包括:向所述区块链中的其它各节点设备广播发送Prepare消息;其中,所述Prepare消息包括接收到的所述数据分片,以使所述其它各节点设备在接收到所述Prepare消息时,获取并保存所述Prepare消息中的数据分片。可选的,所述基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片,包括:基于预设的压缩算法对提议的所述交易数据进行压缩处理;基于所述纠删码算法将压缩处理后的所述交易数据分割为指定数量的数据分片。所述基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,包括:基于纠删码重构算法对接收到的数据分片进行数据恢复得到压缩后的所述交易数据;基于与所述压缩算法对应的解压缩算法,对恢复出的所述交易数据进行解压缩处理,以得到所述交易数据的原始内容。可选的,所述基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片,包括:基于预设的加密算法以及加密密钥对提议的交易数据进行加密处理;基于所述纠删码算法将加密处理后的所述交易数据分割为指定数量的数据分片。所述基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,包括:基于基于纠删码重构算法对接收到的数据分片进行数据恢复得到加密后的所述交易数据;基于与所述加密算法对应的解密算法,以及与所述加密密钥对应的解密密钥,对恢复出的所述交易数据进行解密处理,以得到所述交易数据的原始内容。可选的,所述加密算法为门限加密算法;所述解密算法为与门限加密算法对应的门限解密算法;所述解密密钥被分割为指定数量的子密钥;其中,各子密钥由各节点设备分别持有;所述基于与所述加密算法对应的解密算法,以及与所述加密密钥对应的解密密钥,对恢复出的所述交易数据进行解密处理,包括:收集所述其它各节点设备持有的子密钥;确定收集到的子密钥的数量是否达到预设的解密门限阈值;如果是,基于收集到的子密钥重构所述解密密钥,并基于与所述门限加密算法对应的门限解密算法,以及所述解密密钥,对恢复出的所述交易数据进行解密处理。可选的,所述主节点提议的交易数据,为所述主节点设备当前共识周期内由各用户客户端广播发送的待共识交易构建的交易列表;所述指定数量为所述区块链中的节点设备的总数量。可选的,所述区块链为联盟链。本说明书还提出一种基于区块链的交易共识处理装置,所述区块链中的节点设备至少包括一主节点设备以及若干从节点设备;其中,所述主节点设备基于纠删码算法将提议的交易数据分割为指定数量的数据分片,所述装置包括:接收模块,接收所述主节点设备单播发送的所述交易数据的数据分片;其中,所述主节点设备单播发送至各节点设备的数据分片不同;发送模块,将接收到的数据分片广播发送至所述区块链中的其它各节点设备;以及,接收所述其它各节点设备广播发送的所述交易数据的数据分片;确定模块,确定接收到的所述交易数据的数据分片的数量是否达到纠删码恢复阈值;恢复模块,如果是,基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,以完成对所述交易数据的原始内容的共识处理。可选的,所述装置还包括:分割模块,确定本节点设备是否被选举为所述主节点设备;如果是,基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片;所述发送模块进一步:将所述指定数量的数据分片分别单播发送至其它各节点设备。可选的,所述区块链搭载的共识算法为pbft算法;所述接收模块:接收所述主节点设备单播发送的Pre-Prepare消息;其中,所述Pre-Prepare消息中包括所述交易数据的数据分片;获取并保存所述Pre-Prepare消息中的数据分片。可选的,所述发送模块:向所述区块链中的其它各节点设备广播发送Prepare消息;其中,所述Prepare消息包括接收到的所述数据分片,以使所述其它各节点设备在接收到所述Prepare消息时,获取并保存所述Prepare消息中的数据分片。可选的,所述分割模块:基于预设的压缩算法对提议的所述交易数据进行压缩处理;基于所述纠删码算法将压缩处理后的所述交易数据分割为指定数量的数据分片。所述恢复模块:基于纠删码重构算法对接收到的数据分片进行数据恢复得到压缩后的所述交易数据;基于与所述压缩算法对应的解压缩算法,对恢复出的所述交易数据进行解压缩处理,以得到所述交易数据的原始内容。可选的,所述分割模块:基于预设的加密算法以及加密密钥对提议的交易数据进行加密处理;基于所述纠删码算法将加密处理后的所述交易数据分割为指定数量的数据分片。所述恢复模块:基于基于纠删码重构算法对接收到的数据分片进行数据恢复得到加密后的所述交易数据;基于与所述加密算法对应的解密算法,以及与所述加密密钥对应的解密密钥,对恢复出的所述交易数据进行解密处理,以得到所述交易数据的原始内容。可选的,所述加密算法为门限加密算法;所述解密算法为与门限加密算法对应的门限解密算法;所述解密密钥被分割为指定数量的子密钥;其中,各子密钥由各节点设备分别持有;所述恢复模块进一步:收集所述其它各节点设备持有的子密钥;确定收集到的子密钥的数量是否达到预设的解密门限阈值;如果是,基于收集到的子密钥重构所述解密密钥,并基于与所述门限加密算法对应的门限解密算法,以及所述解密密钥,对恢复出的所述交易数据进行解密处理。可选的,所述主节点提议的交易本文档来自技高网...

【技术保护点】
1.一种基于区块链的交易共识处理方法,所述区块链中的节点设备至少包括一主节点设备以及若干从节点设备;其中,所述主节点设备基于纠删码算法将提议的交易数据分割为指定数量的数据分片,所述方法包括:接收所述主节点设备单播发送的所述交易数据的数据分片;其中,所述主节点设备单播发送至各节点设备的数据分片不同;将接收到的数据分片广播发送至所述区块链中的其它各节点设备;以及,接收所述其它各节点设备广播发送的所述交易数据的数据分片;确定接收到的所述交易数据的数据分片的数量是否达到纠删码恢复阈值;如果是,基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,以完成对所述交易数据的原始内容的共识处理。

【技术特征摘要】
1.一种基于区块链的交易共识处理方法,所述区块链中的节点设备至少包括一主节点设备以及若干从节点设备;其中,所述主节点设备基于纠删码算法将提议的交易数据分割为指定数量的数据分片,所述方法包括:接收所述主节点设备单播发送的所述交易数据的数据分片;其中,所述主节点设备单播发送至各节点设备的数据分片不同;将接收到的数据分片广播发送至所述区块链中的其它各节点设备;以及,接收所述其它各节点设备广播发送的所述交易数据的数据分片;确定接收到的所述交易数据的数据分片的数量是否达到纠删码恢复阈值;如果是,基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,以完成对所述交易数据的原始内容的共识处理。2.根据权利要求1所述的方法,所述方法还包括:确定本节点设备是否被选举为所述主节点设备;如果是,基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片;以及,将所述指定数量的数据分片分别单播发送至其它各节点设备。3.根据权利要求1所述的方法,所述区块链搭载的共识算法为pbft算法;所述接收所述主节点设备单播发送的所述交易数据的数据分片,包括:接收所述主节点设备单播发送的Pre-Prepare消息;其中,所述Pre-Prepare消息中包括所述交易数据的数据分片;获取并保存所述Pre-Prepare消息中的数据分片。4.根据权利要求3所述的方法,所述将接收到的数据分片广播发送至所述区块链中的其它各节点设备,包括:向所述区块链中的其它各节点设备广播发送Prepare消息;其中,所述Prepare消息包括接收到的所述数据分片,以使所述其它各节点设备在接收到所述Prepare消息时,获取并保存所述Prepare消息中的数据分片。5.根据权利要求1或2所述的方法,所述基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片,包括:基于预设的压缩算法对提议的所述交易数据进行压缩处理;基于所述纠删码算法将压缩处理后的所述交易数据分割为指定数量的数据分片;所述基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,包括:基于纠删码重构算法对接收到的数据分片进行数据恢复得到压缩后的所述交易数据;基于与所述压缩算法对应的解压缩算法,对恢复出的所述交易数据进行解压缩处理,以得到所述交易数据的原始内容。6.根据权利要求1或2所述的方法,基于所述纠删码算法将提议的交易数据分割为指定数量的数据分片,包括:基于预设的加密算法以及加密密钥对提议的交易数据进行加密处理;基于所述纠删码算法将加密处理后的所述交易数据分割为指定数量的数据分片;所述基于纠删码重构算法对接收到的数据分片进行数据恢复得到所述交易数据的原始内容,包括:基于纠删码重构算法对接收到的数据分片进行数据恢复得到加密后的所述交易数据;基于与所述加密算法对应的解密算法,以及与所述加密密钥对应的解密密钥,对恢复出的所述交易数据进行解密处理,以得到所述交易数据的原始内容。7.根据权利要求6所述的方法,所述加密算法为门限加密算法;所述解密算法为与门限加密算法对应的门限解密算法;所述解密密钥被分割为指定数量的子密钥;其中,各子密钥由各节点设备分别持有;基于与所述加密算法对应的解密算法,以及与所述加密密钥对应的解密密钥,对恢复出的所述交易数据进行解密处理,包括:收集所述其它各节点设备持有的子密钥;确定收集到的子密钥的数量是否达到预设的解密门限阈值;如果是,基于收集到的子密钥重构所述解密密钥,并基于与所述门限加密算法对应的门限解密算法,以及所述解密密钥,对恢复出的所述交易数据进行解密处理。8.根据权利要求1所述的方法,所述主节点提议的交易数据,为所述主节点设备当前共识周期内由各用户客户端广播发送的待共识交易构建的交易列表;所述指定数量为所述区块链中的节点设备的总数量。9.根据权利要求1所述的方法,所述区块链为联盟链。10.一种基于区块链的交易共识处理装置,所述区块链中的节点设备至少包括一主节点设备以及若干从节点设备;其中,所述主节点设备基于纠删码算法将提议的交易数据分割为指定数量的数据分片,所述装置...

【专利技术属性】
技术研发人员:邓福喜
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1