基于RBAC的RFID安全认证协议*

2014-03-23 06:03王桂超李永珍
计算机工程与科学 2014年5期
关键词:安全级别重传阅读器

王桂超,王 彦,李永珍

(延边大学工学院,吉林延吉133002)

1 引言

无线射频识别RFID(Radio Frequency Identification)技术是一种通过无线广播进行非接触式双向通信的自动识别技术[1]。随着物联网技术的发展,作为物联网重要组成部分的RFID技术也得到空前的发展。由于其方便、快捷,因此被广泛应用于停车场、门禁、物流、家居等生活的各个方面。但是,由于RFID系统的特殊性,其信息通过无线传输,并且无法利用传统加密技术来加密,导致用户信息很容易泄露,因此其安全隐私问题也越来越受到人们的关注。

为了保证用户信息的安全性,已经有很多安全协议被提出,如基于Hash函数的安全协议、基于传统加密技术的安全协议、基于位运算的安全协议等。虽然这些协议在一定程度上解决了RFID安全问题,但是都没有考虑到非授权标签信息的泄漏问题。

为了弥补这些安全协议的缺陷,本文提出了一种基于角色访问控制RBAC(Role Based Access Control)[2]的安全认证协议。通过对阅读器分配角色、对标签赋予安全等级等措施,来控制阅读器的访问范围,从而保护非授权标签信息的安全。经过对比,此协议在安全性和高效性方面优于其他安全协议,更适合低成本RFID系统。

2 现有RFID安全协议分析

由于RFID系统通过无线广播进行信息交换,因此阅读器与标签之间交换的数据很容易遭受截获。同时受到标签存储和计算能力的限制,传统加密技术无法应用于RFID前端信道信息的加密,因此前端信道极易遭受外界的攻击。为了保证RFID系统信息的安全,保护用户的隐私,许多RFID安全协议被提出,如基于Hash函数的安全协议、基于传统加密技术的安全协议、基于位运算的安全协议以及基于访问控制的安全协议等。

基于Hash函数的安全协议主要包括Hash-Lock协议[3]、随机化Hash-Lock协议[4]、Hash链协议[5]等。Hash-Lock协议采用metaID代替标签的真实ID,以此来保护标签信息避免泄露,认证过程中metaID保持不变,Key和标签ID以明文形式通过不安全信道发送。因此,此协议容易受到假冒攻击、重传攻击和位置跟踪等。随机化Hash-Lock协议每次标签回答都是随机的,因此可以抵抗位置跟踪攻击,但当认证通过后,标签ID以明文方式发送,因此其无法抵抗假冒攻击和重传攻击等。Hash链协议采用两个不同的Hash函数,可以抵抗位置跟踪,但每次认证数据库都要对所有标签ID进行计算和比较,计算量大,不适合大规模系统使用。

基于传统加密技术的安全协议主要包括基于DES算法的RFID安全协议[6]、基于椭圆曲线密码的RFID安全协议[7]、基于公钥的RFID安全协议[8]等。虽然基于传统加密技术的RFID安全协议安全性很高,但由于RFID系统标签有限的计算和存储能力,其不适用于低成本RFID系统。

基于位运算的安全协议主要是为了降低计算量,如基于异或运算的RFID认证协议[9],此协议采用异或运算,减少了标签对硬件的要求,更容易实现,更适合低成本RFID系统,但其没有考虑阅读器的授权问题,容易造成非授权标签信息的泄漏。

基于访问控制的安全协议目的是限制阅读器的访问权限,从而更好地保护标签信息的安全。如基于OPDL规则的访问控制协议[10],但其采用复杂的OPDL规则,计算量大,计算过程复杂,不适合低成本RFID系统。而文献[11]提到的一种基于访问控制的认证协议,对非授权标签安全问题没有考虑,因此安全性受到很大限制。

3 基于RBAC的RFID安全认证协议

为了在保护非授权标签信息安全的同时降低系统对标签的硬件要求,本文提出了一种基于RBAC的RFID安全认证协议。此协议通过引入角色控制机制,来保护非授权标签信息的安全,同时可以抵抗系统内部阅读器攻击;采用部分ID和异或运算,降低对标签的硬件要求,更适合低成本RFID系统。

3.1 系统初始化

本系统由标签、阅读器、后台数据库和密钥分配中心KDC(Key Distribution Center)组成。其中,标签能够产生随机数,并能进行异或运算;阅读器从KDC接收私钥和公钥,能够产生随机数和进行异或运算;数据库负责数据的存储以及权限的验证和数据的检索,并从KDC接收私钥和公钥;密钥分配中心负责为阅读器和数据库分配公钥和私钥。数据库与阅读器之间的通信信息采用RSA加密技术加密,双方都用对方的公钥加密发送的信息,用自己的私钥解密接收的信息。

(1)角色定义:对不同阅读器根据用户ID赋予阅读器不同的权限,也就是说,不同的阅读器扮演不同的角色。

(2)标签初始化:标签IDt,安全级别SPid;

(3)阅读器初始化:阅读器IDr,所属数据库IDd;

(4)数据库初始化:数据库IDd,主要的数据表如表1~表5所示。

3.2 协议的执行过程

(1)阅读器向后台数据库发送角色申请请求Authority和自己的IDr以及所属的数据库IDd和用户的ID。

(2)后台数据库根据收到的数据库IDd查询自己的IDd值,如果与自己的IDd相同,则再在自己数据库中查找IDr如果查找到相同的IDr,则阅读器认证通过,否则阅读器认证失败。阅读器认证通过后,再根据用户ID查询相对应的角色IDrol,并将角色IDrol和与此角色IDrol对应的安全级别SPid2返回给阅读器。对于不是本地的阅读器,则数据库根据IDd通过EPC网络,与远程数据库通信,进行相关信息的查询。

Table 1 Relationship between IDt and IDd表1 阅读器IDt与数据库IDd关系表

Table 2 Relationship between ID and IDrol表2 用户ID与角色IDrol关系表

Table 3 Relationship between IDt and SPid表3 标签IDt与安全级别SPid关系表

Table 4 Relationship between IDrol and SPid表4 角色IDrol与安全级别SPid关系表

Table 5 Relationship between SPid and authority表5 安全级别SPid与权限关系表

(3)阅读器生成一个随机数R,然后将R和询问请求Query发送给标签。

(4)标签生成一个随机数n,计算R′=R⊕PID,其中R为从阅读器接收所得,PID=(IDt,n)表示在IDt数据中截取从开始位置长度为n的数据作为PID,⊕为异或运算。并将R′、n、R以及自己的安全级别SPid 1发送给阅读器。

(5)阅读器根据接收到的R,首先验证与自身产生的R是否相等,如果相等,则继续根据收到的SPid1与自己的SPid2比较;如果不相等,则认证失败。当SPid2≥SPid1时,阅读器将R、n、R′、IDrol和SPid 1转发给数据库,数据库根据收到的R、n、R′计算得到PID,然后查询SPid1安全级别下的所有标签IDt,如果存在PID′=(IDti,n)=PID,则标签认证通过,否则,标签认证失败。在标签认证通过之后,数据库根据IDrol查询阅读器的安全级别SPid 2,如果两者相匹配,则阅读器权限确认,将标签相关信息发送给阅读器,否则,阅读器权限认证失败。

(6)当阅读器SPid2<SPid1时,阅读器返回权限不足的信息,如果用户选择升级权限并付费,则数据库根据付费信息返回给阅读器一个大于或等于SPid1的安全级别,阅读器从而获得访问权限。

具体认证过程如图1所示。

Figure 1 Secure authentication protocol of RFID system based on RBAC图1 基于RBAC的RFID安全认证协议

4 安全性分析

本文提出的安全认证协议的核心是基于RBAC,在认证过程中,引入角色机制,同时标签和阅读器都采用随机数和异或运算,安全性与硬件要求得到保证。下面对几种典型的攻击进行分析。

(1)非授权标签攻击:通过用户ID,阅读器可以获取不同的角色,从而获得相应的安全级别。如根据初始数据库中的数据:阅读器002根据登录的用户zad,可以获得角色001,从而此阅读器可以获得的安全级别为01,而属于此安全级别下的标签只有00001与00002。这样,阅读器002根据其安全级别,对这两个标签无任何读取权限,而对于数据库中的其他所有未授权的标签如00003、0000N的信息也同样无法读写;而如果阅读器002登录用户ID为DDD,阅读器获得的角色为002。因此,阅读器获得的安全级别为02,而此安全级别下的标签ID为00003,这样,阅读器002只能读取标签00003的信息,而对其无写入权限。同时,对数据库中的其他标签,没有任何读写权限,从而能够更好地保护非授权标签信息免遭泄露。

(2)假冒攻击:在RFID系统中,有两种假冒攻击[12]。一种是系统外部假冒攻击:攻击者伪装成合法阅读器或者合法标签进行假冒攻击;另一种是系统内部假冒攻击:系统内部阅读器假冒其他系统内部阅读器进行攻击。

①系统外部假冒攻击。首先攻击者伪装成合法阅读器,发送Query‖R1给标签,攻击者获取标签的回应SPid‖R′‖n‖R并存储;在下次认证会话中,当真正的合法阅读器发送Query‖R2时,攻击者伪装成合法标签向阅读器响应SPid‖R′‖n‖R。由于阅读器每次会话都会产生一个新的随机数,即R1≠R2,所以PID1=R′⊕R1,PID2=R′⊕R2→PID1≠PID2。又因为PID1=(IDt,n),所以PID2≠(IDt,n)。所以,在数据库中的SPid对应的标签下查找不到PID2=(IDt′,n),因此此协议可以抵抗此类假冒攻击。

②系统内部假冒攻击。因为攻击者是系统内部阅读器,其对整个通信协议都非常清楚,因此此攻击具有很大的危险性。假设系统内部阅读器x假冒内部阅读器y向标签j进行认证请求。由于阅读器与后台数据库进行通信时经过RSA加密,而阅读器x无法得到阅读器y的私钥,因此阅读器x得到数据库的响应Ekuy(IDrol‖SPid1)后无法解密,认证失败。同时,如果阅读器x和阅读器y的安全等级不同的话,对标签的请求也有可能被拒绝,从而保护了标签的安全性。

(3)重传攻击:重传攻击主要包括两种,一种是系统外部重传攻击,另一种是系统内部重传攻击。

①系统外部重传攻击:首先攻击者扫描标签,并记录标签对其响应数据SPid‖R′‖n‖R,在之后的某个时刻,攻击者将此响应重传给阅读器,但是由于每次标签的响应都有随机数R参与,即使阅读器将此响应转发给数据库,由于两次随机数R相同,数据库则认为此响应已经收到过,因此直接拒绝再次响应。所以,此协议也可以抵抗此类重传攻击。

②系统内部重传攻击:由于系统内部阅读器对系统内部整个认证过程了解,因此在经过一次合法认证过程之后,如果阅读器将标签响应信息存储,则对于Hash-Lock协议、随机化Hash-Lock协议和Hash链协议等,阅读器可以不经过后台数据库而直接对标签进行读取。

而对于本协议,由于阅读器的阅读权限必须经过后台数据库确认之后才能读取权限范围内的信息,因此,阅读器必须转发其存储的标签响应信息,而对于相同的响应信息,数据库则直接拒绝,因此此协议可以完全抵抗系统内部阅读器重传攻击。

(4)位置跟踪:如果阅读器发送询问请求,标签收到请求后发送响应。由于标签每次都生成一个随机数,因此每次SPid‖R′‖n‖R都不相同,无法确定为同一个标签的响应,也就不能进行位置跟踪。

(5)窃听攻击:在阅读器和标签之间传输的信息由于其前端信道不安全,可能会被窃听。但是,由于在阅读器和标签之间的通信信息都有随机数的参与,根据Shannon理论证明:如果在XOR操作中至少有一项是随机的,则简单的XOR加密是安全的[13]。

因此,阅读器之间的通信是安全的,此协议可以抵抗窃听攻击。

从表6可以看出,本协议具有很强的安全性,在非授权标签攻击、内部阅读器攻击等方面都有自己特有的安全机制。

Table 6 Security analysis of security protocols表6 各个安全协议安全性分析

5 结束语

本文提出了一种基于RBAC的RFID安全认证协议,该协议通过引入基于角色的访问控制机制和安全级别等措施,来保护非授权标签信息的安全性,从而控制阅读器访问范围,防止非授权标签信息的泄露,弥补了目前一些RFID安全协议不能保护非授权标签信息安全的不足。同时,该协议利用部分ID的异或运算来降低标签的计算量,更适合低成本RFID系统。

[1] Bai Yu,Teng Jian-fu,Zhang Li-yi,et al.Hash lock-based strengthen synchronization RFID authentication protocol[J].Computer Engineering,2009,35(21):138-143.(in Chinese)

[2] Ferraiolo D,Kuhn R.Role based access controls[C]∥Proc of the 15th NIST-NCSC National Computer Security Conference,1992:554-563.

[3] Sarma S E,Weis S A,Engels D W.RFID systems and security and privacy implications[C]∥Proc of the 4th International Workshop on Cryptographic Hardware and Embedded Systems(CHE2002),2003:454-469.

[4] Weis S A.Security and privacy in radio frequency identification device[D].USA:MIT,2003.

[5] Ohkubo M,Suzuki K,Kinoshita S.Hash-chain based forward-secure privacy protection scheme for low-cost RFID[C]∥Proc of the 2004 Symposium on Cryptography and Information Security(SCIS 2004),2004:719-742.

[6] Li Yan-kun,Xie Jing,Mao Zhi-gang.Secure RFID system based on DES encrypt algorithm[J].Modern Electronic Technique,2009(1):87-93.(in Chinese)

[7] Wu Xue-hui,Niu Zhi-hua,Wang Chao.Security protocol of RFID based on elliptic curve cryptography[J].Computer Engineering and Design,2010,31(24):5165-5167.(in Chinese)

[8] Li Bin,Ling Li.An NTRU public key encryption system based RFID authentication protocol[J].Computer Applications and Software,2012,29(4):278-280.(in Chinese)

[9] Pan Tao,Zuo Kai-zhong,Guo Liang-min,et al.Mutual authentication protocol based on XOR operation for low-cost RFID[J].Computer Engineering,2012,38(9):278-281.(in Chinese)

[10] Li Yi-yang,Sun Gang.An OPDL rule-based RFID date access control mechanism[J].Communications Technology,2009,42(1):239-241.(in Chinese)

[11] Wang Gui-chao,Zhang Ai-li,Li Yong-zhen.Secure authentication protocol of RFID system based on access control[J].Advanced Engineering Forum,2012,6(9):1072-1077.

[12] Xie Chuan.RFID authentication protocol based on hash function and key array[J].Journal of Computer Applications,2011,31(3):805-811.(in Chinese)

[13] Yang Ling,Chen Zhi-qiang.A mutual authentication protocol for low-cost RFID[J].Computer Applications and Software,2010,27(8):298-300.(in Chinese)

附中文参考文献:

[1] 白煜,滕建辅,张立毅,等.基于Hash锁的同步强化RFID验证协议[J].计算机工程,2009,35(21):138-143.

[6] 李彦堃,谢憬,毛志刚.基于DES算法的RFID安全系统设计[J].现代电子技术,2009(1):87-93.

[7] 吴学慧,牛志华,王潮.基于椭圆曲线密码的RFID安全协议[J].计算机工程与设计,2010,31(24):5165-5167.

[8] 李斌,凌力.一种基于NTRU公钥加密系统的RFID认证协议[J].计算机应用与软件,2012,29(4):278-280.

[9] 潘涛,左开中,郭良敏,等.基于异或运算的低成本RFID双向认证协议[J].计算机工程,2012,38(9):278-281.

[10] 李亦杨,孙罡.一种基于OPDL规则的RFID数据访问控制机制[J].通信技术,2009,42(1):239-241.

[12] 谢川.结合Hash函数和密钥阵列的RFID安全认证协议[J].计算机应用,2011,31(3):805-811.

[13] 杨灵,陈志强.一种低成本RFID的双向认证协议[J].计算机应用与软件,2010,27(8):298-300.

猜你喜欢
安全级别重传阅读器
基于反向权重的阅读器防碰撞算法
基于Packet tracer防火墙的基本配置仿真实验的设计与实现
The Magna Carta
面向异构网络的多路径数据重传研究∗
一种高效的RFID系统冗余阅读器消除算法
一种RFID网络系统中消除冗余阅读器的高效算法
数据链路层的选择重传协议的优化改进
Endogenous neurotrophin-3 promotes neuronal sprouting from dorsal root ganglia
数据库加密技术及其应用研究
MPTCP中一种减缓缓存阻塞的重传策略