发明内容
本发明旨在至少一定程度上解决上述技术中的技术问题之一。为此,本发明的第一个目的在于提出一种基于区块链的产品溯源方法,可以提高购买者对产品的可追溯性,同时也便于提高产品生产主体对产品的可追溯性,保证产品生产主体、产品售卖主体、产品运输主体、购买者之间的数据共享,提高用户体验。
本发明的第二个目的在于提出一种基于区块链的产品溯源系统。
为达到上述目的,本发明第一方面实施例提出了一种基于区块链的产品溯源方法,包括:
获取产品生产主体在生产产品过程中的生产数据,将所述生产数据上传并存储在第一区块链;
获取产品售卖主体在售卖产品过程中的售卖数据,将所述售卖数据上传并存储在第二区块链;
获取产品运输主体在运输产品过程中的运输数据,将所述运输数据上传并存储在第三区块链;
根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链;
生成所述产品的溯源码,购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证。
根据本发明的一些实施例,所述获取产品生产主体在生产产品过程中的生产数据,并将所述生产数据上传并存储在第一区块链,包括:
获取产品在每一个生产节点的生产图像;
对所述生产图像进行预处理,对预处理后的生产图像进行特征提取,确定生产工艺行为,将所述生产工艺行为输入预先训练好的识别模型中,确定识别结果,根据所述识别结果判断对应的生产节点的生产是否合格,为每一个生产节点添加对应的标识信息,所述标识信息包括合格标识及不合格标识;
获取产品在每一个生产节点的生产者的签名信息;
将所述标识信息及所述签名信息上传并存储在第一区块链。
根据本发明的一些实施例,所述购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证,包括:
购买者扫描所述溯源码后在展示界面输入溯源任务;
根据所述溯源任务确定调用的所述溯源链中的目标区块链;
在确定所述目标区块链包括所述第一区块链及所述第二区块链时,获取所述第一区块链的第一智能合约的基本信息及寻址逻辑,确定产品在所述第一区块链上的第一地址信息,根据所述第一地址信息确定所述第一区块链上产品的第一存储数据;
所述第一区块链基于包括的第一区块节点根据私钥对所述第一存储数据进行签名运算,将签名运算后的第一存储数据发送至所述第二区块链,并基于所述第一区块节点的私钥对应的公钥在所述第一区块链及所述第二区块链上进行广播;
获取所述第二区块链的第二智能合约的基本信息及寻址逻辑,确定产品在所述第二区块链上的第二地址信息,根据所述第二地址信息确定所述第二区块链上产品的第二存储数据;
基于所述第二区块链包括的第二区块节点对签名运算后的第一存储数据进行签名认证,将签名认证后的第一存储数据及所述第二存储数据打包发送至购买者终端。
根据本发明的一些实施例,还包括:
确定产品生产主体所述第一区块链上的上链编号;
获取所述产品生产主体的基本信息,建立在第一区块链上的上链标识;
基于所述第一区块链包括的第一智能合约对所述上链编号及上链标识分别进行验证,在确定两者均验证通过时,确定产品生产主体的第一身份;根据所述第一身份确定所述产品生产主体的第一权限;
所述产品生产主体发送跨链参与请求至所述第二区块链;
基于第二区块链包括的第二智能合约,对所述第一身份进行数字加密,得到第二身份;对所述第二身份进行解密验证,生成随机数字作为验证数字;对所述第二身份及所述验证数字进行哈希运算,根据运算结果确定第二身份的第二权限;
所述产品生产主体根据所述第一权限获取所述第一区块链上的第一数据,根据所述第二权限获取所述第二区块链上的第二数据;
根据所述第一数据及所述第二数据对所述产品进行溯源分析。
根据本发明的一些实施例,所述售卖数据包括售卖产品型号、售卖价格、售卖时间、售卖员、售卖地点,售卖数量中的至少一个。
根据本发明的一些实施例,所述运输数据包括运输中转站的地址信息、运输中转人员的签名信息、运输产品的运输图像中的至少一个。
根据本发明的一些实施例,所述根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链,包括:
基于第一跨链交互模块将所述第一区块链及所述第二区块链进行连接;
基于第二跨链交互模块将所述第二区块链及所述第三区块链进行连接。
为达到上述目的,本发明第二方面实施例提出了一种基于区块链的产品溯源系统,包括:
第一获取模块,用于获取产品生产主体在生产产品过程中的生产数据,将所述生产数据上传并存储在第一区块链;
第二获取模块,用于获取产品售卖主体在售卖产品过程中的售卖数据,将所述售卖数据上传并存储在第二区块链;
第三获取模块,用于获取产品运输主体在运输产品过程中的运输数据,将所述运输数据上传并存储在第三区块链;
生成模块,用于根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链;
验证模块,用于生成所述产品的溯源码,购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
如图1所示,本发明第一方面实施例提出了一种基于区块链的产品溯源方法,包括:
获取产品生产主体在生产产品过程中的生产数据,将所述生产数据上传并存储在第一区块链;
获取产品售卖主体在售卖产品过程中的售卖数据,将所述售卖数据上传并存储在第二区块链;
获取产品运输主体在运输产品过程中的运输数据,将所述运输数据上传并存储在第三区块链;
根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链;
生成所述产品的溯源码,购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证。
上述技术方案的工作原理:获取产品生产主体在生产产品过程中的生产数据,将所述生产数据上传并存储在第一区块链;获取产品售卖主体在售卖产品过程中的售卖数据,将所述售卖数据上传并存储在第二区块链;获取产品运输主体在运输产品过程中的运输数据,将所述运输数据上传并存储在第三区块链;根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链;生成所述产品的溯源码,购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证。
上述技术方案的有益效果:便于准确确定生产数据、售卖数据及运输数据,并分别存储在第一区块链、第二区块链及第三区块链中,保证了这三种数据的准确性,避免出现人为篡改等情况,提高了数据的安全性。同时也加强了产品生产主体、产品售卖主体、产品运输主体之间的数据共享性,提高了数据利用率,进而提高了产品的可追溯性,消费者购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证,可以根据需求获取自己所需的数据,提高可追溯数据的全面性,便于用户可以清楚的了解产品的质量,消除安全隐患,提高用户体验。另外基于溯源链,也有利于产品生产主体对产品进行追溯,在产品出现问题时,可以主动进行收回,提高了收回效率。
根据本发明的一些实施例,所述获取产品生产主体在生产产品过程中的生产数据,并将所述生产数据上传并存储在第一区块链,包括:
获取产品在每一个生产节点的生产图像;
对所述生产图像进行预处理,对预处理后的生产图像进行特征提取,确定生产工艺行为,将所述生产工艺行为输入预先训练好的识别模型中,确定识别结果,根据所述识别结果判断对应的生产节点的生产是否合格,为每一个生产节点添加对应的标识信息,所述标识信息包括合格标识及不合格标识;
获取产品在每一个生产节点的生产者的签名信息;
将所述标识信息及所述签名信息上传并存储在第一区块链。
上述技术方案的工作原理:获取产品在每一个生产节点的生产图像;对所述生产图像进行预处理,对预处理后的生产图像进行特征提取,确定生产工艺行为,将所述生产工艺行为输入预先训练好的识别模型中,确定识别结果,根据所述识别结果判断对应的生产节点的生产是否合格,为每一个生产节点添加对应的标识信息,所述标识信息包括合格标识及不合格标识;即确定每一个生产节点是否合格的成产,便于最终确定产品是否合格。获取产品在每一个生产节点的生产者的签名信息;将所述标识信息及所述签名信息上传并存储在第一区块链。
上述技术方案的有益效果:准确的可追溯至产品在生产过程中每一个生产步骤对应的工艺是否合格,在出现问题时,基于生产者的签名信息可进行有效的追溯,提高了产品在生产过程中的可追溯性。
根据本发明的一些实施例,所述购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证,包括:
购买者扫描所述溯源码后在展示界面输入溯源任务;
根据所述溯源任务确定调用的所述溯源链中的目标区块链;
在确定所述目标区块链包括所述第一区块链及所述第二区块链时,获取所述第一区块链的第一智能合约的基本信息及寻址逻辑,确定产品在所述第一区块链上的第一地址信息,根据所述第一地址信息确定所述第一区块链上产品的第一存储数据;
所述第一区块链基于包括的第一区块节点根据私钥对所述第一存储数据进行签名运算,将签名运算后的第一存储数据发送至所述第二区块链,并基于所述第一区块节点的私钥对应的公钥在所述第一区块链及所述第二区块链上进行广播;
获取所述第二区块链的第二智能合约的基本信息及寻址逻辑,确定产品在所述第二区块链上的第二地址信息,根据所述第二地址信息确定所述第二区块链上产品的第二存储数据;
基于所述第二区块链包括的第二区块节点对签名运算后的第一存储数据进行签名认证,将签名认证后的第一存储数据及所述第二存储数据打包发送至购买者终端。
上述技术方案的工作原理:购买者扫描所述溯源码后在展示界面输入溯源任务;根据所述溯源任务确定调用的所述溯源链中的目标区块链;溯源任务可以是购买者所需生产数据及售卖数据。进而确定目标区块链包括所述第一区块链及所述第二区块链时,获取所述第一区块链的第一智能合约的基本信息及寻址逻辑,确定产品在所述第一区块链上的第一地址信息,根据所述第一地址信息确定所述第一区块链上产品的第一存储数据;所述第一区块链基于包括的第一区块节点根据私钥对所述第一存储数据进行签名运算,将签名运算后的第一存储数据发送至所述第二区块链,并基于所述第一区块节点的私钥对应的公钥在所述第一区块链及所述第二区块链上进行广播;便于第二区块链对第一存储数据进行相关的验证,保证第一存储数据的安全性。获取所述第二区块链的第二智能合约的基本信息及寻址逻辑,确定产品在所述第二区块链上的第二地址信息,根据所述第二地址信息确定所述第二区块链上产品的第二存储数据;基于所述第二区块链包括的第二区块节点对签名运算后的第一存储数据进行签名认证,将签名认证后的第一存储数据及所述第二存储数据打包发送至购买者终端。
上述技术方案的有益效果:将第一存储数据转移至第二区块链,将第一存储数据及第二存储数据打包发送,便于将第一存储数据及第二存储数据进行相应的排序,便于购买者进行浏览,同时进行打包发送对第一存储数据进行相应的验证,保证第一存储数据的准确性,避免出现第一存储数据与第二存储数据不对应的情形,同时提高了数据传输的效率,节省了购买者的等待时间,提高验证效率,提高了购买者的体验。
根据本发明的一些实施例,还包括:
确定产品生产主体所述第一区块链上的上链编号;
获取所述产品生产主体的基本信息,建立在第一区块链上的上链标识;
基于所述第一区块链包括的第一智能合约对所述上链编号及上链标识分别进行验证,在确定两者均验证通过时,确定产品生产主体的第一身份;根据所述第一身份确定所述产品生产主体的第一权限;
所述产品生产主体发送跨链参与请求至所述第二区块链;
基于第二区块链包括的第二智能合约,对所述第一身份进行数字加密,得到第二身份;对所述第二身份进行解密验证,生成随机数字作为验证数字;对所述第二身份及所述验证数字进行哈希运算,根据运算结果确定第二身份的第二权限;
所述产品生产主体根据所述第一权限获取所述第一区块链上的第一数据,根据所述第二权限获取所述第二区块链上的第二数据;
根据所述第一数据及所述第二数据对所述产品进行溯源分析。
上述技术方案的工作原理:确定产品生产主体所述第一区块链上的上链编号,在众多产品生产主体中根据申请通过时间,为每一个产品生产主体会确定一个编号,即上链编号。获取所述产品生产主体的基本信息,建立在第一区块链上的上链标识;基于所述第一区块链包括的第一智能合约对所述上链编号及上链标识分别进行验证,在确定两者均验证通过时,确定产品生产主体的第一身份;根据所述第一身份确定所述产品生产主体的第一权限;所述产品生产主体发送跨链参与请求至所述第二区块链;基于第二区块链包括的第二智能合约,对所述第一身份进行数字加密,得到第二身份;对所述第二身份进行解密验证,生成随机数字作为验证数字;对所述第二身份及所述验证数字进行哈希运算,根据运算结果确定第二身份的第二权限;所述产品生产主体根据所述第一权限获取所述第一区块链上的第一数据,根据所述第二权限获取所述第二区块链上的第二数据;根据所述第一数据及所述第二数据对所述产品进行溯源分析。
上述技术方案的有益效果:实现对产品生产主体在第一区块链及第二区块链上身份的有效验证,基于第一权限获取第一区块链上的第一数据,基于第二权限获取所述第二区块链上的第二数据,基于第一数据及第二数据实现产品生产主体对产品的有效追溯,包括生产及售卖过程。在一实施例中还可获取第三区块链的第三数据,对产品的运输过程进行有效的追溯。在跨链获取数据时,基于身份验证,确定相关权限,保证了跨链数据调用的有序性及安全性。
根据本发明的一些实施例,所述售卖数据包括售卖产品型号、售卖价格、售卖时间、售卖员、售卖地点,售卖数量中的至少一个。
根据本发明的一些实施例,所述运输数据包括运输中转站的地址信息、运输中转人员的签名信息、运输产品的运输图像中的至少一个。
根据本发明的一些实施例,所述根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链,包括:
基于第一跨链交互模块将所述第一区块链及所述第二区块链进行连接;
基于第二跨链交互模块将所述第二区块链及所述第三区块链进行连接。
上述技术方案的有益效果:基于第一跨链交互模块及第二跨链交互模块将第一区块链、所述第二区块链及所述第三区块链生成溯源链;提高了对产品的可追溯性,另外加强了产品生产主体、产品售卖主体及产品运输主体之间的数据共享。
如图2所示,本发明第二方面实施例提出了一种基于区块链的产品溯源系统,包括:
第一获取模块,用于获取产品生产主体在生产产品过程中的生产数据,将所述生产数据上传并存储在第一区块链;
第二获取模块,用于获取产品售卖主体在售卖产品过程中的售卖数据,将所述售卖数据上传并存储在第二区块链;
第三获取模块,用于获取产品运输主体在运输产品过程中的运输数据,将所述运输数据上传并存储在第三区块链;
生成模块,用于根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链;
验证模块,用于生成所述产品的溯源码,购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证。
上述技术方案的工作原理:第一获取模块获取产品生产主体在生产产品过程中的生产数据,将所述生产数据上传并存储在第一区块链;第二获取模块获取产品售卖主体在售卖产品过程中的售卖数据,将所述售卖数据上传并存储在第二区块链;第三获取模块获取产品运输主体在运输产品过程中的运输数据,将所述运输数据上传并存储在第三区块链;生成模块根据所述第一区块链、所述第二区块链及所述第三区块链生成溯源链;验证模块生成所述产品的溯源码,购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证。
上述技术方案的有益效果:便于准确确定生产数据、售卖数据及运输数据,并分别存储在第一区块链、第二区块链及第三区块链中,保证了这三种数据的准确性,避免出现人为篡改等情况,提高了数据的安全性。同时也加强了产品生产主体、产品售卖主体、产品运输主体之间的数据共享性,提高了数据利用率,进而提高了产品的可追溯性,消费者购买者扫描所述溯源码基于所述溯源链获取所述产品的防伪溯源信息进行验证,可以根据需求获取自己所需的数据,提高可追溯数据的全面性,便于用户可以清楚的了解产品的质量,消除安全隐患,提高用户体验。另外基于溯源链,也有利于产品生产主体对产品进行追溯,在产品出现问题时,可以主动进行收回,提高了收回效率。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。