基于区块链的RFID数据采集溯源系统设计与实现

2021-07-10 05:49何占博张国宇
信息安全研究 2021年7期
关键词:读写器网关合约

何占博 王 颖 张国宇 刘 军

(北京京航计算通讯研究所 北京 100074)

随着区块链技术的发展以及与金融、物联网和人工智能等领域的融合应用[1],随之而来的相关安全事件频繁发生,区块链信息系统中数据来源的安全性和可追溯性正变得愈加重要[2].而应用于物联网的射频识别(radio frequency identification,RFID)[3]自动化数据采集设备迫切需要解决防欺骗、抗抵赖、去中心化、数据完整性等安全信任问题.因此,将区块链与RFID技术相结合,应用在数据采集溯源、关键设备全生命周期监管等领域具有天然的技术互补性和广泛的应用场景需求.

本文针对关键基础设施、特种装备等关键设备的安全溯源问题,旨在克服仅应用RFID技术进行数据采集溯源的先天性不足,设计实现了一种基于区块链的RFID数据采集溯源系统,在RFID固定式读写器[4]、发卡器、手持机和接入网关上应用硬件唯一标识、零存储和智能合约等关键技术,实现电子标签数据融合上链和共享,最终可有效避免自动化采集设备可能产生的安全风险,达到关键业务可追溯、重要数据有保护的安全性和可追溯性要求.

1 RFID系统现存安全问题与解决方案

1.1 RFID系统现存安全问题分析

目前,RFID系统现存以下3类安全问题[5]:

1)非法复制.传统条形码或者二维码很容易被非法复制,RFDI系统同样存在非法复制的安全风险,而普通RFID系统尚不具备抗非法复制能力.

2)非法跟踪.非法读写器可能通过对合法RFID标签访问试图获得合法RFID标签的身份标识,从而判断该标签是否与其他地方读取的RFID身份标识一致,进而发起对某些标签的实时跟踪攻击.

3)限距离攻击.攻击者在同一时间使用1对非法的RFID标签和读写器来实施攻击,其目的是通过RFID标签非法进入物联网系统[6].

针对RFID技术安全问题,现有RFID系统已经采用一些安全技术,包括信息加密技术、身份隐私保护技术和抗限距离攻击技术等[7].例如,现有RFID设备依赖加密模块以满足数据防破解、防攻击、防替换、防欺骗等安全要求,而加密模块成本往往较高且需内置于终端设备中.因此,现有安全防护技术无法从根本上解决RFID设备固有的安全漏洞.

1.2 基于区块链的RFID数据采集溯源系统方案

随着近年来区块链技术[8]不断成熟发展,结合区块链的RFID等物联网数据采集技术既能满足数据安全保障要求,又能有效减少实体加密模块的管理和硬件成本问题,符合关键基础设施、特种装备等关键设备的数据安全需求,能够使关键数据达到更高的安全性和可追溯性等级.基于区块链的RFID数据采集溯源系统层次架构图如图1所示.

图1 基于区块链的RFID数据采集溯源系统层次架构图

经与区块链适配的RFID数据采集溯源系统需要改造物联网网关和RFID数据采集设备2个部分:1)区块链物联网网关需确保RFID采集设备操作自动执行约定的智能合约,并能够进行数据融合及操作审计;2)RFID数据采集设备经改造需具备执行智能合约的可编程功能,具备硬件不可重配置的唯一标识以及关键控制、配置和采集数据非本地化存储功能,以有效防止信息泄露.

射频识别数据的区块链存储流程如图2所示.首先,读写器安装接入时需要通过读写器的唯一识别码与网关绑定,并在每次开机工作时与网关进行双向认证,读写器将绑定、认证及读写操作产生的数据传输给共识节点(即网关),共识节点进行整理上报给排序节点(即服务器);其次,排序节点对操作及数据进行排序并生成块数据,分发给共识节点;再次,共识节点经过共识确认后,将确认结果返回到排序节点;最后,排序节点将确认后的新区块加入现有区块链中,并将更新后的链数据广播给每个共识节点存储.

图2 射频识别数据的区块链存储流程

综上,设计实现基于区块链的RFID数据采集溯源系统主要包括区块链与RFID自动化数据采集设备适应性改造以及数据采集溯源系统适配审计软件研发2项研制任务.

2 功能、性能指标与自主可控要求

2.1 功能指标

1)RFID自动化数据采集设备实现硬件唯一标识,以加强设备接入系统的安全性;

2)RFID自动化数据采集设备业务信息和电子标签数据实现零存储,以降低末端设备泄密风险;

3)业务区块链数据与RFID自动化数据采集设备操作数据实现交叉审核,实时监控设备运行及操作情况,异常状态及时报警展现.

2.2 性能指标

本数据采集溯源系统软硬件性能指标如下:

1)采集端硬件唯一标识长度达到64 b;

2)数据采集设备暂存指令数不少于15条;

3)智能网关达到1 000路承载,关键响应时间小于2 s;

4)射频识别设备满足GB/T 29768—2013和GJB 7377.1A—2018标准要求;

5)无线传感指标满足GJB 7377.2—2011标准要求,采用2.4 GHz加密传感信息进行无线传输.

2.3 自主可控要求

本数据采集溯源系统软硬件国产化自主可控程度需适配飞腾FT 2000+处理器和银河麒麟Server 4.0.2 SP3操作系统.

3 数据采集溯源系统设计与实现

3.1 整体设计

基于区块链的RFID数据采集溯源系统硬件部分包括区块链RFID网关和RFID自动化数据采集设备,其中包含固定式读写器、发卡器、手持式读写器及其接入底座等;软件部分包括运行于接入底座上的手持式读写器任务管理列表、运行于网关上的读写器管理中间件和业务管理软件.数据采集溯源系统工作流程如图3所示.

图3 数据采集溯源系统工作流程图

系统由负责数据采集的读写器与标签层、负责数据接入与传输的网关层、负责数据存储与应用支撑的服务器层以及负责用户界面与综合展现的应用层组成.1)应用层发起业务流程,由业务平台支撑软件下发对应指令;2)网关中业务软件拆分指令并给读写器下达符合7383协议的读写器指令;3)读写器执行指令通过空口协议与标签通信,返回对应结果;4)网关负责整理并融合相关数据,上传给区块链服务器上链存储,同时将相关执行结果反馈给应用端;5)网关定时进行链上数据审核业务,检验上链数据的真实性和准确性,检验结果实时反馈给应用端.

3.2 系统架构

基于区块链的RFID数据采集溯源系统架构如图4所示.其中,涉及的3项主要关键技术包括:硬件唯一标识、零存储和业务自动审核智能合约.

图4 基于区块链的RFID数据采集溯源系统架构图

图4中系统架构包括7个模块,其中包含5层基础技术架构和2个贯穿基础技术架构的共用技术架构[9].

感知层:提供基础的RFID设备接入功能,包括固定式读写器、手持式读写器及发卡器3种读写器及对应标签.感知层发生的标签基本读写操作是本系统中区块链数据的主要组成部分.

传输层:提供感知数据高可靠、高安全的传送,感知层数据通过有线网络接入网关.

数据层:数据层提供最基础的数据处理功能,如数据加密、哈希函数运算、数字签名等机制,是区块链技术最基础的数据处理支撑[10].

服务层:服务层自下而上分别为提供计算、存储等服务的基础层;用于智能合约实现的虚拟机、高级语言编辑器等;区块链技术的节点管理及账本应用服务;数据库、中间件等以及Web或CS形式接入平台.

应用层:提供RFID应用接口如出入库、盘点等,以及区块链相关的区块链浏览、合约链浏览等.

安全架构:包括系统安全相关的认证和身份管理、授权和安全策略管理和隐私保护等功能.

监管与审查:包括负责系统正常准确运行的监管支持和审查实现等功能.

3.3 硬件设计与实现

3.3.1 器件选型

唯一标识使每个读写器设备具有唯一不重复的设备ID,并存储在电子标签中,设备注册时,唯一标识信息及读写器相关信息通过注册业务记入区块链,以保证该唯一标识的唯一性与可用性.

唯一标识标签安装如图5所示,该标签为埋入式标签,在读写器组装时安装在读写器主板上,该标签具有双界面操作方式,读写器没有上电状态下,可以通过I2C接口进行配置,发行设备唯一标识ID,也可以通过空中接口形式读取标签,标签安装发行完毕后,读写器封闭外壳,防止标签损坏.

图5 唯一标识标签安装示意图

为满足上述需求,本系统选取复旦微电子生产的国产自主RFID芯片FM13US08JDI国军标I2C双界面UHF RFID标签芯片,其主要特性有:

1)非接触接口.

空口通信协议遵循GJB7377.1—2011标准;工作频段为840~845 MHz,920~960 MHz;支持GJB规定的安全鉴别和安全通信;固定式读写器最远读写距离达10 m,手持式读写器最远读写距离达7 m;下行数据率(读写器到标签)达32~160 Kbps;上行数据率(标签到读写器)达10~640 Kbps.

2)接触接口.

接口类型支持I2C接口;VCC工作电压范围为1.6~3.6 V;I2C通信速率支持Standard Mode 100 kHz;支持Fast Mode 400 kHz零静态功耗.

3)双界面.

非接触口和接触口均可访问内置的EEPROM;配合灵活的中断信号,可完成外部读写器和MCU之间实时快速数据传输;支持开漏中断输出,作为外部MCU的唤醒信号.

4)非易失性存储器.

内置8 Kb的EEPROM存储器,分为标签信息区、安全区、编码区和用户区共4个分区,其中标签信息区128 b、编码区1 024 b、安全区384 b、用户区6 016 b;EEPROM最少擦写次数不低于20万次;EEPROM数据保存时间不低于50年;EEPROM擦写速度可配置,且支持快速写入.

5)安全特性.

每颗芯片拥有独立TID,且TID不可改写;接触端支持写口令保护和写锁定;内置密码算法,支持非接触端安全鉴别和安全通信;非接触端支持读写口令保护和锁定功能;非接触接口支持防追踪功能.

6)芯片管脚定义.

芯片管脚定义如图6和表1所示:

图6 芯片封装图

表1 芯片管脚功能表

3.3.2 电路设计

唯一标识芯片通过I2C接口与读写器MCU连接,电路设计如图7、图8所示.

图7 唯一标识芯片外围电路设计图

图8 MCU芯片外围电路设计图

主控MCU通过I2C接口与唯一标识芯片通信,主控MCU可以使用专用I2C接口或者GPIO模拟方式实现I2C通信.主控MCU作为Master发起对唯一标识芯片的读写操作.I2C接口在双界面配置下可进行的操作包括:读写寄存器、读写FIFO和读写EEPROM.

3.3.3 PCB设计

PCB设计如图9所示,各层定义如表2所示.

表2 PCB各层定义

图9 芯片PCB设计图

1)工艺要求

层叠结构为8层板;通孔大小20 μm;盲孔大小15 μm;埋孔大小15 μm;板厚1.6 mm;安装孔2.7 mm,8个;所有器件封装均采用产品线标准封装库,印制板采用FR4板材;电装工艺以SMT为主,少量接插件采取手工点焊.

2)布局布线设计

采用模块化设计,将各功能模块分开布局,防止相互干扰.将核心处理器件ARM芯片置于中间,远离通道接口,防止干扰.设计屏蔽壳,在设计阶段考虑EMC.整板采用全手工布线.对于模块的关键信号进行优先处理,确保其路径最短,避开周围敏感器件.整板设计MARK点以方便电装定位.

3.4 软件设计与实现

3.4.1 唯一标识实现方式

唯一标识功能涉及的采集端软件开发包括固定式、手持机和发卡器设备的MCU软件,具体涉及指令解析和I2C通信功能,指令表包括查询唯一指令表和返回表.

查询唯一标识指令如图10所示:

012376543210765432107654321076543210保留0版本1消息类型254FE消息长度0016消息ID1213制造商ID[31:16]0000制造商ID[15:0]0001PARCustom参数03E8参数长度000C制造商ID[31:16]0000制造商ID[15:0]0001查询UID参数子类型0082

查询唯一标识返回指令如图11所示:

012376543210765432107654321076543210保留0版本1消息类型254FE消息长度001E消息ID1213RIP参数102203FE参数长度0018PARCustom参数03E8参数长度0014制造商ID[31:16]0000制造商ID[15:0]0001查询UID参数子类型0082参数长度0008UID数据53485544494E4731

接收指令:01 FE 00 1E 12 13 03 FE 00 18 03 E8 00 14 00 00 00 01 00 82 00 08 53 48 55 44 49 4E 47 31 SHUDING1.

3.4.2 零存储实现方式

零存储功能涉及的采集端软件开发包括固定式、手持机和发卡器设备的MCU软件,需将业务信息存储方式改为临时存储、断电即删除,手持机中的任务列表执行完闭后亦自动清除.

基于零存储要求,需为手持机设计可离线操作的任务列表,手持机所有业务操作均由系统下发,手持机通过底座接收生成任务列表,用户按照任务列表执行完毕后,再通过底座返回操作结果,返回后手持机自动清空任务列表,从而保证手持机上所有操作的合法性和安全性.

3.4.3 智能合约实现方式

智能合约[11-12]系统框架和应用场景实现如下:

1)智能合约系统框架

智能合约系统框架如图12所示.

图12 智能合约系统框架图

① 合约流程.合约流程实现基于合约服务的一系列固定、按照既定业务规则串联或并联的合约动作,通过完成各个合约动作实现业务在各个流程参与方的执行.合约流程包括2种类型:一是全局合约流程,即只有1个全局合约流程和流程状态,所有参与者均参与其中;二是实例合约流程,基于统一的流程模板,可以多个流程实例同时运行,互不干扰.所有流程类型,运行时即是1个状态机,合约流程在参与方间共享流程状态.合约流程可以通过时间触发、链上事件触发或应用层触发.

② 合约服务.合约服务作为业务合约的主体,定义了业务合约最基本的服务内容.每一个合约服务都是一种最小且完整的业务语义定义.合约服务定义了完成业务所需的若干操作,每个操作定义了输入、输出状态以及要执行的业务逻辑命令.

③ 合约代码.合约代码实现合约操作定义的输入、输出状态以及要执行的一组业务逻辑命令.命令是最小执行单元.任何不符合合约服务语义的合约实现在测试时都可以被识别,即使在合约运行时个别实现出现不一致的情况,也会被共识算法排除出去,并被区块链平台识别出来.

④ 统一账本.合约流程执行会产生对应流转日志,执行合约服务形成的操作日志会被记入区块链,形成不可篡改和抵赖的数据结构,并在各个参与节点间形成一个统一账本.账本需要以高效、规范的方式进行数据组织,以便于状态数据库的快速更新,也便于对历史操作进行快速查找和回溯.

⑤ 时间戳.区块链技术通过P2P网络节点间的共识算法实现分布式的时间戳服务.利用时间戳实现在时间上有序、由一个个区块组成的一根链条.每一个新区块生成时都会被打上时间戳,依照区块生成时间先后顺序相连成区块链,每个独立节点又通过P2P网络建立联系,以此为信息数据记录形成一个去中心化的分布式时间戳服务系统,并具有无中心、防篡改、可追溯、高透明的特点.

2)业务应用场景实现

本文以任务列表业务应用场景之一的入库处理流程为例,具体说明智能合约实现方式.

如图13所示,入库流程首先由应用发起,在合约流程模块中生成业务列表,并备份业务列表供审查机制调用,合约服务模块依据业务列表调用相关服务形成任务列表并下发,发卡器收到任务列表,仓库人员依据入库清单清点物品及数量无误后,发卡器进行发卡和标签验证,发卡后将操作数据上传至合约服务模块进行业务数据整理及确认,无误后上报给合约流程模块进行区块数据发行.

图13 智能合约入库处理流程图

4 数据采集溯源系统应用验证

上文阐述了基于区块链的RFID数据采集溯源系统的设计实现过程,下文搭建实际应用场景,验证结合唯一标识、零存储和智能合约技术的数据采集溯源系统在安全性和可追溯性方面的有益效果.

4.1 搭建实际应用场景

搭建实际应用场景如图14所示.

图14 实际应用场景示意图

设备包括网关、固定式、发卡器、手持机及底座,发卡器通过串口与网关连接,固定式及手持机底座通过网口与网关连接,手持机置于底座上.

4.2 典型业务应用验证

4.2.1 唯一标识、零存储功能验证

设备注册和区域盘点操作步骤如下:

步骤1.手持机放入底座接入网关,显示未知设备,点击查询唯一标识,查询结果分如下3种:

1)“注册设备”表示该唯一标识已被注册;

2)“未注册设备”表示该唯一标识未被注册;

3)“非法设备”表示查询不到该唯一标识.

步骤2.手持机注册时,选择设备类型为手持机,页面增加MAC地址框,填写名称、位置等与唯一标识绑定,已注册设备显示在已注册列表中.

步骤3.注册后点击连接手持机,验证唯一标识和MAC地址后显示成功建立连接,状态为手持机在线,取走手持机时点击查询,显示手持机离线.

步骤4.下达区域盘点指令,以该区域有TAG1~5为例,生成盘点TAG1~5任务单.

步骤5.任务单通过网络下发给手持机底座,底座将任务单发送给手持机.

步骤6.手持机界面显示当前任务列表中的任务需对TAG1~5的设备进行盘点.

步骤7.操作者找到对应设备后开始盘点,当成功盘点完TAG1~5后,界面显示写入盘点标志按钮,点击按钮写入盘点标志,盘点标志为用户数据区前5 B,以当前日期为例,5 B分别为0x20,0x20,0x10,0x12,0x01,其中前4 B代表时间,最后1 B代表盘点成功.执行完毕返回执行结果,不成功则可重复点击.

步骤8.操作成功后将手持机放回底座,自动上传盘点结果,上传成功后,手持机显示数据清除.

4.2.2 系统软件界面展示

1)在系统界面中添加设备,点击确定保存,如图15所示:

图15 添加设备信息

2)选择待连接设备进行连接,连接状态栏显示连接成功,点击查询,显示设备唯一标识,如图16所示:

图16 连接成功并显示设备唯一标识

3)未知设备需进行注册并与网关绑定,系统注册设备唯一标识,设备状态改变为注册设备,如图17所示:

图17 注册设备与唯一标识

4)任务管理选项卡中选择reader2设备和货架1操作区域,发送盘点任务至reader2设备,如图18所示:

图18 发送盘点任务

5)reader2设备为手持机,手持机显示接收到的任务列表,执行任务1,盘点标签群,执行任务2,写入盘点标志,完成盘点操作后将手持机放回底座,系统自动清除任务列表,如图19所示:

图19 手持机任务列表显示

6)收到手持机返回的执行结果后,系统显示任务1执行状态为“完成”,如图20所示:

图20 任务执行完成

5 结 论

本文设计实现的基于区块链的RFID数据采集溯源系统,可以满足关键基础设施、特种装备等关键设备的安全管控需求,能够较好解决关键设备数据采集追踪、上报汇聚和设备溯源等难题.关键设备管理链条中的生产、登记、配发、调拨、维修以及报废等重要全生命周期数据统一保存在各区块中,形成不可篡改且可追溯的数据记录链条,区块链的维护需接受全网节点监督,个别节点的非法操作将会遭到大多数节点的拒绝和抵制,从而保证了系统的安全高效运转[13].后续,本系统也可推广应用于冷链食品追踪溯源、疫苗产品全生命周期管理等生物制药和生命健康领域.

猜你喜欢
读写器网关合约
信号系统网关设备的优化
LTE Small Cell网关及虚拟网关技术研究
应对气候变化需要打通“网关”
基于视频抓拍读写器的高速公路防倒卡研究
一种实时高效的伺服控制网关设计
基于随机时隙的RFID读写器防冲突方法
合约必守,谁能例外!——对“情势变更”制度不可寄于过高期望
基于 LMAP和 EAP-SAKE的 RFID系统安全解决方案
基于Intel R1000的超高频RFID读写器设计