一种基于哈希函数的RFID双向认证协议
2012-10-08赵泽茂
孙 肖,赵泽茂
(杭州电子科技大学通信工程学院,浙江杭州310018)
0 引言
无线射频识别(Radio Frequency Identification,RFID)是一种用于非接触识别物品对象的技术,它利用射频方式进行非接触的双向通信,以达到自动识别目标对象并获取相关数据的目的。由于RFID系统中标签的存储空间和计算能力有限,RFID标签和阅读器之间的通信是非接触和无线的很容易受到窃听,使得犯罪分子可以利用RFID的漏洞进行各种非法攻击,导致标签信息隐私泄漏和标签用户的位置隐私泄漏等。针对RFID的安全问题学者已经提出了很多基于哈希函数的RFID认证协议。文献1中提出的协议利用MAC函数值对标签发出询问,然而,标签应答信息的漏洞使得该协议并不能有效抵抗标签假冒、服务器假冒和拒绝服务攻击。文献2提出了一种能够在任何情况下抵抗服务器攻击的协议,但是一个强攻击者通过物理攻击获取标签的内部信息,然后假冒阅读器得到种子密钥后便可发动假冒服务器攻击和非同步攻击。文献3是一种轻量级抗非同步攻击的RFID协议,协议声明能够抵抗几乎所有常见的攻击,但是攻击者通过观察和操纵标签和阅读器之间的信息流可以很容易的发起非同步攻击。文献4利用哈希函数提出了一个双向认证协议,协议利用密钥值S,随机数N和哈希函数,结合静态和动态更新机制,只有合法的标签和服务器才能认证通信信息流,同时该协议也具备可扩展性和抗阅读器攻击。文献5中提出了一种新的攻击方式,即服务器信息泄露攻击,攻击者通过某种手段可以获取某标签在服务器中的存储信息,并利用这些信息假冒真实的阅读器通过服务器认证,认证成功后,服务器更新标签信息,导致服务器和真实标签中的秘密信息不同步。针对该攻击提出了一种新的协议,但该协议不能有效抵抗假冒阅读器攻击,并且不具备可扩展性,不适用于大型低成本的RFID系统。针对上述几种协议的缺点,结合RFID标签的局限性以及哈希计算效率高、耗能低的优点,本文提出一种新的基于哈希函数的RFID双向认证协议,该协议在安全和隐私保护性能以及系统开销上具有明显的优势。
1 一种基于哈希函数的RFID安全认证协议
1.1 初始状态
标签和阅读器之间的无线通信环境是开放的,也就是不安全的,攻击者有可能窃听它们之间的通信内容,因此假设阅读器和服务器之间的通信是不安全的;服务器和阅读器之间是有线通信,假设他们之间的通信是安全的;标签和服务器都具有一个伪随机数发生器;标签和服务器也都能够进行哈希计算。
标签是被动标签,不能抵抗物理攻击。RFID系统面临的攻击者可以分为强攻击者和弱攻击者,弱攻击者只能观察和非法操作服务器和目标标签之间的通信内容,不能通过物理攻击获取标签当前的内部状数据;标签的存储能力和计算能力决定了它不具备防篡改能力,强攻击者通过物理攻击可非法获取标签当前的内部数据;同时强攻击者还具备弱攻击者的攻击能力。
协议中所使用符号的说明如表1所示。
表1 协议使用符号含义说明
初始化执行系统产生一个随机数ki,将ki分配给标签Ti。
服务器产生并存储一个随机数S作为它的私钥,计算IDi=ES(ki),其中Ek()表示一种对称密码算法,密钥是S,并通过安全信道将IDi=ES(ki)分配被标签Ti。为了防止非同步攻击,服务器中同时存储上一轮各认证密钥(IDi)pre,IDi;为了降低标签存储开销,标签中只存储IDi,ki。
1.2 协议流程
协议的具体认证过程如图1所示。
图1 协议流程
(1)阅读器生成一个随机数NR∈R{0,1}n,计算P=h(NR),然后R将认证请求命令Query、P发送给Ti。
(2)标签 Ti收到 P 后生成一个随机数 NT,计算 Q=h(NT),[IDi]Q,M1=IDi⊕Rot(IDi,Q),M2=h(ki∥P∥Q)⊕NT,发送[IDi]Q∥Q∥M1∥M2给阅读器。
(3)阅读器将[IDi]Q∥Q∥M1∥M2∥P转发给后台服务器D。
(4)服务器收到标签响应后,在后台数据库中搜寻满足[IDi]Q的IDi,若没有找到IDi,则发送错误信息给阅读器,否则,利用找到的标签标识符计算M'1=IDi⊕Rot(IDi,Q),比较M'1?=M1,若相等,则用S解密标识符得到标签密钥,然后计算N'T=M2⊕h(ki∥P∥Q),比较h(N'T)?=Q,若相等,则服务器对标签的认证通过,说明标签Ti为合法标签。服务器计算M3=h(ki∥P∥Q)⊕NR,更新(IDi)old=IDi,ki=NR,IDi=ES(ki),计算 M4=ki⊕IDi,发送 M3∥M4给 R。
(5)R将M3∥M4转发给Ti。
(6)标签Ti计算N'R=M3⊕h(ki∥P∥Q),比较h(N'R)与P是否相等,若相等,则标签对服务器认证成功,说明服务器是合法的。然后Ti更新并存储ki=N'R,IDi=M4⊕ki。
2 协议分析
2.1 协议的安全特性分析
协议利用哈希运算、异或等完成了标签和后台服务器之间的相互认证,这里从协议的具体执行过程分析其隐私保护和安全特性。
(1)重放攻击:该协议采用询问-应答机制,IDi依赖于随机数NT,每次认证时NT都会更新,同时M1和M2也依赖于每轮阅读器和标签产生的随机值若攻击者重放M1、M2,服务器或者标签能够检测到,攻击者不能实施重放攻击;若攻击者重放阅读器的认证请求,标签产生新的随机数NT并产生新的M1,从而也能有效避免攻击者对标签的跟踪定位。
(2)非同步攻击:该协议同时存储了(IDi)pre,IDi,能够保证服务器和标签之间秘密信息的同步。
(3)后向安全性:标签采用阅读器产生的随机数更新标签密钥,各轮认证密钥之间是没有关系的,攻击者即使获得了ki,它也并不能破解该标签之前的内部秘密信息,从而该协议提供了后向安全性,攻击者不能跟踪标签过去的行为。
(4)前向安全性:弱攻击者只能获得服务器和标签之间的交互信息,不知道ki无法推测出新密钥。对于强攻击者来说,即便通过物理攻击获得当前轮标签密钥ki,也不能够得到标签下一轮的认证密钥,因为标签下一轮的认证密钥依赖于阅读器产生的随机数,攻击者无法预测,从而攻击者无法跟踪标签未来的行为。
(5)假冒服务器攻击:服务器发送消息M3验证标签认证服务器的合法身份,不知道标签密钥ki的攻击者不能计算出有效的M2,因而,向标签假冒合法服务器的攻击无法奏效。然而,对于强攻击者,如果它能在一次协议成功运行中获取到所有交互信息和标签的私钥ki,那么它就可以计算出更新的密钥,进而计算出有效的M3成功假冒合法服务器;因此,该方案抵抗这种攻击是有前提的,即攻击者获知标签的所有交互信息后,没有获取到标签的临时私钥ki,本文方案就能抵抗服务器假冒攻击。
2.2 协议的性能分析
从服务器和标签的计算开销和存储开销方面对各协议比较如表2所示。相比简单运算,哈希函数计算复杂度很高,因此这里根据哈希函数和对称加解密计算次数来衡量服务器和标签的计算开销。从表2中可以看出,新协议中服务器搜寻目标标签时显著的减少了哈希函数的计算次数,另外,协议中标签和服务器的存储开销也降低了。其中N表示系统中标签的个数,l1表示协议中产生的各信息的长度。
从安全和隐私保护性能方面对文献1-4中的协议进行比较如表3所示。其中Y表示协议能够抵抗该类攻击;N表示协议不能抵抗该类攻击;*表示协议在某条件下能够抵抗该类攻击。
表2、3的分析和比较说明新协议不仅满足上面文献的协议提供的安全性能,还能有效抵抗服务器信息泄露攻击,有效抵抗位置跟踪,为RFID提供了更强的安全性能,而且明显减少了服务器的计算开销,缩短了服务器的计算时间,提高了RFID系统的认证效率,减少了标签的计算开销,大大降低了系统开销,是一个安全、高效的双向认证协议。
表2 各参考文献的协议计算和存储开销对比
表3 各参考文献的协议安全和隐私性能比较
3 结束语
针对RFID系统中标签和阅读器之间的通信安全威胁,分析了现有的几种协议存在的安全漏洞,在这些协议的基础上提出了一种新的双向认证协议,并分析了其安全特性和系统性能。新协议结合动态更新机制、随机分割机制充分保证了标签的位置隐私;利用服务器强大的处理能力加解密标签标识符,有效降低了服务器的存储开销,提高了系统的安全性能,通过分析和比较新协议具有显著的性能优势,满足安全、高效、低成本RFID系统的设计要求。
[1]Song B,Mitchell C J.RFID authentication protocol for low-cost tags[C].WiSec:Proceedings of the first ACM conference on Wireless network security,2008:140 -147.
[2]Akgun M,Caglayan M U,Anarim E.A new RFID authentication protocol with resistance to server impersonation[C].Washington:Proceedings of the 2009 IEEE International Symposium on Parallel Distributed Processing,2009:1 –8.
[3]Zhou Shi Jie,Zhang Zhen,Luo Zong Wei.A lightweight Anti Desynchronization RFID Authentication Protocol[J].Information Systems Frontiers,2010,12(5):521 -528.
[4]Wei Chia Hui,Hwang Min Shiang,Chin A Y.A Mutual Authentication Protocol for RFID[J].IT Professional,2011,13(2):20-24.
[5]Kardas Süleyman,Levi Albert,Murat Ertugrul.Providing resistance against server information leakage in RFID systems[C].Turkey:Telecom ParisTech,2011:34-40