宋晖 陈丹纯 张海志 张良均
1.华南师范大学物理与电信工程学院,广东 广州 510006; 2.广州太普软件有限公司,广东 广州 510665
改进的RFID双向认证机制分析研究
宋晖 陈丹纯 张海志 张良均
1.华南师范大学物理与电信工程学院,广东 广州 510006; 2.广州太普软件有限公司,广东 广州 510665
本文在简单介绍了射频识别技术(RFID)面临的安全问题以及多种RFID 安全机制的基础上, 对带别名的双向认证机制进行原理的描述与性能的仿真分析,并利用MATLAB软件进行仿真实现和验证。
无线射频识别;双向认证;安全;哈希函数
Radio frequency identification;Mutual authentication; Security;Hash function
射频识别技术(Radio Frequency Identification RFID)通过无线射频方式进行非接触双向数据通信,对目标加以识别并获取相关数据。一个典型的RFID系统通常由标签和阅读器组成,阅读器又通常与后台数据库相连。
随着射频识别系统的应用越来越广泛,其隐私和认证或鉴权问题受到了更多的关注。由于标签和阅读器之间的信息交换是通过射频在开放信道之中传输,因此很容易受到各种不安全因素的攻击,这些攻击包括通过物理或软件方法篡改、删除标签内容等方法扰乱合法处理器正常工作的主动攻击,和通过窃听技术和设备获取RFID 信息、个人隐私和物品流通信息的被动攻击。针对RFID系统所面临的安全问题,国内外进行了一系列的研究,并取得了一些有意义的成果。目前比较常用的安全技术对策有[1]:
1)Killing或Sleeping机制。Killing机制是对不再需要的标签进行终止服务操作,关闭标签的所有功能,保护客户的隐私不受侵犯。但是被关闭后的标签无法再次识别,这影响到了标签的反向跟踪,不便于提供售后服务。为此,研究者提出Sleeping机制,在需要标签停止服务时使其进入休眠状态而不是完全失效,此时可通过特定的指令恢复标签的工作。这种机制的缺点是需要解决的问题很多,如唤醒时的认证机制、认证密码的管理等,这会增加系统的负担和复杂度。
2)物理安全机制。物理安全机制是利用物理手段对标签进行屏蔽或对射频信号进行干扰,从而达到保护标签信息免被窃取的效果。当使用隔离方法时,将标签置于一种有金属网或者金属薄片制成的容器中屏蔽起来,这样某一频段的无线电信号将无法穿透外罩,当然也就无法激活内部的射频标签。但是这种方法需要一个额外的物理设备,既造成了不便,也增加了系统的成本。对射频信号进行有源干扰是另一种形式的保护射频标签免受监测的物理手段,消费者可以随身携带一种能够主动发出无线电信号的设备用以阻碍或者干扰附近射频识别读写器的正常工作。这种有源干扰的方法可能是违法的,而且是一种拙劣的、带强制性的方法。
3)密码安全机制。密码安全机制除了具有前两类安全机制能提供的保护隐私功能之外,还可以用于在访问控制中进行认证或鉴权。由于低成本的电子标签具有资源有限的特点,同时考虑标签自身结构的限制,一些复杂而且高强度的公钥加密机制和认证算法难以在RFID系统中实现。在此前提下,通常使用单向Hash算法提供安全保证。常见的采用单向Hash算法的协议有Hash锁协议、随机Hash锁协议和Hash链协议。Hash锁使用了MetaID来代替真实的标签ID以避免信息泄露和被追踪,实现成本较低,但非常容易受到假冒攻击和重传攻击。针对Hash锁在位置跟踪攻击保护上存在的漏洞,研究人员又提出了随机Hash锁的方法,其主要思想是将射频标签的反应设计成不能是固定的而是随机的。因为标签每次的回答都是随机的,因此可以防止依据特定输出进行位置跟踪攻击。但标签数目较多时,系统延时很长, 效率较低; 此外, 这种方法不具备前向安全性。Hash链协议的本质是基于共享秘密的双向认证协议,通过动态更新每次的应答验证信息来防止跟踪,并增强了前向安全性。这种方法最大的缺点是计算量较大,同时Hash链也非常容易受到重传攻击和假冒攻击。
以上提及的几种安全技术对策都在一定程度上增强了RFID系统的安全性,但正如上所述它们都存在着各自的不足之处。本文对改进型的基于带别名的双向认证的RFID安全机制进行分析验证,并通过matlab/simulink工具来仿真实现。此安全机制取得了更好的性能,保证了前向、后向安全性,既保护用户隐私不被获取,又实现了对标签的合法性认证。
初始阶段,对每一个标签ID 生成一个随机的key和分配若干个别名, 在数据库中保存(ID, key),并以别名作为对应数组的索引,亦即多个索引指向相同的(I D, k e y)对。标签需要保存自身相应的(I D, key)组以及该组的索引别名。
1)阅读器发出询问消息时, 生成一个随机数R, 并将其发送给标签;
2)标签收到请求后,计算G(ID||R),将随机选取的其中一个别名连同G(ID||R)一并返回给阅读器;
3)阅读器将标签别名和G(ID||R)发送给后端数据库;
4)数据库根据别名查找对应的(IDk ,key), 并计算G(IDk ||R), 将其与来自标签的G( ID||R) 进行比较,若不相等则向阅读器返回无效标签的消息,若相等则将ID 和key返回给阅读器;
5)阅读器再向标签发送H(key||R);
6)标签利用自己保存的key值计算H (key||R),并与收到的H(key||R)比较,若相等,则可以确认阅读器的合法身份;
7)至此,阅读器和标签都已经实现了对对方合法身份的认证,即完成了双向认证的整个过程。
基于hash函数的随机RFID双向认证协议用matlab/simulink工具仿真,为便于理解,后台数据库和读写器视为一个模块,主要考虑读写器模块和标签模块之间的仿真。为了简便起见,本论文只介绍阅读器对标签的认证部分的仿真内容和结果,标签对阅读器的认证基本原理和仿真方法与阅读器对标签的认证部分相同,故略去。
在仿真中,用方波信号代表标签的别名。仿真线路图如图1所示。
仿真过程详细叙述(假设标签对阅读器的认证都是能够通过的)如下:
读写器模块中,伯努利信号发生器(Bernoulli Binary Generator)产生伯努利信号波形(1011011100…)送入S函数(SFunction)进行“加二”运算,计算出来的结果(3233233322…)传送给标签模块(即读写器向标签发出请求信号),标签模块接收到读写器发送过来的信号后将其与方波信号(1010101010…)进行加法运算,得出来的结果(4243334332…)送入S函数(S-Function1)进行“减三”运算,计算出来的结果(1-11000100-1…)送回给读写器,表示标签要求读写器对其身份合法性的认证,读写器收到标签送来的信号后,将其送入S函数(S-Function2)进行“加二”运算,计算出来的结果(3132223221…)与标签认证计算的结果分别送入减法器(Subtract)进行减法运算,计算结果(2222222222…)表示读写器确认了标签的合法身份。
仿真结果示波器显示的波形图如图2和图3所示:(从上到下的显示对应的端口分别是a,b,c,d,e,f,g,h)。
对该安全协议进行性能分析,有如下特点:
1)防窃听。在阅读器和标签之间的通信过程中,由于别名和随机数R的使用,使每次传递的数据都不同,而且Hash函数的单向性保证了窃听者无法根据窃听到的数据反向推导出原始数据,因此该安全机制可以有效防止窃听。
2)防哄骗。由于阅读器和标签的交互过程中随机数和别名的选取都是随机的,上一次通信的数据跟下一次通信的数据是不同的,因此攻击者无法通过获取到的历史数据来假冒标签与阅读器通信,因此可以有效地防止哄骗攻击。
3)防止跟踪。阅读器与标签之间通信的数据是随机变化的,即使是相邻的两次认证、鉴权所传输的数据都是统计无关的,因此攻击者无法通过历史数据跟踪用户位置,有效地保护了用户的位置隐私。
4)实现双向认证。机制工作流程的前四步是阅读器对标签身份的认证过程,第五和第六步是标签对阅读器身份的认证过程,保证了双方通信的前向和后向安全性,从而实现了双向认证的要求。
5)协议的一次执行中,标签进行了一次伪随机数产生运算和两次Hash运算,阅读器进行了一次伪随机数生成运算,后端数据库两次Hash运算;标签需要增加一定的存储空间以存储别名, 但是其量级仍然保持在O(N)。综上所述,带别名的双向认证机制运算成本低,效率高。
随着RFID 在各行各业的应用越来越广泛, 其安全问题成为RFID 系统顺利推广的一个重要因素。本文对带别名的双向认证机制进行了性能分析和仿真验证。软件仿真和性能分析表明,此协议能够有效解决隐私保护和认证鉴权两方面的安全问题, 同时系统的复杂性和资源占用保持在能够接受的范围内, 是一种可行的安全解决方案。
[1]冯清枝,任嫒.射频识别技术的安全问题及防范策略[N].中国刑警学院.广东公安科技.2008年,第4期
[2]周晓光.射频识别(RFID)技术原理与应用实例[M].北京:人民邮电出版社.2006
[3]Dennis E.Brown.RFID implementation/ McGraw-Hill communications[C]. New York: McGraw-Hill, c2007
[4]Claus Heinrich. RFID and Beyond.Indianapolis [R]. Indianapolis, IN : Wiley, c2005
[5]C.M.Roberts.Radio frequency identification (RFID)[J].ELSEVIER Computers & Security, 2006,25:18-26
[6]郎为民,刘德敏,李建军.R F I D安全机制研究[J].解放军通信指挥学院/沈阳军区网管中心.2007年,第9卷第3期
[7]杨海东,杨春.RFID安全问题研究[J].华南理工大学.2008年,第24卷第3-2期
[8]龙雨,李芳.RFID安全方案研究[J].湖南人文科学院. Computer Knowledge And Technology电脑知识与技术.2008年,第4卷第7期
The Analysis and Research of Improved RFID Two-way Authentication Mechanism
Song Hui Chen Danchun Zhang Haizhi Zhang Liangjun
1.School of Physics and Telecommunication Engineering South China Normal Unix, Guangzhou 510006, Guangdong China; 2. Software C Tepper, Guangzhou 510665, Guangdong China
Base on the simple introduction of the security problem of radio frequency identification(RFID) and a variety of RFID security mechanism,this paper discribes the principle of two-way authentication mechanism with alias and simulation analyses its performance. Then use MATLAB to implement simulation and verification.
10.3969/j.issn.1001-8972.2011.11.059