基于区块链的农资交易溯源系统的设计研究
作者: 黄系盟 赵应丁 李求德
摘要 农资作为农业生产中重要的补给品,其交易信任问题一直以来都受到社会的关注。为了确保农资质量合格,需要对农资供应链信息进行溯源管理。利用区块链技术,分析了农资供应链各环节需求,搭建了一套农资交易可信品控溯源系统。最后,通过试验表明单位上链时间并不随溯源数据规模变大而变大,说明区块链在溯源系统上的应用具有安全性和稳定性。
关键词 质量溯源;区块链;去中心化;分布式存储
中图分类号 TP 399 文献标识码 A
文章编号 0517-6611(2022)08-0227-05
doi:10.3969/j.issn.0517-6611.2022.08.060
开放科学(资源服务)标识码(OSID):
Design and Research of Agricultural Materials Transaction Traceability System Based on Blockchain
HUANG Xi-meng 1,2,ZHAO Ying-ding 1,2,LI Qiu-de 1,2 (1.School of Software,Jiangxi Agricultural University,Nanchang,Jiangxi 330044;2.Key Laboratory of Agricultural Information Technology of Colleges and Universities in Jiangxi Province,Nanchang,Jiangxi 330044)
Abstract As an important supplement in agricultural production,the transaction trust of agricultural means has always been concerned by the society.In order to ensure the quality of agricultural means,it is necessary to carry out traceability management of agricultural means supply chain information.We used blockchain technology to analyze the demand of each link in the supply chain of agricultural means,and built a set of trusted quality control traceability system of agricultural means transaction.Finally,the experiment showed that the unit time on the chain did not increase with the size of traceability data,which showed that the blockchain had security and stability.
Key words Quality traceability;Blockchain;Decentralization;Distributed storage
农资是农业生产中重要的投入品和补给品,其质量是发展现代农业的基础和前提,是农业生产作业的重要组成部分,历来受到国家的高度重视。近年来,国内农资质量安全问题事件屡屡发生,这引起了社会和人民较大的关注 [1]。农民从事生产作业时,无法保证自己购买的种子和农药等生产资料是否合格,因此解决农资交易信任问题是一项非常重要的任务。
一般来说,现在可以使用溯源系统平台将农资产品的数据上传至云端,通过给消费者提供溯源服务来查询产品来源,以此来解决交易信任危机 [2] 。区块链具有不可篡改、去中心化、公开透明等特性,是当前最适合存储这种数据的存储方法。最近几年,很多国内外的学者在信息技术、物联网、区块链等技术上对溯源系统进行相关研究并取得了一些成果。2013年黄庆等 [3]通过对物联网相关技术及网络体系架构的分析,展示了其在农资产品溯源服务系统上的应用可实现对农资产品的溯源防伪。2017年郑开涛等 [4]提出了基于时空追溯码的农产品质量安全溯源多边平台,并对该平台进行了总体设计以提高农产品追溯效率。2020年吴晓彤 [5]针对传统溯源系统一般是以中心数据库为基础的溯源模式出现的信任问题,提出基于区块链的农产品溯源系统。对于最近几年刚提出的比较多的基于区块链的农产品溯源系统,同样可适用于农资供应链上。鉴于此,笔者在分析传统农资溯源系统的基础上,针对农资溯源系统存在的问题,提出利用区块链的去中心化等特性,将农资溯源信息存储在各个节点上,来解决溯源信息安全性问题,使用Fabric框架实现了基于区块链农资交易溯源系统,该系统实现了农资溯源信息的安全性。
1 农资溯源研究分析
1.1 农资的概念 农资指的是农业生产过程中所用到的物质资料,比如农药、种子、农膜、农机等,它所覆盖的范围比较广泛 [6]。
1.2 农资溯源的必要性
农资作为农业生产必不可少的生产资料,与“三农”服务也有千丝万缕的关系 [7]。溯源往往是为了使得消费者农资溯源为产品质量进行可信背书,消除了消费者对产品安全的顾虑,对生产商建立足够的信任。最近国内农资产品假冒问题屡屡发生,使得农资产业链出现信任危机,如何解决消费者和生产商的信任问题、重新建立行业信任体系,是当前我们需要去解决的事情。
1.3 传统农资溯源现状及问题分析
纵观国内溯源平台,目前运行的农资溯源系统较多,以2017年上线的“中国农资质量追溯平台”为例,它结合物联网、标识技术,率先在我国农资行业中建立全国统一的农资质量追溯平台 [8]。通过该平台,消费者可以删除查询农资信息;生产者可以对农资产品流通环节和出入库环节进行管理;农资流通企业可以获得产业环节的数据;监管部门可以通过该平台进行监督管理。其他的农资质量溯源系统都大同小异,使得我国农资质量安全追溯体系快速发展。但是这些农资溯源系统仍然有很多不足,比如数据安全问题、运营成本过大。
1.4 区块链技术在农资质量安全追溯体系的应用
由于区块链具有很多传统技术不具备的特征,比如不可篡改、去中心化等,考虑到传统农资质量追溯系统的一些不足,区块链可以给它带来一些针对性的解决方案。首先是去中心化,传统的农资溯源系统一般是接入云服务器,它具有强大的运行和存储能力,录入的数据量不是很巨大时,云服务器能够处理。但是当数据量越来越大时,中心服务器的处理能力有限,很有可能会死机或者崩溃,计算难以进行存储和运行。另外,中心化的服务器设备运营成本比较高 [9]。
2 相关技术
2.1 区块链概述
区块链从狭义上来说是一种链式存储结构,由一个一个区块连接而成,区块结构如图1所示,区块分为区块头和区块体,区块头包含版本号、前一区块的哈希、时间戳、随机数、目标哈希、merkle根,区块体保存了交易记录,是以Merkle树的方式存储,Merkle根存储了所有交易记录的哈希值,它存在区块头上 [10]。
广义上区块链是一种分布式存储的方式,它具有去中心化、不可篡改、不可逆、匿名等特性,所以这种概念广泛应用于金融、计算机等行业,比如比特币、以太坊等电子货币、分布式节点储存。另外,区块链有私有链、联盟链和公有链3种,私有链相当于由一个公司组成,仍然不存在中心节点,该公司不同节点由会计核心控制。公有链向全网公开,节点数量不限,他们按照激励机制相互竞争,为的是获取记账权。联盟链就是几个公司组成一个联盟(通道),节点们通过共识算法来达成一致,并广播同步消息 [11]。
2.2 区块链关键技术
2.2.1 智能合约。智能合约,顾名思义就是一种契约,它通过信息化的方式验证,执行计算机合同。当人们规定好了规则之后,机器就自动执行,这样就不容易出现异常或者作恶 [12]。区块链中的公开透明性质是智能合约赋予的,不可篡改性质是共识算法赋予的 [13]。
智能合约将区块链应用在项目中,从而将数据库和现实连接起来。智能合约运行在区块链上面,可以在满足条件的情况下被触发。智能合约解决了不同系统之间的标准不一致的问题 [14]。智能合约在很多地方都在应用,比如电子商务、供应链优化等场景。在农资溯源系统里,智能合约充当了合同的作用,当触发合同条件时,它会自动执行程序代码。
2.2.2 分布式存储。分布式存储的定义是将数据分散的存储在网络上,各个节点通过网络相连,然后对这些节点资源进行统一的管理,对外作为一个整体提供存储服务 [15]。区块链的分布式存储打破了传统溯源系统数据存储中心化的局面,使信息分布式存储在多节点上,节点上的信息保存都比较完整,既增强了产业链各环节的信息互通性,也使得其去中心化、透明性、可溯源性和防篡改性的特点与农资溯源领域极为契合 [16]。
2.2.3 共识机制。区块链中共识机制主要有4种类型:①PoW工作量证明。PoW是第一个共识算法,是由中本聪首次提出来的,能解决“双花攻击”问题。它是通过计算获得随机数,之后就拥有账本的记账权,并向其他节点广播账本信息,验证后在将账本复制下来。账本有一个评价指标,每个账本加入一个随机元素使得难度变化,确保时间内只有一个节点有权利记账。比特币中,节点算力越大,获得记账权的可能性越大 [17]。②POS权益证明。主要是为了争夺记账权,确保节点账本一致。POS有个比较明显的缺点,就是节点在拼算力的过程中十分消耗资源,导致大量的资源浪费。POS就完美弥补了这样的问题,它是按照持币的数量来决定记账的权力 [18]。③DPOS委托权益证明。通过特殊加密算法使得节点之间记账, DPOS算法被证明能符合区块链的性能要求。DPOS机制将每个币视为一张选举票,币的拥有者根据其持有的数量,投票给自己信任的委托人 [19]。系统根据得票多少选出受托人。受托人的工作就是签署区块,且在每个区块被签署前,检验前一个区块的真伪。币的持有者将权益交给受托人,受托人也可以专心从事记账工作。
2.3 农资溯源服务相关技术
农资产品溯源服务技术包含众多,最终的目的就是农资产品的溯源信息,比如源头、运输、销售、使用等进行查询,可以利用先进的技术,使用很多种方式,如二维码、RFID、激光码等对农资产品录入信息,对农资产品进行跟踪,实现产品全周期管理。农资供应链环节有生产、仓储、分销、运输、监督及消费 [20]。
传统农资溯源使用了一些方法技术来确保信息的安全性:①防伪号码,产品的真伪可以使用涂层材料来追溯,不过这种方法的追溯能力不够强,无法查询产品的运输和更换信息。②条形码 [21-24],这是一种比较常见的可追溯性服务技术。产品表面印有数字和条形码,形成生产时间、生产批号、生产许可证、国家药品许可证等,但仍存在易被仿制的缺陷。二维码,使用农产品,用户可以通过扫描产品外观上打印的二维码来获取信息。③射频识别技术,与跟踪器或记录仪类似,农资产品进出仓时能自动读取和采集信息 [25-27]。
以上技术的优势是:①近距离非接触识读,范围为十几厘米到几十米。②可以对抗比较恶劣的环境。③安全性比较强。④可以识别高速运动的物体。但是,缺点是这样的溯源方法成本比较高。
3 系统设计方案
该系统的目的是解决农资供应链数据安全、信任的问题,该研究提出的框架和解决方案将专注于在联盟链平台上自动执行的智能合约。智能合约将由通道中的几个节点进行执行,并由所有节点商定执行结果。另外,节点是区块链网络的组成部分,它可以是收集、验证和执行事件的计算机器。该框架由所有节点商定执行结果。值得注意的是,挖掘节点是区块链网络的组成部分。节点可以是任何收集、验证和执行事务的计算机器。节点还将这些事务的数据和结果存储在1个账本中,该账本由所有节点复制和同步。在某种程度上,节点具有与所有其他节点完全相同的副本。区块链中,智能合约通过函数调用来接收交易,还将触发事件,可以在违规发生时进行监控、跟踪并进行警报。在所示这种情况下,解决方案特别关注农资供应链。参与实体包括生产商、运输商、分销商、零售商和最终客户。