基于区块链技术的农产品质量溯源系统结构设计

2021-04-02 06:25洋,谭
农业工程 2021年1期
关键词:合约区块节点

于 洋,谭 峰

(黑龙江八一农垦大学信息与电气工程学院,黑龙江 大庆 163711)

0 引言

随着国民生活水平的提高,越来越多的人开始注重餐桌食品质量安全问题。食品质量问题既关乎国民身心健康,又影响食品贸易行业出口竞争。然而诸如瘦肉精、非法转基因作物、掺假大米及滥用农药等食品安全问题层出不穷。全面的监管不管从技术上还是人力上都是非常困难的。因此,为了快速准确找到问题所在,集中统一处理问题产品,依法惩罚违规者,建立高效可靠的农产品质量溯源系统就显得十分必要。

发达国家为了保障农产品质量安全,建立了一系列措施。如美国由政府统筹协调,组织成立专门机构进行农产品信息详细溯源与灾害预警工作;英国积累多年的溯源工作经验,形成从农产品种植到供应各环节全部信息的溯源体系;日本针对疯牛病问题,为出厂牛肉提供标识,通过标识可以查询到牛肉各类信息,保证了消费者的生命健康[1]。

发达国家通过10多年的探索,建立了比较完善的溯源体系结构,而我国的质量体系还尚在建立当中。我国农产品质量安全保障体系的建设,前一阶段是主抓阶段工作辅以种类的划分,建立分别由政府、部分社会组织、企业和食品加工企业主导的溯源体系;后一阶段则是建立国家食品药品监管总局,由监管机构统一管理农产品质量的安全问题[2]。由于采取分段管理,各个阶段收集的信息、监管的过程都是分离的,收集上来的信息就可能产生不兼容或者信息共享困难等问题。在信息的收集过程中,使用物联网技术需要建立大量的硬件设施且当作物种类繁多时,需要消耗大量的资源来进行基础设施建设。当溯源体系涉及政府、企业等多个主体时,溯源过程的环节就会增多,极大地降低了溯源效率,还有可能造成“信息孤岛”的问题。

针对上述问题,国内学者有的从理论出发,分析现有体系的优缺点,提出建设符合我国国民消费特点的溯源体系,还有学者从技术出发,使用物联网技术并结合先进的管理体系,提出“供应链”管理模式。然而上述方案都无法从根源上解决农产品信息快速共享和信息价值化等问题。

区块链技术可以规避“信息孤岛”和防止数据库数据易被篡改,利用区块链技术的联盟链可以更好地发挥政府、企业及农户等组织在溯源体系中的作用,提升农户与企业的参与度。使用区块链分布式数据技术可以安全地存储农产品的各类信息,利用数据块的“时间戳”可以快速地进行数据溯源,借助智能合约技术可以智能地执行合同,将农产品信息价值化。本文从区块链核心技术出发,提出使用区块链技术中的联盟链以解决上述问题,并借鉴国内知名企业的溯源案例,设计基于联盟链的溯源体系方案以供读者参考。

1 区块链技术

比特币诞生之初,许多人简单地认为区块链就是“区块”和“链”的简单叠加,又或者是一种分布式存储的数据。然而区块链技术不能说是一项新兴的技术,它是由分布式共识算法、对等网络和密码学等计算机传统技术集合而成的一项技术。这种组合技术既保证了数据的分布式存储,又实现了数据的透明性与安全性。

依据节点中心化的程度将区块链系统分为公链、私链和联盟链。公链没有中心化节点,只需要一台电脑和网络就可以访问其中的任何节点并进行链上数据的读写。公链的访问门槛低,数据公开透明且无法篡改,由于节点的数量过多,存在交易速度慢的缺点。为了提高交易速度,又出现了私链,私链是由一个中心的管理者集中管理,只有授权的少数人才能访问节点。私链适合企业内部使用,由于链上的节点数量较少,具有很高的信任度,进行交易时不需要所有的节点确认,提高了交易速度。但是私链需要被集中管理,违背了去中心化的初衷,链上的数据存在被私自修改的可能性,不能根本地解决作弊问题。联盟链的去中心化程度介于公链与私链之间,是指由多个机构共同参与管理的组织体系,数据仅在组织内部进行读写和发送,组织或是企业可以使用组织中被授权的节点数据读取服务,未被授权的节点则无法访问。去中心化的程度和安全性、信任程度是正相关的,去中心化程度越高交易的效率会越低。因此,为了提高效率和增加利益,更多的商业价值体现在联盟链和私有链上。

本文采用联盟链形式,设计一个由农户、农产品加工企业、农业工作站和政府等多方参与的农产品质量溯源系统。

1.1 区块链结构

传统溯源体系面临很多困境,如农产品种类繁多,很难建立统一的体系进行管理;企业间信息交流不方便,形成“信息孤岛”。利用区块链技术去中心化特点可以有效改善农产品市场多领域、多中心的瓶颈;借助区块链底层分布式数据库辅以密码学加密技术,将农产品的信息封装到区块中去保证数据的安全性与可溯性;使用合理的共识机制,可高效准确进行农产品交易;凭借智能合约体系将合同与订单智能化,可减少农产品大量滞销的可能性。

袁勇等[3]从比特币系统出发详细地介绍了区块链的工作过程。为了介绍具体的应用案例从而引出区块链技术在农业方面的应用,因此仅按照区块链的相关概念简单介绍区块链的结构。区块链简单理解可以分为以下3部分[4]。

交易:使分布式账本的状态发生改变的一次操作,如某个用户进行的一次转账。

区块:保存某个时间段发生的一系列操作及操作的结果,也是对各个可信任节点的共识过程的记录。

链:按照区块上的时间戳生成的前后顺序,将这些区块串联起来,所有串联而成的链组成了分布式账本状态变化的日志。

参照区块链的基本结构,将作物的种类名称作为某条链的创世区块,将含有时间戳、前一区块哈希值及包含农作物各类的数据块打包上链。区块链结构如图1所示。

图1 区块链结构Fig.1 Structure of blockchain

1.2 区块链核心技术

1.2.1共识机制

共识(consensus)和一致性(consistency)有时会被放在一起讨论,但是从形式上来说两者并不相同[5-6]。一致性是分布式系统中多个节点对外表现出来的状态,是一种结果。共识则是分布式系统中若干个节点达成某种一致性状态的过程。实现了某种共识状态,但这种状态有可能并不是需要的状态。比特币系统使用的是工作量证明算法,该算法的实质是节点算力的竞争,即所有参与竞争的节点都在寻找某一数值,该数值满足某种条件,当找到满足条件的结果时,获得数值的节点就拥有了记账权,并且获得一定币值的奖励。以太坊使用的则是权益量证明算法,即系统中权益量大的节点获取记账权的概率高。但是上述两种共识机制都需要通过挖矿花费大量的资源来维护网络性能,会造成资源浪费。本研究设计的质量溯源系统需要处理的数据量大,要求系统具有强扩展性,因此选用一种新的共识机制——权威证明机制(PoA)[7]。

共识机制是区块链系统的灵魂,共识算法的好坏会直接影响到分布式系统的性能,使用PoA共识机制,节点间不需要竞争算力,所有的交易和区块均有验证人(授权节点)处理,从而使得联盟链的维护成本极低。但是PoA共识机制需要选取验证人(授权节点),这一步极为重要,负责处理区块的验证人(授权节点)必须经过层层筛选,必须保证自身的可靠性。

1.2.2密码学

现代密码学和信息安全的研究成果是人类社会通向信息社会的桥梁[8]。区块链中信息的安全性、完整性和可溯源性就是依赖密码学技术的成果。如比特币系统中使用双HASH256算法来处理交易信息,保证数据的完整性,把不同长度的信息处理成256位二进制的字符串以Merkle树形结构存储,将树的根节点作为信息查找的索引存储在区块链头部,便于信息的查找与检验。

哈希算法具有正向快速(有效时间内快速计算出哈希值)、逆向困难(已知哈希值,很难计算出哈希值对应的明文)、输入敏感(原始信息和修改后信息的哈希值明显不同)和冲突避免(内容不同的明文,基本不可能出现相同的哈希值)特点。

为了满足安全性和权限检验的需求,区块链技术使用了非对称加密技术。非对称加密技术的含义是加密和解密的过程中使用不同的密码,分别称为公钥和私钥。使用该技术,可以实现消息的机密、数字签名和合法登录等服务。数字签名则是用来验证消息的完整性和发送人的身份,发送消息的人用自己的私钥加密消息然后传递给接收者,收到消息后使用发送者的公钥对消息解密以确保消息来源的可靠性。合法登录服务是将登录消息利用私钥加密后发送给服务器,服务器接收消息后利用公钥解密,来判断登录的合法性。

1.2.3智能合约技术

智能合约是一种经计算机编程嵌入的可以自动执行合约的相关操作。智能合约大致分为3类。第1类是“Chaincode”,即区块链代码,将智能合约放在链上的某个区块上。第2类是“智能法律合约”,将法律上允许的行为通过区块链上的代码加以整合,以达到自治的目的。第3类则是“智能应用合约”,即以智能合约为底层核心,建立有商业价值的新型合约模式。智能合约的声明周期与传统的合约类似,第1阶段是合约的生成,参与合约制定的多方人员执行沟通,指定合约规范,将最终得到的合约进行验证,获得正确有效的合约代码。第2阶段则是合约的发布,合约的发布与链上信息的广播与验证是类似的,将合约的代码存进区块数据上。最终阶段是合约的执行,当有某个事件符合合约的触发机制并且合法就会被执行。

基于联盟链的质量溯源系统结合使用第2类与第3类智能合约,在农业种植链与企业加工链上采用第2类合约,指定相应的明文规范以约束两者可能会产生的违法行为。在预定订单等方面使用第3类智能合约,自动配发符合条件的订单,提高联盟链处理订单的效率。

2 基于区块链技术质量溯源的企业案例

我国是农业大国,从刀耕火种到机械化大规模作业,科技在农业生产方面起到了巨大作用。党和国家非常重视农业生产发展,提倡农业与新兴科学技术相结合,促进农业生产力发展。2016年,工信部结合全球200多个案例,提出我国区块链技术发展路线的建议,虽然其中并未明确指出区块链技术如何融入到农业生产中,却为相关发展打下了基础。2018年中央1号文件提出,实施智慧农业。2020年中央1号文件指出,依托现有资源建设农业农村大数据中心,加快物联网、大数据、区块链、人工智能、第5代移动通信网络和智慧气象等现代信息技术在农业领域的应用[9]。越来越多的研究人员也把区块链研究融入到智慧农业中。TIAN Feng[10]分析了农产品供应链追溯系统的优缺点,并构建利用射频识别和区块链技术的系统。GEORGE R V等[11]等从食品供应链出发,介绍了区块链在农业和食品供应链方面的应用。

2.1 单一种植业

2017年4月25日,江苏某公司联合黑龙江垦区,在上海举办全球首个“区块链大农场”推介会,针对区块链技术在大数据农业方面的场景应用和经营方式进行重点推介。双方合力打造了一个以农业物联网、农业大数据和区块链技术等为基础的线上农业产品的管理平台,形成了一个封闭的“平台+基地+农户”的自治农业产业体系。

该平台将其智能服务一分为五,将种植前中后一系列服务融合到一起。联手优质产业链伙伴,共同为订单客户提供优质的生产服务;使用智能的农业终端,实现作业全程数字化、信息实时化和管理智能化,订单客户可实时追踪订单情况;利用智能合约技术将订单与合同智能匹配,既降低了违规操作的可能性又提升了产品效益;使用权威机构的检测结果多方面评判粮食品质,为粮食交易提供精确品质保障。为了将粮食信息价值化,平台将信息封装成区块,这种区块是可以在链上自由交易的数字化资产,任何参与者以通过自己手中的资源获取到“价值信息”。该平台借助新兴科技力量改变了传统靠天吃饭种植模式,以订单需求进行资源划分,分配土地种植,改善传统农业资产与资源滥用的情况,开创了一种从土地到种子、从种子到种植户、最后到售卖的全新农业生产体系。平台可对整个过程进行追踪记录,从产品初始地就保证了粮食的安全生产及信息的透明化。该平台的实质是通过区块链技术进行溯源,以智能合约技术进行订单管理,借鉴该平台的技术,可以将其推广到渔业、养殖业等方面,帮助农业向着更高智能化水平发展。

2.2 多元种植业

“绿色农业”一直是我国倡导的农业发展模式,当前我国正积极推进农业供给侧结构性改革,强调以科技促进农业的绿色发展,走循环发展的路子。某公司与同济大学联手利用区块链技术打造了我国第1个有机食品的溯源与防伪系统。该系统是授权认证的联盟链,借助区块链技术良好数据传输与安全性的特点,将农产品在种植、仓储、检测、加工与销售过程中涉及的实体全部加入到链内,建立了一个全方位的质量溯源平台。

为了迎合潮流,方便大众,该公司同时与黑龙江垦区精诚合作,研发了国内首款农业质量溯源APP。该APP是基于C-Ledger区块链大数据库的手机客户端应用,用户可以通过该APP查询到大米从田间到商场的过程中产生的一系列信息,并且通过防伪码可以验证大米是否掺假。为了扩大联盟链的范围,该公司先后同新疆生产建设兵团,齐齐哈尔等地区的种植户进行合作,涵盖了蔬菜、水果等多种有机食品,灵活地将绿水青山同群众舌尖上的安全联系了起来,实现生产效益与民生效益的双赢,为更多产业实现增值提供借鉴与参考。

2.3 养殖业

某科技公司同保险公司、物联网科技平台合作,联手打造了一个集人工智能、区块链和防伪等技术的农村养殖业的质量溯源系统。从鸡苗的入栏到成熟、屠宰和运输,这一系列过程产生的数据信息都会被记录入链,利用链上区块数据不可篡改性的特点保证每只鸡的信息安全可信。同时,该项目负责人与当地扶贫办合作,将分散的养殖户的鸡集中管理,既保证了鸡的品质,又解决了当地贫困户的就业问题。

为了更好地收集每只鸡的信息,养殖场为每一只鸡都佩带了物联证件——“鸡牌”。“鸡牌”可以自动收集各类信息并实时上传至区块链,结合使用混沌学防伪、光学防伪等技术,使得每一只鸡的“鸡牌”都是独一无二的,并且用完立即焚毁。利用养殖场的监控设备,可以实时监控鸡仓温度、土壤湿度和鸡的日常生活等信息,然后传到后台;利用人工智能技术对信息分析建模并预测鸡的健康。同时,为了降低养殖户的投资风险,依据区块链上的信息,保险公司可以评估养殖户的资质,为其提供农业保险等保障,大大减少养殖户财产损失,降低投资风险。

该项目开创了我国养殖业第1个基于区块链技术的质量溯源系统的先河,为养殖业的溯源提供了新的思路,同时将保险资质评估的信息加入到链内使得养殖户投保工作变得不再繁琐。

2.4 案例经验总结

案例1与案例2有一个共同特点,都是依托黑龙江垦区万亩良田,借助企业的科技力量,联合众多农户合力打造的大米质量溯源系统,其优势在于黑龙江垦区种植面积大,种植大米的种类虽然多但是便于统一管理,可以机械化统一作业,而且已有的基础设施齐全,不需要再进行大规模地改进,实现起来比较方便。后者为了扩大领域,将果蔬也涵盖进其溯源系统。

上述2个案例均是作用在大规模种植地区,对于种植种类多但是土地不成片的地区适应性则较差。针对这类地区可以采用联盟链的方式进行管理,首先,根据作物的不同,划分不同的种植代表地区,依托权威检测机构进行授权,符合标准的地区才能准许入链。其次,不同地区使用不同的物联设备采集作物信息,然后建立小基站收集信息,统一收集并由专业人员进行鉴定,保证上传的信息真实可信。最后,联盟链应该由当地政府主导,合理地协调各方利益冲突,统筹各地区人员与物资规划。

案例3创新性地将区块链溯源技术应用到养殖业,参考其为鸡配发“鸡牌”的做法,可以将其推广至牛、羊等养殖业,但是如果大型牲畜从一开就进行这种模式,其费用也是巨大的。大型牲畜饲养周期长、费用大,针对这一问题,可以建立一个中间检测机构,在进行贩卖牲畜前,需要到该机构进行登记,该机构将会进行牲畜检测,并将牲畜的检测信息存储到区块链数据库,符合检测要求的牲畜可以进行贩卖,检测机构还需记录收购者的信息,条件允许还可以将收购者的信息统一录入。通过这种方式的规划可以减少前期收集牲畜信息过程中产生的巨额成本,提高办事效率。

3 农产品质量溯源系统结构设计

本文通过分析总结上述3个案例,提出农产品质量溯源体系的简单结构与设计。实现农产品质量与产地实时查询,让消费者吃上安全可信的食物具有重要意义,使用区块链技术可以很好解决这个问题[12]。首先,需要将农产品的各类信息加盖时间戳,然后利用哈希数输出每个产品的哈希值,并按照时间序列将这些信息成块成链[13]。农产品各类信息包括育种、种植、收货、生产、加工、保存和运输等,还需要保证这些数据的真实性[14]。其次,某个产品出现问题时,根据信息在传输的某个过程中使用的数字签名和密钥可以找到信息的发出者,找到该负责人并对产品进行追回。上述案例中的“善粮味道”就是农产品溯源很好的成果,在发生问题之后能够第一时间定位到问题源点,通过借鉴该平台的成功经验,可以将其推广到水果、蔬菜和鱼肉蛋奶等其他农产品。时间戳可以保证数据的完整性,哈希函数保证了数据的不可篡改性,数字签名保证了数据的不可否任性,因此利用区块链技术可以高效地完成农产品质量溯源。

农产品种类多,种植地区纷繁复杂,想要建立规模庞大的农产品溯源体需要多方组织参与,针对上述特点,基于联盟链方式设计的溯源体系架构如图2所示。

图2 地区农业多种作物种植的质量溯源体系架构Fig.2 Quality traceability system for regional agriculture of multiple crops

3.1 准入制

准入制服务可以分为地区注册与管理、农户身份管理及企业管理3个部分。地区注册与管理服务是负责地区土地资源与作物种植管理,科技工作站派遣技术人员深入当地合理评价土地资源和适宜种植的作物等,根据作物种植种类,将符合条件的地区划分成不同节点,给予入链权限。农户身份管理服务则是对进入联盟链的农户进行培训,定期考察有无违规操作,对有违规操作的农户直接除名不得再次入链。企业管理服务则需要政府联合相关检测机构将信用良好且有能力的企业加入联盟链中负责农产品的后续加工服务。准入制服务管理节点的验证人需要有良好的信誉,必须是值得信赖的才行,否则会出现难以想象的后果。上述节点的评定次数超过3次,则永久失去进入联盟链的资格。评定流程如图3所示。

图3 准入服务流程Fig.3 Access service flow

3.2 区块链服务

区块链上的数据服务统一由农业工作站的科技人员进行管理,包括数据的采集、核对和校验等,每一个数据块都必须含有时间戳,溯源时可以找到准确的时间点。同时,结合使用二维码技术和条码技术,利用二维码标识作物在生产加工过程的一系列信息,使用条码技术存储农产品从种植到销售等过程中的一系列信息。

交易服务的前端可以利用微信小程序,依据购买数量将购买身份分为个人购买者和企业购买者。个人购买者可以直接申请账号注册,注册账号成功后可以进行购买产品,付款成功后可以获取到产品和一个公钥,利用该公钥可以查询到该产品的各类信息,如果产品出现问题,可以向管理员申请私钥进行溯源查询。企业购买者首先需要向管理员申请资格评定,符合资格的企业购买者可以直接获取公钥查询产品相关信息,签订订单后可获取私钥进行产品溯源信息的获取。获准进行的交易经由权限节点的确认打包上链后,统一管理。

基于联盟链的质量溯源系统需要处理的交易数量多,如果通过节点竞争算力来获得记账权,会降低交易的处理速度,并且会浪费大量资源。系统采用权威证明(PoA)共识机制,前期指定政府检测机构为授权节点,对新进来的节点进行签名广播,后期可以通过投票的方式筛选新的授权节点避免出现非法节点。使用权威证明(PoA)算法能够保证联盟链的处理速度更快、能源消耗更低且可扩展性更强,从而符合智慧农业的要求。

3.3 智能合约服务

制定一系列奖惩措施,利用智能合约技术编程实现,嵌入到代码中,当违反联盟链规则的行为发生时自动执行奖惩,提高管理效率。使用智能合约技术管理合同与订单,根据生产量与订单数量,智能地分配订单任务,高效地利用每一块土地资源。合约一旦建立,系统会自动执行合约,任何人都不可以单方面撤销合约或阻止合约的执行,避免出现信用问题。使用进程间隔离的技术将智能合约代码的进程隔离到系统之外,并通过socket通信方式远程调用智能合约。最先进的是安全容器技术,让智能合约代码运行在独立的容器内,实现合约代码与账本数据的完全隔离,避免出现账本数据被修改的安全问题。

3.4 联盟链的维护与优势

联盟链的前期维护可以利用政府或是高校的科技工作者,后期可以寻求符合资格的企业进行共同维护,采用联盟链的形式进行农业种植作物的质量溯源可以较大程度保证质量溯源的可靠性,接纳更多的良心企业参与其中,使得来自不同地区的不同作物都能够上链。专门的科技人员进行数据采集与维护,这种方式虽然会增加一定的成本,但是如果在某个环节出了问题,就可以快速地找到问题源头,从而节约时间,提高办事效率。联盟链最大的特点就是可以容纳多方进入,这样就可以实现农产品种植、生产加工和包装销售的一条龙服务。联盟链采取的是先订单后种植方式,根据订单的数量合理分配土地资源,既可以有效利用土地资源,又能够减少农产品滞销风险。总的来说,使用联盟链的方式要优于使用公链或者私链的方式进行质量溯源。

4 结束语

我国传统种植业经常存在农药使用超标、产地造假等问题,为解决这类问题,可以利用链上数据具有溯源性这一特点,将农作物育种、产地、存储和物流等一系列信息上链,发现问题及时溯源、及时解决,既保证了农产品的质量真实可信,又节约了企业的质量检测成本。将分布式账本的特性应用到农产品供应链中,农产品的生产、物流和消费环节以“链”实现,可以解决产品买卖双方地位不平等问题。农业生产过程中,自然灾害问题是难以避免的,将农业保险的一些条款利用智能合约技术写入区块链中,当灾害发生之后自动执行合约,既可以提高理赔效率,又能够减少骗保行为的发生。

区块链技术发展至今已有12年,但是将区块链技术应用到农业生产还有许多问题需要解决。首先,区块链技术应用到农业上的时间并不长,想要商业化落地还需要不断创新,大力推广。其次,虽然区块链技术中的数据有很好的安全性,但也不是完全不可能被窃取,如何保证农业数据不被窃取也是一个重要的问题。最后,区块链中的数据不允许篡改,如果上传到链上的数据本就是虚假的,将会造成难以想象的后果。上述仅是区块链技术应用于农业生产的部分问题,作为新技术,区块链技术还需要不断探索以保证在智慧农业发展中更好发挥作用。

猜你喜欢
合约区块节点
基于图连通支配集的子图匹配优化算法
一种基于链路稳定性的最小MPR选择算法
结合概率路由的机会网络自私节点检测算法
采用贪婪启发式的异构WSNs 部分覆盖算法*
《红楼梦》的数字化述评——兼及区块链的启示
区块链助跑财资管理
一场区块链引发的全民狂欢
区块链助力企业创新