论文部分内容阅读
近年来,各类食品安全问题的爆出,引起了消费者、监管部门和企业对食品质量监控的重视。食品供应链溯源作为对食品信息的全方位展现,是实现食品质量监管的有效手段。目前大部分食品溯源系统存在数据存储中心化的问题,一方面,中心化存储的数据存在被人为篡改和因被攻击或意外情况丢失的可能,使得溯源数据缺乏可靠性和安全性,导致整个供应链溯源系统失去监管功能;另一方面,中心化存储系统应用于整个食品供应链溯源存在较大困难。近些年受到广泛关注的区块链技术以其去中心化、数据不可篡改、数据可溯源等特性,配合由“图灵完备”语言编写的智能合约,能有效解决传统食品供应链溯源系统因中心化存储而导致的数据不可信与不安全问题。本文首先对传统食品安全溯源系统及区块链技术进行分析,针对目前溯源系统存在的数据存储中心化问题,提出使用去中心化的区块链技术作为技术解决方法,并设计适用于一般食品供应链业务需求的溯源系统方案,包括数据接入层、数据核心层、应用表示层的三层溯源系统架构。本溯源方案通过数据接入层的App扫描二维码获取食品信息,通过传感器获取环境信息;在数据核心层采用区块链和数据库存储溯源数据,基于智能合约完成存储和查询操作功能;在应用表示层以DApp(分布式应用,包括微信小程序与网页)的形式进行人机交互操作,实现食品信息的可信溯源查询;此外,针对系统的逻辑安全性,采用VaaS平台对智能合约进行了安全性验证。其次,依据设计完成的系统方案进行软件系统的实现,设计接入层、数据层、业务逻辑层、表现层的四层软件系统架构。基于食品供应链溯源场景需求和溯源软件的体系架构,选用Ethereum作为区块链开发平台,将其用于食品溯源数据的去中心化存储,并使用Solidity作为智能合约开发语言。在食品信息溯源软件系统具体实现过程中,本文完成了区块链网络的建立、智能合约的编写与调用和接口程序的编写与部署等多方面工作,并配套开发了用于溯源数据获取的数据上传App以及用于溯源查询的网页和微信小程序,实现食品供应链信息的存储与溯源查询。通过对系统的功能验证,本文设计的基于区块链的食品供应链溯源系统能够从系统结构层面解决传统溯源系统具有的数据存储中心化的问题,实现食品在整个供应链环境下的可信、安全的溯源查询。