畜牧产品溯源信息记录方法、装置、设备和存储介质
技术领域
本发明实施例涉及区块链技术领域,尤其涉及一种畜牧产品溯源信息记录方法、装置、设备和存储介质。
背景技术
食品安全问题是当今社会一个非常严重的问题,在生产过程中,经常会出现掺假的事情,大型畜牧产品更是如此,各种冒充不绝于耳。大型畜牧产品的全生命周期的溯源与监管对于食品安全有着极其重要的作用。
目前,对于大型畜牧产品信息的记录仅局限于养殖环节中,养殖场的工作人员通过使用基于射频识别(Radio Frequency Identification,RFID)技术的耳标进行大型畜牧动物的养殖管理。其中,RFID作为大型畜牧动物的身份证明,只有在识读设备读取RFID中的动物标识时,养殖场的工作人员才能能够完成对该标识进行相关信息的记录。
然而,大型畜牧产品由大型畜牧动物的养殖到最终的销售及反馈的整个过程中会经历数个且复杂的环节,而现有技术信息追溯比较粗放,无法对养殖环节以外的其他环节进行跟踪和记录,且记录的信息不够完整。此外现有技术使用中心数据库进行养殖环节数据的存储,追溯信息的可信性较低。因此现有技术无法实现对大型畜牧产品信息的有效追溯。
发明内容
本发明实施例提供了一种畜牧产品溯源信息记录方法、装置、设备和存储介质,能够将畜牧产品生产过程中的各个环节对应的畜牧产品信息进行记录,提高信息的可追溯性和可信性。
第一方面,本发明实施例提供了一种畜牧产品溯源信息记录方法,由区块链系统中的节点执行,所述方法包括:
制定记录畜牧产品溯源信息的智能合约;其中,所述智能合约规定了畜牧产品溯源信息的记录规则;
依据所述智能合约生成包含待记录畜牧产品信息的事务记录请求;
向区块链系统中的区块生成节点发送所述事务记录请求,使所述区块生成节点依据所述智能合约将所述事务记录请求关联的畜牧产品信息写入区块链中。
第二方面,本发明实施例提供了一种畜牧产品溯源信息记录装置,配置于区块链系统中的节点中,所述装置包括:
智能合约制定模块,用于制定记录畜牧产品溯源信息的智能合约;其中,所述智能合约规定了畜牧产品溯源信息的记录规则;
记录请求生成模块,用于依据所述智能合约生成包含待记录畜牧产品信息的事务记录请求;
信息记录模块,用于向区块链系统中的区块生成节点发送所述事务记录请求,使所述区块生成节点依据所述智能合约将所述事务记录请求关联的畜牧产品信息写入区块链中。
第三方面,本发明实施例提供了一种设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所述的畜牧产品溯源信息记录方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明任意实施例所述的畜牧产品溯源信息记录方法。
本发明实施例通过制定包含记录规则的智能合约,依据智能合约生成包含待记录畜牧产品信息的事务记录请求,将该事务记录请求发送至区块链系统中的区块生成节点,以使区块生成节点依据制定的智能合约将事务记录请求关联的畜牧产品信息写入区块链中。本发明能够将畜牧产品生产过程中的各个环节对应的畜牧产品信息记录于区块链中,实现大型畜牧产品的养殖、屠宰、分割、流通和消费等生命周期信息以及相关供应链信息的追溯,提高了畜牧产品信息的可追溯性和可信性。
附图说明
图1为本发明实施例一提供的一种畜牧产品溯源信息记录方法的流程图;
图2为本发明实施例二提供的一种畜牧产品溯源信息记录方法的流程图;
图3为本发明实施例三提供的查询畜牧产品溯源信息的流程图;
图4为本发明实施例三提供的记录和查询畜牧产品溯源信息的示例图;
图5为本发明实施例四提供的一种畜牧产品溯源信息记录装置的结构示意图;
图6为本发明实施例五提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明实施例,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明实施例相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种畜牧产品溯源信息记录方法的流程图,本实施例可适用于记录畜牧产品生产过程中的各个环节对应的畜牧产品信息的情况,该方法可由一种畜牧产品溯源信息记录装置来执行。该方法具体包括如下步骤:
步骤110、制定记录畜牧产品溯源信息的智能合约。
在本发明具体实施例中,畜牧产品是指可以经过牧场养殖、检疫、屠宰、分割、运输以及出售等生产环节形成的可食用性产品。相应的,为了确保畜牧产品的食品安全性,对于畜牧产品的各个生产环节的监控、信息的有效记录和信息的有效追溯尤为重要。
本实施例采用区块链对畜牧产品的各个生产环节的相关信息进行记录,所适用的区块链可以是公有链或者联盟链。由于区块链技术采用数据区块打破了互联网对中心服务器的依赖,进而区块链中记录的数据或事务的准确度和公信力均较高。本实施例为了将畜牧产品的溯源信息有效的记录于区块链中,采用智能合约对区块链系统中的节点以及待记录的信息进行限定。智能合约是指在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易,且执行过的交易可追踪且不可逆转。进而确保畜牧产品的各个生产环节对应的溯源信息进行有效的记录。
本实施例可以采用联盟链的形式对畜牧产品的溯源信息进行记录,相应的,联盟链中只包含畜牧产品供应链相关环节对应的特定群体的成员和有限的第三方,例如可以包括养殖场、畜牧动物检疫部门、屠宰场、分割中心、物流公司、零售商以及第三方的溯源基础平台等。联盟链内部预先指定多个预选节点,例如21个预选节点,作为备选区块生成节点,这些备选区块生成节点轮流作为当前的区块生成节点,以对区块链内部的事务进行处理,且每个新区块的生成由所有的备选区块生成节点共同决定。其中,智能合约的生成同样由这些备选区块生成节点共同参与制定,并将智能合约上传至区块链中,以对区块链中的各个节点和待记录的溯源信息进行约束。
本实施例也可以采用公有链的形式对畜牧产品的溯源信息进行记录,相应的,公有链可以采用工作量证明机制(Proof of Work,POW)、股权证明机制(Proof of Stake,POS)以及授权股权证明机制(Delegated Proof of Stake,DPOS)等共识机制进行智能合约的制定和区块生成节点的确定。鉴于各类共识机制在区块链中的网络安全性、延迟性和数据吞吐量等方面,本实施例优选采用DPOS共识机制。而商用分布式区块链操作系统(EOS)即基于DPOS共识机制和并行链的第三代区块链技术,其解决了网络安全性、延迟性和数据吞吐量等方面的问题。进而,本实施例的区块链中的节点可以根据各节点持有的股权权益、各节点的硬件能力和稳定性以及节点是否试图利用手中的权力作恶等证明因素,对节点进行投票,得票数量最多的若干个节点,例如得票数排行前101个节点,可以作为可信节点来制定智能合约或创建区块。
优选的,智能合约规定了畜牧产品溯源信息的记录规则;其中,记录规则至少包括有效畜牧产品信息类型、各环节对应的畜牧产品溯源信息记录时间以及存储格式规则。
在本发明具体实施例中,智能合约可以从至少三个方面对溯源信息的记录进行约束。
首先,从溯源信息角度出发,行业内部可以对畜牧产品各个生产环节所产生的畜牧信息进行分析,从中确定对畜牧产品质量有影响的信息作为可记录的有效畜牧产品信息类型,例如养殖环节中畜牧动物生长各个阶段的体型信息和健康状况信息,而其余信息可作为无效信息无需记录,例如养殖环节中畜牧动物平均每天的休息时间。
其次,从溯源信息记录时间触发,行业内部可以对畜牧产品各个生产环节的具体时间节点进行限定,例如出生三个月大的畜牧动物需要接种疫苗,从而确定各环节对应的畜牧产品溯源信息记录时间;或者,可以建立模型对各个环节对应的时间节点或计算方式进行确定,从而可以依据前序环节已记录的时间信息,来确定当前需要记录环节对应的畜牧产品溯源信息记录时间,进而为各节点下发任务,进行畜牧产品溯源信息的采集和记录。示例性的,假设由地点A运往地点B的物流运输时间为3天,则可以根据前序记录的运输开始时间,当已过3天且未记录相关信息时,则向相关节点下发信息采集任务,供当前的区块链生成节点进行信息的记录。
最终,从溯源信息存储格式出发,基于计算机、设备或终端等存储介质,确定各类信息的可存储格式,例如可存储的数据类型和长度。
具体的,智能合约在制定时,本实施例可以依据畜牧产品的种类确定该类畜牧产品关联的有效畜牧产品信息类型;依据畜牧产品的种类和畜牧产品生产环节,确定各环节对应的畜牧产品溯源信息记录时间;依据有效畜牧产品信息、各环节对应的畜牧产品溯源信息记录时间以及有效畜牧产品信息与畜牧产品生产环节之间的关联关系,制定约束记录该类畜牧产品溯源信息的智能合约。
示例性的,制定的智能合约为记录养殖环节中畜牧动物生长各个阶段的体型信息和健康状况信息;溯源信息记录时间为自畜牧动物入场时直至畜牧动物出场屠宰前的养殖环节中,每三个月对上述信息进行一次记录;体型信息的存储格式为浮点数类型,健康状况信息为字符串类型。
步骤120、依据智能合约生成包含待记录畜牧产品信息的事务记录请求。
在本发明具体实施例中,区块链中的各个节点受到智能合约的约束,可以在节点获得待记录信息时,或者依据智能合约达到待记录信息的记录时间节点时,依据获取的待记录畜牧产品信息,以及智能合约中规定的有效畜牧产品信息类型和存储格式规则,生成包含待记录畜牧产品信息的事务记录请求。
具体的,依据智能合约规定的溯源信息记录时间和/或用户发送待记录畜牧产品信息的时间,确定目标畜牧产品信息的溯源信息记录时间。若当前时间到达目标畜牧产品的溯源信息记录时间,本实施例依据一物一码原则,例如在养殖环节,依据畜牧动物耳朵上固定的射频标签即RFID耳标,或者在其他生产环节中,依据与畜牧产品关联的二维码和条形码等量子云码,获取用户依据畜牧产品与射频标签或量子云码之间的关联关系,通过射频标签或量子云码提取的待记录畜牧产品信息。依据智能合约对待记录畜牧产品信息进行筛选,确定待记录畜牧产品信息中的有效畜牧产品信息,并对有效畜牧产品信息进行格式规范处理;生成包含格式规范处理后的有效畜牧产品信息的事务记录请求。
优选的,事务记录请求至少包括畜牧产品标识、畜牧产品当前所处的生产环节、畜牧产品基本信息、当前环境信息、运输信息、销售信息以及消费者反馈信息。
在本发明具体实施例中,事务记录请求可以包含畜牧产品生产环节相关联的一切有效信息。例如:畜牧动物生长各个阶段的信息、养殖场通过各类传感器(温度,湿度,PM2.5,负氧离子)获得的养殖地的相关环境信息、养殖场所有的原料和药品采购信息以及使用登记信息、养殖场出售登记信息、检疫部门核发检疫证明信息等。上述信息可事先由用户采集并存储于畜牧动物的RFID耳标中,构建畜牧动物单体或批次与RFID耳标的关联关系。此外,事务记录请求还可以包含:屠宰入场登记信息、屠宰确认信息、白条肉或精分肉分割信息、运输登记信息、到货登记信息、销售登记信息、消费者扫描云码确认信息以及消费者使用积分进行相应的礼品兑换信息等。上述信息可事先由用户采集并存储于量子云码中,并构建畜牧产品与量子云码的关联关系。
示例性的,节点获取用户依据畜牧动物与射频标签之间的关联关系,通过射频标签提取的待记录畜牧产品信息可以为其检疫结果信息,该用户可以为养殖场或者检疫部门。进而依据智能合约对获取的待记录畜牧产品信息进行筛选和格式规范处理,以将格式规范处理后的有效的畜牧产品信息生成事务记录请求。
步骤130、向区块链系统中的区块生成节点发送事务记录请求,使区块生成节点依据智能合约将事务记录请求关联的畜牧产品信息写入区块链中。
在本发明具体实施例中,当前获取待记录畜牧产品信息并生成事务记录请求的节点可以为区块链中的任意节点,且该节点不一定为当前的区块生成节点,因此在该节点不为当前的区块生成节点时,将事务记录请求发送给区块链系统中的区块生成节点。相应的,区块生成节点依据事务记录请求生成包含该事务记录请求关联的有效畜牧产品信息的新区块,并广播至区块链系统中,至此区块链中的其余节点依据各区块中存储的畜牧产品信息之间的依赖关系,对该新区块进行校验或投票,从而区块生成节点依据校验或投票结果将该新区块连接至区块链尾部,实现对畜牧产品信息的记录。
具体的,对于联盟链中畜牧信息的写入,联盟链内部预先指定的多个预选节点共同决定是否将新区块连接至区块链尾部,即是否记录该畜牧产品信息。对于基于EOS的区块链系统,公有链内部基于公众投票出的多个可信度强的节点同决定是否将新区块连接至区块链尾部。
优选的,区块链系统中的节点为溯源记录应用节点或溯源基础平台节点。
本发明实施例的方案应用于区块链系统中的节点,该节点可以为溯源记录应用节点或溯源基础平台节点。其中,源记录应用节点中配置有相应的溯源信息记录客户端和区块链应用客户端,源记录应用节点可以直接获取待记录畜牧产品信息并生成事务记录请求发送给区块链生成节点;溯源基础平台节点可以作为溯源记录应用节点的第三方后台处理平台,可以通过溯源记录应用节点获取待记录畜牧产品信息,并代替溯源记录应用节点生成事务记录请求并发送给区块链生成节点。
本实施例的技术方案,通过制定包含记录规则的智能合约,依据智能合约生成包含待记录畜牧产品信息的事务记录请求,将该事务记录请求发送至区块链系统中的区块生成节点,以使区块生成节点依据制定的智能合约将事务记录请求关联的畜牧产品信息写入区块链中。本发明能够将畜牧产品生产过程中的各个环节对应的畜牧产品信息记录于区块链中,实现大型畜牧产品的养殖、屠宰、分割、流通和消费等生命周期信息以及相关供应链信息的追溯,提高了畜牧产品信息的可追溯性和可信性。
实施例二
本实施例在上述实施例一的基础上,提供了畜牧产品溯源信息记录方法的一个优选实施方式,能够制定详尽的智能合约,为畜牧产品信息的记录提供依据。图2为本发明实施例二提供的一种畜牧产品溯源信息记录方法的流程图,如图2所示,该方法包括以下具体步骤:
步骤210、依据畜牧产品的种类确定该类畜牧产品关联的有效畜牧产品信息类型。
在本发明具体实施例中,可以凭借行业内部人为的从业经验,对畜牧产品种类以及其在各个生产环节所产生的畜牧信息进行分析,或者在各节点中通过构建相关模型对尽可能多的畜牧产品信息进行处理、分类以及重要度预测,从中确定对畜牧产品质量及安全性有影响的因素,从而确定该类畜牧产品关联的有效畜牧产品信息类型。
示例性的,无论是依据人为经验还是模型的预测,都能够判断出来在养殖环节畜牧动物在各生长阶段的体型信息以及健康情况对后期形成的畜牧产品的质量和安全性有着重要的影响,因此养殖环节中畜牧动物生长各个阶段的体型信息和健康状况信息可以作为有效畜牧产品信息类型。同时还可以对有效畜牧产品信息类型下的具体信息进行分类和限定。
步骤220、依据畜牧产品的种类和畜牧产品生产环节,确定各环节对应的畜牧产品溯源信息记录时间。
在本发明具体实施例中,同样可以凭借行业内部人为的从业经验,对畜牧产品种类以及其在各个生产环节所产生的畜牧信息进行分析,或可以对畜牧产品各个生产环节的具体时间节点进行限定。或者,在各节点中通过构建相关模型对尽可能多的畜牧产品信息进行比对,从中确定对畜牧产品在各个生产环节中畜牧产品信息有明显变化或者能够产生新类型的畜牧产品信息的时间节点,或可以建立模型对各个环节对应的时间节点或计算方式进行确定,从而可以依据前序环节已记录的时间信息,来确定当前需要记录环节对应的畜牧产品溯源信息的时间节点。进而确定该类畜牧产品在各环节对应的畜牧产品溯源信息记录时间,为各节点下发任务,进行畜牧产品溯源信息的采集和记录。
示例性的,在养殖环节中,畜牧动物在各个成长阶段对应的体型信息和健康状况信息是一定存在变化的。进一步的,可以明确畜牧动物的各个成长阶段,例如出生期、幼崽期、青壮期以及成熟期等,从而确定在畜牧动物转变成长阶段时对畜牧动物的体型信息进行采集和记录;而由于畜牧动物的健康情况是不可预测的,因此可以定期例如两个月对畜牧动物的健康状况信息进行采集和记录。
步骤230、依据有效畜牧产品信息、各环节对应的畜牧产品溯源信息记录时间以及有效畜牧产品信息与畜牧产品生产环节之间的关联关系,制定约束记录该类畜牧产品溯源信息的智能合约。
在本发明具体实施例中,联盟链内部预先指定多个预选节点,或者基于EOS的公有链中预先投票选出的多个节点,共同依据上述步骤中区块链系统中的节点确定的有效畜牧产品信息、各环节对应的畜牧产品溯源信息记录时间以及有效畜牧产品信息与畜牧产品生产环节之间的关联关系,制定包含对该类畜牧产品溯源信息进行记录的规则即约束记录该类畜牧产品溯源信息的智能合约。此外,还可以基于计算机、设备或终端等存储介质,确定各类信息的可存储格式,例如可存储的数据类型和长度,将其制定于智能合约中。因此智能合约规定了畜牧产品溯源信息的记录规则,记录规则至少包括有效畜牧产品信息类型、各环节对应的畜牧产品溯源信息记录时间以及存储格式规则。
步骤240、依据智能合约规定的溯源信息记录时间和/或用户发送待记录畜牧产品信息的时间,确定目标畜牧产品信息的溯源信息记录时间。
在本发明具体实施例中,可以在用户主动发送待记录畜牧产品信息时,或者依据智能合约规定的溯源信息记录时间,确定当前需要记录目标畜牧产品信息的溯源信息记录时间。
示例性的,例如某只畜牧动物即将转变其所处的生长阶段,进而依据智能合约确定其生长阶段转变的时间点为该目标畜牧产品信息的溯源信息记录时间。
步骤250、若当前时间到达目标畜牧产品的溯源信息记录时间,则获取用户依据畜牧产品与射频标签或量子云码之间的关联关系,通过射频标签或量子云码提取的待记录畜牧产品信息。
在本发明具体实施例中,由于畜牧产品信息都存储于与其相关联的射频标签或量子云码中,进而当当前时间到达目标畜牧产品的溯源信息记录时间时,即可获取用户依据畜牧产品与射频标签或量子云码之间的关联关系,通过射频标签或量子云码提取的待记录畜牧产品信息。此外,节点也可以在未到达目标畜牧产品的溯源信息记录时间时,直接接收用户主动上传的畜牧产品信息。
步骤260、依据智能合约对待记录畜牧产品信息进行筛选,确定待记录畜牧产品信息中的有效畜牧产品信息,并对有效畜牧产品信息进行格式规范处理。
在本发明具体实施例中,由于节点获取到的待记录畜牧产品信息中可能存在对畜牧产品无影响的无效信息,和/或存在畜牧产品信息格式不符合存储要求而无法记录的信息。因此本实施例依据智能合约中的记录规则,首先对待记录畜牧产品信息进行筛选,确定待记录畜牧产品信息中的有效畜牧产品信息;其次对有效畜牧产品信息进行格式规范处理,最终获得有价值的且能够记录的畜牧产品信息。避免了对无效信息的存储而浪费系统资源,保证了对有效信息的存储而不遗漏有价值的信息。
示例性的,在上述示例中,假设节点获取到的待记录畜牧产品信息包括某畜牧动物的体型信息、健康状况信息以及平均每天休息时间信息,进而依据智能合约对待记录畜牧产品信息进行筛选,可以确定其中的体型信息和健康状况信息为有效畜牧产品信息,进而删除平均每天休息时间信息。并对有效畜牧产品信息进行格式规范处理,将体型信息格式规范处理为浮点数类型,将健康状况信息格式规范处理为字符串类型。
步骤270、生成包含格式规范处理后的有效畜牧产品信息的事务记录请求。
在本发明具体实施例中,在有效畜牧产品信息基础上,同时基于畜牧产品的基本信息,生成包含格式规范处理后的有效畜牧产品信息的事务记录请求。事务记录请求至少可以包括畜牧产品标识、畜牧产品当前所处的生产环节、畜牧产品基本信息、当前环境信息、运输信息、销售信息以及消费者反馈信息等信息,进而事务记录请求可以表明待记录对象及其关联的待记录的有效畜牧产品信息。
步骤280、向区块链系统中的区块生成节点发送事务记录请求,使区块生成节点依据智能合约将事务记录请求关联的畜牧产品信息写入区块链中。
在本发明具体实施例中,若当前节点不是当前区块生成节点,则将事务记录请求发送给当前区块生成节点;若当前节点是当前区块生成节点,则可以直接依据事务记录请求和智能合约将事务记录请求关联的畜牧产品信息写入区块链中。
本实施例的技术方案,通过对有效畜牧产品信息类型、各环节对应的畜牧产品溯源信息记录时间以及存储格式的确定,制定包含记录规则的智能合约;依据智能合约确定目标畜牧产品的溯源信息记录时间并获取和筛选有效的待记录畜牧产品信息,生成包含格式规范处理后的有效的待记录畜牧产品信息的事务记录请求;最终将该事务记录请求发送至区块链系统中的区块生成节点,以使区块生成节点依据制定的智能合约将事务记录请求关联的畜牧产品信息写入区块链中。本发明能够将畜牧产品生产过程中的各个环节对应的畜牧产品信息记录于区块链中,实现大型畜牧产品的养殖、屠宰、分割、流通和消费等生命周期信息以及相关供应链信息的追溯,提高了畜牧产品信息的可追溯性和可信性。
实施例三
本实施例在上述实施例一的基础上,提供了畜牧产品溯源信息记录方法的一个优选实施方式,能够查询畜牧产品的溯源信息。图3为本发明实施例三提供的查询畜牧产品溯源信息的流程图,如图3所示,该方法包括以下具体步骤:
步骤310、制定记录畜牧产品溯源信息的智能合约。
在本发明具体实施例中,依据畜牧产品的种类、畜牧产品生产环节和存储介质的数据存储格式,确定特定畜牧产品的种类下的有效畜牧产品信息类型、各环节对应的畜牧产品溯源信息记录时间以及各类信息的可存储格式,作为畜牧产品记录规则制定于智能合约中。
步骤320、依据智能合约生成包含待记录畜牧产品信息的事务记录请求。
在本发明具体实施例中,依据智能合约确定目标畜牧产品信息的溯源信息记录时间,并在时间达到时获取用户依据畜牧产品与射频标签或量子云码之间的关联关系,通过射频标签或量子云码提取的待记录畜牧产品信息,在经过筛选和格式规范处理后,生成包含格式规范处理后的有效畜牧产品信息的事务记录请求。
步骤330、向区块链系统中的区块生成节点发送事务记录请求,使区块生成节点依据智能合约将事务记录请求关联的畜牧产品信息写入区块链中。
在本发明具体实施例中,若当前节点不是当前区块生成节点,则将事务记录请求发送给当前区块生成节点;若当前节点是当前区块生成节点,则可以直接依据事务记录请求和智能合约将事务记录请求关联的畜牧产品信息写入区块链中。
步骤340、接收目标事务查询请求。
在本发明具体实施例中,区块链系统中的节点可以接收用户发送的目标事务查询请求,为畜牧产品信息的查询提供渠道。其中,目标事务查询请求中可以包括目标查询对象、目标查询信息类型以及目标查询生产环节等信息。
步骤350、向区块生成节点发送所述目标事务查询请求,使区块生成节点在区块链中查找与目标事务查询请求关联的溯源信息。
在本发明具体实施例中,目标事务查询请求用于指示区块生成节点在区块链中查找与目标事务查询请求关联的溯源信息。若当前节点不是当前区块生成节点,则将目标事务查询请求发送给当前区块生成节点;若当前节点是当前区块生成节点,则可以直接依据目标事务查询请求在区块链中查找与目标事务查询请求关联的溯源信息。
步骤360、接收区块生成节点查找的溯源信息。
在本发明具体实施例中,当前节点通过目标事务查询请求控制区块生成节点依据目标事务查询请求查找到目标事务查询请求关联的溯源信息,并接收区块生成节点查询到的溯源信息,以实现对畜牧产品信息的追溯。
示例性的,图4为记录和查询畜牧产品溯源信息的示例图。由图中可知,本实施例可适用的区块链可以为基于EOS的公有链或联盟链,区块链中的节点可以实现对大型畜牧产品的供应、养殖、检疫、屠宰、分割、物流、销售和消费者等生命周期信息以及相关供应链信息的记录和查询。其中,供应商可提供可养殖的畜牧动物;养殖场可购买或繁殖畜牧动物幼崽,并对畜牧动物的出生、接种疫苗、发病治疗、饲料更换、畜牧动物出售、养殖畜牧动物相关物品的采购以及环境信息进行采集;检疫部门在对畜牧动物检疫后提供检疫证明;屠宰场可以对畜牧动物的入场、宰前检疫、宰后检疫以及出场信息进行采集;分割中心可以对肉品分割、入库和出库信息进行采集;物流公司可以对运输和卸货信息进行采集;门店或肉柜等零销商可以对收货、分割和售卖信息进行采集;消费者可以进行反馈以及相关溯源信息的查询。
具体的,区块链中的节点可以是溯源应用节点或者溯源基础平台节点。其中行业内的各个企业或单位都可以作为区块链中的一个溯源应用节点,且一个溯源应用节点可以供多个企业或单位使用,用户可以通过溯源应用节点直接进行信息的记录和查询;或者通过第三方的溯源基础平台节点间接地进行信息的记录和查询,溯源基础平台节点可以实现对各类信息的汇总和管理。
本实施例的技术方案,区块链系统中的节点通过将目标事务查询请求发送至区块链系统中的区块生成节点,以使区块生成节点依据目标事务查询请求从区块链中查询得到目标事务查询请求关联的溯源信息。本发明实施例从区块链系统中查询得到畜牧产品信息,实现大型畜牧产品的养殖、屠宰、分割、流通和消费等生命周期信息以及相关供应链信息的追溯,提高了畜牧产品信息的可追溯性和可信性。
实施例四
图5为本发明实施例四提供的一种畜牧产品溯源信息记录装置的结构示意图,本实施例可适用于记录畜牧产品生产过程中的各个环节对应的畜牧产品信息的情况,该装置配置于区块链系统中的节点中,可实现本发明任意实施例所述的畜牧产品溯源信息记录方法。该装置具体包括:
智能合约制定模块510,用于制定记录畜牧产品溯源信息的智能合约;其中,所述智能合约规定了畜牧产品溯源信息的记录规则;
记录请求生成模块520,用于依据所述智能合约生成包含待记录畜牧产品信息的事务记录请求;
信息记录模块530,用于向区块链系统中的区块生成节点发送所述事务记录请求,使所述区块生成节点依据所述智能合约将所述事务记录请求关联的畜牧产品信息写入区块链中。
优选的,所述智能合约制定模块510,包括:
有效信息类型确定单元5101,用于依据畜牧产品的种类确定该类畜牧产品关联的有效畜牧产品信息类型;
记录时间确定单元5102,用于依据畜牧产品的种类和畜牧产品生产环节,确定各环节对应的畜牧产品溯源信息记录时间;
智能合约制定单元5103,用于依据有效畜牧产品信息、各环节对应的畜牧产品溯源信息记录时间以及有效畜牧产品信息与畜牧产品生产环节之间的关联关系,制定约束记录该类畜牧产品溯源信息的智能合约。
优选的,所述记录规则至少包括有效畜牧产品信息类型、各环节对应的畜牧产品溯源信息记录时间以及存储格式规则。
优选的,所述记录请求生成模块520,包括:
目标记录时间确定单元5201,用于依据所述智能合约规定的溯源信息记录时间和/或用户发送待记录畜牧产品信息的时间,确定目标畜牧产品信息的溯源信息记录时间;
待记录信息获取单元5202,用于若当前时间到达所述目标畜牧产品的溯源信息记录时间,则获取用户依据畜牧产品与射频标签或量子云码之间的关联关系,通过射频标签或量子云码提取的待记录畜牧产品信息;
待记录信息处理单元5203,用于依据所述智能合约对所述待记录畜牧产品信息进行筛选,确定所述待记录畜牧产品信息中的有效畜牧产品信息,并对所述有效畜牧产品信息进行格式规范处理;
事务记录请求生成单元5204,用于生成包含格式规范处理后的有效畜牧产品信息的事务记录请求。
优选的,所述事务记录请求至少包括畜牧产品标识、畜牧产品当前所处的生产环节、畜牧产品基本信息、当前环境信息、运输信息、销售信息以及消费者反馈信息。
进一步的,所述装置还包括溯源信息查询模块540,所述溯源信息查询模块540,包括:
目标事务查询请求接收单元5401,用于在所述向区块链系统中的区块生成节点发送所述事务记录请求之后,接收目标事务查询请求;
溯源信息查询单元5402,用于向区块生成节点发送所述目标事务查询请求,使所述区块生成节点在所述区块链中查找与所述目标事务查询请求关联的溯源信息;
溯源信息接收单元5403,用于接收所述区块生成节点查找的溯源信息。
优选的,所述区块链系统中的节点为溯源记录应用节点或溯源基础平台节点。
本实施例的技术方案,通过各个功能模块之间的相互配合,实现了有效信息的确定、有效记录时间的确定、智能合约的制定、目标记录时间的确定、待记录信息的获取、事务记录请求的生成和向区块链生成节点的发送、畜牧产品信息的写入以及溯源信息的查询等功能。本发明能够将畜牧产品生产过程中的各个环节对应的畜牧产品信息记录于区块链中,实现大型畜牧产品的养殖、屠宰、分割、流通和消费等生命周期信息以及相关供应链信息的追溯,提高了畜牧产品信息的可追溯性和可信性。
实施例五
图6为本发明实施例五提供的一种设备的结构示意图。如图6所示,该设备具体包括:一个或多个处理器610,图6中以一个处理器610为例;存储器620,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器610执行,使得一个或多个处理器610实现本发明任意实施例所述的畜牧产品溯源信息记录方法。处理器610与存储器620可以通过总线或其他方式连接,图6中以通过总线连接为例。
存储器620,作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的畜牧产品溯源信息记录方法对应的程序指令(例如,事务记录请求的生成与发送以及畜牧产品溯源信息的写入和查询)。处理器610通过运行存储在存储器620中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的畜牧产品溯源信息记录方法。
存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器620可进一步包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例六
本发明实施例六还提供一种计算机可读存储介质,其上存储有计算机程序(或称为计算机可执行指令),该程序被处理器执行时用于执行一种畜牧产品溯源信息记录方法,该方法包括:
制定记录畜牧产品溯源信息的智能合约;其中,所述智能合约规定了畜牧产品溯源信息的记录规则;
依据所述智能合约生成包含待记录畜牧产品信息的事务记录请求;
向区块链系统中的区块生成节点发送所述事务记录请求,使所述区块生成节点依据所述智能合约将所述事务记录请求关联的畜牧产品信息写入区块链中。
当然,本发明实施例所提供的一种计算机可读存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的畜牧产品溯源信息记录方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明实施例可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明实施例进行了较为详细的说明,但是本发明实施例不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。