郭 云 李 军 包先雨
(深圳市检验检疫科学研究院 广东 深圳 518045)(深圳市超宽带通讯与射频识别重点实验室 广东 深圳 518010)
NFC[1]是由飞利浦公司发起,诺基亚、索尼等联合主推的一种近距离无线通信方式。它是由RFID及互联互通技术整合演变而来,其读写模式是指用NFC阅读器来读取NFC标签,在近距离内与兼容设备进行识别和交换数据。
NFC技术由RFID技术进化发展而来[2],RFID技术的高速发展掀起了物联网的革命性应用,但是RFID技术本身的局限性又限制了其进一步发展:RFID标签读写依赖与专业设备,成本高昂,在带来便利的同时会增加企业负担。二维码以其技术简单、成本低廉的特征迅速抢占了生活消费应用市场,但二维码本身存在防伪性能差、易损坏等缺点,因此大多见于低端应用场景。NFC技术作为RFID技术的延伸,具有成本更低、容量更大、安全性更高的优点。近年来,各大手机厂商均推出了多款支持NFC技术的智能手机,为NFC技术的大范围推广应用建立了良好的硬件基础。目前NFC技术主要应用于高端酒类、奢侈品防伪、大额移动金融支付等对安全性要求较高的物联网应用场景。
A Juntunen[3]于2010年提出了一种应用于移动票务服务的NFC技术关键业务模型,尝试将旅行卡、会员卡等传统票务集成到手机NFC芯片上,并建立了一套称为STOF的NFC通信框架模型,从而实现安全可靠的手机票务服务。J Pesonen[4]于2012年探索了NFC技术在现代旅游业中的应用,尝试从商业模式、生态系统、软件和应用、安全和硬件等四个方面建立起基于NFC技术的旅游模型。在国内,国酒茅台于2013年推出了基于NFC技术的茅台酒防伪溯源体系[5],并在2015年进一步整合优化,逐步推向产品市场,实现了“手机扫一扫 可验身茅台”的预期目标。南开大学软件学院的马捷[6]提出了一种基于NFC技术的蓝牙设备快速配对技术,使得蓝牙设备可通过NFC近场通信,实现快速、安全、简易的配对。华南理工大学的黄梅珍[7]尝试将NFC通信技术与谷歌Android软件开发平台相结合,设计、开发出一种高效、便捷、易于推广的手机操作系统与手机支付模式并进行了实验验证。
基于上述文献分析,NFC近场通信技术适用于以智能手机为读写设备的大规模推广应用场景,具有安全、可靠、低成本和操作简便等特征。包先雨等[8]于2014年对NFC技术在集装箱电子铅封领域中的应用进行了研究,主要侧重于防伪。在此基础上进行创新研究,开发设计出一种通用的基于NFC技术的电子标签防伪溯源系统,具有加密防伪、信息溯源、可定位、可支持无网络环境读写等特征,并将其在进出口物流行业内进行推广应用。
基于NFC技术的防伪溯源系统可分为标签物理层、标签逻辑层、加密防伪算法模块、溯源信息存储模块、通信接口API、防伪溯源数据库、NFC防伪溯源系统和手机查验APP等几大部分,系统架构如图1所示。
图1 基于NFC技术的防伪溯源系统架构
本系统的标签选型型号为飞利浦MF1 S50感应式芯片,分为16个扇区,每个扇区分为4块,每个块容量大小为16字节,一起构成了容量为1 024字节的标签物理层。标签物理层是防伪溯源信息的实际载体。
该标签的特点是容量大,远超过一般的RFID标签(一般只含有一个8字节的ID号和12字节的EPC数据区)。因此,可将防伪溯源信息直接写入标签,从而实现不依赖于互联网的防伪溯源功能。为充分利用标签容量,我们从逻辑层面对电子标签进行分区,分为ID号存储区、密文区、数据区、定位信息区和保留区5个分区,形成标签的逻辑层。
每个NFC标签在出厂时都固化有全球唯一的ID号,该ID号在防伪性能上有着特殊的意义,保证了标签的不可复制性。本系统在此基础上更进一步,利用RSA等加密算法对ID号进行加密,将密文存储至标签的密文区,手机查验APP可通过解密算法进行离线真伪验证。
标签通过接口API同软件平台、手机查验APP等应用系统进行数据交换,实现溯源信息读写、真伪查验等应用功能。
本系统的标签选型型号为飞利浦MF1 S50感应式芯片,其容量为1 024字节,分为16个扇区,每个扇区分为4块,每个块容量大小为16字节。该标签的特点是容量大,远超过一般的RFID标签(一般只含有一个8字节的ID号和12字节的EPC数据区)。因此,在标签设计时可在标签物理层的基础上引入了“逻辑层”的概念,对1 024字节的存储容量进行逻辑划分,目的是将防伪信息和关键溯源信息直接存储至标签指定逻辑区,从而实现不依赖于互联网的防伪溯源功能。
首先对标签物理层进行编号标注,将16个扇区编号为0~15,每个扇区分为4块,编号为0~3。用函数block(x,y)来表示第x扇区的第y块,每个块容量大小均为16 B,共64个块,总容量为1 024 B。根据不同的逻辑定义,将整个标签划分为以下5个片区:
(1)ID号存储区block(0,0)是厂商预定义的只读块,大小为16 B。该数据块内存储着全球唯一的标签ID号,是用来验证NFC标签真伪的重要标志。本文中将其用作加密防伪算法的明文。
(2) 系统参数区block(0,1)为16 B的系统参数区,其中第1个字节用来存储加密算法类型,用来记录加密防伪算法的具体类型。例如各个不同种类的RSA、哈希算法等,手机程序读取该字节后,自动调用相对应的解密程序进行真伪验证。
第2个字节存储用户区写入标志,如标签被用户写入用户备注,则置为true;若未写备注,则置为false。该设置可有效防止手机程序每次都读取用户区的操作,缩短防伪查验的响应时间。
第3个字节用来记录定位信息区使用情况,方便查验软件自动将新的查验信息写在已记录的定位信息之后。
第4~16字节为保留区,用于之后的进一步扩展应用。
(3) 密文区block(0,2)、block(1,0)、block(1,1)三个块为加密区,长度共为48 B=384 bit,用来存放使用加密算法对ID号进行加密后的密文。
(4) 溯源区block(1,2)和block(x,y)(其中x=2,3,4,5,6,y=0,1,2)共16个块为溯源区,长度为256 B,用来记录标签的溯源数据信息,溯源信息通过手机软件输入,输入后将系统参数区block(0,1)的第2个字节置为true,表示用户区已被写入。写入用户区的时候以终止符结束,读到终止符后即停止读取。
(5) 定位信息区block(x,y)(其中x=7,8,9,10,y=0,1,2)共12个块为定位信息区,长度为168 B,用来记录查验地点定位信息,定位坐标由手机查验APP发送,每次查验均自动将查验人、查验时间和查验地点GPS坐标发送至标签,存储在定位信息区内。
(6) 保留区剩下区块均为保留区,用于后期开发时写入其他信息,或继续划分更多的逻辑分区。
NFC标签的防伪功能主要是为了防止标签的非授权盗用、复制、仿造等非法操作。每个NFC标签均具有全球唯一的ID标识号,这本身就说明NFC标签具有很好的防伪性能。通过记录授权途径发放的标签ID号,查验软件通过互联网查询数据库的方式,即可轻易验证标签的真伪。
据我们实地调研情况,很多养殖场、蔬菜种植基地、查验场等物流链的关键节点往往网络环境不佳或者干脆没有网络,这时,“离线防伪”的重要性就凸显出来了。本系统尝试运用非对称加密算法[9],实现NFC标签的离线防伪功能,以满足国内实际情况,增强NFC标签防伪技术的适用广度。
以RSA非对称加密算法为例,在标签生产过程中将加密密钥作为私钥(这和标准RSA算法有所区别),对标签ID号进行加密计算,计算出来的密文直接存储至标签的密文区内,即可完成标签的初始化生产。生产过程中使用的加密密钥应被保密保管,并定期更换。
RSA算法的解密密钥作为公钥对外发布,不同的软件服务商均可获知该公钥用来开发查验软件,查验软件通过解密密钥对NFC标签的密文区进行解密,解密后的明文用来和标签ID号进行比对,相一致的标签为授权标签,不一致的标签则为伪造标签。由于密文和比对明文均存储在标签内部,因此该查验软件无需联网进行真伪验证,从而实现了“离线版”的真伪查验。NFC标签的非对称加密防伪如图2所示。
图2 NFC标签的非对称加密防伪技术示意图
由于加密程序和解密程序之间的非对称性,很难在有限时间内根据解密密钥暴力破解出加密密钥,从而无法通过加密算法对NFC标签进行非授权仿制。同时解密密钥作为公钥可被广泛传播,即实现了防伪安全性,又增加了标签的易推广性。
为进一步增强安全性,加密密钥作为私钥必须被定期更换。我们在系统参数区里用一个字节的存储空间用来记录加密算法类型,更新密钥或更换非对称加密算法后,可对应生成一个算法号随解密密钥一同公布,查验软件根据不同算法号调用不同的解密算法即可保证算法更新的时效性。
在大部分物联网应用场景中,能够记录标签的位置信息,进而获知对应物体的运动轨迹对物联网应用意义重大,但NFC标签本身不具备定位功能。我们在以往的项目中,曾经采用过集成GPS定位模块的RFID标签用来记录贵重商品的运行轨迹,但GPS定位模块价格昂贵,且存在供电困难、信号屏蔽等维护问题,不适合大范围推广。考虑到运行成本和可推广性,本系统实现了一种廉价的GPS定位功能,用来记录物联网关键节点中NFC标签的位置信息。
NFC标签本身不具备GPS定位功能,但是NFC标签的查验设备——智能手机均配有GPS定位模块。因此,可利用预装在智能手机上的查验软件,在标签查验的时候自动写入查验地点的GPS定位坐标、查验时间和查验人信息,从而间接地获得NFC标签在物流链关键节点的流转信息。查验时间、查验地点和查验人信息被离线存储在标签的定位信息区内,同时通过接口API由手机APP同步至后台数据库(若手机为脱网状态,则等其接入互联网后自动同步)。同时实现了定位信息的离线读写和在线备份。
本系统采用了一种廉价的解决方案解决了物流链关键节点的GPS定位问题。虽然该定位信息并不完整,但相比集成GPS模块的解决方案,具有成本低廉的显著特征,在不增加硬件成本的前提下,在软件层面实现了物流链GPS定位功能。关键节点的定位信息在物联网应用中依然意义重大,它能够保证标签对应物体在指定的时间、指定的地点接受指定的业务流程。这对于无论是业务监管还是后台的大数据分析均有着重大意义。
本系统的应用层由中间件通信接口、手机查验APP、防伪溯源业务系统等部分组成。
中间件通信接口是NFC芯片的硬件读写接口,依据Google公司的Andriod平台NFC通信函数封装而成,根据实际需要自定义了加密函数、解密函数、写溯源数据、读溯源数据、写定位信息、读定位信息等多个通信接口函数。
手机查验APP同时兼顾和NFC芯片的信息读写以及和防伪溯源业务系统的通信功能,同时可根据实际业务需求定义相应业务模块。本节以NFC标签的真伪验证模块为例,描述授权用户进行NFC标签防伪验证的相应步骤:
(1) 点击“电子铅封查验”按钮进入查验页面,系统会提示用户点击“查验”按钮验证电子铅封,用户按提示点击下方 “查验”按钮,即可激活NFC设备并尝试读取电子铅封,如图3(b)所示。
(2) 点击“查验”按钮后,系统会提示用户将手机背面的NFC模块贴近电子标签,如图3(c)所示。
(3) 将手机靠近电子标签,尝试读取NFC标签信息,并进行防伪验证。如验证合格,则会显示绿色提示“验证合格”,并在下方显示溯源信息;如验证失败,则会显示红色告警信息“非法标签”,如图3(d)所示。
(a) 查验页面 (b) 激活设备
(c) 贴近电子铅封 (d) 验证结果图3 NFC标签防伪验证模块
NFC防伪溯源业务系统是根据具体业务需求定制的业务系统,用来记录物流链溯源信息、登记查验结果、对业务数据进行汇总分析等,也可对接大数据分析平台,实现数据挖掘、风险预警、智能学习等高级功能。
本系统已在江西出入境检验检疫局进行推广应用,给出了江西省内出口蔬菜水果检验检疫监管的物联网解决方案。依据相关法规,出口蔬菜必须在质检总局注册种植基地进行种植,出口前按批次向产地检验检疫部门进行申报,按时在集中监管区统一进行产地检验检疫。检验检疫部门施检后给集装箱加装铅封锁,通过高速公路运输至出境口岸进行出口,出境口岸检验检疫部门核验铅封锁和产地局施检信息后予以放行。
我们在先期研究的基础上设计了集装箱电子铅封,将NFC标签集成在铅封的锁面内,并进行了防水、防高温、抗拉扯等物理设计与验证,如图4所示。
图4 集成NFC标签的集装箱电子铅封锁
手机查验APP根据具体业务需求进行定制开发,主要包括真伪验证、出货登记、产地检验检疫施检、高速公路查验、口岸局查验等几个模块,具体流程为:
(1) 生产商向产地检验检疫部门申报出口批次,获批后领取NFC电子铅封锁,在蔬菜出口装车环节用手机查验APP对电子铅封进行查验,写入出货时间、出货地点和出货人信息。如果出货时间和申报时间差异较大、或者出货地点不在质检总局批复的备案种植基地内,则后台系统自动预警,提示该批次货物存在非法串货风险。
(2) 产地检验检疫部门在集中监管区对出口商品进行施检,施检合格后将集装箱封锁锁死。同时用手机查验APP向NFC标签写入产地检验检疫信息,包括施检时间、施检地点、施检人员、载货信息、检验检疫结果等。
(3) 高速公路收费站点在载货车辆驶离高速公路时利用手机查验APP查询车辆载货信息,确认为鲜活农产品的则根据国家发改委“绿色通道”相关政策予以免收高速公路通行费的优惠,无需开箱查验。同时,手机查验APP将高速公路部门的查验时间、查验地点信息写入标签。
(4) 口岸检验检疫部门对集装箱电子铅封的完好性进行检查,随后用手机查验APP自动比对产地检验检疫部门施检信息,合格后自动放行。同时手机查验APP将通关时间、通关地点等信息写入标签。
NFC手机查验APP实现了脱网状态的信息读写,使得整个物流链溯源操作可以完全不依赖互联网进行。同时,查验APP提供自动同步功能,在读取NFC标签内容后,发现未被同步到后台数据库的信息,在手机联网状态进行自动同步,防止部分手机因长时间脱网导致数据不能及时上传。
NFC防伪溯源平台实现了出口批次申报、出口批次审核、NFC电子铅封发放管理、溯源信息查询、查验结果登记、GIS地图展示等业务模块,并对接了相应的大数据分析系统,对业务数据进行深度分析,并进行辅助决策与风险预警。
本物联网解决方案实现了江西省内出口水果蔬菜从种植基地到口岸通关的全流程监管,有效防止了非法串货、不按规定时间施检等潜在风险。同时和高速公路管理部门联动,使得高速公路收费站在不打开集装箱铅封锁的前提下,即可获至载货信息,并对满足条件的车辆按照“绿色通道”政策减免高速公路收费。整个物联网监管流程示意图如图5所示。
图5 江西省出口水果蔬菜物联网监管流程
本文提出了一种基于NFC技术的通用物流链防伪溯源解决方案,解决了标签的离线防伪、离线溯源、关键节点GPS定位等关键问题。该解决方案具有以下优点:
(1) 成本低廉。相对于传统RFID方案,本系统不增加额外硬件成本,以智能手机作为NFC读写设备和GPS定位设备,大大节省了硬件投入成本。
(2) 易于推广。随着智能手机的普及,使得本解决方案易于大规模推广,这是传统RFID方案所不具备的优点。
(3) 适合中国国情。本系统实现了完全离线的物
流链信息读写功能。这使得本系统在网络条件差的种植场、养殖场、山区查验场等地点均可无障碍运行,更加符合中国国情。
本系统是一种通用的物联网防伪溯源解决方案,可根据实际业务需求,适用于多种不同的物联网场景。我们已在江西检验检疫局出口蔬菜水果业务上进行了推广应用。下一步,拟在全国出口陆生动物监管领域进行大规模推广,对于探索我国出口农产品物联网监管新模式具有重要意义。
[1] ECMA-352. Near Field Communication Interface and Protocol (NFCIP-2) European Computer Manufacturer Association Std[S]. 2010.
[2] Coskun V, Ozdenizci B, Ok K. A Survey on Near Field Communication (NFC) Technology[J]. Wireless Personal Communications, 2013, 71(3):2259-2294.
[3] Juntunen A, Luukkainen S, Tuunainen V K. Deploying NFC Technology for Mobile Ticketing Services-Identification of Critical Business Model Issues[C]//Ninth International Conference on Mobile Business/2010 Ninth Global Mobility Roundtable. IEEE Computer Society, 2010:82-90.
[4] Pesonen J, Horster E. Near field communication technology in tourism[J]. Tourism Management Perspectives, 2012, 4:11-18.
[5] 袁湘波,龚洪权,胡川.基于SOA架构的RFID技术在贵州茅台创新型防伪溯源系统中整合优化的研究与实践[J]. 电子制作,2015(2):230.
[6] 马捷,鄂金龙. 用NFC技术快速建立蓝牙安全连接问题研究[J].计算机应用与软件,2013,30(3):207-212.
[7] 黄梅珍. Android NFC手机支付的实现与应用[D].华南理工大学,2012.
[8] 包先雨,徐胜林,郭云,等基于NFC的智能防伪电子铅封系统研究[J].现代电子技术,2014,37(11):107-110.
[9] Simmons G J. Symmetric and Asymmetric Encryption[J].Acm Computing Surveys,1979,11(4):305-330.