黄斌,张金鸿,胡忠奎(四川大学计算机学院,成都 610065)
基于动态ID的RFID安全协议研究及设计
黄斌,张金鸿,胡忠奎
(四川大学计算机学院,成都610065)
无线射频 (Radio Frenquency Identification,RFID)技术是一种非接触式的自动识别技术,它通过无线射频信号对标签进行读写。相对与其他识别技术[1],具有读取方便、容量大、识别快、适应性强等优点。目前,主要应用于物流管理、自动收费、防伪等方面[2-3],例如ETC收费、电子钱包等。
尽管RFID具有很明显的优势,但由于其本身的结构特性和固有的缺陷,使其面临着严重的安全威胁。标签和读写器之间通过开放无线信道进行通信,攻击者能够截获通信信息,利用这些信息进行仿冒、重放等攻击,严重威胁隐私和财产安全。
为了使RFID能被广泛应用于各个领域,解决安全性问题是当务之急。RFID安全性问题研究的难点在于其标签的存储和计算资源都十分有限,现有的成熟的安全体系难以直接利用,所以设计一个高效、低成本和安全的认证协议具有重要的意义。
RFID安全问题是制约其推广的主要因素之一,随着物联网等新技术的发展和广泛应用,基于密码技术的低成本RFID安全协议研究备受关注,出现了许多新的安全性协议。但受到RFID系统中的存储空间,计算能力和电力供应等限制,大部分协议都存在一些安全隐患。如Zhou于2010年提出的抵御去同步攻击的RFID验证协议[4]、何家亮于2012年提出的适用于无线连接的 RFID验证协议[5],虽然都具有一定的安全性,但也存在缺陷:Zhou所提出的协议存在被追踪的安全缺陷,何所提出的协议不能够抵御重放攻击。
针对上述两种协议中存在的问题,对其进行改进,提出一种新的基于动态ID机制的安全协议。下面介绍协议的具体流程并分析其安全性。
2.1协议流程
一个完整的RFID系统由标签 (Tag)、读写器(Reader)、服务器(Server)组成。服务器中保存了认证必须的数据:认证标示SID,SCpre和SCnow,读写器的标示SRID,使用过的随机数表T。读写器保存自身的表示:RID。标签保存TCnow和TID,SCnow和 TCnow,SID和TID保持一致。
下面以第n(n>1)次认证为例,描述协议认证流程,对流程中的符号加以说明:H()表示hash函数[6],⊕表示模2加,‖表示连接 。具体见图1:
图1 协议认证流程图
(1)读写器给电子标签发送随机数R和查询消息。
(2)电子标签计算H(TCnow⊕R)返回给读写器。
(3)读写器计算 H(RID⊕R),将H(TCnow⊕R),H (RID⊕R),R)发送给服务器做认证。
(4)服务器收到认证请求后,查询随机数表T,若表中存在随机数R,则认为遭受攻击,认证失败。否则服务器对标签和读写器进行认证:
①标签认证:取出服务器上的SCpre,SCnow,分别计算H(SCnow⊕R)和H(SCpre⊕R)。若其中有一个等于接收到的H(TCnow⊕R),则认为标签验证成功。
②读写器认证:取出服务器上保存的SRID,然后计算H(SRID⊕R)并与接收到的H(RID⊕R)比较,若相等则读写器认证成功。
如果标签和读写器都认证成功,向读写器发送(H (SID‖R),H(SRID‖R))。然后更新数据:SID=H(RL‖SID),SCpre=SCnow,SCnow=H(RL‖SCnow)。
(5)读写器接收服务器的认证反馈后,比较接收到的H(SRID‖R)与自己计算的H(RID‖R),若相等,则读写器对服务器的认证成功,并给电子标签发送H (SID‖R)。标签把H(SID‖R)与自身计算的H(TID‖R)比较,若相等,则标签对服务器的认证成功,然后更新标签数据,TID=H(RL‖TID)和TCnow=H(RL‖TCnow)。
2.2协议安全性分析
(1)BAN逻辑
BAN逻辑[7-8]是基于知识和信仰的形式化分析方法,可以用来描述和验证协议,而且证明过程直观简洁。证明过程中首先把协议的消息转化为BAN逻辑公式,设定合理的条件假设,然后根据逻辑推理规则,推导协议是否满足预期目的。
BAN逻辑中的基本语义:P,Q表示主体变量,X,Y表示消息,K表示密钥。P∣≡X表示P永远相信X为真。P▽X表示P收到包含X的消息。P∣≈X表示P曾发送过包含X的消息。P∣=>X 表示P对X有管辖权。#(X)表示X是在当前产生的消息。P↔kQ)表示P和Q的共享密钥K。→kP)表示K是P的公开密钥。P⇔XQ表示X为P和Q共享秘密。{X}K表示由密钥K加密X后得到的密文。
BAN逻辑中包含的与本文相关的几个推理规则:
①消息含义规则:
②新鲜性规则:
③临时值验证规则:
④仲裁规则:
⑤信念规则:
⑥消息接收规则:
(2)协议证明
下面通过BAN逻辑来证明协议的安全性,为方便描述,用S代表服务器、R代表读写器、T代表标签、M代表随机数、RID代表读写器标示、SID代表服务器存储的标签标示、SRID代表服务器存储的阅读器标示、TC代表存储在标签的随机认证标示、SC代表存储在服务器的随机认证标示。根据BAN逻辑证明步骤,分四步来完成对协议的证明:
(1)协议理想化描述:
①形式化描述
R→T:{M}
T→R:{H(M⊕TC)}
R→S:{R,H(M⊕RID),H(M⊕TC)}
S→R:{H(SID‖M)}
S→T:{H(SID‖M)}
②语法描述
T▽{M}
R▽{H(M⊕TC)}
S▽{R,H(M⊕RID),H(M⊕TC)} R▽{H(SID‖M),H(RID‖M)}
T▽{H(SID‖M)}
(2)初始化假设
S∣≡T∣=>TC
S∣≡R∣=>RID
T∣≡S∣=>SC
R∣≡S∣=>SRID
R∣≡#(M)
T∣≡#(M)
S∣≡#(M)
(3)预期目标
S∣≡TC
S∣≡SID
S∣≡RID
S∣≡SRID
(4)安全性证明
①预期目标S∣≡TC的证明:
●由BAN逻辑推理规则6和语法描述2得到S ▽{M⊕TC}。
●由假设条件1及语法描述S▽{M⊕TC},根据推理规则1,可推出S∣≡T∣≈{M⊕TC}。
●假设条件11和推理规则2,可知S∣≡#(M⊕ TC)。
●根据S∣≡#(M⊕TC)和推理规则3,可知S∣≡T∣≡{M⊕TC}。
●根据S∣≡T∣≡{M⊕TC}和推理规则5,可知S∣≡T∣≡TC。
●依据S∣≡T∣≡TC和假设条件5,依据推理规则4,可得出结论S∣≡TC。
②预期目标S∣≡SID的证明:
●由语法描述5和推理规则6,得到T▽ {SID‖M}。
●由初始假设2和T▽ {SID‖M},根据推导规则1,可推出T∣≡S∣≈{SID‖M}。
●由假设条件T∣≡#(M)及推导规则2,可知T∣≡#(M⊕SID)。
●由T∣≡S∣≈{SID‖M}和T∣≡#(M⊕SID),根据推导规则3,可知T∣≡S∣≡(M‖SID)。
●据T∣≡S∣≡(M‖SID)。和推导规则5,可推出T∣≡S∣≡SID。
●依据T∣≡S∣≡SID和假设条件T∣≡S∣=> SID以及推导规则4,可得出结论T∣≡SID。
预期目标3,4可以参照上面的两个证明过程加以证明。综上可以证明本文所设计的协议的满足预定的目标。
(3)攻击检测分析
根据协议可能受到的攻击,分析本协议的安全性。假设攻击者具有Dolev-Yao攻击模型的所有能力,攻击者可以截获的信息包括:H(R⊕TC)、H(R⊕RID)、H (R‖SID)和H(R‖SRID),下面进行具体分析:
本协议可以抵御标签追踪:在传输过程中,与标签相关的两个数据TC和TID都是通过Hash函数处理过的,攻击者只能截获到Hash值,根据Hash函数的理论不可破特性,攻击者无法获得和标签相关的任何信息,所以不可能追踪标签。
本协议不可被假冒攻击:攻击者不可假冒服务器。在协议流程第3步,攻击者假冒服务器,意图欺骗读写器和标签。那么在第4步,假冒的服务器必须发送正确的(H(SID‖R),H(SRID‖R))消息,但攻击者无法获得SID和SRID,所以无法仿冒服务器。攻击者同时也无法仿冒标签,因为攻击者无法获取标签中的TID和TC信息。
本协议可以抵御重放攻击。本协议的设计中,加入了对随机数的检测机制,每次验证的时候都检测随机数的新鲜性。攻击者即使获取到随机数,也会被检测出不符合要求,所以可以抵御重放攻击。
现有的一些RFID安全协议虽然解决了一些问题,但同时也存在一些安全性隐患,为解决此问题,提出了一个新的基于动态ID的安全性协议,并用BAN逻辑证明了其安全性。但该协议的效率还不够高,研究协议中的Hash算法,提高效率和通用性是下一步的研究重点。
[1]现代自动识别技术与应用[M].淸华大学出版社,2003.
[2]RFID Forecasts,Players and Opportunities 2014-2024[EB/OL].http://www.idtechex.com/research/reports/rfid-forecasts-players-andopportunities-2014-2024-000368.asp.
[3]G Tsudik.YA-TRAP:Yet Another Trivial RFID Authentication Protocol[C].Proceedings of The 4th IEEE Annual Conference on Pervasive Computing and Communications.2006.
[4]Zhou S,Zhang Z,Luo Z,et al.A Lightweight Anti-Desynchronization RFID Authentication Protocol[J].Information Systems Frontiers, 2010,12(5):521-528.
[5]何加亮.基于散列函数的RFID安全协议研究[D].吉林大学,2012.
[6]William Stallings.密码编码学与网络安全——原理与实践(第四版)[M].孟庆树,王丽娜,傅建明等译.北京:电子工业出版社,2007,246-254.
[7]Burrows M,Abadi M,Needham R M.A Logic of Authentication[C].Proceedings of the Royal Society of London A:Mathematical, Physical and Engineering Sciences.The Royal Society,1989,426(1871):233-271.
[8]苌进.BAN逻辑及BAN类逻辑研究.河南科技,2010.
RFID;Security Protocol;BAN Logic
Research and Design RFID of Security Protocol Based on Dynamic ID
HUANG Bin,ZHANG Jin-hong,HU Zhong-kui
(College of Computer Science,Sichuan University,Chengdu 610065)
1007-1423(2016)05-0024-05
10.3969/j.issn.1007-1423.2016.05.005
黄斌(1986-),男,云南曲靖人,在读硕士研究生,研究方向为信息安全和高性能计算
张金鸿(1983-),男,河南信阳人,硕士研究生,研究方向为嵌入式和信息安全
胡忠奎(1981-),男,辽宁海城人,硕士研究生,研究方向为大数据分析
2015-12-25
2016-01-12
无线射频技术是一项应用前景广阔的技术,但受限于安全性问题,难以推广。为解决此问题,以RFID协议安全性和隐私性为着力点,利用密码等相关技术设计一个基于动态ID的安全性协议,并用BAN逻辑和安全检测技术分析其安全性。
射频识别;安全协议;BAN逻辑
Radio frequency technology is a promising technology,but it is difficult to promote because of security issues.To solve this problem,with the RFID security and privacy agreement,uses the cryptography related to design a security protocols based on dynamic ID,uses BAN logic and safety testing technology to analyze its security.