基于区块链的农业投入品智能管控平台设计
2020-08-04钱建平余强毅张保辉吴文斌
钱建平 余强毅 史 云 张保辉 查 燕 吴文斌
(中国农业科学院农业资源与农业区划研究所,北京 100081)
1 引言
食品安全问题已成为重要的全球性问题[1]。农产品是既是食品的组成部分,又是食品原料的重要来源;而农业种养殖过程中农兽药等投入品不合理的使用是导致食品安全的主要原因之一[2]。另一方面,化肥、农药等的过量施用导致的农业环境污染、产品品质下降等问题也日益显现[3]。围绕化肥农药减施,我国提出了“一控两减三基本”的战略目标[4]。因此,提高农业投入品的管控能力对于保障食品安全和实现“肥药双减”目标具有重要意义。
利用信息技术、物联网等手段对农业投入品进行信息化管理已成为提升管理水平、增强追溯能力的重要手段。黄庆等通过对物联网相关技术及网络架构的分析,将其应用于农资溯源服务系统各环节,可实现对农资产品的溯源防伪[5];毛林等提出了基于产品电子代码(EPC)编码的农资追溯系统,提供了一种轻量级的应用解决方案[6];方薇等利用RFID(radio fre‐quency identification)和网屏或二维码相结合的混合编码模式,提出了一种农资信息溯源服务系统,系统可在保护农户利益、净化农资市场、树立商家品牌方面发挥重要作用[7];Qian等提出了结合“安心施”手机APP 的农药施用控制云平台,为实现农药合理施用、提高农产品质量安全提供了有效手段[8]。
贯穿“生产‐经营‐施用”的农业投入品生命周期因时空跨度大、责任主体多、信息易失真,既加大了政府监管的难度,也降低了各主体的信任度。区块链技术具有去中心化、不可篡改、开放透明等重要特征[9];作为一种为实现去中心化而提出的支持数据存储和共享的技术,其核心包括密码学、共识机制和区块链网络[10]。区块链技术已应用于数字金融、物联网、智能制造、供应链管理、数字资产交易等多个领域[11‐13];在农业和食品的追溯领域也得到了较好应用,并有相关商业化案例[14]。本研究以区块链技术为支撑,以农业投入品的“生产‐经营‐施用”为生命周期过程,构建农业投入品智能管控平台,增强农业投入品监管能力、提升追溯可信度。
2 农业投入品管控存在的问题
农业投入品既是农业生产的源头,又是农业生产的基本要素;其合规生产、合法经营、合理施用对于稳定农产品生产、保障农产品安全、降低农业污染具有重要作用。近年来,我国不断强化农业投入品市场监管力度并取得了积极效果;但由于农业投入品供应链长、涉及主体多、技术手段缺乏等问题,农业投入品违规生产、销售渠道混乱、产品质量良莠不齐、使用不合理、监管效率不高等问题时有发生。主要问题总结如下。
(1)台账录入不规范,影响进销数据可信度
建立农业投入品的购销台账是经营企业管理的重要内容。由于农业投入品品种繁多、成分不一、规格不同,企业在建立购销台账时往往出现同一商品多种名称或同一名称多种商品的情况;这种不规范的台账记录影响了数据的可信度。通过建立规范商品数据库,并在农业投入品的全生命周期统一使用,能有效减少这种现象的发生。
(2)施用记录不清楚,影响农产品质量安全
农业投入品尤其是农药的合理施用,对于保障农产品安全具有重要作用。农药的过量施用或者施用后未满足安全间隔期的要求进行采摘等现象时有发生,甚至部分使用者篡改农业投入品施用记录。由于区块链采用了时间戳技术和共识机制,不仅提高了区块链中数据的不可篡改性,还使得区块与区块之间具有了时间序列的排序关系,使信息更加具有公正性。通过将投入品施用的核心数据存储到区块链中,能有效防止施用数据的篡改。
(3)信息记录不准确,影响监管责任的界定
农业投入品中经常出现套牌、假冒和侵权的现象,给农业投入品产业的健康发展带来了巨大的负面影响。究其原因,主要是由于防伪机制缺乏、信息记录不准确,发生假冒伪劣商品时责任界定较为困难。区块链本质上是一个分布式的公共账本,技术特征包括去中心化、去信任、可集体维护等;区块链的可靠不需要依靠人们的信任和信用,而完全由区块链本身的技术特征决定,具有客观性。因此通过去中心化的数据管理方式,既能有效防止假冒伪劣现象的发生,又能有效进行责任界定。
(4)生命周期不连贯,影响产品追溯和召回
农业投入品的生命周期包括生产、销售、施用等过程,这些过程标识不对应、信息不关联,导致无法有效进行追溯。利用区块链技术的数据保存方式恰恰能解决数据的溯源问题,在农业投入品生命周期的每个阶段将信息上传链上,数据在底层以区块链的形式进行存储,可以保证采集方法及结果等数据按时间顺序进行不可更改的存储,保证数据的真实溯源。
3 总体架构
以农业投入品生命周期的“生产‐销售‐施用”等核心环节为基础、以实现智能化管控和全程追溯为目标,构建农业投入品智能管控平台,如图1所示。
平台主要由数据层、网络层、共识层、合约层和应用层组成;网络层通过身份验证、节点权限等,结合P2P 网络协议将区块链数据存储于各个节点。共识层采用PoS(权益证明,Proof of Stake)算法进行管理,在基于权益的共识算法中,权益证明就是资源证明,最高权益的节点即拥有最多资源的节点具有记账权,这种机制满足了农业投入品管控中,具有更多权益的监管部门及机构具有更高的权限,能够实现对参与主体的审核。
3.1 数据存储
平台数据是生产、销售、施用等各环节产生的数据,其中生产环节数据包括企业信息、原料信息、生产信息、检测信息、出厂信息等,销售环节数据包括经营主体、入库信息、库存信息、销售信息、抽检信息等,施用环节数据包括生产主体、购入信息、施用信息、施用标准、使用评价等,这些数据是管控的核心数据来源,构成了基础数据。考虑到数据的容量及数据安全保密的要求,采用链上与链下相结合的方式进行数据的存储,通过映射机制实现链上及链下数据映射。
3.2 智能合约
智能合约是一种去中心化、可自行校验、自动执行核心内容的有约束力的数字化协议,通过设置一些可自动触发的执行条件,为区块链网络中的用户提供信息交互、价值转移等功能[15]。平台设计的智能合约主要有用户认证、资质核验、台账分析、施用预警、防伪追溯、智能召回、全程监管及纠纷查证。当节点上传的信息或者调用的功能满足相应合约的触发条件后,系统将自动调用合约实现相应的功能。
4 “数据库+区块链”的数据双模存储设计
由于农业投入品生命周期各个节点的数据量大、且数据具有异构性,如果将各节点采集的所有数据都上传到区块链,并进行存储,则会导致区块链负荷大、运行成本高。随着节点数的增加,交易数据呈现指数级增长,加之区块链自身为链式结构,使查询效率低下。因此,本研究中采用链上和链下相结合的双模存储机制。在链上部分,重要数据经过哈希计算产生与该数据对应的唯一标识码,并存储在区块链中;在链下部分,通过将农业投入品生命周期各节点的详细数据经智能合约验证,与数据所在的区块位置信息一同存入关系型数据库中。
以某一种病虫害防治产品的数据为例,其涉及的主要信息有唯一注册码、通用名称、商品名称、防治对象、主要成分及含量、生产日期等。同种产品由一家或多家生产商生产,涉及到生产商的编号、法人代表、生产许可证、电话号码、地址等信息。同时,在使用过程中需根据不同作物确定施用方式,因此涉及到作物的编号、名称、主要病虫害等信息,及防治对象、用法、用量、最多施用次数、安全间隔期、最大残留限量等施用方式信息。如图2所示。
基于上述分析,在对病虫害防治信息进行记录时,存储在本地数据库中的信息字段包括操作序号、作物种植批次号、作物名称、防治对象、病虫害防治品唯一注册码、用法、用量、使用时间、使用人、区块号。其中,操作序号作为记录信息的唯一标识码;区块号是与链上数据相映射的标识,是通过将病虫害防治信息的每个字段作为字符串拼接起来,进行哈希计算后的值。存储在区块链数上的病虫害防治信息据结构包括区块头和区块体,区块头主要有当前区块号、前一个区块哈希值、时间戳等信息。区块体主要是病虫害防治相关信息,采用Key‐Value 的方式进行存储,Value 是写入区块链的值,包括docType、id、Infohash;其中id 与本地数据库存储的病虫害防治信息的id 一一对应,InfoHash 是对溯源信息哈希计算之后的值。Key键是Value 值中对应的id 作为索引和唯一标识。
5 智能合约构建
在智能合约中,当签署合约的各方就合约内容、执行条件、违约条件等达成一致时,智能合约被部署到区块链上,使参与方无需依赖任何中心组织,自动执行合约。本文根据农业投入品在生产、销售、施用、追溯等不同环节的需求,设计的典型智能合约如表1所示。
以施用预警为例,进一步说明智能合约的构建。该智能合约的作用是依据预先建立的农药使用规则库,进行农药使用信息记录的比对,对于违规使用给出预警信息、对于正确使用则记录到区块链上。具体来说,当输入农药使用记录信息,如农药名称、作物名称、使用量、使用方法、使用时间等时;智能合约自动执行相关判断,包括信息填写是否完整、是否是违禁使用品、用法、用量、安全间隔期等是否符合标准等;当完全符合相关判定规则时,农药使用信息被记录到区块链上。
6 系统开发
根据节点进入区块链的机制不同,可以将区块链分为公有链、联盟链、私有链3 种类型,其技术特点如表2 所示。公有链、联盟链和私有链对节点的开放程度逐渐降低,公有链允许所有人进入网络且都具有读写权限,如比特币就是其典型代表,联盟链则将权限进行了限制,仅特定群体预设的节点可以记账,其他人可以参与交易但需要托管记账,私有链中所有节点的权限都由一个组织控制。
表1 典型智能合约构建规则Table 1 Typical intelligent contract building rules
公有链、私有链和联盟链各有优缺点,而联盟链中又有授权节点又有公开节点,其共识管理模式保证了供应链参与组织的高效运行、同时兼顾了系统安全和可靠特征。Hyperledger 作为联盟链平台,在高可用、高性能和隐私保护上优势更明显,其特有的角色权限机制可以使监管部门拥有监管权,也能够对其他角色开放对应的权限,既保护了供应链上的隐私信息,又保证了信息的公开透明。因此本文选择Hy‐perledger构建农业投入品智能管控平台。
表2 不同类型区块链技术特点Table 2 Characteristics of different block chain technology
根据不同参与主体的需求及使用的便利性,平台采用应用系统与移动APP 相结合的方式,主要提供生产管理、经销管理、施用管理、智能监管、区块链管理等模块,如图3所示。具体功能设计如下:
(1)生产管理模块
生产管理是农业投入品管控的源头,重点提供原料管理、生产记录、成品管理、批次赋码和销售记录等功能。其中原料管理重点记录原料名称、生产厂商、原料检测、购入时间等信息;生产记录是按批次记录原料配比、加工线、加工时间等信息;批次赋码是根据一定的编码规则生成成品批次生产码,并记录到系统中。
(2)经营管理模块
经营管理是农业投入品管控的关键,重点提供进货管理、销售管理、库存分析、产品赋码、小票打印等功能。进货管理采用扫描录入比对的方式,扫描产品在生产阶段生成的批次生产码,自动从管控平台提取与批次生产码对应的产品名称、生产厂商等信息,并录入进货时间、负责人的信息,形成进货记录;销售管理采用会员制销售和普通零售相结合的方式;库存分析能够对农业投入品的库存状态进行实时预警,可分析某时间段内的出入库情况;产品赋码主要是根据经营主体的不同需求,对于进货时无条码的产品,可根据产品名称、生产企业等信息生产条码;小票打印对于每一笔销售的产品均打印出带有追溯二维条码的销售小票,此二维条码与施用管理模块无缝对接。
(3)施用管理模块
合理施用农业投入品是管控平台的核心,以移动APP的方式重点提供真伪查验、入库管理、施用记录、标准查询等功能。依托区块链提供的数据防篡改优势,可输入产品编号进行真伪的查验,有效防止假冒伪劣现象的发生;入库管理主要是通过销售小票的二维条码实现,降低了数据录入的错误、提高了录入效率;施用记录是通过调用施用预警的智能合约来实现,在记录数据的同时提供使用方法和使用量的提示、预警功能,及安全间隔期等的提示功能;标准查询是基于不同农业投入品的施用标准库,如选择在某种作物上防治某种病虫害,该模块即提示推荐施用的投入品及其使用标准等信息。
(4)智能监管
提高监管效率及智能化水平是管控平台的保障。重点提供资质核查、经营检查、违法记录、产品召回、纠纷查证等功能。资质核查是对于生产者和经销者的相关资质进行查验,并可对于生产经营主体提交的材料进行审核。经营检查、违法记录功能主要以移动APP 的方式提供,便于进行现场执法监督;产品召回是当发生假冒伪劣等问题时,根据产品生产经营范围快速确定需要召回的产品批次,并通知相关单位;纠纷查证是充分利用区块链提供的非对称加密、数字签名等技术,将重要的生产经营数据存在区块链上,当发生纠纷时可查询。
(5)区块链管理
区块链管理用于维护管控平台正常运行。重点提供用户注册、合约管理、防伪查询、区块维护等功能。用户注册和防伪查询通过调用相关智能合约来实现;合约管理可用于构建、部署智能合约。
7 总结与展望
区块链本质上是一个分布式的公共账本,技术特征包括去中心化、去信任、可集体维护等。目前区块链已经发展到3.0时代,从金融领域扩展到数字金融、物联网、智能制造、供应链管理、数字资产交易等多个领域。农业投入品管控存在着时空跨度大、责任主体多、信息易失真等问题。本文以区块链技术为支撑,以农业投入品的“生产‐经营‐施用”为生命周期过程,在分析农业投入品管控存在问题的基础上,提出了农业投入品智能管控平台总体框架,设计了“数据库+区块链”的数据双模存储机制,描述了智能合约的构建过程;结合联盟链的优势,提出了系统开发框架选择及平台功能设计,既有利于增强农业投入品监管能力,又能提升追溯可信度,对于农业投入品的合规生产、合法经营、合理施用提供了有力的技术支撑。