一种改进的应对异步攻击的RFID身份认证协议
2015-12-17张博,南淑萍,孟利军
一种改进的应对异步攻击的RFID身份认证协议
张博1,南淑萍2,孟利军3
(1.亳州职业技术学院信息工程系,安徽 亳州 236800;2.阜阳师范学院计算机与信息学院,
安徽 阜阳 236037;3.北京同仁堂(亳州)饮片有限公司,安徽 亳州 236800)
摘要:为保证无线射频(RFID)标签的安全性,降低攻击行为的损失,提出一种改进的RFID身份认证协议.在标签受到异步攻击时,通过标签中写入的随机种子数,产生非对称密钥,经过与后台数据库预留密钥进行验证,使被攻击的标签恢复到同步状态,从而降低标签数据泄露的风险,保证RFID系统的数据安全性.
关键词:无线射频;异步攻击;身份认证;协议
文章编号:1007-2985(2015)05-0030-05
收稿日期:2015-03-02
基金项目:安徽省教育厅自然科学重点
作者简介:张博(1975—),男,安徽界首人,亳州职业技术学院信息工程系副教授,硕士,主要从事系统分析与集成、物联网技术研究.
中图分类号:TP311文献标志码:A
DOI:10.3969/j.cnki.jdxb.2015.05.007
1 简介
1.1 RFID技术在追溯系统中的应用
无线射频(RFID)技术目前在身份认证中被广泛应用,在认证过程中系统的安全性是需要关注的主要问题.
(1)保护私有数据.RFID技术在应用过程中私有数据的泄密越来越多,未经授权的非法访问者可能通过RFID标签获取用户的身份、标签持有者的位置等敏感信息.因此,要保证标签及其中的用户数据在未授权的状态下不能修改.
(2)防止跟踪.防止跟踪是认证协议的另一个主要目的.如果对手没有获得标签的任何身份信息,那么他将无法跟踪标签.但是,如果一个标签频繁响应一个恒定的查询信号时,RFID系统就可能允许跟踪标签.所以,应该由认证协议规定,一个标签在确保所包含数据安全的前提下,控制其对查询信号的筛选性响应.[1]
安全性方面的问题应该在大规模部署RFID标签之前得到很好的解决,否则将会给RFID系统带来很大的威胁.然而,传统的解决方案在实际应用中效果并不理想,因为它们的计算能力和所提供的资源不能满足系统需求.业界提出了几种认证协议,如基于Hash函数的RFID认证协议、RAPP协议、由UMAP协议族发展来的Gossamer协议等,这些认证协议可以降低跟踪、克隆、窃听等入侵行为的破坏程度,但完全避免拒绝服务攻击(DoS)几乎是不可能的.[2]DoS攻击会导致系统的基本功能被限制,系统的有效性受到严重影响.攻击者可以针对RFID系统的多种安全策略发动DoS攻击,例如干扰通讯信道、持续发出伪查询信号、影响标签的可用性和有效性等.
另外,攻击者还可以通过所控制的非法RFID读写器对标签进行频繁查询操作,以此造成标签无法响应合法读写器的查询要求,从而使真正的读写器无法与其匹配的标签进行正常通信.[3]在某些情况下,攻击也可以由一个假冒标签控制的读写器产生.如果读写器花费大量的时间验证每个标签的请求,这种持续的假响应会使读写器一直处于忙状态,系统将最终陷入瘫痪状态.
1.2 异步攻击
在实际应用中,另一类DoS攻击,也就是异步攻击会频繁出现.RFID系统为了确保强认证性,读写器(或后端服务器)和标签必须共享密钥.在一个对称密钥系统中,读写器和标签可以共享密钥和其他状态信息.如果该协议需要实现私有数据保护的功能,读写器(或后端服务器)就必须使用一些可变信息,以确保系统能够区分出标签中存在的动态信息,该动态信息在读写器和该标签之间通过系统的操作进行成功同步.[4]在这种情况下,攻击者可以发动异步攻击来破坏这种同步状态.例如利用读写器和标签信道之间的无线电干扰,导致通信故障发生,最终实现异步攻击的目的.
目前,大部分的RFID身份认证协议并不能很好地解决异步攻击,因此笔者提出一种改进的RFID身份认证协议,不仅可以提高RFID系统的安全性和保密性,而且在RFID系统受到攻击时,能够快速恢复系统.
2 应对异步攻击的RFID认证协议
2.1 系统模型建立
RFID系统由3个部分组成:射频标签、读写器和后台服务器.标签的无线转发器嵌入在物理对象中,用于物品的检测.读写器承担了信息传递的任务,它们可以通过查询标签来识别对象.为了保护标签中的数据安全,物品的关键信息存储在后台服务器中,每个标签通过读写器对后台服务器证明自身的合法性.读写器不仅与标签进行信息交互,同时也与后端服务器之间进行通信,共同完成对标签的身份验证.[5]
2.2 标识符约定
假设T是RFID系统中射频标签的总数,每个标签包含一个加密序列号U和身份识别号ID,标签会在系统部署的时候获得这2类数据.同时针对每个标签,读写器会建立一个3元组的数据集合,包括加密序列号Ui、上次成功会话的加密序列号Upre和标签身份识别号ID,Ki是由验证码Vi经Hash加密函数产生的密钥,Kj为预留在后台服务器的匹配密钥.通过读写器,标签的身份识别号ID会标出和其相关联的数据.RFID系统的合法用户能够根据获得的种子产生一个伪随机数,这个种子可以由标签的加密序列号U来确定产生.标签的数据与读写器的数据同步,通过事先约定好的Hash函数算法,使读写器和标签都具备产生随机数的能力,这样可以大大提高认证协议的安全性.
2.3 协议原理
首先,读写器发送一个请求,同时产生一个随机数Ri.标签在接收到请求时,会根据自身随机产生的随机种子数Ti产生验证码Vi.随机种子数Ti通过系统的反馈响应,触发读写器产生相应的伪随机数.然后,读写器对后台数据库中预留的每个标签数据,由随机数Ri和随机数Ti配比产生加密序列号U,从而最终确定验证码Vi的合法性.当读写器发现配比成功后,将确保标签的有效性.
为了保护数据安全性,读写器的密钥应该是可变的,能够根据现有的加密序列号U更新上次成功会话的加密序列号Upre.为了证明自身的合法性,读写器只响应和它配比成功的标签响应数据.
读写器使用Hash算法产生下一个密钥,同时会更新密钥序列,如果在密钥更新过程中无法完成验证过程,说明密钥存在被修改的风险,读写器会通知后台服务器及时修改标签加密序列号Ui和上次会话成功的加密序列号Upre,从而提高系统的稳定性,避免异步攻击的产生.在上面的案例分析中,如果最终产生的验证码Vi不合法,读写器就不会发出响应信号,并且重新产生新的随机种子数Newi,它会保证协议的安全性,避免标签和读写器之间的对话信息不被窃听者获取.
具体步骤如图1所示.
图1 应对异步攻击的RFID认证协议流程
步骤1用户标签进入RFID读写器有效范围后,读写器发送请求,同时产生随机数Ri.
步骤2标签接收到读写器的请求后,根据随机种子数Ti产生验证码Vi,并将Vi反馈给读写器.
步骤3读写器收到Vi后对Vi进行解密,同时与后台数据库预留的密钥进行比对,以确定用户的合法性;若比对不相符,则转向步骤6.
步骤4更新上次成功会话的加密序列号Upre.
步骤5根据加密算法产生下一次对话的密钥,同时更新密钥序列.
步骤6通知后台数据库密钥存在风险,同时及时修改标签加密序列号Ui和上次会话成功的加密序列号Upre,降低系统被再次攻击的风险.
步骤7读写器不再响应标签的回复信号,切断会话,保证系统数据不被泄露.
2.4 攻击过程分析
下面对异步攻击的过程进行分析.假设攻击者Atta已经控制了系统中的部分读写器和标签,现将这些受控制的读写器标识为Attar,标签标识为Attat.Attar和Attat没有通过系统的后台服务器验证,不具备访问RFID系统的合法权限.
在异步攻击中,攻击者的目标是让Attat标签具备合法身份,能够通过后台服务器的验证.通过实施异步攻击,会降低系统验证的有效性,攻击者能够进一步操控整个系统,这种主动攻击的破坏性将大大高于被动攻击模式.在读写器和标签之间建立伪造的通讯信道,可进一步提高攻击效果.攻击者能通过获得验证的Attat和系统读写器完成通信,也能让Attar完成对合法标签的响应过程,在这2种攻击过程中,最终目标是获得标签中的私有数据.
3 协议性能分析
3.1 稳定性
在RFID系统部署的时候,读写器和标签先完成同步过程.标签会响应由读写器发出的对标签身份进行验证的请求.假设标签身份是合法的,读写器通过后台数据库将会发现与之相匹配的信息,然后使用Hash算法,由上一次成功完成会话的加密序列号Upre产生本次标签对应的加密序列号Ui.为了证明自身的合法性,读写器会产生相应的验证码Vi.标签在与读写器完成匹配验证以后,会和读写器一起通过随机种子数序列的动态更新,完成对下一次加密序列号Unext的产生.
在上述同步通信过程中,攻击者会选择标签在等待读写器返回验证码Vi的时机,破坏数据同步,将对话劫持.由于标签被攻击者劫持,导致它不能及时更新加密序列号Ui,因此使其与合法读写器之间的联系中断.
如果这个被劫持的标签再次来到读写器附近,标签就开始与读写器进行数据交换.该标签仍然拥有在系统初始化部署时的身份匹配数据,即Ui和ID.虽然此时读写器在后台数据库中,并不能找到和此标签的加密序列号Ui相匹配的信息,但是,由于标签已经持续对读写器的请求做出应答,读写器会在数据库中继续寻找该标签的前向加密序列号Upre,因此根据上次成功会话的Upre,读写器会做出判断,对此标签的身份进行验证.
完成验证以后,系统会再次同步读写器和标签,读写器需要通过后台数据库,发送一个没有任何更新的有效信息.当标签接收到这个信息后,它将验证读写器的合法性,同时与读写器同步更新加密序列号,系统恢复正常通信过程.
3.2 安全性
3.2.1 防止跟踪标签在实际应用中,如果RFID标签对某一个响应信号作出固定的回复,那么这个回复信号可能会被攻击者利用,将导致在标签和其所标识的物品之间建立一个数据通道,从而该物品被攻击者长期跟踪,造成数据泄露.为了阻止此类物理跟踪行为,需要对每个回复信号进行加密干扰.在本协议中,对应标签作出的每一次回复信号,通过加载随机种子数,确保每次回复过程的唯一性和不被伪造性,这样就保证了标签的数据安全.
攻击者通过截获标签U=Upre⊕(Ti‖Ri),Ui=Hash(Upre⊕(Ti‖ Newi) ),会跟踪回复该相应的标签,但是在认证过程中,标签会每次生产不同的随机种子数Ti,然后生成验证码Vi,攻击者不能获得合法的验证码,从而阻断对标签的跟踪过程.
3.2.2 应对拒绝服务式攻击DoS在这种攻击中,攻击者不会劫持或假冒读写器和标签,它的主要目标是让读写器无法正常访问合法标签的数据.为了降低标签和读写器的数据通道被劫持的概率,可以加强对通信线路的加密,以此提高抗干扰能力,但这同时又导致拒绝服务的后果可能会出现.[6]当后台数据库和标签进行加密序列号的匹配验证时,需要定期同步查询,也可能会导致DoS情况出现.本协议通过动态更新本次和上次成功会话的加密序列号,使RFID标签恢复到正常状态.
3.2.3 隐私数据保护在药材的质量溯源中,标签中详细记录药材的产地、性能、药效等重要信息,如果攻击者通过异步攻击等手段窃取标签中的数据,将会给药材生产厂商带来巨大损失.在本协议中,标签不会自主发送数据或主动授权读写器,标签只会在合法读写器发出响应信号后才回复读写器.对于非法阅读器发出的响应信号,标签通过与后台服务器预留的密钥Ki进行比对,通过Ui=Hash(Upre⊕(Ti‖Newi) )进行哈希函数解密运算,忽略非法阅读器发出的响应请求,从而避免因异常情况导致的重要数据泄露.[7]
3.3 可行性
认证协议的可行性对比主要从标签的防跟踪、隐私数据保护、认证性、标签存储空间消耗、标签长度、运算复杂度等指标体现,表1拟出了本协议与其他常见认证协议的安全性、稳定性对比情况.
表1 RFID认证协议的安全性对比
设T为随机验证码Vi的长度,T1为标签与读写器响应产生的密钥Ki的长度,T2为服务器预留认证密钥Kj的长度,本协议与其他协议存储空间占用空间比较如表2所示.
表2 各协议的存储空间比较
设H为加密计算函数,d,d1,d2均为整数,其中d∈(0,3N),d1∈(1,N),d2∈(1,N-1),本协议与其他常见协议的计算量比较如表3所示.
表3 各协议的计算量比较
从存储空间对比分析来看,本协议在标签占用空间方面较小,在后台服务器占用空间方面略高;在后台服务器计算方面,本协议计算量略高;在标签数据计算方面,本协议性能胜出,计算量最小.从以上性能对比结果来看,本协议在安全性方面表现比较稳定,在存储空间和计算量方面,标签的占用空间和计算量较低,但是后台服务器方面占用空间和计算量略高,需要在后期的研究中进行改进.
4 结语
在大规模部署RFID系统时,系统安全性已经成为越来越重要的问题,如何避免重要数据泄露、提高系统的稳定性、快速自我恢复性等,都是在实际应用中需要关注的地方[8].笔者提出一个改进的RFID身份认证协议,用于应对在异步攻击中提高系统的稳定性,通过对其进行安全性的分析,协议初步达到了预期目标.在后期研究中,如何提高协议应对各种极端攻击状态时的反应,进一步提高协议的稳定性和抗攻击能力,是需要继续探讨的内容.
参考文献:
[1] 杨超,张红旗,卿梦雨.供应链环境下安全的RFID认证方案[J].计算机科学,2014,41(4):134-138.
[2] 苑津莎,徐扬,戚银城,等.基于非对称密钥和Hash函数的RFID双向认证协议[J].密码学报,2014(5):456-464.
[3] 曹峥,马建峰,杨林,等.RFID安全协议的数据去同步化攻击[J].华中科技大学学报:自然科学版,2013,41(4):65-69.
[4] 辛伟,郭涛,董国伟.RFID认证协议漏洞分析[J].清华大学学报:自然科学版,2013,53(12):1 719-1 725.
[5] 陈旭辉,王馨,柯铭.一种改进的基于RFID中间件的冗余数据清洗算法[J].微电子学与计算机,2013,7:154-158.
[6] 刘庆华,霍腾飞,邓依群.基于Hash函数的随机RFID认证协议[J].通信技术,2009,42(8):59-61.
[7] 黎恒,高飞,薛艳明.基于Hash函数的RFID认证协议安全性改进[J].微计算机信息,2010,26(29):141-143.
[8] 王旭宇,景凤宣,王雨晴.一种基于Hash函数的RFID认证改进协议[J].山东大学学报,2014,49(9):154-159.
An Improved RFID Authentication Protocol for Asynchronous Attack
ZHANG Bo1,NAN Shuping2,MENG Lijun3
(1.Department of Information Engineering,Bozhou Vocational and Technical College,Bozhou 236800,Anhui China;
2.College of Computer and Information,Fuyang Teachers’ College,Fuyang 236037,Anhui China;3.Beijing
Tongrentang (Bozhou) Traditional Chinese Medicine Ltd.,Bozhou 236800,Anhui China)
Abstract:To ensure the security of RFID tags and reduce the loss by aggressive behavior,this paper presents an improved RFID authentication protocol.When the tag is asynchronously attacked,through the randomly written seed number,asymmetric keys is produced,and after the verification with the key pre-reserved in the backend database,the attacked tag is recovered to the synchronous state,thereby reducing the risk of tag data leakage and ensuring data security of RFID systems.
Key words:radio frequency identification;asynchronous attack;authentication;protocol
(责任编辑向阳洁)