一种产品溯源方法、装置及其存储介质与流程

文档序号:17148459发布日期:2019-03-19 23:12阅读:161来源:国知局
一种产品溯源方法、装置及其存储介质与流程

本发明涉及产品溯源技术领域,具体而言,涉及一种产品溯源方法、装置及其存储介质。



背景技术:

如今有不少互联网公司借助区块链技术的特性,开始施行区块链溯源方案,大致结构和传统方案相似,只是将传统方案中的存储介质——中心化数据库,更改为区块链,这就保证了数据的不可篡改性,同时其分布式结构保证了服务的稳定运行。

但对于区块链技术来讲,现有区块链技术大多是为数字代币而生,如果想使用区块链技术做溯源,则需要重写区块链的上层功能,技术门槛高;并且区块链技术本身比较复杂,同时需要多节点配合,才能保证可靠的区块链网络,在一定程度上增加了运维成本。



技术实现要素:

有鉴于此,本发明实施例的目的在于提供一种产品溯源方法、装置及其存储介质,以解决上述直接基于区块链技术进行溯源存在的技术复杂、运维成本高的问题。

第一方面,本发明实施例提供了一种产品溯源方法,所述产品溯源方法包括:基于目标产品的加工流程确定原材料以及所述原材料的加工节点;对应每种原材料在区块链中分别建立一条智能合约,基于每种原材料的每个加工节点分别生成加工记录;将每条加工记录录入对应的智能合约中,将所有智能合约的组合作为溯源合约。

上述实施例利用区块链网络上层提供的智能合约开发溯源合约,在溯源合约上进行产品溯源数据的存储和查询,在使存储数据具备区块链的去中心化存储和不可篡改的特性的同时,保证了在溯源解决方案中线上数据的可靠性和服务稳定性,并降低了基于区块链技术的溯源技术门槛和运维成本。

综合第一方面,在所述将每条加工记录录入对应的智能合约中,将所有智能合约的组合作为溯源合约之后,所述方法还包括:响应去中心化应用程序的查询指令,通过所述溯源合约查询所述目标产品的加工流程,并返回查询结果。

上述实施例通过去中心化应用程序对溯源合约进行查询,使用户可以在各种处理设备上方便、快捷地查询目标产品的加工流程,简化了溯源查询的步骤和操作复杂度。

综合第一方面,所述通过所述溯源合约查询所述目标产品的加工流程,包括:确定所述查询指令中指定原材料对应的智能合约,通过所述溯源合约查询所述指定原材料在对应智能合约中的加工流程;或确定所述查询指令表示查询所述目标产品的整个加工流程,通过所述溯源合约逐项查询每种原材料在对应智能合约中的加工流程。

上述实施例中用户可以对每条智能合约对应的单一原材料的加工流程进行单独查询,也可以对溯源合约中所有原材料的全部加工流程进行整体查询,提高了查询灵活度,在用户仅仅需要单独查询单一原材料的加工流程时避免对所有原材料的加工流程进行查询,节省了运算资源,提高了溯源效率。

综合第一方面,在所述将每条加工记录录入对应的智能合约中之前,所述方法还包括:对所述加工记录进行筛选,除去不需要录入智能合约中的加工记录。

上述实施例对加工记录进行筛选,仅仅录入需要的加工记录,减少对存储空间的占用,提高录入效率。

综合第一方面,在将每条加工记录录入对应的智能合约中之前,所述方法还包括:分别给每个需要录入所述加工记录的用户分配地址。所述将每条加工记录录入对应的智能合约中,包括:在每条加工记录为对应地址的用户录入时,将每条加工记录录入对应的智能合约中。

上述实施例对录入加工记录的用户分配地址并在录入加工记录时验证该地址,避免出现其他用户错误录入加工记录以及无法追溯加工记录录入用户的情况,提高了溯源数据的可靠性和安全性。

第二方面,本发明实施例提供了一种产品溯源装置,所述产品溯源装置包括:原材料确定模块,用于基于目标产品的加工流程确定原材料以及所述原材料的加工节点;智能合约建立模块,用于对应每种原材料在区块链中分别建立一条智能合约,基于每种原材料的每个加工节点分别生成加工记录;溯源合约建立模块,用于将每条加工记录录入对应的智能合约中,将所有智能合约的组合作为溯源合约。

综合第二方面,所述装置还包括:查询模块,用于响应去中心化应用程序的查询指令,通过所述溯源合约查询所述目标产品的加工流程,并返回查询结果。

综合第二方面,所述装置还包括验证模块,所述验证模块包括:地址分配单元,用于分别给每个需要录入所述加工记录的用户分配地址;验证录入单元,用于在每条加工记录为对应地址的用户录入时,将每条加工记录录入对应的智能合约中。

第三方面,本发明实施例还提供了一种计算机可读取存储介质,所述计算机可读取存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行上述任一方面所述方法中的步骤。

本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为现有技术中一种基于中心化数据库的产品溯源技术的示意图;

图2为本发明第一实施例提供的一种产品溯源方法的流程示意图;

图3为本发明第一实施例提供的一种产品溯源数据的交互示意图;

图4为本发明第二实施例提供的一种产品溯源装置100的模块示意图。

图标:100-产品溯源装置;110-原材料确定模块;120-智能合约建立模块;130-溯源合约建立模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

第一实施例

经本申请人研究发现,对产品进行溯源一直是个老生常谈的问题,产品可溯源是对消费者的利益保障,就目前而言,使用的最广的方式是建立中心化的数据库,存储产品原材料、加工步骤、运输过程等一系列信息,但中心化的数据库存在数据可篡改的问题。如今,爆火区块链的区块链技术提供了一种透明性、不可篡改性的运行环境,各大互联网公司也提出了利用区块链进行溯源的解决方案;但区块链底层技术比较复杂,而且需要多个节点配合,以构建良好的网络拓扑环境才能保障区块链能够稳定的运行。请参考图1,图1为现有技术中一种基于中心化数据库的产品溯源技术的示意图,该传统方案中,使用中心化的数据库,存储产品原材料、加工步骤、运输过程等一系列信息,然后提供查询接口供消费者查询。对于传统方案,中心化的数据库如果发生宕机,那么将影响整个溯源服务,数据不能入库,同时消费者也不能够进行查询;除此之外,最大的问题在于中心化的数据不可靠,数据本身可以被篡改并且不留下任何记录。但对于区块链技术来讲,区块链技术本身比较复杂,使用区块链技术进行产品溯源时需要重写区块链上层功能,技术难度较高,同时需要多节点配合,运营成本较高。

为了解决上述问题,本发明第一实施例提供了一种产品溯源方法,该产品溯源方法的执行主体为计算机、智能终端、云处理器、服务器或其他具备逻辑运算功能的处理设备。

请参考图2,图2为本发明第一实施例提供的一种产品溯源方法的流程示意图,该产品溯源方法的具体步骤可以如下:

步骤s20:溯源服务器基于目标产品的加工流程确定原材料以及原材料的加工节点。

本实施例中的溯源服务器可以是区块链网络中的一个节点服务器,该溯源服务器应当具有查询功能,能够从区块链中查询获取数据。

本实施例中的目标产品可以是衣物、手工饰品、食品、电子产品等实体产品,还可以是应用程序、策划方案等非实体产品。

在目标产品为实体产品时,加工节点可以是每一道加工步骤对应的加工人或加工地点;在目标产品为非实体产品时,加工节点可以是每个加工步骤对应的加工人或加工设备的网络地址。

步骤s40:溯源服务器对应每种原材料在区块链中分别建立一条智能合约,基于每种原材料的每个加工节点分别生成加工记录。

区块链(英语:blockchain或blockchain)是一种分布式数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次网络交易的信息,用于验证其信息的有效性和生成下一个区块。用通俗的概念讲,区块链就是一本人人可记的账。它在技术原理上有以下三个关键点:第一,去中心化,一个践行区块链技术的网络中,其所涵盖的每台计算机均可读取、添加记录,从账本这个角度讲,他们就是共同记账的人,而没有权威人士从中指导、修正。第二,非对称加密,在记账过程中,每个人都遵从统一的加密规则,但读取时,却必须使用自己独有的解密方式,仅限于自己能解密的那一块,也就是与自己相关的那一部分。第三,时间印记,也就是时间戳(英语:timestamp),是指字符串或编码信息用于辨识记录下来的时间日期,区块链上的每一个区块,是按照其所生成的时间按先后顺序排列的,并经过集体认证,确认成立,而且,之前的记录是无法被修改的。因此本实施例可以选用以太坊区块链,通过基于区块链技术对产品的加工记录进行存储,使产品的溯源更加准确、可靠,同时增强了加工记录的保密性和安全性。应当理解的是,在其他可选的实施例中,区块链网络还可以采用eos或其他区块链。

智能合约(英语:smartcontract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,这些交易可追踪且不可逆转。本实施例中的智能合约是一套软件程序,是基于区块链的,并且会在区块链检测到某些特定数据条件下时会触发。一方面,区块链的结构特点决定了智能合约的内容(代码)可追踪且不可篡改,另一方面,区块链上能够加载的丰富资源和价值,使得各种合约的自动执行成为可能。同时智能合约的部署是基于区块链的上层,用户可以避开对区块链复杂底层的设置,采用对应的智能合约平台直接对智能合约进行简单、快捷地设置,使用户能够通过智能合约进行分布式数据存储和读取。因此本实施例基于智能合约进行加工记录的录入和查询,解决上述直接基于区块链技术进行溯源存在的技术复杂、运维成本高的问题。

步骤s60:溯源服务器将每条加工记录录入对应的智能合约中,将所有智能合约的组合作为溯源合约。

应当理解的是,在目标产品的原材料只有一种时,该目标产品的智能合约只有一条;在目标产品的原材料有多种,每种原材料要经过一条加工线完成加工时,则智能合约的数量与其加工线的数量相同。

本实施例提供的产品溯源方法利用区块链网络上层提供的智能合约开发溯源合约,在溯源合约上进行产品溯源数据的存储和查询,在使存储数据具备区块链的去中心化存储和不可篡改的特性的同时,保证了在溯源解决方案中线上数据的可靠性和服务稳定性,并降低了基于区块链技术的溯源技术门槛和运维成本。

针对步骤s20,以苹果汁的生产流程为例,基于苹果汁的加工流程确定其原材料包括苹果、糖和水,针对苹果的加工流程确定其加工节点包括采摘、筛选、粗加工、精加工和销售,按同样步骤对糖和水的加工节点进行确定。

针对步骤s40,该步骤基于苹果汁的苹果、糖和水三种原材料的加工流程分别建立一条智能合约,并根据每个加工节点分别生成加工记录,如上所述,原材料苹果的加工记录可以为:1.加工地点名称-果园a,操作-采摘,时间-2018/10/10;2.加工地点名称-仓库a,操作-筛选,时间-2018/10/11;3.加工地点名称-工厂a,操作-粗加工,时间-2018/10/12;4.加工地点名称-工厂b,操作-精加工,时间-2018/10/13;5.加工地点名称-超市a,操作-出售,时间-2018/10/14。

在本实施例中,生产人员通过web端应用或分布式应用程序将各加工节点的加工记录录入到对应的智能合约中。请参考图3,图3为本发明第一实施例提供的一种智能合约与加工流程的关系示意图。

作为一种可选的实施方式,在步骤s40之前,还可以对加工记录进行筛选,除去不需要录入智能合约中的加工记录,以节省存储空间,提高溯源效率。

作为一种可选的实施方式,为了保证加工记录添加的安全性和可信度,本实施例还可以包括步骤:分别给每个需要录入所述加工记录的用户分配地址。则“将每条加工记录录入对应的智能合约中”步骤包括:在每条加工记录为对应地址的用户录入时,将每条加工记录录入对应的智能合约中。

具体地,在本实施例中上述加工节点的地址可以为:1.采摘(果园[0x01]),2.筛选(仓库a[0x02]),3.粗加工(工厂a[0x03]),4.精加工(工厂b[0x04]),5.出售(超市a[0x05])。

作为一种可选的实施方式,上述加工节点添加数据至智能合约的具体操作代码可以如下:

作为一种可选的实施方式,本实施例在步骤s60之后,还可以包括步骤s80:溯源服务器响应去中心化应用程序的查询指令,通过所述溯源合约查询所述目标产品的加工流程,并返回查询结果。

在本实施例中,请参考图3,图3为本发明第一实施例提供的一种产品溯源数据的交互示意图。生产人员录入数据和消费者进行产品溯源均可通过web服务器进行,生产线的生产人员调用记录接口通过web服务器在区块链的智能合约中写入数据,消费者调用查询借口通过web服务器在区块链的智能合约中查询数据。

作为一种可选地实施方式,生产人员和消费者均可采用对应的去中心化应用程序进行上述数据写入或数据查询操作。

应当理解的是,消费者在进行产品溯源的数据查询操作时,可能只是需要对该产品的某一原材料对应的加工流程进行溯源,此时消费者发出的查询指令对指定原材料对应的智能合约进行查询,则:溯源服务器确定查询指令中指定原材料对应的智能合约,通过溯源合约查询指定原材料在对应智能合约中的加工流程。

另一方面,消费者在进行产品溯源的数据查询操作时,可能需要对目标产品的所有原材料对应的加工流程进行查询,则:溯源服务器确定查询指令表示查询目标产品的整个加工流程,通过所述溯源合约逐项查询每种原材料在对应智能合约中的加工流程。

上述实施例中用户可以对每条智能合约对应的单一原材料的加工流程进行单独查询,也可以对溯源合约中所有原材料的全部加工流程进行整体查询,提高了查询灵活度,在用户仅仅需要单独查询单一原材料的加工流程时避免对所有原材料的加工流程进行查询,节省了运算资源,提高了溯源效率。

第二实施例

为了配合本发明第一实施例提供的产品溯源方法,本发明第二实施例还提供了一种产品溯源装置100。

请参考图4,图4为本发明第二实施例提供的一种产品溯源装置100的模块示意图。

产品溯源装置100包括原材料确定模块110、智能合约建立模块120和溯源合约建立模块130。

原材料确定模块110,用于基于目标产品的加工流程确定原材料以及所述原材料的加工节点。

智能合约建立模块120,用于对应每种原材料在区块链中分别建立一条智能合约,基于每种原材料的每个加工节点分别生成加工记录。

溯源合约建立模块130,用于将每条加工记录录入对应的智能合约中,将所有智能合约的组合作为溯源合约。

作为一种可选的实施方式,本实施例提供的产品溯源装置100还可以包括查询模块,该查询模块用于响应去中心化应用程序的查询指令,通过所述溯源合约查询所述目标产品的加工流程,并返回查询结果。

作为一种可选的实施方式,本实施例中的产品溯源装置100还可以包括验证模块,该验证模块包括地址分配单元和验证录入单元。

地址分配单元,用于分别给每个需要录入所述加工记录的用户分配地址。

验证录入单元,用于在每条加工记录为对应地址的用户录入时,将每条加工记录录入对应的智能合约中。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。

综上所述,本发明实施例提供了一种产品溯源方法、装置及其存储介质,该产品溯源方法利用区块链网络上层提供的智能合约开发溯源合约,在溯源合约上进行产品溯源数据的存储和查询,在使存储数据具备区块链的去中心化存储和不可篡改的特性的同时,保证了在溯源解决方案中线上数据的可靠性和服务稳定性,并降低了基于区块链技术的溯源技术门槛和运维成本。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1