基于Hash函数的RFID安全认证协议改进
2016-06-01朱洪岩谢晓尧吴景春
朱洪岩,谢晓尧,吴景春
(贵州师范大学贵州省信息与计算科学重点实验室,贵州 贵阳 550001)
基于Hash函数的RFID安全认证协议改进
朱洪岩,谢晓尧,吴景春
(贵州师范大学贵州省信息与计算科学重点实验室,贵州 贵阳 550001)
[摘要]针对使用无线射频识别技术(RFID)进行认证时存在的安全问题,提出了一种基于Hash函数的轻量级认证协议。该协议利用Hash函数的单向性完成了数据库、标签和读写器的相互认证,并且数据库承担了大量复杂的计算,减少了大规模应用标签的开支。通过BAN逻辑证明其安全性并和已有的协议进行安全性分析和性能分析的比较证明了该协议能够避免攻击、伪造、窃听等一系列问题的产生。
[关键词]RFID;Hash函数;轻量级认证协议;BAN逻辑;安全性分析;性能分析
作为快速、实时、准确采集与处理信息的高新技术和信息标准化的基础,无线射频识别(Radio Frequency Identification, RFID)技术被公认为21世纪十大重要技术之一,已在生产、零售、物流、交通等各个行业广泛应用[1]。RFID技术利用的是无线通信传输信息,容易受到外部环境干扰和人为恶意破坏和攻击,因此,其安全问题成为学者探讨和研究的热点。许多学者在Hash函数的基础上已实现很多RFID安全协议,如Hash-Lock 协议[2]、随机化Hash-Lock协议[3]和Hash-Lock链协议[4],但Hash-Lock 协议、随机化Hash-Lock协议是在危险的通道上传播信息,轻易会遭受攻击和跟踪;Hash-Lock链协议只能证明标签得到读写器的认证,而读写器无法通过标签的认证,很容易受到重传攻击。为此,笔者提出了基于Hash函数的轻量级认证协议,利用其单向性完成数据库、标签和读写器的相互认证,并用BAN逻辑证明其安全性。
1改进的协议流程
表1 符号定义
符号定义见表1,改进的协议流程如图1所示。其协议过程如下:
1) 读写器向标签发送信息query,并把自己产生的随机数R传输至标签。
2) 标签收到读写器的请求信息后运算H(R‖TID)与H(TID‖R ),并把H(R‖TID)传至读写器,同时把H(TID‖R)存储于标签的内存中。
3) 读写器对H(RID‖R)与H(R‖RID)进行运算,将R、H(R‖RID) 发送给数据库,将 H(RID‖R)保存在读写器中。
4) 数据库收到信息,查找是否有符合要求的RIDn,满足H(R‖RIDn)= H(R‖RID),如果有,表明读写器得到了数据库的认证;然后继续搜索有没有符合条件的TIDn使得H(R‖TIDn)= H(R‖TID),若存在,则表明标签也通过了数据库的认证。当标签和读写器都通过了数据库的认证后,数据库需要运算H(TIDn‖R)与H(RIDn‖R),然后把它们传输至读写器。
图1 改进的协议流程
5) 读写器接受H(RIDn‖R),核实与自己内存中的H(RID‖R)是不是一致,如果一致,说明数据库通过了读写器的认证。并且当读写器收到准确的H(RIDn‖R)时,也说明读写器得到数据库的保证,证明了标签是合法的。于是读写器将收到的H(TIDn‖R) 发送给标签。
6) 标签收到H(TIDn‖R)后,核实和内存中H(TID‖R ) 是不是一致,若一致,说明读写器和数据库都通过了标签的认证。
2协议安全性证明
BAN逻辑是一种信仰逻辑,用BAN逻辑分析密码协议能看到协议中各主体信仰状态的变化,直到协议运行结束[5]。下面,笔者采用BAN逻辑进行形式化分析证明。
2.1BAN逻辑公式
1) P believes X:P相信命题X。
2) P sees X :P看到命题X被某个主体发送过。
3)P said X :命题X曾被P发送过。
4)P controls X: P 是命题X的仲裁者。
5)fresh(X):命题X是新近生成的。
7){X}K: 用K 加密的X。
2.2BAN逻辑的推理规则
消息内涵(message-meaning)规则(共享密钥加密的消息规则):
随机量检验(nonce-verification)规则:
仲裁(jurisdiction)规则:
信仰规则:
新鲜规则:
2.3协议的BAN逻辑语言描述
设S为数据库,A为标签,B为读写器。该协议的BAN逻辑语言描述如下:
M1:B sees {R,T}TID
M2: S sees {D,R}RID
M3: S sees{R,T} TID
M4: B sees{D,R}RID
M5:A sees{R,T}TID
2.4协议的初始化假设
根据情况,其协议初始化假设如下:
A1:S believes fresh(D)A2: B believes fresh(R)
A3: A believes fresh(T)A4: S believes fresh(R)
A5: B believes S controls(D)A6: A believes S controls(D)
A7: S believes A controls(T)A8:B believes A controls(T)
A9: S believes B controls(R)A10:A believes B controls (R)
2.5协议形式化目标说明
该协议的目标是完成数据库、读写器、标签3者之间的互认证。S|>B表示的是B 通过了S 的认证。那么只要满足S|>B、S|>A、B|>S 和A|>B,则目标完成。协议中R是B 生成的临时身份,如果S 相信B的临时身份R,就有S|>B。所以该协议的目标为:
H1: S believes RH2 : S believes TH3: B believes DH4 : A believes R
证明 由A1、A2、A3、A4和新鲜规则可知:
S believes fresh(D,R)S believes fresh(R,T)
B believes fresh(D,R)A believes fresh(R,T)
a)H1: S believes R的证明。由A12和M2,利用消息内涵规则有:
所以S believes B said{D,R} 成立。由消息内涵规则, 利用随机量检验规则有:
所以 S believes B believes{D,R} 成立。再利用信仰规则有:
所以S believes B believes R 成立。又由A9,利用仲裁规则有:
所以 S believes R成立。
b)H2: S believes T 的证明。由A13和M3,利用消息内涵规则有:
S believes A said {R,T}
由2),利用随机量检测规则有:
S believes A believes{R,T}
利用信仰规则有:
S believes A believes T
利用仲裁规则有S believes T成立。
c)H3: B believes D的证明。由A14和M4,利用消息内涵规则有:
B believes S said {D,R}
由3),利用随机量检验规则有:
B believes S believes {D,R}
利用信仰规则有:
B believes S believes D
由B A5,利用仲裁规则有B believes D成立。
d)H4 : A believes R的证明。由A15和M5,利用消息内涵规则有:
A believes S said{R,T}
由4),利用随机量检验规则有:
A believes S believes{R,T}
利用信仰规则有:
A believes S believes S believes R
由A11,利用仲裁规则有A believes R 成立。
综上所述,改进后的协议是安全的。
3协议改进后的优点
3.1抗重放攻击
在该改进协议中,阅读器每次请求信息所产生的R都是不同的,具有不可测性,即使攻击者获取了数据信息,也不能想象出下次的值,所以避免了重放攻击。
3.2抗跟踪
在通信过程中ID始终是以与随机数R经过Hash计算后的方式进行传输的,即便攻击者截取了数据信息,但是也不能获取和分析出真正的ID,所以攻击者无法完成对指定标签的跟踪。
3.3抗窃听和伪造
在无线信道中传输的数据都是没有实际意义的随机数或者 Hash值,对于攻击者来说没有任何利用价值,不涉及对通信内容的窃听[6],并且该协议最大的优点是实现了数据库、标签、读写器3方的相互认证,严密的审核过程使任何方式的伪造都无可乘之机。
3.4前向安全性
每次产生的随机数都是不同的,因此不能由现在的随机数推导出原来的随机数,并且由于Hash函数具有单向性,攻击者也无法实现根据现有的信息推测出原来的数据,因此该改进协议能实现前向安全性。
改进后的协议与其他3种协议的安全性比较如表2所示。通过比较容易看出,改进的协议能更好地解决RFID系统出现的安全问题,具有很好的适应性和实用性。并且该协议能够将计算的成本转到了后台的数据库,对大规模的应用更加适用。
表2 安全性比较
表中:×表示不安全,√表示安全。
4协议性能分析
笔者从计算量和存储空间2个方面对协议进行性能分析,如表3所示。其中,h为Hash函数的计算,r符号为生成的随机数。
由表3容易看出,前2个协议的数据库是没有经过Hash运算的,会受到破坏;Hash链协议数据库会随着标签的数量的增多而增加其计算量,但要解决去同步化的疑难;改进后的协议计算量比较小,大部分计算在数据库,这样可以减少大规模应用标签的开支,对大规模的应用和发展更加适用,并且在存储空间上有很好的优势。
表3 性能比较
5结语
笔者提出的改进协议更好地避免了攻击、跟踪、窃听等安全问题的产生,并利用BAN逻辑对该协议进行形式化分析,在理论上证明了其安全性。并与已有的协议在安全性和性能上进行比较分析,证明了该协议在实际应用中具有较高的实用价值。但该协议将大量的运算转移到数据库中,虽然有利于大规模性的应用和发展,减少了标签使用的开支,但如何提高后台数据库的检索效率将是以后研究的方向之一。
[参考文献]
[1]贝毅君,干红华,程学林,等.RFID技术在物联网中的应用[M].北京:人民邮电出版社,2013.
[2]Sarma S E,Weis S A,Engles D W.Radio frequency identification: secure risks and challenges[J].RSA Laboratories Cryptobytes,2003,6(1):2~9.
[3]Seis A, Saima S E,Rivest R L.Security and privacy aspects of low cost radio frequency identification system[A].Proc of the 1st International Conference on Security in Pervasive Computing[C].Berlin:Springer-Verlag,2004:201~212.
[4]Ohkubo M,Suzuki K,Kingships S.Hash-chain based forward-secure privacy protection scheme for low-cost RFID[A].Proc of Symposium on Cryptography and Information Security[C].Japan,2004:719~724.
[5] 谢晓尧.电子商务网络协议的形式化分析理论与应用[M].北京:科学出版社,2008:15~17.
[6] 陈信刚.基于移动网的RFID安全接入机制研究[D].南京:南京邮电大学,2008.
[编辑]洪云飞
[文献标志码]A
[文章编号]1673-1409(2016)13-0039-05
[中图分类号]TP302
[作者简介]朱洪岩(1989-),女,硕士生,现主要从事计算机应用与信息安全方面的研究工作;E-mail:841871322@qq.com。
[基金项目]贵州省科学技术基金项目(200917);贵阳市科技局重点项目(2010183)。
[收稿日期]2015-12-17
[引著格式]朱洪岩,谢晓尧,吴景春.基于Hash函数的RFID安全认证协议改进[J].长江大学学报(自科版),2016,13(13):39~43.