王 华 李卫卫 吴怀广 白艳红 栗俊广
1(郑州轻工业大学计算机与通信工程学院 河南 郑州 450001) 2(郑州轻工业大学食品与生物工程学院 河南 郑州 450001)
禽类肉产品是农畜产品的重要组成部分,也是人们日常接触较多的食品之一。“猪链球菌事件”、“苏丹红事件”、“瘦肉精中毒事件”等的发生,严重危害消费者的身体健康,产生极其恶劣的社会影响,同时使食品安全成为社会各界、世界各国关注的焦点。
食品安全事件的频繁发生使人们对食用肉产品的安全性产生了质疑,为了实时监管肉类产业链各环节的食品安全,建立有效的肉产品追溯系统就变得刻不容缓[1]。近年来,国内外学者在肉产品安全溯源问题的研究中取得较多成果[2],如王红艳采用在刚出生的小猪耳朵上嵌入RFID芯片、用二维码查询信息的方式研究出肉猪溯源系统[3];焦玉聪等采用RFID技术与二维码技术相结合的方式研究出牲畜肉产品溯源系统[4];钟聪儿等根据“复合型RFID耳标”、QR Code码、NFC标签技术研究出肉产品追溯系统[5];赵丽等采用RFID技术研究出屠宰阶段信息追溯系统[6];Dabbene等根据食品溯源系统分析研究RFID技术应用的广泛性[7];Cuinas等根据RFID技术研究其在不同食品溯源系统中的应用[8];陈国久根据RFID技术贯穿整条供应链的方式研究禽类肉产品溯源系统[9];Ketprom等采用RFID技术与LF标签相结合的方式研究禽类运输车辆和禽类状况追溯系统[10]。纵观国内外,RFID射频技术已经被广泛应用到肉产品溯源领域[11-12],然而溯源对象大部分是个体比较庞大且容易标记的猪、牛等家畜,对小个体的鸡、鸭等禽类溯源系统的研究却很少。本研究在充分了解肉产品产业链农畜标识方式的情况下,结合企业与消费者的需求,采用群体编码技术唯一标记禽类群体,耦合加密二维码技术,构建一个面向企业及公众用户的禽类肉产品安全溯源平台,保障消费者快捷精准地查询到禽类肉产品的各养殖加工环节信息,有效提高食品市场安全及公信度。
禽类具有个体小、群体大的特性,为了保障企业对肉产品产业链各环节信息的高效管理,建立健全的溯源信息存储数据库,记录禽类肉产品来源、生产、销售链条信息,实现肉产品信息完整可跟踪的功能。群体编码技术强大的群体标识能力、二维码技术快捷查询信息能力及加密算法保障信息安全能力,有助于实现禽类群体标记、多方式查询溯源信息、溯源信息安全有效等功能。本系统分析相关企业的禽类肉产品流通环节,总结禽类肉产品产业链关键环节点如图1所示,禽类肉产品产业链包含种禽养殖、孵化、肉禽养殖、加工、运输、销售六个关键环节点。① 种禽养殖环节:此环节养殖种禽并为孵化企业提供可靠蛋源,为系统提供种禽养殖基地与检疫报告、出库种蛋数量与去向等相关信息,其中检疫报告包含氯霉素、呋喃类、代谢物磺胺类等药物残留含量检测,严格控制药物残留含量于《食品安全法》的规定范围。② 孵化环节:根据企业孵化准则对采购的种蛋进行检验及验收,随后将合格种蛋分批次孵化,为系统提供孵化蛋的孵化环境、孵化率、出库禽苗检疫报告及数量等相关信息。③ 肉禽养殖环节:根据企业肉禽养殖标准,对采购的禽苗进行检验及验收,并将合格禽苗放入固定栋进行养殖,为系统提供禽类养殖基地与检疫报告、出库禽类数量与去向等相关信息,其中检疫报告包含的药物残留含量应严格控制于《食品安全法》的规定范围。④ 加工环节:根据企业现有加工条件对接收合格肉禽进行加工并分类型输出,为系统提供禽类肉产品加工环境、加工企业等相关信息。⑤ 运输环节:根据销售信息将禽类肉产品运输至销售商订单所提供的地址,为系统提供禽类肉产品运输企业、运输日期、运输环境等相关信息。⑥ 销售环节:根据相关肉产品售卖标准对采购的禽类肉产品进行验收,为系统提供销售商、生产日期、保质期等肉产品相关信息。
图1 肉产品产业链关键环节点
本系统分析肉产品产业链相关企业对禽类的标识方式,总结禽类标识不完善点在于:① 采用为个体佩戴RFID脚标的方式记录产业链信息,禽类虽没有大的个体但有庞大的群体,采用此方式无疑会增加企业生产成本及工作量。② 系统溯源码编码规则的多样性造成溯源码长度的不确定性,但是追溯码较长的现象时有发生,因此会增加消费者输入溯源码的复杂度,从而降低对追溯系统体验的好感度。③ 标识编码规则无规律可循,从而降低标识编码关联度不易于企业对禽类进行管理。
基于禽类肉产品产业链关键环节点、禽类标识不完善点的分析,设计基于二维码的禽类肉产品安全溯源系统的功能需求如下:① 信息综合管理系统设计需包含种禽养殖、孵化、肉禽养殖、加工、运输、销售等六个关键环节点,根据肉产品批次信息追溯禽类肉产品产业链各环节信息。② 以种禽养殖环节作为起始点,对各环节禽类进行唯一群体编码设计,相邻环节通过编码关联实现信息互通。③ 寻找可行性较高的方法对溯源码长度进行压缩,并结合二维码技术为消费者提供不具有单一性的溯源方式,为追溯禽类肉产品产业链信息提供便利。④ 采用加密算法对二维码进行加密设计来确保溯源信息的安全性。
结合禽类肉产品产业链各环节所附带的业务数据不同与综合管理各环节信息的需求,系统最终确定采用“浏览器/服务器”(B/S)的架构模式。B/S系统包含三层体系结构,分别为数据服务层、业务逻辑层和应用表现层[13],主要实现肉产品产业链各环节禽类信息数据的上传、下载、在线交流以及信息公示等功能,如图2所示。
图2 B/S系统结构图
(1)数据服务层:选择MySql数据库作为庞大且复杂的肉产品产业链各环节数据存储平台,建立具有关联性的各环节编码信息表格,运用MySql中的索引技术和触发器实现对关系表中企业ID、禽类信息、运输信息等的查询及数据的自动更新。(2)业务逻辑层:系统结合业务与数据需求,借助Java各类库的强大功能实现数据查询、修改、删除等操作,使用组件式开发体系大幅度缩短系统开发周期的同时降低系统后期维护难度。(3)应用表现层:系统业务功能通过菜单与操作界面进行展现,采用交互性更强的AJAX技术使用户无须刷新整个页面便可完成数据请求及响应等操作,极大地提高了用户体验感。
图3为系统溯源流程,养殖企业获取系统使用权限,并添加产业链相关企业管理员信息,使各环节企业获得通过系统添加禽类肉产品相关信息的权限,系统生成溯源码及二维码跟随肉产品进入不同销售商并被粘贴至肉产品包装袋,消费者通过PC端输入溯源码、客户端扫描二维码的方式追溯肉产品信息。
图3 系统溯源流程
通过对禽类肉产品安全溯源系统的需求分析,将系统分为用户管理模块、食品信息展示模块、食品信息追溯模块、食品信息获取模块、食品信息存储模块5大功能模块。① 用户管理模块。用户管理模块记录各环节企业的ID、负责人、联系方式等管理员信息,便于管理员登录系统管理对应环节信息。② 食品信息展示模块。食品信息展示模块整合了禽类肉产品档案信息、流动信息、库存信息等,其中商品流动信息中包括出入库明细、退换货明细等。③ 食品信息追溯模块。食品信息追溯模块完成肉产品产业链种禽养殖、孵化、肉禽养殖、加工、运输、销售六个环节的信息收集整理。④ 食品信息获取模块。肉产品产业链相关企业采用人工收集、手动输入的方式对禽类进行信息档案建立,实现企业实时监管禽类信息的功能以保证消费者获取信息的正确性。⑤ 食品信息存储模块。食品信息存储模块主要使用数据库软件实现禽类产业链信息的储存功能,储存数据主要包括产业链企业信息、禽类编码信息、禽类检疫信息等,各环节均可执行信息上传、修改等操作,极大地提高了数据整理效率。
2.2.1实现禽类群体标识的群体编码技术
针对小个体、大群体禽类不宜进行个体标记的特性,系统采用群体编码技术对产业链各环节禽类进行群体标识。为确保各环节禽类群体管理的便利性,本文基于《国家肉类蔬菜流通追溯体系》规范制定了一套群体编码规则(以鸡肉产品为例),如图4所示。
图4 群体编码规则
群体编码规则涉及种鸡、孵化、肉鸡、加工、运输、销售六个环节。① 种鸡批次编码。种鸡批次编码长度为19位,其中基地类别1表示当前处于种鸡阶段,栋编号(2位)+栏编号(2位)唯一确定种鸡基地内被标记的鸡群体。② 孵化批次编码。孵化批次编码长度为16位,基地类别2代表当前处于孵化阶段,一批种鸡产的蛋会到达一个或多个孵化基地且一个孵化基地每天从种鸡基地进一批孵化蛋,进蛋日期(6位,例如190126)唯一确定孵化基地中孵化蛋批次,数据库中种鸡批次编码与孵化批次编码相互关联。③ 肉鸡批次编码。肉鸡批次编码长度为17位,其中基地类别3表示当前处于肉鸡养殖阶段,肉鸡养殖环节依然存在鸡苗来源广泛的现象,栋编号(2位)+进鸡日期(6位)唯一确定养殖基地中肉鸡批次,一个孵化批次对应一个或多个肉鸡批次且肉鸡养殖基地每天从孵化基地进一批鸡苗,数据库中孵化批次编码与肉鸡养殖批次编码相互关联。④ 加工产品批次编码。肉鸡经过加工后的产品批次编码为19位,其中产品类型为加工后肉产品存在形式,例如01鸡头、02鸡翅、03鸡爪等。⑤ 运输、销售批次编码。同一批次的肉鸡发往不同经销商,因此进行禽类肉产品销售时为各个销售商编写唯一ID(3位,从001开始),以加工产品批次编码+销售商ID共22位唯一确定销售批次编码。
将禽类群体在各个生产加工环节的状态以编码的方式进行表达与关联,该编码规则可实现各环节禽类信息的双向可追溯,方便企业对产业链禽类的信息进行管理。针对销售批次编码较长导致溯源复杂度增加的问题,本系统将22位销售批次编码的生成时间作为12位最终溯源码(年月日时分秒,例190504121212),溯源码长度的减少有效降低消费者在追溯系统首页输入追溯码进行查询时的复杂度,为消费者查询溯源信息提供很大的便利。
2.2.2基于RSA的加密二维码技术
RSA算法是目前应用广泛、可靠性高的非对称算法。非对称加密算法包含公钥和私钥两个密钥,若使用公钥进行信息加密则只能使用私钥进行信息解密,若使用私钥进行信息加密则只能使用公钥进行信息解密。除此之外算法安全性随着非对称算法的复杂性增加而增强,RSA算法的高安全性在于:两质数乘积运算简单,但是乘积分解异常困难。二维码具有可复制、可移植的特性,因此二维码被广泛应用的同时仍存在一定的安全隐患[14]。为了避免他人恶意复制、篡改信息等现象的发生,本系统采用RSA算法对二维码进行加密设计。
为保证销售商作为二维码信息的唯一发布部门,本系统采用私钥加密、公钥解密的方式进行设计,私钥仅销售商知晓,公钥则对消费者公开。RSA算法加密过程如下[15]:① 取不同素数h、k,另n=h×k,取e∈(1,l(n))(e为整数,l(n)=(h-1)(k-1)),公钥则由n和e组成。② 私钥d=(2×l(n)+1)/3。③ 另取w为12位溯源码,使用私钥d对w进行加密后的密文数据串c=wdmodn。④ 使用公钥进行解密方法为cemodn。采用加密二维码溯源过程如图5所示。
图5 加密二维码溯源流程
系统采用RSA算法加密12位溯源码形成密文,并将密文以二维码的形式输出,加密二维码及公钥连同肉产品货柜号、生产日期、保质期等在一张标签纸上打印并粘贴于肉产品包装袋上。其中公钥以涂层覆盖的形式展现,消费者通过扫描二维码输入公钥对密文进行解密,获取正确的肉产品溯源信息。
系统采用非对称算法对二维码进行加密的方法,有利于提高溯源信息的安全性,消费者通过扫描加密二维码进行查询便可得到肉产品产业链各环节完整有效信息,大大降低溯源复杂度、增加系统溯源体验感。
系统采用成熟的Eclipse作为软件开发平台,应用BootStrap实现UI框架设计,采用Mysql数据库实现数据存储模块,应用spring+springmvc+mybatis-plus框架自主独立开发实现系统服务器端设计用来访问系统功能及数据信息,其中mybatis-plus框架有助于系统数据管理与优化,并提高系统可维护性。为提高消费者查询体验感,避免消费者查询方式的单一性和输入溯源码的复杂性,本系统通过QRcoding插件将追溯码以二维码的形式展现方便消费者扫码查询溯源信息。
该系统已经在河南大用集团进行示范应用,图6为系统信息管理界面,系统Web端首页展示了项目简介、技术创新、取得成果等实时信息,便于企业与消费者及时掌握食品安全、系统创新等相关信息。河南大用集团获得系统使用权限,通过后台管理系统实现管理员添加、溯源码管理、产业链信息一体化管理等功能,被赋予系统使用权限的管理员登录成功之后执行单一环节禽类信息的增加、修改等操作。
图6 系统信息管理界面
如图7所示,消费者通过PC端系统首页输入溯源码,查询肉产品产业链种鸡养殖、孵化、肉鸡养殖、加工、运输、销售六个环节的溯源信息,溯源码长度为12位,减少溯源码输入的复杂度;如图8所示,通过调用百度地图API实现养殖阶段的养殖场地理位置信息获取功能;如图9所示,通过点击加工阶段的宰前宰后检疫报告获取完整的禽类检疫报告信息,包含肉产品形状、药物残留的检测、变质与否的判别等,检测合格的肉产品进入运输与销售环节继续流通。
图7 溯源码查询与溯源信息显示界面
图8 养殖场定位界面
图10为二维码查询与手机端溯源信息显示界面,系统通过Web端首页输入框中输入溯源码点击查看二维码方式,将溯源码转化为二维码供用户查询,消费者通过客户端扫描二维码简单快速获取溯源信息。
图10 二维码查询与溯源信息显示界面
本文研究的基于二维码的禽类肉产品安全溯源系统借助群体编码技术与加密二维码技术,整合了禽类肉产品产业链种禽养殖、孵化、禽类养殖、加工、运输、销售六个关键环节点数据信息。完整的产业链信息存储系统帮助企业高效管理各环节禽类的检疫报告、出库量、出库方向等信息,二维码溯源方式为消费者查询溯源信息提供便利,并且使用RSA算法对二维码进行加密,大大提高肉产品信息安全性,帮助消费者获取准确的溯源信息。本系统的研发对禽类肉产品相关企业而言具有很高的应用价值,可以满足消费者需求并得到食品市场安全监管部门的认可。现如今,大数据技术应用于食品安全领域的优势逐渐显现,在接下来的研究中将对溯源系统产生的大量数据进行挖掘与分析,有利于获得数据间的相关关系以及禽类肉产品市场需求的变化趋势,从而对系统进行完善以保证企业快速掌握食品市场信息。