基于区块链的中药材溯源体系设计研究
2021-08-06费悦陈平平刘慧玲谭定英
费悦,陈平平,刘慧玲,谭定英
(广州中医药大学医学信息工程学院,广州510000)
0 引言
中药材质量追溯主要是利用信息化手段和物联网技术来监管流通的各个环节,从而保障中药质量的安全性和有效性[1]。在我国,多年来中药材的种植和生产都处于一个粗放式的状态,中药材主要来自散户种植或者大型种植基地。由于中医药事业历史悠久,这样较为落后的生产模式也已持续多年。随着社会的进步和科学技术的迅速发展,粗放式经营状态的生产模式显然不再可行,存在诸多问题亟待改进和完善。为改善目前中药材质量安全难以保证且信息难以有效追溯的现状,许多学者专注于中药材溯源领域的研究,并提出相应的解决方案,若发生中药材质量安全事件,能够迅速找到问题的源头并在必要时将中药材产品准确召回。施明毅等人[2]通过分析中药质量安全与中药材追溯体系之间的关系说明后者的重要意义,并归纳总结了目前的追溯系统采用的关键技术以及仍然存在的问题和原因。文献[3]具体分析了目前中药材溯源体系的行业现状,提出通过关键信息的电子化管理实现中药材质量追溯,并将追溯体系实际应用,得到了不错的效果。目前中心化数据库被广泛用于传统的中药材溯源系统的数据存储,然而,这种存储方式实际并不可靠,因为其数据的安全性和真实性在很大程度上取决于数据的拥有者[4]。作为数据流通上的利益相关者,如源头加工的企业、中间的物流、分销商等,一旦数据不利于某一方的情况出现时,则极有可能出现数据篡改、甚至造假等情况,难以保证数据的真实性。因此,传统的溯源系统在信息安全等方面普遍难以得到消费者的信任。
在中央政治局第十八次集体学习中,习近平总书记强调,“区块链技术的集成应用在新的技术革新和产业变革中起着重要作用”。鉴于区块链具有分布容错性、不可篡改性以及隐私保护性等优势,有学者提出将区块链技术应用到食品溯源中。文献[5]提出基于区块链技术构建食品溯源体系的方案,并且在理论方面十分可行。随着区块链技术的日益成熟和应用的广泛,同时受其在农产品溯源体系中的应用启发,本文将利用区块链技术对中药材溯源体系进行设计和研究,从而实现中药材来源可追溯、去向可跟踪、质量可监督、责任可究查。
1 区块链技术原理及基本架构
区块链技术追根溯源由中本聪于2008年提出,作为比特币的底层技术,区块链本质上是一个去中心化的数据库[6],区块链网络中的数据由各节点共同维护和更新。区块链融合了P2P网络、加密算法、分布式架构和数据存储等关键技术,具有分布容错性、不可篡改性以及隐私保护性等特性,在数据存储安全、去中心化系统方面的应用具有显著的优势。
区块链是一个共享的、不可更改的账本,利用链式结构将信息存储在区块中,区块均由区块头和区块体两部分组成(创世区块除外)[8]。区块头存储上一区块的Merkle根节点(Merkle root)、哈希值(prev block Hash)、时间戳(time stamp)以及随机数(nonce)[9],区块体包含10分钟内选定的交易记录。区块链的结构如图1所示。每个区块头都包含它的上一个区块的哈希值,对每个区块头进行SHA256加密哈希,可生成一个哈希值,将该值保存到当前区块中,并使其与前一个区块相连,同时为使区块链中的区块添加可以认证的时间节点,时间戳记录下数据写入的时间。这样每个区块就通过链接到各自父区块的哈希值序列创建了一条一直可以追溯到第一个区块的链条。
图1 区块链结构示意图
区块链系统可分为数据层、网络层、共识激励层、合约层以及应用层[7]。区块链系统的基本架构模型如图2所示。
图2 区块链系统基本架构示意图
2 基于区块链的中药材溯源体系设计
2.1 中药材溯源过程
中药材生产全过程环节多、链条长,主要包括中药材种植环节、中药材生产加工环节以及中药材流通销售环节。在中药材供应链中,参与活动的主体有:中药材种植户、中药材加工厂、物流运输方、分销商以及消费者。中药材供应链如图3所示。
图3 中药材供应链流程图
结合食品安全溯源体系和中药材种植生产的特点,本文将中药材溯源归纳为以下过程,如图4所示。
图4 中药材溯源信息流程图
在中药材供应链的每个重要环节,均需准确记录其关键信息点。在中药材种植环节,记录种苗来源信息、产地信息、种植的一些相关信息(如温度等)以及收获中药材出库前的检验信息。在中药材加工环节,则需要录入药材入厂的基本信息、药材的检验信息、在加工厂进行加工的过程信息以及加工完成后对成品的检验信息。在物流运输和分销商交易阶段,记录相关的运输信息、药材交易信息等。最终将由消费者购买,同样要准确记录交易信息。可见,中药材的供应链环节多、涉及的关键信息点复杂。若采用传统的溯源方式,恐难以保证信息的准确性和可靠性。因此本文将采用区块链技术将各环节各信息点进行链式存储和管理,若中药材出现质量安全问题,则立即层层递进排查寻找中药材质量问题的源头,从而使中药材的整个生产流通过程具有可追溯性。
2.2 基于区块链的中药材溯源体系设计
本文所设计的中药材溯源体系的技术架构如图5所示,在进行了最初的数据采集后,分为数据层、网络层、共识层、合约层和应用层。
图5 基于区块链的中药材溯源体系技术架构图
中药材通过生产商的种植、加工商的加工、物流运输以及分销商的销售最终到达消费者。在数据采集阶段,收集上述过程各环节的追溯信息,并对信息记录进行总结和提炼,作为中药材溯源体系的底层数据基础。
在数据层,将底层数据封装起来并进行区块化链式存储。通过存储时间戳实现各环节的精准追溯,使用哈希函数对各节点存储的关键数据进行加密达到信息保密的目的,通过非对称算法中私钥加密、公钥解密的机制实现数字签名防止抵赖。与传统的加密过程不同的是,整个追溯过程引入第三方认证机构,在用公钥解密信息并进行核实后,用认证机构拥有的私钥对已有信息以及时间戳进行共同加密。从而避免了供应链上下游之间的联合欺骗。
网络层负责数据传播机制,数据验证机制以及分布式组网机制,采用对等互联网技术(Peer-to-Peer,P2P),以保证区块链中的任一节点都能够收发信息,当一个节点产生一个新区块时,必须通过广播将信息通知其他节点,并由相关部门如食品药品监督管理局等对新区块进行核实,以保证中药材溯源信息对全体用户呈现的透明化。
在共识层,区块链的成员节点包括中药材生产商、中药材加工商、物流运输、中药材分销商、第三方检测机构、政府监管部门以及消费者。为了保证区块链系统中的各节点都能够依据一个统一的、成员一致认同的规则来维护和更新区块链系统的数据,目前主流的共识机制算法有:以太坊的权益证明(PoS)、比特币的工作量证明(PoW)、EOS的委托权益证明(DPoS)等,这些算法能够使高度分散的节点在去中心化的区块链系统中高效达成共识。
根据中药材质量监管的相关规定以及中药材的溯源特点,合约层将基于中医药质量管理法规和中药材安全监督管理办法,并将供应方合约、监管方合约以及需求方合约嵌入区块中,确保对中药材进行规范化、标准化的管理。
最后在应用层,为提供用户与溯源平台之间交互的入口,嵌入应用程序或协议,为用户提供中药材的品质、生产、加工以及运输等信息,为中药材质量溯源服务提供技术支撑。
2.3 基于区块链的中药材溯源体系之加工模块的设计
基于中药材的特点,中药材加工环节主要包括如表1所示的关键信息点。
表1 中药材加工环节关键信息点
图6 中药材加工环节数据输入过程
利用区块链将中药材加工环节的关键信息点进行数据采集,通过区块链系统将中药材入库前、加工前、加工时以及出库前的检验信息采用加密关键信息、封装时间戳等方式按照区块链系统中数据层的结构分别写入区块链系统的数据区块并进行连接,从而保证中药材加工环节信息的可追溯性。
2.4 智能合约在中药材溯源体系中的应用
“智能合约”概念由密码学家Szabo于1995年首次提出,指出“智能合约通过使用协议和用户接口来促进合约的执行”[10]。本质上,智能合约是可以自动地执行传统合约中规定的“如果满足某个设定条件就执行相应的结果”的计算机代码。相比于传统合约的自然语言,智能合约所采用的代码形式具有更强的表达力和极低的歧义性,并且代码本身具有很少的潜在含义,可以保证签订合约的双方拥有提前达成共识的平等权利。
在中药材种植、加工、运输以及最终的销售过程中,卖家会签订供应方合约、买家则签订需求方合约等,监督中药材质量的机构会与厂家签订监督方合约。除此之外,中药材的整个生产过程须遵守我国的《中医药质量管理法规》和《中药材安全监督管理办法》。在本文所提出的基于区块链技术的中药材溯源体系中,以上合约将以智能合约即计算机代码的形式体现以消除自然语言的歧义。在真正实现过程中,可以考虑在签订的纸质合约中说明“双方同意运行并遵守代码执行的结果”。本文以中药材供应方与需求方的供需合约为例,设计了智能合约小程序,模拟中药材供需双方的智能合约签订与交货信息检查系统,实现用计算机代码代替自然语言以达到消除潜在的歧义的目的。图7为利用RSA算法进行数字签名的流程图。供需双方签订合约时进行数字签名的代码实现如下所示,编程语言为Java8,JDK1.8版本。图8和图9为智能合约小程序的部分界面展示。
图7 RSA数字签名流程图
图8 智能合约 小程序首页
图9 智能合约小程序 合约初始化界面
在对供需双方公司的进行身份认证的基础上,可通过“智能合约”小程序进行供需智能合约的签订。小程序可以提供的功能有:合约初始化、交货信息录入以及检查记录详情查看。在合约初始化页面,双方公司可以根据合约模版填写相关的合约信息,包括中药材种类及其数量、中药材定价、中药材质量验收标准、包装要求等,填写完成后进行数字签名并提交,以上内容将发送至对方公司待确认,双方填写内容保持一致且均进行数字签名后即合约签订完成,系统将通知双方。在交货信息录入页面,检查员在对中药材货物进行清点等操作后,可按照模版对数量等其他信息进行输入,填写完成后,系统将根据合约内容对交货信息进行检查和比对,并生成检查结果报告。检查记录详情则可以查看历史的中药材交货信息检查记录,具体包括检查日期、检查员、供应公司、需求公司等内容。
3 结语
近年来,中药材的品质保证和质量问题一直都是国家和社会关注的热点。但中药材的供应链涉及众多关键节点且生产过程较为复杂,仅按照传统方式构建中药材溯源体系很可能出现关键信息造假、篡改,相关部门、利益相关者等联合欺骗等情况,从而造成追溯体系中信息的不对称性和不可信性,进而难以保证出库销售的中药材成品或加工制成的中药的质量,因此传统溯源在一定程度上对于最终中药材质量安全的信息追溯是没有太大意义的。本文根据中药材生产过程的特点,基于区块链技术设计了中药材溯源体系,并详细阐述体系各层次的内容与作用。其中,本文具体设计了利用区块链技术追溯中药材加工环节模块,确保溯源的可行性。此外,本文设计实现了中药材溯源智能合约小程序,将溯源过程中的智能合约进行编程实现,消除了自然语言的强烈主观性和可能产生的歧义,为中药材溯源体系的进一步发展提供价值参考。