APP下载

适用于低成本标签的移动RFID认证协议

2018-08-20崔宝江

计算机工程与应用 2018年16期
关键词:敌手阅读器哈希

苏 彬,程 玲,崔宝江

SU Bin1,3,CHENG Ling2,CUI Baojiang1

1.北京邮电大学 网络空间安全学院,北京 100876

2.新疆工程学院 计算机工程系,乌鲁木齐 830091

3.山西职业技术学院 计算机工程系,太原 030006

1.School of Cyberspace Security,Beijing University of Posts and Telecommunications,Beijing 100876,China

2.Department of Computer Engineering,Xinjiang Institute of Engineering,Urumuqi 830091,China

3.Department of Computer Engineering,Shanxi Polytechnic College,Taiyuan 030006,China

1 引言

无线射频识别(Radio Frequency Identification,RFID)是一种快速发展的数字识别技术,其通过射频信号对目标对象进行非接触式的自动识别,可广泛用于供应链管理、工业生产控制、票务管理、人员管理、医疗服务等领域,并可用于某些工作条件恶劣的环境[1]。

一个完整的RFID系统由标签(Tag)、阅读器(Reader)和后台服务器(Server)三部分组成[2]。在RFID系统的发展中,标签的成本与安全隐私问题是互相制约的两个重要因素[3],要降低标签的成本,就需要简化标签内芯片的设计,但这样会导致安全性的减弱;要提高安全性,需要标签支持哈希、随机数、加密等功能,必然提高标签的成本,因此RFID系统的研究,就需要在成本与安全性之间找到好的平衡点。由于价格方面的优势,当前应用最为广泛的RFID系统是低成本的被动式RFID标签系统,其最重要的标准是由EPCglobal提出的EPC Class-1 Generation-2[4],该标准的内容同时也符合ISO/IEC 18000-6C标准[5]。根据EPC Class-1 Generation-2标准中关于标签计算能力与存储能力的规定,其无法支持RSA公钥加密体制、SHA-1或MD5等哈希函数、ECC椭圆曲线加密等功能,能够支持模运算、位运算、伪随机数生成等功能[6]。

传统的RFID系统环境中,阅读器与后台服务器之间是通过线缆直接连接的,因此认为它们之间的信息传输信道是安全可靠的[7]。针对这种情况,国内外学者研究出了大量的安全认证协议,如文献[8-9]。近年来随着移动终端设备及近场通讯技术的发展,出现了将阅读器嵌入移动设备形成移动RFID系统的情况,阅读器的工作方式发生了改变,其与后台服务器之间通过无线信道连接,安全性假设不再适用,因此传统的RFID认证协议无法应用于这种环境[10]。

针对移动RFID系统认证协议的研究,目前主要集中在两方面:一是安全,协议要能够安全地传递身份认证参数、密钥更新参数等,并能实现隐私性,防止重放、假冒、去同步化等攻击行为;二是性能,即如何合理地利用标签、阅读器、服务器的计算及存储能力,如何高效率地根据认证参数从服务器数据库中查找到匹配的标签及阅读器记录[11]。

2 相关协议的性能及安全性分析

针对移动RFID系统,国内外学者提出了一系列的认证协议方案[6,10-19],其中一些学者为了增加协议的安全性,在标签中使用了哈希函数[12-13,19]或ECC椭圆曲线加密功能[14-15],如前所述,由于计算及存储能力的限制,这样的协议并不适合在EPC Class-1 Generation-2标准的低成本被动式标签系统中使用。

2013年,文献[6]在文献[16]的基础上,提出了一种基于二次剩余定理的移动RFID认证协议,该协议符合EPC Class-1 Generation-2标准,宣称实现了隐私保护,并能抵抗各种攻击。然而在其后的几年里,文献[10-11,17]均指出其不能抵抗重放攻击、假冒攻击,且服务器根据身份凭据查找标签效率极低,极端情况时,需要遍历数据库256次。

文献[11]的改进方案中,将文献[6]中标签传递的参数由x′=(x2)2modn,t′=(t2)2modn替换为x′=(c||x)2modn,t′=t2modn,这样的好处是在服务器端计算时,可以使用二次剩余定理通过c确定唯一的x以及4个平方根t,这样在最坏的情况下,只需要遍历4次数据库,就可以找到相应的标签记录。然而其在安全性方面依然不能抵抗重放攻击、假冒攻击。当敌手截获某次正常认证情况下 Reader发给 Server的消息 {x′,t′,y′,u′,c},再假冒Reader重放给Server时,由于其中的随机数t、u、c均非Server生成,因而Server无法判断其新鲜性,该条消息可以得到服务器的验证,其中的阅读器信息能够匹配服务器中的记录,得到合法性验证,同样,该消息中的标签信息也能够得到合法性验证。

文献[10]的改进方案是在文献[6]和文献[11]的基础上,给Reader添加了生成时间戳的功能,其生成时间戳Tt1,先传送给Tag,使其参与x的生成,再将其他消息一起传递给Server,Server生成时间戳Tt2,设置传输时延阈值Δt,通过判断|Tt2-Tt1|>Δt来确定消息的新鲜性。为了保证Tt1不被篡改,同时传递的还有Tt1参与生成的哈希函数值z=h(RID||m||x′||Tt1)。该方案解决了重放攻击、假冒攻击问题,然而仍然存在拒绝服务攻击的问题。敌手截获并修改数据包 {x′,t′,y′,u′,z,s,Tt1},其中Tt1修改当前时间,y′修改为对应不存在的h(RID)即可。然后将此包模拟阅读器大量发送给Server,对于每个包,Server都要先进行求平方根运算,然后4次遍历数据库。如果是大型的RFID系统,数据库很大,有可能耗尽服务器资源,形成拒绝服务攻击。

文献[17]提出的改进方案中,由Server发起认证过程,Server产生随机数后,通知阅读器开始建立与标签的通信,解决了重放攻击与假冒攻击。然而这不符合实际的使用情况,由于移动阅读器可能位于较远的地方,服务器不在现场,无法知道何时需要进行标签的识别。

文献[6,10-11,17]在标签中都同时保存了TID与h(TID),看上去是使用h(TID)对TID进行了保护,使其避免在网络中传输,从而导致固定身份凭据的泄露。然而TID并不是标签本身固有的,与h(TID)一样,都是由服务器生成的,且存在绝对的一一对应关系。在协议过程中,TID从未参与任何步骤,也没有进行更新,因此在h(TID)生成以后,TID完全没有储存的必要。另一个问题是阅读器未对标签进行初步的过滤,当阅读器扫描到非本RFID系统的标签时,需要经过服务器端对阅读器、标签信息的计算与验证之后才能处理,最坏情况下,需要4次求平方根运算和8次遍历数据库,降低了系统的性能。

文献[18]方案中,引入了一种构造特殊的随机数生成器fK(X)。Tag及Reader将其重要参数使用消息E=fKR(fKT(ID⊕x⊕rT)⊕rR)传递给Server,在Server端遍历数据库查找(ID,KR,KT,x)以匹配E值,如果能够正确匹配,则Tag及Reader同时通过认证。如果考虑到该协议抵抗标签去同步化功能的KTold和xold,则在最坏情况下,该方案需要遍历标签数据库4n,其中n表示移动RFID系统中Reader的数量,如果系统中Reader的数量很多,则性能会受到较大的影响。该协议也不像其宣称的那样能够抵抗重放攻击,当敌手截获Reader最后一次发给Server的消息{E,rT,rR},并重放给Server时,由于Server不能够识别rT、rR的新鲜性,且由于该协议抵抗去同步化的设计,该消息会被识别为由未更新成功的Tag发送,由KTold和xold作为参数通过验证。

文献[19]提出了一种基于动态密钥的安全认证协议,该协议通过增加Reader与Server间的两次会话,由Server生成随机数R3来保证认证过程中消息的新鲜性,解决了Reader到Server的重放攻击问题。然而其随机数均由明文传输,这样就带来了新的标签假冒问题。敌手记录某个Tag在某次传输过程中的参数{R1,R2,M1L,M2,M3L},当下次Reader以新的随机数R′1发起新的认证过程时,敌手只需生成新的R′2=R′1⊕R1⊕R2,即R′1⊕R′2=R1⊕R2,再把 {R′1,R′2,M1L,M2,M3L}发送给Reader。由于M1L、M2、M3L生成参数中可变的部分只有R1⊕R2,其余参数都是固定不变的,因而该消息可以通过Reader对M1L的验证,也可以通过Server对M2、M3L的验证,敌手成功假冒该标签。如果采集足够的数据,敌手可以假冒出任意的标签信息。同样,敌手可以通过生成R′3=R′1⊕R1⊕R3来假冒任意的阅读器信息。

针对现有的移动RFID认证协议方案[6,10-19]存在的不足,本文以能抵抗假冒攻击、去同步化攻击,且具备前向安全性为目标,构建了一个移动RFID安全隐私模型,并基于该模型提出一种能够实现标签与服务器、阅读器与服务器间的双向认证的,符合EPC Class-1 Generation-2低成本标签标准要求的移动RFID认证协议。

3 安全隐私模型

文献[20]提出了一种传统RFID系统的安全隐私模型,该模型引入了前向隐私问题,将正确性、安全性、前向隐私性作为安全目标,与之前研究者提出的安全模型相比,有了更大的实际意义。该模型仍然基于阅读器与服务器间信道安全的假设,因此并不能直接适用于移动RFID系统。本文参考文献[21]中的方法,在文献[20]模型的基础上进行扩展,建立了一个能够适用于移动RFID系统的安全隐私模型。从之前的分析可以看出,移动RFID系统中最容易出现的问题是由于阅读器与服务器间信道安全的假设不成立而导致的假冒攻击问题,因此本文提出的安全模型突出抵抗假冒攻击,以抵抗假冒攻击、抵抗去同步化攻击及前向安全作为安全目标,更适用于移动RFID系统。

敌手能力假设:敌手Adv只能在有限的时间内与系统进行交互,称为暴露时间(Exposure Period)[22]。在暴露时间里,Adv可以进行最多n次对RFID系统的攻击,包括窃听、篡改、伪造、阻断、重放标签与阅读器、阅读器与服务器间的任何消息,也可以主动发起协议过程。Adv还可以用物理方式攻陷任何一个标签,获得标签的当前存储信息,且假设被攻陷的标签不能再继续正常使用。

(1)抵抗假冒攻击

一个安全的RFID系统,是不应该接受假冒的阅读器或标签的,要能够抵抗由伪造、重放、中间人攻击引发的假冒行为,这就要求标签、阅读器、服务器之间能够进行双向认证,而不仅仅是简单的识别。

假设敌手的攻击分为两个阶段:在第一阶段,Adv可以在暴露时间中,与合法的标签、阅读器、服务器进行最多n次交互,其间Adv可以发起、监听、阻断各实体间的通信,并能够获得认证结果是否成功的信息。第二阶段,Adv假冒标签、阅读器与服务器通信,或假冒服务器与标签、阅读器通信,若假冒信息通过认证,则攻击成功。

定义1(抵抗假冒攻击)移动RFID协议是εa-抵抗假冒攻击的,如果敌手假冒标签、阅读器、服务器成功的概率均不超过εa。

(2)抵抗去同步化攻击

在敌手的攻击下,如果合法标签中的密钥信息与服务器数据库中的信息没有同步更新,在认证过程中就可能出现无法被服务器识别的情况。如果在协议中,合法的标签总能被服务器正确识别,则协议可以抵抗去同步化攻击。

在去同步化攻击的第一阶段中,敌手Adv可以与一个合法的标签及阅读器进行通信,Adv可以监听、篡改、阻断标签与阅读器之间的通信,也可以主动发起假冒、拒绝服务等攻击。第二阶段中,被攻击的标签通过阅读器与服务器进行正常的通信,Adv不参与通信过程,如果认证失败,则攻击成功。

定义2(抵抗去同步化攻击)移动RFID协议是εb-抵抗去同步化攻击的,如果任一合法的标签不能被服务器正确识别的概率不超过εb。

(3)前向安全

前向安全可描述为,即使敌手在某时刻获得了标签的内部状态信息,他也不能识别发生在之前的标签交互过程,若不满足前向安全,就会泄露旧所有者的隐私信息[21]。具体来说,如果敌手在获得标签内部状态信息后,仍然不能对之前通信过程中的两个标签进行区分,则称该RFID系统是前向安全的。

在第一阶段,敌手Adv可以发起、监听、阻断阅读器与两个合法标签之间的通信。第二阶段,Adv物理攻陷其中一个标签,获得该标签的内部状态信息,分辨被攻陷的是第一阶段中的哪个标签,如果成功分辨,则敌手Adv获得成功。

定义3(前向安全性)移动RFID协议是εc-前向安全的,如果敌手成功分辨出通信标签的概率不超过εc。

4 本文提出的协议

本文所提协议使用了符合EPC Class-1 Generation-2标准的低成本被动式RFID标签,这类标签价格低、制造容易,更适于在较大规模的移动RFID系统中使用。如前所述,由于计算能力与存储能力的限制,在低成本标签中不能够使用RSA公钥加密体制、ECC椭圆曲线加密等功能,一般的哈希函数,如SHA-1或MD5等哈希函数也不能够有效支持。针对这种情况,本文协议在标签中使用了一种符合EPC Class-1 Generation-2标准的单向函数与伪随机数生成器作为密码学要素,以满足协议安全需要。阅读器的计算能力较强,为了充分保证系统的安全,在阅读器与服务器之间,使用标准的哈希函数来传递认证信息,并为各阅读器加载时间戳生成器,保持移动阅读器与服务器之间的时钟同步[10]。

为简化协议描述,相关的符号及操作说明如表1所示。

表1 符号及操作说明

4.1 单向函数与伪随机数

文献[21]基于多输入特征寄存器(MISR)的有损压缩算法,提出了一种符合EPC Class-1 Generation-2低成本标签标准的类哈希单向函数,并证明该单向函数具有哈希函数的特征,平衡度为1,具有很好的抗碰撞性。该文献还给出了这种单向函数算法在标签系统中的硬件实现电路,仅由一个LFSR和几个异或门组成,当复杂性为64,k=6,输入信号为96 bit时,硬件消耗仅为82 GE。

本文使用fy(x)表示这种算法,具体计算方法为:

其中,A是变换矩阵;L为压缩周期数,在数值上等于输入数值的长度与输出数值长度的比值;y为初始值,当选择不同的y时,就构成了一组单向函数。

文献[21]还提出了一种使用该单向函数构造的伪随机数生成器,称为M-PRNG。M-PRNG结构简单,符合EPC Class-1 Generation-2标准,当生成128 bit的随机数时,其硬件复杂性仅有1483 GE。M-PRNG在实验中还通过了所有的NIST测试项目。本文协议中,使用M-PRNG作为标签中的伪随机数生成器,记作PRNG()。

4.2 协议的初始化阶段

初始状态下,对于每一个合法的标签,服务器为其生成唯一的TID值与共享密钥k,kold=k,在数据库中添加记录<TID,k,kold>,再将<TID,k,x>加载到标签存储中。x为该移动RFID系统的秘密值,系统中所有参与通信的实体都存储这一参数。对于每一个合法的阅读器,服务器为其生成唯一的RID值,在数据库中添加记录<RID>,再将<RID,x>加载到阅读器存储中。

4.3 双向认证阶段

该阶段由阅读器发起,主要完成标签识别、双向认证、密钥更新3个功能,执行过程如图1所示。具体步骤描述如下:

图1 双向认证执行过程

(1)阅读器记录当前的时间戳TR,发送Hello消息,并使用TR作为挑战,开始一个新的认证周期。

(2)如果有多个标签响应,发生冲突时,会执行一次冲突仲裁过程,如二进制搜索算法[23]或分组防碰撞算法[22],选中的标签开始与阅读器进行交互。

标签生成随机数rT,计算A=fk(rT||TID||TR),B=rT⊕fk(x),C=Rot(A,x)⊕Rot(A,TR)。A的作用为传递标签的认证参数TID和k;B的作用为传递随机数rT,发出挑战,等待关于rT的应答;C是对阅读器初始挑战的应答,用于过滤有意无意的攻击,对于不能攻陷标签存储,无法获得x值的敌手,其假冒信息无法通过阅读器的验证。标签把A、B、C发给阅读器。

(3)阅读器收到标签的回复后,使用秘密值x计算并验证C,若成功则继续执行后面的过程,若验证失败,则说明该标签为非法标签,终止连接。

标签生成随机数rR,计算D=h(rR||RID||TR),E=rR⊕h(RID||B),F=h(x⊕TR)。D的作用为传递阅读器的认证参数RID;E的作用为传递阅读器随机数rR,发出挑战,等待关于rR的应答;F的作用是保证时间戳TR不被篡改。阅读器发送A、B、D、E、F、TR给服务器。

(4)服务器收到认证请求后,首先验证F,以确认在传输过程中以明文形式传输的阅读器时间戳TR有没有被篡改。如果验证成功,服务器以当前时间戳TS值,检查TS-TR<Δt是否成立,若成立,则开始进行阅读器的认证过程。

将rR=E⊕h(RID||B||x)代入D中可得:

D=h(E⊕h(RID||B)||RID||TR)

遍历数据库,查找使D成立的RID,若找到,则阅读器通过认证,继续进行标签的认证。

将rT=B⊕fk(x)代入A中可得:

习近平总书记强调,共青团是为党做青年群众工作的组织。做团的工作必须牢记,任何时候都不能脱离青年,必须密切联系青年。团干部要深深植根青年、充分依靠青年、一切为了青年,努力增强党对青年的凝聚力和青年对党的向心力。中国石化青工委积极推动直接联系青年工作机制落深落实,积极延伸团的手臂,丰富团的神经末梢,打通与青年的“最后一公里”,使共青团真正成为广大青年身边的有效存在,引导团干部身至基层、心系青年,真正当好青年之友。

A=fk(B⊕fk(x)||TID||TR)

遍历数据库,查找使A成立的标签记录,即将某条记录的TID、k或kold代入时,上式成立,若找到,则标签通过认证。

再将RID代入rR=E⊕h(RID||B||x),计算出阅读器随机数rR,计算P=h(rR)作为对阅读器挑战的应答。

将标签记录中的k值代入rT=B⊕fk(x),得到标签随机数rT,服务器更新其与标签间的共享密钥kold=k,k=fk(rT⊕k),计算Q=fk(rT)作为对标签挑战的应答。

服务器把P、Q发给阅读器。

(5)阅读器收到服务器的回复后,验证P=h(rR),若正确,则服务器通过阅读器的认证,阅读器继续将Q转发给标签。

5 安全性分析

本文基于标准模型对协议的安全性进行分析证明,证明方法参照文献[21]。假设敌手的攻击行为分为学习阶段和攻击阶段。学习阶段中,敌手能够对移动RFID系统中的n次交互信息进行窃听与控制。攻击阶段中,敌手对移动RFID系统发起攻击,如果成功概率可以忽略不计,则该系统是安全的。

假设敌手Adv在第一阶段中获得的信息集合为I,攻击游戏为Adv(I),Adv(I)值为1表示攻击成功,为0表示攻击失败。若攻击成功的概率Pr[Adv(I)=1]是可忽略的,则系统是安全的。该游戏可以是假冒攻击Adva(I)、去同步化攻击Advb(I)、前向安全攻击Advc(I)。

定理1本文协议是εa-抵抗假冒攻击的,其中εa≤2-k+1+2-l。

证明 根据定义1,需要证明敌手假冒标签、阅读器、服务器时的安全性。

(1)非法标签被服务器接受的概率

定义敌手攻击服务器以假冒标签的游戏为AdvTa(I)。

敌手Adv在第一阶段中进行了n次协议过程,获得n组标签发送的消息{Ai,Bi,Ci}(i=1,2,…,n)。由于消息中的随机数与秘密值无法区分,因而这n组信息对构建假冒标签信息并没有帮助,对阅读器的攻击也是类似的情况。在第二阶段中,Adv需要伪造出信息A′,并能通过服务器的验证。

共享密钥时的成功概率。

(2)非法服务器被标签接受的概率

定义敌手攻击标签以假冒服务器的游戏为AdvSTa(I)。

敌手Adv需要伪造出信息Q′,并能通过标签的验证。由于信息的构成与(1)中类似,区别是没有TID的参与,用相同的方法可得:

(3)非法阅读器被服务器接受的概率

敌手Adv需要伪造出信息D′,并能通过服务器的验证。阅读器与服务器间使用标准哈希函数h。

(I)=1表示敌手Adv可以正确预测第n+1次的哈希函数值h(αn+1),αn+1=rR(n+1)||RID。Adv攻击成功的概率为:

(4)非法服务器被阅读器接受的概率

敌手Adv需要伪造出信息P′,并能通过标签的验证。由于信息的构成与(3)中类似,区别是没有RID的参与,用相同的方法可得:

由上述(1)(2)(3)(4)的结果,定理1得证。

定理2本文协议是εb-抵抗去同步化攻击的,其中εb≤2-k+1+2-l。

证明 根据定义2,需证明Pr[ ]Advb(I)=1≤2-k+1+2-l。当服务器完成对标签的认证后,其更新与标签间的共享密钥,如果标签没有更新,或者反之,则会出现去同步化。去同步化攻击可能通过以下3种方式进行。

(1)阻断攻击。敌手Adv通过阻断服务器经由阅读器发给标签的确认信息Q,导致出现共享密钥不同步的情况。针对这种情况,协议在服务器上保存了旧的共享密钥,因而这种攻击是无效的。

(2)假冒攻击。敌手Adv在假冒服务器攻击成功时,可以改变标签中的共享密钥,在假冒标签攻击成功时,可以改变服务器数据库中的共享密钥,从而使标签与数据库中的共享密钥失去同步,标签无法通过正常认证。从定理1可知,假冒攻击的成功概率εa≤2-k+1+2-l。

(3)重放攻击。敌手Adv可能进行的重放攻击是将之前某次通信中标签发送的信息重新发送给服务器,欺骗其修改共享密钥,达到去同步化攻击的目的。本文协议中使用时间戳来防止这一攻击,当时间戳值与当前时间的间隔大于一定阈值时无法通过验证,如果Adv修改了时间戳,服务器还能够通过信息F进行验证。Adv的消息通过验证的概率即为重放攻击成功的概率,根据标准哈希函数的性质,这一概率为:

综上,Pr[ ]Advb(I)=1≤2-k+1+2-l,定理2得证。

定理3本文协议是εc-前向安全的,其中εc≤2-k。

证明 根据定义3,在第一阶段,敌手Adv分别对Tagx、Tagy两个标签与阅读器间的通信进行了n次监听,获得了数据,其中i=1,2,…,n。

在第二阶段,假设在第q(q≥n)次通信后,Adv物理攻陷其中一个标签,获得内部状态信息,Adv需要分辨该标签是Tagx、Tagy中的哪一个,成功分辨的概率即为Pr[Advc(I)]。

对于Adv来说,最有利的是在第n次通信后攻陷标签,此时标签中的状态信息为第一阶段结束时的信息,包括秘密值x、随机数rn、身份标识TID、当前共享密钥kn,由消息A、B的结构可知,只要猜出kn-1即可完成分辨任务,而由密钥的生成公式可知kn=fkn-1(rn⊕kn-1),rn、kn均已获得,根据单向函数fk(x)的性质,可知成功猜出kn-1的概率为2-k[21]。

即Pr[Advc(I)]≤2-k,定理3得证。

6 性能分析

本章从所需开销分析及实验仿真两方面对本文协议和现有的移动RFID认证协议进行分析比较,以确定哪个协议更适合于使用低成本标签的移动RFID系统。

6.1 通信开销

本文协议与部分现有移动RFID认证协议的通信开销比较如表2所示。其中M表示模运算,MM表示模乘,MR表示模开方,PR表示随机数生成,H表示哈希函数,Fx表示自定义的单向函数或随机数函数,n表示系统中阅读器的数量,GT表示时间戳生成。

表2 协议通信开销比较

从表中可以看出,基于二次剩余定理的协议[6,10-11,17]普遍存在服务器后台搜索匹配开销大、通信量大的问题,且仅有文献[10]通过增加哈希验证和时间戳真正解决了重放问题;文献[18]在标签及阅读器的存储量、通信量方面都有很大的优势,但其服务器搜索标签记录时最坏的遍历次数为4n,当系统中阅读器数量n较大时,服务器执行效率会很低;文献[19]的标签存储量也一样较低,但其使用了不符合EPC Class-1 Generation-2标准的哈希函数,且存在明显的信息重放攻击,并不适用于低成本RFID标签系统。本文协议使用了符合低成本标签标准的单向函数,存储量较低,服务器搜索标签记录时仅需要遍历一次数据库即可,搜索效率较高。为避免重放攻击,本文协议在阅读器中使用了时间戳、哈希函数等措施,增加了计算量与通信量,这些计算量与通信量相对偏高,但仍低于基于二次剩余定理的协议,且解决了双向认证、假冒攻击、去同步化、前向安全等问题,因此本文协议更适合于较大规模的低成本移动RFID标签系统。

6.2 仿真实验

本文仿真实验主要测试移动RFID系统交互过程中阅读器、标签间的通信开销。在满足安全与隐私的前提条件下,通信开销值在一定程度上决定了移动RFID认证协议的优劣。

实验参照文献[10]中的方法进行,网络模型部署及参数设置详见该文献。实验使用NS2网络仿真软件构建网络环境,采用CSMA/CA技术传输数据帧,不考虑计算和数据传输过程中的超时重发等能耗,仅考虑数据无线通信过程中的能耗。设置标签数量为10、20、30、40、50,对部分有代表性的移动RFID认证协议,测试认证一次所耗费的通信开销,每个协议进行20次独立的实验,最后取其平均值,结果如图2所示。

从图2中可以看出,随着标签数量的增加,各移动RFID认证协议的通信开销在不断增长。其中文献[18]协议未采取有效措施解决重放攻击问题,因而所需开销最少,但存在安全隐患。文献[19]为防止重放攻击,采用了7次交互过程,并且由服务器生成随机数来保证消息的新鲜性,开销最大。文献[10]中使用时间戳来防止重放攻击问题,开销介于前两种协议之间。本文协议也使用了时间戳,但在交互设计中减少了一次阅读器随机数的生成,因而开销略低于文献[10]。

图2 阅读器与标签间的通信总开销

通过以上仿真实验可知,本文所提协议在满足安全隐私性的同时,更适用于较大规模的使用低成本标签的移动RFID系统。

7 结语

本文对现有的移动RFID协议进行了分析,指出了这些协议中在安全及性能方面存在的问题。针对这些问题,本文在参考传统RFID协议研究成果的基础上,建立了移动RFID安全隐私模型,并根据模型提出了一种能抵抗假冒攻击、去同步化攻击,且提供前向安全隐私保护的双向认证协议,该协议在标签中使用了符合EPC Class-1 Generation-2标准的单向函数、随机数生成器,在阅读器中使用了哈希函数及时间戳。在随后的分析中,经过假冒攻击、去同步化、前向安全三方面的证明,确认协议达到了设计目的。性能比较与仿真实验的结果表明,本文协议标签存储量较低,各实体间通信量与计算量在合理可接受的范围,更适用于较大规模的使用低成本标签的移动RFID系统。

猜你喜欢

敌手阅读器哈希
基于反向权重的阅读器防碰撞算法
与“敌”共舞
The Magna Carta
文件哈希值处理一条龙
不带着怒气做任何事
一种高效的RFID系统冗余阅读器消除算法
基于OpenCV与均值哈希算法的人脸相似识别系统
一种RFID网络系统中消除冗余阅读器的高效算法
巧用哈希数值传递文件
一种基于Bigram二级哈希的中文索引结构