System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及区块链溯源,尤其涉及一种基于hyperledger fabric的供应链数据溯源方法及装置。
技术介绍
1、hyperledger fabric是一个开源的企业级许可分布式账本技术(distributedledger technology,dlt)平台。基于fabric的区块链溯源技术是一种去中心化、分布式、不可篡改的技术,通过区块链技术实现产品全生命周期的溯源和管理。
2、目前供应链主要在线下完成交易,很难对供应链数据进行高效地溯源。若能够将供应链与区块链结合,能够使供应链数据更容易溯源,并保障数据可信度和安全性。基于此,亟需建立一个性能高效,可靠且透明的区块链、物联网溯源系统,以解决供应链数据难以高效溯源的问题。
技术实现思路
1、为解决上述问题,本申请实施例提供了一种基于hyperledger fabric的供应链数据溯源方法及装置。
2、一方面,本申请实施例提供了一种基于hyperledger fabric的供应链数据溯源方法,所述方法应用于预先部署的hyperledger fabric区块链网络中至少一个排序orderer节点;该方法包括:
3、响应于来自客户端的数据提交请求,验证相应的第一签名信息;其中,所述数据提交请求为背书节点响应于所述客户端的背书请求执行背书任务后,所述客户端生成;所述第一签名信息为对待提交数据及执行所述背书任务后的背书结果签名得到;
4、当验证所述第一签名信息通过之后,将所述待提交数据发送
5、当接收到来自预设消息通道的所述消息队列的消息广播后,按照预设出块策略,将与所述待提交数据对应提交区块发送至相应的所述背书节点,以当所述提交区块满足预设验证条件后,根据所述待提交数据,更新相应的区块链网络账本;所述消息广播为所述消息队列存储所述待提交数据生成。
6、在本申请的一种实现方式中,当接收到来自预设消息通道的所述消息队列的消息广播后,按照预设出块策略,将与所述待提交数据对应提交区块发送至相应的所述背书节点,具体包括:
7、实时确定所述提交区块中缓冲交易数量,及所述提交区块的缓存等待时长;
8、将所述提交区块中缓存交易数量与预设最大交易数量匹配,将所述提交区块的缓存等待时长与预设出块时长匹配;
9、在所述缓存交易数量达到所述预设最大交易数量和/或所述缓存等待时长达到所述预设出块时长的情况下,确定所述提交区块满足所述预设出块策略,将所述提交区块发送至相应的所述背书节点。
10、在本申请的一种实现方式中,所述消息队列为kafka集群。
11、在本申请的一种实现方式中,所述方法还包括:
12、在kafka集群将所述待提交数据存放到相应主题topic的情况下,kafka集群通过所述预设消息通道,将相应存放消息广播至与所述预设消息通道对应的各orderer节点;所述预设消息通道至少对应于一个所述orderer节点。
13、另一方面,本申请实施例还提供了一种基于hyperledger fabric的供应链数据溯源方法,所述方法应用于预先部署的hyperledger fabric区块链网络中至少一个背书节点;所述方法包括:
14、响应于来自客户端的背书请求信息,执行背书任务,以对所述第二签名信息进行验证;所述背书请求信息包括待提交数据及所述客户端的第二签名信息;所述第二签名信息基于所述客户端通过第一私钥对所述待提交数据签名得到;
15、当所述第二签名信息验证通过的情况下,生成背书结果,并通过第二私钥对所述背书结果进行签名,以将签名后的所述背书结果发送至所述客户端,以在客户端验证相应的第三签名信息通过后,生成所述数据提交请求,并发送至相应的排序orderer节点;
16、当接收到来自orderer节点的提交区块之后,确定所述提交区块是否满足预设验证条件;
17、若是,更新相应的区块链网络账本。
18、在本申请的一种实现方式中,当接收到来自orderer节点的提交区块之后,确定所述提交区块是否满足预设验证条件,具体包括:
19、确定所述提交区块中所述待提交数据是否满足智能合约对应的预设背书策略,以及所述待提交数据的读写集版本与预置读写集版本是否匹配;
20、在所述待提交数据满足所述智能合约对应的预设背书策略,且所述待提交数据的读写集版本与预置读写集版本匹配的情况下,确定所述提交区块满足所述预设验证条件。
21、在本申请的一种实现方式中,所述hyperledger fabric区块链网络中预先配置预置数量的证书授权中心;所述预置数量为所述背书节点的数量;各所述背书节点与所述证书授权中心一一对应。
22、在本申请的一种实现方式中,各所述背书节点的共识层采用raft协议。
23、再一方面,本申请实施例还提供了一种基于hyperledger fabric的供应链数据溯源装置,其特征在于,所述装置包括:
24、验证模块,用于响应于来自客户端的数据提交请求,验证相应的第一签名信息;其中,所述数据提交请求为背书节点响应于所述客户端的背书请求执行背书任务后,所述客户端生成;所述第一签名信息为对待提交数据及执行所述背书任务后的背书结果签名得到;
25、第一发送模块,用于当验证所述第一签名信息通过之后,将所述待提交数据发送至消息队列;
26、第二发送模块,用于当接收到来自预设消息通道的所述消息队列的消息广播后,按照预设出块策略,将与所述待提交数据对应提交区块发送至相应的所述背书节点,以当所述提交区块满足预设验证条件后,根据所述待提交数据,更新相应的区块链网络账本;所述消息广播为所述消息队列存储所述待提交数据生成。
27、再一方面,本申请实施例还提供了一种基于hyperledger fabric的供应链数据溯源装置,所述装置包括:
28、执行模块,用于响应于来自客户端的背书请求信息,执行背书任务,以对所述第二签名信息进行验证;所述背书请求信息包括待提交数据及所述客户端的第二签名信息;所述第二签名信息基于所述客户端通过第一私钥对所述待提交数据签名得到;
29、生成模块,用于当所述第二签名信息验证通过的情况下,生成背书结果,并通过第二私钥对所述背书结果进行签名,以将签名后的所述背书结果发送至所述客户端,以在客户端验证相应的第三签名信息通过后,生成所述数据提交请求,并发送至相应的排序orderer节点;
30、确定模块,用于当接收到来自orderer节点的提交区块之后,确定所述提交区块是否满足预设验证条件;
31、更新模块,用于若是,更新相应的区块链网络账本。
32、本申请通过上述技术方案,能够通过构建的一基于区块链技术和物联网技术的溯源系统,使供应链数据在系统内可实现可靠且透明地流转及记录,同时去中心化的溯源系统,能够提高区本文档来自技高网...
【技术保护点】
1.一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,所述方法应用于预先部署的Hyperledger Fabric区块链网络中至少一个排序Orderer节点;所述方法包括:
2.根据权利要求1所述的一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,当接收到来自预设消息通道的所述消息队列的消息广播后,按照预设出块策略,将与所述待提交数据对应提交区块发送至相应的所述背书节点,具体包括:
3.根据权利要求2所述的一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,所述消息队列为Kafka集群。
4.根据权利要求3所述的一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,所述方法还包括:
5.一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,所述方法应用于预先部署的Hyperledger Fabric区块链网络中至少一个背书节点;所述方法包括:
6.根据权利要求5所述的一种基于Hyperledg
7.根据权利要求5所述的一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,所述Hyperledger Fabric区块链网络中预先配置预置数量的证书授权中心;所述预置数量为所述背书节点的数量;各所述背书节点与所述证书授权中心一一对应。
8.根据权利要求5所述的一种基于Hyperledger Fabric的供应链数据溯源方法,其特征在于,各所述背书节点的共识层采用RAFT协议。
9.一种基于Hyperledger Fabric的供应链数据溯源装置,其特征在于,所述装置包括:
10.一种基于Hyperledger Fabric的供应链数据溯源装置,其特征在于,所述装置包括:
...【技术特征摘要】
1.一种基于hyperledger fabric的供应链数据溯源方法,其特征在于,所述方法应用于预先部署的hyperledger fabric区块链网络中至少一个排序orderer节点;所述方法包括:
2.根据权利要求1所述的一种基于hyperledger fabric的供应链数据溯源方法,其特征在于,当接收到来自预设消息通道的所述消息队列的消息广播后,按照预设出块策略,将与所述待提交数据对应提交区块发送至相应的所述背书节点,具体包括:
3.根据权利要求2所述的一种基于hyperledger fabric的供应链数据溯源方法,其特征在于,所述消息队列为kafka集群。
4.根据权利要求3所述的一种基于hyperledger fabric的供应链数据溯源方法,其特征在于,所述方法还包括:
5.一种基于hyperledger fabric的供应链数据溯源方法,其特征在于,所述方法应用于预先部署的hyperledger fabric区块链网络中...
【专利技术属性】
技术研发人员:王志远,朱少帅,周祥国,张舒,支茂峰,
申请(专利权)人:浪潮通用软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。