基于PUF的轻量级RFID安全认证协议*
2022-02-18王小骥
王小骥,杨 竞,刘 瑶,张 娟,刘 贺
(中国电子科技集团公司第三十研究所,四川 成都 610041)
0 引 言
射频识别(Radio Frequency Identification,RFID)技术[1]是一种利用无线射频信号近距离、非接触式识别目标和交换数据的双向通信传输技术,是物联网感知层最具代表性的通信技术之一,已广泛应用于物流仓储、交通管理、工业/办公自动化、身份识别等领域。
RFID系统一般由电子标签、阅读器和后台服务器等组成[2]。RFID系统的基本工作原理为阅读器通过天线发送特定频率的射频信号及能量,驱动无源电子标签工作并读取其信息,或由有源电子标签主动发送特定频率的射频信号,阅读器读取其信息,再将信息转发给后台服务器进行处理,实现对电子标签的认证、读写和管理等功能。
由于电子标签与阅读器之间以开放的无线信道传输信息,以及电子标签一般存在电路结构简单、存储容量小、处理能力弱等固有缺陷,RFID系统的信息易被非法窃取、伪造和篡改,电子标签易被捕获、分析和复制。遭受主动和被动攻击的RFID系统所面临的安全问题主要有隐私和认证两个方面:在隐私方面,需要对标签信息传输进行安全保护;在认证方面,需要阅读器与电子标签互相认证,确保两者的合法性[3-6]。当前,研究学者已提出了一些RFID标签安全与隐私保护机制,大体可以分为两类:一类是通过Kill命令(Kill标签)、静电屏蔽(法拉第笼)、阻塞标签法及主动干扰等物理方法保障RFID系统自身安全;另一类是通过设计安全协议确保RFID系统信息传输的机密性、完整性和可认证性。
本文主要通过设计安全协议,实现RFID系统信息传输的安全性。一般来说,RFID安全协议应考虑其实用性和易用性,具有的特点如下文所述。
(1)为适应低成本和低功耗的RFID电子标签,RFID安全协议需要进行轻量化设计,降低协议使用上的开销,即使用尽量少的运行资源、计算资源和存储资源。
(2)为防止假冒阅读器读取电子标签的信息,以及假冒电子标签通过阅读器欺骗后台服务器,RFID安全协议需要确保电子标签与阅读器双向认证的合法性。
(3)为防止RFID系统传输的信息被窃取、伪造和篡改,RFID安全协议需要对其进行机密性、完整性保护。
结合RFID系统安全需求和特点,本文提出一种轻量级RFID安全认证协议,通过随机数、PUF技术、轻量级杂凑函数(Lightweight Hash,LHash)和轻量级分组算法MIBS[7],来实现RFID系统信息传输的机密性、完整性、新鲜性和可认证性。
1 RFID系统面临的安全风险与安全目标
RFID系统目前存在设备资源和计算能力有限、开放环境下无线通信易被攻击、电子标签自身脆弱性等风险,本节针对RFID系统存在的安全风险进行分析并推导出安全目标。
1.1 RFID系统组成
典型的RFID系统一般由电子标签、阅读器和后台服务器(含数据管理系统)3部分组成,如图1所示。
(1)电子标签:又称为射频标签、应答器、数据载体等,通常由射频接口、编解码电路及微处理器芯片等组成,每个电子标签具有唯一的序列号(即电子编码),附着在实物上识别目标对象,大容量的电子标签具有用户可写入数据的存储空间。按驱动电子标签的工作能量来源划分,电子标签主要有无源标签(也称为被动标签)和有源标签(也称为主动标签)两种,无源标签由阅读器的发射电磁波提供工作电源及能量,而有源标签由内置电池提供工作电源及能量。
(2)阅读器:又称为读写器、扫描器等,通常由天线、射频接口模块、收发模块及控制模块等功能模块组成,阅读器通过天线与电子标签进行无线通信,实现对电子标签的识别码读取、内部数据读写等操作。
(3)后台服务器(含数据管理系统):一般为一套含有RFID数据管理系统的后台服务器,可采用RS232、RS485、RJ45等有线接口或Wi-Fi、蓝牙、GPRS等无线接口与阅读器相连,后台服务器通过阅读器从电子标签中获取其内部信息,对获取的信息数据进行后台处理,实现对电子标签的认证和信息读写等操作。
1.2 安全风险分析
与传统网络相比,RFID系统面临的安全风险更加严峻,这主要是RFID产品有限的处理能力和安全措施等自身属性造成的安全缺陷引起的[8],RFID系统主要面临以下安全风险。
(1)假冒的阅读器非法访问电子标签的风险。电子标签自身采取的安全防护措施较弱,非法用户可以使用假冒的阅读器与电子标签进行通信,从而读取或修改电子标签内部存储的信息。
(2)无线通信链路传输信息的安全问题。RFID采用近距离无线通信技术,无线信道具有开放性的特点,电子标签与阅读器之间传输的信息易被攻击者实施侦听、篡改、重放等攻击。
(3)电子标签自身的安全风险。电子标签一般受限于成本、功耗和体积等因素,存在电路结构相对简单、存储容量有限、计算处理能力较弱等固有缺陷,攻击者可以实现对电子标签的捕获和分析,并非法复制电子标签,还可以利用假冒电子标签欺骗合法阅读器使其提供虚假信息。
1.3 安全目标
RFID系统的安全目标主要包括RFID信息的机密性、完整性和可认证性等。
(1)机密性:电子标签与阅读器之间传输的信息经加密处理,不会被泄露给非授权用户或实体,信息只能被授权用户使用。
(2)完整性:电子标签与阅读器之间传输的信息经完整性校验处理,确保接收的信息和发送的信息是一致的,未受到主动攻击者的复制、插入、修改、删除、乱序、伪造等攻击行为。
(3)可认证性:电子标签与阅读器之间进行互相认证,验证双方身份的合法、真实可信。
2 RFID安全认证协议
本协议综合运用随机数、PUF技术、轻量级的杂凑函数和分组算法对RFID系统信息进行机密性、完整性和新鲜性保护,设计科学合理的协议交互处理流程,既可抵抗RFID系统信息遭受窃听、伪造、篡改和重放等传统攻击,又可抵抗电子标签被物理克隆攻击。
2.1 物理不可克隆函数技术
Srini-Devadas等人[9]提出物理不可克隆函数(Physical Unclonable Function,PUF)技术,是一种“芯片数字指纹”,可用来标识芯片的身份。PUF是将一个激励输入一个芯片实体,基于芯片内部物理构造的随机差异性,输出唯一的响应。一个理想的PUF应具备鲁棒性、可计算性、唯一性和不可克隆性。PUF的电路结构相对简单,可在极小开销的条件下嵌入芯片中,作为RFID电子标签的“指纹”。
2.2 轻量级算法
(1)轻量级杂凑函数LHash:是一个低功耗的轻量级杂凑函数,具有灵活可调的参数[10],具有占用资源少、运算速度快等优点,比较适用于低成本、资源受限的RFID系统。
(2)轻量级分组算法MIBS:MIBS是一个轻量级分组密码算法,具有占用资源少、运算速度快等优点,主要适用于RFID、无线传感技术等资源和计算能力有限的设备和环境中[11]。
2.3 符号说明
本协议使用的主要符号及说明如表1所示。
表1 协议中的主要符号及说明
2.4 基本要求
(1)电子标签应内置PUF模块(对输入相同的激励能产生相同的响应),具有产生随机数、存储并运行轻量级密码算法的能力。电子标签需要存储本轮密钥(Kn)和电子标签本轮ID(IDn)。
(2)阅读器应具有产生随机数的能力。
(3)后台服务器应具有产生随机数、存储并运行轻量级密码算法的能力。后台服务器可产生、编配电子标签ID和对应密钥K,将电子标签的PUF信息、本轮密钥(Kn)、上轮密钥(Kn-1)、电子标签本轮ID(IDn)及杂凑值LH(IDn)、电子标签上轮ID(IDn-1)及杂凑值LH(IDn-1)等信息进行本地存储,并确保PUF信息和电子标签中的PUF信息相同。
2.5 协议交互流程
阅读器、电子标签和后台服务器之间的协议交互流程和协议交互处理流程分别如图2、图3所示。
(1)阅读器将本地产生的随机数R1和认证请求AQ命令发送给电子标签。
(2)电子标签接收到阅读器发送的随机数R1和认证请求AQ命令后,本地产生随机数R2,使用R1和本轮密钥Kn,运行轻量级分组算法LB,加密得到电子标签ID杂凑值的密文CLH(IDn)=LB_EKn(R1,LH(IDn))、随机数R2的密文CR2=LB_EKn(PUF(R1),R2);运行轻量级的杂凑函数,产生PUF信息的杂凑值H=LH(PUF(R1⊕R2)⊕Kn),截取杂凑值H的高位部分、低位部分分别作为HM、HL,将CLH(IDn)||CR2||HM发送给阅读器,将HL保存于本地。
(3)阅读器收到电子标签ID杂凑值的密文、随机数R2的密文和PUF信息的杂凑值CLH(IDn)||CR2||HM后,将随机数R1附在其后,组成CLH(IDn)||CR2||HM||R1,转发给后台服务器。
(4)后台服务器收到CLH(IDn)||CR2||HM||R1后:
①运行轻量级分组算法LB,解密得到LH(IDn)=LB_DKn(R1,CLH(IDn)),若在本地未检索到LH(IDn),则终止通信;否则,从本地获取该电子标签对应的PUF信息和本轮密钥Kn,运行轻量级分组算法LB,解密得到R2=LB_DKn(PUF(R1),CR2)。
②运行轻量级杂凑函数LH,得到杂凑值H'=LH(PUF(R1⊕R2)⊕Kn),截取杂凑值H'的高位部分、低位部分分别作为H'M、H'L,将H'M与HM进行比较,若不相等,则终止通信;否则,通过电子标签认证。
③产生随机数R3,使用PUF(R1⊕R2)和本轮密钥Kn,运行轻量级分组算法LB,加密得到随机数R3的密文CR3=LB_EKn(PUF(R1⊕R2),R3),将H'L||CR3发送给阅读器。
④后台服务器计算更新下轮电子标签IDn+1=IDn⊕R2⊕R3、下轮密钥Kn+1=Kn⊕R2⊕R3,并将上轮认证信息更新为本轮的认证信息。
(5)阅读器收到PUF信息的杂凑值、随机数R3的密文H'L||CR3后,转发给电子标签。
(6)电子标签将收到的H'L和本地存储的HL进行比较,若两者相等,则电子标签对后台服务器的认证通过;否则,终止通信,电子标签对后台服务器认证通过后,运行轻量级分组算法LB,解密得到R3=LB_DKn(PUF(R1⊕R2),CR3),计算更新下轮电子标签ID:IDn+1=IDn⊕R2⊕R3、下轮密钥Kn+1=Kn⊕R2⊕R3,结束本次认证过程。
3 协议安全性分析
本节对RFID安全认证协议主要从机密性、完整性和新鲜性等方面进行安全性分析。
(1)机密性:电子标签、阅读器与后台服务器之间传输的电子标签ID、随机数、PUF信息等认证信息,均采用轻量级分组算法进行加密处理,确保了认证信息的机密性,可防止非授权用户知悉敏感信息,抵抗攻击者的窃听攻击。
(2)完整性:在电子标签与阅读器认证的过程中,先采用轻量级杂凑函数对电子标签ID计算杂凑值,再对杂凑值采用轻量级分组算法进行加密处理,确保电子标签ID的完整性;先将PUF信息与密钥异或后,再采用轻量级杂凑函数对异或值计算杂凑值,确保PUF信息的完整性;对电子标签ID、PUF信息等重要信息进行完整性保护,可抵抗攻击者对重要信息的篡改攻击。
(3)新鲜性:在电子标签与阅读器认证的过程中,阅读器、电子标签、后台服务器分别在本地实时产生随机数,采用随机数来确保信息的新鲜性,且通过随机数更新电子标签和密钥等信息,可抵抗攻击者对认证信息的重放攻击。
4 结 语
由于电子标签受限于成本低和计算处理能力弱等因素,以及电子标签与阅读器之间信息传输的开放性,导致RFID系统易遭受传统攻击和物理克隆攻击。针对这些攻击,本文采用随机数、轻量级杂凑函数、轻量级分组算法和PUF函数技术等密码原语,使用较少的计算处理和存储资源,提出了一种基于PUF的轻量级RFID安全认证协议,可抵抗窃听、篡改、假冒、重放和物理克隆等多种攻击方式。