APP下载

基于区块链技术的中药材质量安全溯源系统设计

2020-04-30谢春辉熊蔚维李国妹

关键词:哈希中药材药材

谢春辉,熊蔚维,李国妹,杨 毅

(云南农业大学 大数据学院,云南 昆明 650201)

中药材的质量安全一直以来都是国家和社会关注的热点问题.党中央、国务院高度重视食品药品的溯源体系建设[1].到2020年,国家重要产品追溯体系建设要求采用新一代的信息技术实现追溯信息的互通共享,提升社会公众对追溯产品的认知度和接受度.中药材的溯源是对中药在育苗育种、种植、加工、流通和交易等过程中产生的信息进行采集和处理.采用区块链技术构建的溯源体系不仅具有去中心化、可信度高、自治性、信息无法篡改等优点,还能实现中药材全程监控,让来源可追溯,去向可查询,发生安全事故可以明确责任主体,查明原因,保证药材质量的安全,从而促进中药产业的可持续健康发展.根据查阅文献资料,近年来国内学者针对中药材的质量安全溯源提出了很多切实可行的技术方案,比如曹国均等[2]讨论了区块链技术在中药溯源的创新体系,积极推动“互联网+区块链”溯源平台的建设;陶启等[3]提出结合区块链技术,采用基于危害因子的食品风险评估与安全溯源,构建从农田到餐桌的大米全产业链质量全息数据库;张尚锋等[4]分析了临安笋干质量现状和问题,结合区块链和物联网等新一代互联网技术设计和实现临安笋干质量安全溯源系统.

随着区块链技术的日益成熟,区块链技术具有去中心化、信息无法篡改等优良特性[5],所以文章提出采用区块链技术构建中药材的溯源体系.与传统的中心化数据库溯源系统相比,该体系不仅能保证信息的可靠和可信,还能实现药材从种子育苗、种植、加工、流通到交易5大环节的全方面监管,从而保证了药材的质量安全.

1 传统的溯源系统的不足

溯源系统是对农产品等生产、加工、流通和交易等环节进行数据的采集和记录,运用互联网技术建立供应链信息库,实现产品在每个环节信息可查询,流向可追踪,发生安全责任事故可快速明确责任主体的功能.国内外政府和企业都积极参与溯源系统的建设[6].相比于传统的农产品,药材具有“治病救人”的特殊性,所以药材的质量可能直接关乎到病人的治疗效果,甚至会影响到病人的生命安全,因此中药材的质量监管相比传统的农产品更加严格.但是由于中药材品种多、情况复杂,追溯链长,流程繁琐,种植加工信息不透明,缺乏业内统一的标准,监管难度大,发生安全问题不容易判定责任主体,存在掺假的突出问题,使得流入市场的中药材质量难以保证.

传统的中药材溯源系统普遍采用的是中心化数据库(MySQL、Oracle等)存储数据,这种存储方式在数据安全性和真实性等方面很大程度由数据的拥有者决定.不管是源头加工的企业,还是中间的物流、销售商,甚至是政府的职能部门拥有和保存溯源链的核心数据,只要是流通上的利益相关者,当出现数据不利于某一方时,很有可能出现数据造假,伪造等情况.因此,传统的溯源系统不管是系统流程、体系框架、隐私安全方面都普遍得不到消费者的信任.

2 区块链溯源系统的优势

在中药材质量安全溯源方面,利用区块链技术构建新的中药材质量溯源系统,借助区块链可信度高、自治性强、信息无法篡改等优点可以很好的解决传统溯源系统存在的不足与弊端.

2.1 区块结构保证数据可信

区块链是一种利用区块存储的链式结构,除了创世区块以外的区块由区块头和区块体两部分组成,区块头存放上一个区块的哈希值(prev block Hash)、随机数(nonce)、Merkle根(Merkle root)等.区块结构见图1[7].每一个区块的头部包含前一个区块经过哈希算法计算得到的哈希值,将该值保存到当前区块中,使其与前一个区块相连,同时利用时间戳记录区块数据写入的时间,为区块链中的区块添加可以认证的时间节点,从而提高数据的可信度.

2.2 加密算法保证数据无篡改

区块链利用数字签名算法[8]来确保链上数据不被篡改,保证参与主体身份的真实性和消息的完整性.在区块链技术中,数字签名使用的是非对称加密算法和哈希函数,采用“签名+验证”互补运算来验证数据的真伪.非对称加密算法技术包括一组密钥对,即公钥和私钥.公钥是密钥对中可以被公开的部分,而私钥则只能由所有者保存,不对外公开.通过非对称加密算法得到的一个密钥对可以用来数据的加密,数字签名即是用私钥加密公钥解密.在应用中,对实体成员身份管理验证和数据信息验证可以通过数字签名算法实现,数字签名的“签名+验证”见图3.

数字签名的“签名+验证”可以概述为:发送方通过哈希函数计算得到哈希值,使用发送方的私钥对哈希值进行加密操作后生成数字签名,通过网络传输把数据和签名一同发送给接收方.接收方将接收到的数据后进行解密操作,使用公钥解密和哈希函数生成2个哈希值,通过对这2个哈希值的比较,倘若相等数据无篡改,否则被篡改.

2.3 共识机制保证数据安全

共识机制是区块链技术中的重要组成部分.在区块链系统中,不存在传统的中心化数据库,每一个节点都是一个账本,每个节点都需要承担网络中的网络路由、数据验证和传播等任务[9].区块链技术有助于在不安全网络环境下在用户间建立信任,利用共识机制保证数据和交易的安全.与传统的中心化数据库相比,区块链可以在无需第三方认证机构的介入下完成每次交易,并且这每次交易都是安全和可信的,但是前提是用户都必须遵循事先约定好的共识.在设计时,为了避免由于硬件错误、网络堵塞、中断,甚至是遭到黑客攻击导致系统出现不可预料的行为,可以采用了分布式计算领域较为出名的拜占庭容错算法.

实用拜占庭容错算法(practical Byzantine fault tolerance,简称PBFT)由Miguel Castro和Barbara Liskov提出,该算法能容忍少于三分之一的节点出现宕机或者被恶意攻击的情况下,依旧保证系统能正常运行.PBFT算法采用了密码学相关技术,比如RSA签名算法,消息验证机制等确保信息传递过程中无法被篡改和破坏.PBFT算法的一致性协议见图3所示[10].每1个客户端的请求分为request、pre-prepare、prepare、commit和reply 5个阶段,需要通过采用两次两两交互的方式在服务器达成一致后再执行客户端请求.该算法具有高交易通量和吞吐量,高可用性等优点.目前适用于联盟链和私有链场景中.

3 系统模型

中药材溯源系统中的信息与追溯模型见图4.

中药材从生产种植到消费者涉及到的追溯链流程长而复杂.中药材的质量安全溯源从生产源头到消费终端大致可以分为:育种育苗、种植管理、初加工、仓存、物流、二次加工、交易、消费者等环节和主体.整个溯源体系,参与主体众多,环节复杂,需求差异性大.中药材质量安全溯源系统的建立应该以参与主体为驱动设计,系统应当操作方便,数据来源可信度高,追溯信息存储安全,利用农业物联网技术和移动网络进行溯源数据的实时采集,使用区块链技术进行数据的存储、调用、挖掘和共享,最终向参与主体提供操作便捷的系统.系统设计应该顾及到每一个参与主体,各自信息记录不仅要保证时效性、有效性和完整性,还要让每个环节参与的主体都能共享其他主体的数据.

4 系统设计与实现

4.1 平台选择

区块链平台按照网络范围可以分为公有链、私有链和联盟链,按照项目可以分为币类、平台类、应用类和资产代币化.2013年12月Buterin提出了以太坊(Ethereum)平台,2015年12月Linux基金会发起了Hyperledger开源区块链项目,2016年4月R3公司发布Corda去中心化数据库[11].随后几年的时间里,各大组织和企业都陆续发布了满足各种需求,面向不同用户的平台.4种常见的区块链平台对比,见表1.

表1 区块链平台对比

根据表1,基于对个平台的对比和项目的总体构架,整个溯源体系研究在联盟链基础上实现,平台选择的是Hyperleder Fabric.

4.2 系统框架

根据图5,基于区块链技术的中药材质量安全溯源系统在设计时考虑到政府职能部门和每个环节实体之前需求存在的差异性,因此数据的存储的设计由两部分组成:传统的中心化数据库(系统使用的是MySQL数据库)存储常规化数据(溯源主体信息等)和基于区块链技术分布式存储每个环节溯源主体产生的数据信息.系统采用Hyperleder Fabric作为区块链底层框架,使用Go语言作为开发语言,软件框架选用C/S框架.由于在溯源环节中会产生大量的数据,在溯源环节中使用农业物联网、传感器以及手持端的设备进行数据的采集.药材最后会流入到消费者手中,消费者则使用微信小程序等移动终端进行药材的回溯.在整个过程中,药材流通的核心数据保存在区块链中,而政府职能部门管理的数据则以中心化数据库形式进行保存,这样可以确保药材流通过程中数据的保密、安全和不可篡改,同时还可以在发生重大的安全事故时,能快速定位事故出错环节,明确责任主体,查明事故原因.

4.3 溯源方案与终端用户界面4.3.1 溯源方案

参见图6的溯源方案流程图.育种公司每培育一批次的种苗(种子)经过检验合格后,向政府职能监管部门或者第三方认证机构申请种苗批号或备案登记,育种公司使用私钥签名批号及信息后,将数据同步至区块链上;种植户向育种公司或者代理商购买种苗后,双方达成交易共识,种植户可以直接通过手机端应用在链上或者委托相关监管部门和第三方验证机构,确保种苗无病虫害并且是所需种植的品种,验证通过后种植户使用私钥签名该批号的种苗,然后把签名数据回传给育种公司,由育种公司进行种苗(种子)的更新.

溯源过程中的田间管理是整个追溯方案的核心环节,该环节对药材的农业活动(施肥、浇水、除虫等)会直接影响药材的质量.该环节应该由政府主管农业部门牵头制定管理标准和规范流程,对农药、化肥等实行量化标准.在人工栽培的几百种中药材中,每一种药材对环境温度、湿度、土壤温度以及光照强度等外部环境都有很严格的要求,比如三七喜阴凉,苗期透光度不能低于35%[12],生长适宜温度18~25 ℃,以土壤疏松,排水良好.为了保证田间管理数据的来源可靠,田间管理的数据可以采用传感器技术,数字化大棚等新一代农业物联网技术进行采集和整理.随着规模农业大棚的快速发展,农业自动化控制、物联网技术以及无线网络技术都得到了广泛应用[13].在田间管理过程中把物联网采集到的环境数据以及自动化控制的操作日志,使用种植户的私钥进行签名后同步更新至区块链上.整个田间管理的结构图见图7.

当种植户完成种植,收获采摘后,委托育种公司和第三方药材鉴定机构对中药材进行鉴定和评级并且出具鉴定报告.种植户用私钥进行签名材料后,将数据更新至链上,加工商采购中药材进行二次加工前核对验证信息.当中药经过加工后经过物流、二次加工、直到交易前整个过程,链上数据更新同上,当前所处于的阶段信息由所有者持有,并且负责更新药材状态.中药材会由药店和药厂、医院和医疗机构,或者是多级代理商进行销售流入消费者手中,那么最终的去向以及受众信息由这些持信息状态的所有者机构或者组织进行更新.

这样,整个中药材的流通痕迹都会被记录到区块链上.育种公司和种植户可以通过链上的流通痕迹追踪药材的流向,加工商、仓库和销售主体可以对采购的药材进行定向查询,消费者或其他使用药材的终端用户可以追溯整个生产和流通过程,并且进行真伪验证,确保药材的质量安全,监管部门则可以参考整条链上的数据和信息制定更加规范合理和有科学依据政策方针.当发生重大的中药材安全责任事故时,根据链上的数据进行追责处理.

4.3.2 系统界面

基于上述区块链溯源框架,设计并实现了基于区块链技术的中药材质量安全溯源系统,终端用户使用微信小程序或者移动应用直接访问.用户输入或者扫描药材上的溯源码,系统从区块链交易链条中提取出需要回溯的信息.

图8展示的是系统终端消费者使用的溯源界面.由于系统涉及到的参与实体众多,流程复杂,同时系统还要兼顾和遵循现有的业内流程,所以系统在设计研发过程中采用“末端驱动,逐步向前”的设计理念,先完成消费者终端溯源的需求,再分步向前,加强与每个环节实体间的沟通,同时积极与地方政府和相关部门的交流.

5 结语

本文利用区块链技术设计和实现中药材质量安全溯源系统,阐述了系统关键技术.为溯源系统研究和建设提供新的思路和方法.通过对中药材整个生命周期活动环节信息的采集和记录,如果发生药材质量安全问题,可以使用溯源系统追溯到药材的育种单位、田间管理、加工商、物流运输和销售企业等关键信息,这样不仅可以保证销售者的合法权益,还能促进中药材行业的健康平稳发展.系统技术先进,逻辑严密,安全可靠,操作简单,有较好的推广应用价值.

猜你喜欢

哈希中药材药材
道地药材变成致富“金叶子”
夏季中药材田间管理做好这五点
中药材促农增收
基于特征选择的局部敏感哈希位选择算法
春季种什么药材好?
哈希值处理 功能全面更易用
药材价格表
文件哈希值处理一条龙
宋四清:种植中药材 托起致富梦
DNA提取4种中药材方法的筛选