针对车联网中射频识别技术存在的安全问题,提出了一种基于密钥分配中心的安全认证协议.通过密钥分配中心储存的可更新私钥先过滤没有合法密钥的标签,再经过后台服务器进行身份认证.在解决传统协议中的假冒攻击、重放攻击、跟踪攻击等安全问题的同时,还解决了车联网中存在的拒绝服务攻击.BAN逻辑证明以及安全和性能分析对比结果显示,本协议在车联网中能提供有效的安全保护,极大地降低后台服务器面对多标签时的计算负担.
In order to overcome the security problem of radio frequency identification technology in the internet of vehicles, a security authentication protocol based on key distribution center was proposed. First the label without the legal key was filtered by the updateable private key stored in the key distribution center, and then the identity of the tag was authenticated through the background server. While solving the security problems, such as counterfeit attacks, replay attacks, and tracking attacks in the traditional protocol, the denial of service (DoS) attacks existing in the internet of vehicles were also solved. Through the BAN logic proof, as well as the comparison of security and performance analysis, it shows that this protocol can provide effective security protection in the internet of vehicles, which greatly reduces the computing burden of the background server facing multiple tags.
射频识别(RFID, radio requency identification)技术是一种可通过无线电信号识别特定目标并读写相关数据的通信技术,也是车联网的核心技术之一[1].由于标签与读写器的无线信道是开放的,容易遭到外来设备的窃听、篡改、伪造等攻击.
目前针对RFID安全问题,提出了解决方案,主要分为密码学方法和非密码学方法[2].非密码学方法主要指物理方法,包括法拉第笼、杀死标签、阻塞标签、主动干扰等.这些物理方法有的需要额外设备,有的容易使标签失效,运行成本高,尤其在车联网系统中,不能满足实际应用的要求.鉴于非密码学方法的诸多缺点,研究人员提出了一系列采用密码机制的RFID安全方案.
三轮认证协议[3]是目前主流的安全协议,目前大部分协议都由此衍生. Pakina[4]提出了一种适用于自动收费系统的隐私保护认证协议.这种协议可以抵挡窃听、重放攻击、中间人攻击,还可以进行相互认证,但是不能抵挡拒绝服务(DoS, denial of service)攻击.吴晓琴等[5]提出了一种面向移动环境的RFID安全认证协议——基于时间戳的相互认证协议(TMAP,time-stamp based mutual authentication protocol).此协议标签与读写器,读写器与服务器均需要相互认证. TMAP协议假设服务器具有足够大的存储和计算,但在车联网应用中,此假设并不能成立,还是会遭到DoS攻击. Wang Zhao等[6]提出了一种基于对称加密和动态更新密钥,并可解决DoS攻击的RFID安全协议Rapdos,但由于协议中公钥的共享性,一旦应用在车联网中,所有车辆将共享同一公钥,必然会带来安全问题.同时协议中加密解密步骤过多,也增加了系统计算负担.对于物联网环境,张忠等[7]提出了一种证明RFID协议,可以达到筛选标签的目的,此协议对标签进行了分组,一组标签只能被特定授权的读写器识别,但是车联网中的标签并不具有这种群组性,因此此协议也难以应用到车联网RFID系统中.
针对上述协议中的问题,提出了一种符合车联网应用需求的RFID安全认证协议——车联网安全认证协议(IVSAP,a security authentication protocol in the internet of vehicles).该协议在传统的RFID系统中加入了密钥分配中心(KDC,key distribution center)验证模块,用于存放密钥列表,防止非法标签不通过验证直接攻击后台服务器.通过BAN逻辑证明和安全分析表明,该协议能够抵御假冒攻击、追踪攻击、重放攻击和DoS攻击等.最后,从计算成本和通信开销等方面对协议的性能进行了评价,结果表明,协议能够极大降低后台服务器计算负担,提高执行效率.
1 车联网RFID安全需求及系统结构 1.1 安全需求在基于RFID的车联网系统中,RFID标签与读写器通过无线信道进行通信,很容易遭受攻击.车联网RFID系统的安全需求主要体现在以下5点.
1) 防假冒攻击:攻击者无法通过假冒标签或者假冒读写器来对系统进行攻击.
2) 防重放攻击:攻击者无法通过记下某次通信会话,然后在某个时刻重放整个会话或其中的一部分来进行攻击.
3) 防跟踪攻击:攻击者无法通过截取通信内容来获得标签的身份信息,进而进行跟踪攻击.
4) 前向安全性:即使攻击者破解了某个时间点的密钥,也无需担心在此之前的通信内容被破解.
5) 防DoS攻击:大量的非法标签发送请求不会使服务器过载,引发系统崩溃.
1.2 系统结构完整的车联网RFID系统由3个部分组成[8]:RFID标签、读写器、后台服务器.其中RFID标签可以储存车辆信息,并进行异或、串联、哈希函数、随机数生成等计算.读写器可以安装在收费站、路口、停车场等地,能够查询范围内的标签,并获得标签的响应,通常默认后台服务器与读写器的通信信道是安全的、不可窃听的.后台服务器储存车辆信息,并能够进行复杂查询遍历计算,有强大的运算能力和快速的运算速度,后台服务器成功认证标签后可以更新密钥,并将验证值发送给标签.
为了满足上述车联网RFID系统的5个安全需求,解决标签不经认证就可以直接与后台服务器通信产生的安全问题.在标签与后台服务器通信过程中,先需通过KDC进行密钥认证,认证通过后才能与后台通信,进而确定其ID.协议的车联网系统结构如图 1所示,整个系统主要由标签、读写器、KDC、后台服务器4部分组成.
IVSAP协议流程分为6步,可以实现标签与后台服务器的相互认证,通过KDC筛选过滤非法标签.标签、读写器、KDC、后台服务器均具有伪随机数发生器,并能够进行哈希运算以及连接、异或等操作.协议中所用的符号解释如表 1所示.
每个标签储存其IDi作为其唯一身份,IDi由后台服务器分配,也就是只有标签和后台服务器共享IDi. ki, j表示身份为IDi的标签第j次会话时的私钥,由KDC分配并共享,每次会话完成后,KDC与标签同步更新私钥. KDC为密钥分配中心,储存一个密钥授权列表L,当KDC收到读写器发送的随机数rr时,首先将储存的列表与随机数rr进行运算,然后刷新密钥授权列表,如表 2所示.在标签与后台服务器通信之前,必须通过KDC进行密钥验证.
1) 读写器→标签:Query,rr;读写器→KDC:rr.
读写器生成随机数rr,并将其和Query发送给标签.同时,读写器还将rr发送给KDC,KDC接收到rr后,更新列表L上的数据,从g(IDi⊕ki, j)更新为h(g(IDi⊕ki, j)⊕rr).
2) 标签→读写器:a、rt、b.
标签生成随机数rt,计算a=h(g(IDi⊕ki, j)⊕rr),b=H(IDi‖rr‖rt),并将a、rt、b发送给读写器.
3) 读写器→KDC:a、rt、b.
读写器将收到的a、rt、b转发给KDC.
4) KDC→服务器:R、b、rr、rt.
当KDC收到标签发来的a、rt、b时,首先在更新后列表L中寻找是否有与a匹配的值,如果有匹配值,那么可以判定此标签拥有合法的密钥,并将其标识为有效的标签;然后KDC生成随机数R,更新密钥ki, j+1=ki, j⊕R,再进行下一步通信,将R、b、rr、rt发送给后台服务器.如果没有匹配值,那么系统判定此标签没有合法的密钥,中止通信,从而杜绝了非法标签对后台服务器发动DoS攻击.
5) 服务器→读写器:c、d.
后台服务器收到读写器发来的R、b、rr、rt时,它会遍历查询服务器所有的ID值,如果存在IDj使得H(IDj‖rr‖rt)=H(IDi‖rr‖rt),则认证标签合法,随后计算c=H(IDj‖rr‖ R),d=R⊕H(IDj‖rt),将c、d直接发送给读写器;否则认定标签不合法,中止通信.
6) 读写器→标签:c、d.
读写器将收到的c、d转发给标签,标签计算R′=d⊕H(IDi‖rt),如果c′=H(IDi‖rr‖R′)=c,那么认证读写器合法,标签同步更新密钥ki, j+1=ki, j⊕R′;否则认定读写器不合法,中止通信.协议流程如图 2所示.
BAN逻辑证明[9]是形式化分析安全协议的一种重要方法,它可以证明协议是否达到预期目标.其证明步骤主要分为原始协议理想化、设定协议目标、对协议进行初始化假设、根据逻辑术语和逻辑规则对协议进行分析4步.
协议中步骤3)、步骤4)、步骤6)的理想化如下:
$ \left. {步骤\;3} \right):R \to D:{\left\{ {T\mathop \leftrightarrow \limits^K D,{r_t},{\rm{ID}}} \right\}_K} $ | (1) |
$ \left. {步骤\;4} \right):R \to S:{\left\{ {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{r_r}} \right\}_{{\rm{ID}}}} $ | (2) |
$ \left. {步骤\;6} \right):R \to T:{\left\{ {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_r},{R_D}} \right\}_{{\rm{ID}}}} $ | (3) |
其中:T表示标签,R表示读写器,D表示KDC,S表示后台服务器,RD为KDC生成的随机数.
协议证明目标分为G1、G2、G3,表达式为
$ {\rm{G}}1:S\left| { \equiv T} \right.\left| { \equiv T} \right.\mathop \leftrightarrow \limits^{{\rm{ID}}} S $ | (4) |
$ {\rm{G}}2:T\left| { \equiv S} \right.\left| { \equiv T} \right.\mathop \leftrightarrow \limits^{{\rm{ID}}} S $ | (5) |
$ {\rm{G}}3:D\left| { \equiv T} \right.\left| { \equiv T} \right.\mathop \leftrightarrow \limits^{\rm{K}} S $ | (6) |
其中:目标G1表示S相信T是合法的,目标G2表示T相信S是合法的,目标G3表示D相信T是合法的.
协议初始化假设如下:P1: T|≡T
协议证明主要用到消息含义规则、新鲜值验证规则、新鲜性规则和信念规则4条规则. BAN逻辑证明就是根据协议理想化、协议初始化假设以及逻辑规则来证明协议目标的过程.
对目标G1的证明,由步骤4)得
$ S \triangleleft {\left\langle {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{r_r}} \right\rangle _{{\rm{ID}}}} $ | (7) |
由式(7)和假设P2,根据消息含义规则可得
$ S\left| { \equiv T} \right| \sim \left( {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{r_r}} \right) $ | (8) |
由假设P7,根据新鲜性规则可得
$ S\left| { \equiv \# } \right.\left( {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{r_r}} \right) $ | (9) |
由式(8)和式(9),根据新鲜值验证规则可得
$ S\left| { \equiv T} \right.\left| \equiv \right.\left( {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{r_r}} \right) $ | (10) |
根据信念规则可得式(11),即目标G1.
$ S\left| { \equiv T} \right.\left| \equiv \right.T\mathop \leftrightarrow \limits^{{\rm{ID}}} S $ | (11) |
对目标G2的推导,由步骤6)得
$ T \triangleleft {\left\langle {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{R_D}} \right\rangle _{{\rm{ID}}}} $ | (12) |
由式(12)和假设P1,根据消息含义规则可得
$ T\left| { \equiv S} \right| \sim \left( {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{R_D}} \right) $ | (13) |
由假设P8,根据新鲜性规则可得
$ T\left| { \equiv \# } \right.\left( {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{R_D}} \right) $ | (14) |
由式(13)和式(14),根据新鲜值验证规则可得
$ T\left| { \equiv S} \right.\left| \equiv \right.\left( {T\mathop \leftrightarrow \limits^{{\rm{ID}}} S,{r_t},{R_D}} \right) $ | (15) |
由式(15),根据信念规则可得式(16),即目标G2.
$ T\left| { \equiv S} \right.\left| \equiv \right.T\mathop \leftrightarrow \limits^{{\rm{ID}}} S $ | (16) |
对目标G3的证明,由步骤3)得
$ D \triangleleft {\left\langle {T\mathop \leftrightarrow \limits^K S,{r_r}} \right\rangle _K} $ | (17) |
由式(17)和假设P2,根据消息含义规则可得
$ D\left| { \equiv T} \right| \sim \left( {T\mathop \leftrightarrow \limits^K S,{r_r}} \right) $ | (18) |
由假设P6,根据新鲜性规则可得
$ D\left| { \equiv \# } \right.\left( {T\mathop \leftrightarrow \limits^K S,{r_r}} \right) $ | (19) |
由式(18)和式(19),根据新鲜值验证规则可得
$ D| \equiv T| \equiv \left( {T\mathop \leftrightarrow \limits^K S,{r_r}} \right) $ | (20) |
由式(20),根据信念规则可得式(21),即目标G3.
$ D\left| { \equiv T} \right.\left| \equiv \right.T\mathop \leftrightarrow \limits^K S $ | (21) |
IVSAP协议是双向认证协议,通过目标G1、G2、G3的BAN逻辑证明,证明了协议在标签、KDC、后台服务器之间可以相互认证,确认其合法性.因此协议可以避免假冒攻击.
3.2 安全分析对于车联网中的RFID系统来说,除了容易遭受到传统RFID系统的假冒攻击、重放攻击、追踪攻击等,还容易因为DoS攻击导致系统瘫痪.针对上述的5种安全需求,笔者就协议的执行过程进行了详细的安全分析.
1) 假冒攻击[10].假冒攻击分为标签假冒攻击和读写器假冒攻击.对于标签假冒攻击,当读写器发送查询信息时,由于假冒标签没有合法的ID及密钥,所以在KDC认证时就会被过滤掉,攻击者难以发起标签假冒攻击.对于读写器假冒攻击,首先攻击者伪装成合法的读写器给标签发送Query和rr,同时将rr发送给KDC,当攻击者收到标签的响应后,再将响应信息通过假冒标签发送给合法的读写器.由于读写器随机数rr的存在,下一次会话时随机数已改变,所以读写器假冒攻击也难以成功.
2) 重放攻击[11].由于T→R的信道不安全性,攻击者可以截取此信道中标签历史会话的响应信息,再将其通过读写器发送给后端.由于读写器每次会话生成的随机数rr都不相同,所以读写器每次会话发送给后台的消息也是动态变化的.每次会话的消息仅当次会话有效,截取历史会话的响应将不能通过验证,每次会话消息的动态变化保证了本协议不会遭到重放攻击.
3) 跟踪攻击[12].攻击者可以截取窃听无线不安全信道的通信内容,但是协议中对每次通信的消息均经过单向散列函数计算,散列函数具有单项安全性,不能从散列值得到原始信息.每次通信的散列值不断变化,攻击者也就难以窃听到ID和密钥等隐私.因此,协议可以抵挡跟踪攻击.
4) 前向安全性.在本协议中,每次会话的共享密钥是不同的,由于随机数R的存在,下一次会话的密钥与上一次会话的密钥不相关,即使某一次会话的密钥被泄露,也不用担心之前的通信内容被破解,所以本协议具有前向安全性.
5) DoS攻击[13].协议中加入了KDC模块,任何标签发送给后台的消息均需先通过KDC认证,KDC储存有密钥列表,由于非法标签没有合法密钥,当大量非法标签想要发动DoS攻击时,无法通过KDC认证,也就无法对后台发动DoS攻击.协议将传统的后台服务器对所有标签(包括合法与非法标签)的遍历计算拆分为KDC中密钥授权列表L的一次计算和后台服务器对合法标签的遍历计算,从而极大降低了计算量.
将本协议与其他协议进行安全对比,结果如表 3所示.从表中可知,TMAP和Pinaki协议不能解决DoS攻击,Rapdos虽然解决了DoS攻击,但是通信过程没有考虑单向安全性,容易遭到跟踪攻击,而本协议解决了上述的5种攻击方式,能够适应车联网的安全需求.
对协议的性能分析主要集中在3个方面:计算性能、通信性能、存储空间.性能分析的结果如表 4所示.其中:l为标签ID和密钥长度,h为哈希操作,r表示生成随机数操作,e为加密解密运算,n为后台服务器存储的标签数量,m为一次会话在读写器识别范围内的标签数量.
通过对比可知,本协议在通信性能和存储空间方面与其他协议差别不大.但是,对于后台服务器的计算性能而言,本协议中KDC只需要m次哈希运算,然后在列表L中查询就可以把非法标签排除在外,后台服务器只需进行n次哈希运算完成遍历.而TMAP和Pinaki协议需要进行nm次计算,需要逐个确认标签ID;Rapdos需要进行多次加密、解密运算,运算复杂,标签存储要求高.综合对比协议性能,本协议能够减小服务器运算负担,较适用于车联网.
4 结束语提出了一种基于RFID的车联网安全认证协议IVSAP,通过使用可更新的共享密钥和哈希函数,解决了假冒攻击、重放攻击、跟踪攻击等问题.同时在读写器与后台服务器之间加入了KDC模块,避免了标签不经任何验证直接与后台服务器联系的问题,解决了传统协议所面临的DoS攻击问题.这种双重认证的安全协议在面对大批非法标签时,可以简化后台处理程序,提高效率,保证了车联网系统的安全.基于RFID的车联网技术在未来有着广阔的应用前景,本协议对于车联网中的RFID安全发展具有重要意义.
[1] |
Pappu R, Pappu R, Parno B. Unidirectional key distribution across time and space with applications to RFID security[C]//Conference on Security Symposium.[S.l.]: USENIX Association, 2008: 75-90.
|
[2] |
鲁力. RFID系统密钥无线生成[J]. 计算机学报, 2015, 38(4): 822-832. Lu Li. Wireless key generation for RFID systems[J]. Chinese Journal of Computers, 2015, 38(4): 822-832. |
[3] |
丁振华, 李锦涛, 冯波. 基于Hash函数的RFID安全认证协议研究[J]. 计算机研究与发展, 2009, 46(4): 583-592. Ding Zhenhua, Li Jintao, Feng Bo. Research on Hash-based RFID security authentication protocol[J]. Journal of Computer Research and Development, 2009, 46(4): 583-592. |
[4] |
Ghosh P, Mahesh T R. A privacy preserving mutual authentication protocol for RFID based automated toll collection system[C]//International Conference on ICT in Business Industry and Government.[S.l.]: IEEE, 2017: 1-5.
|
[5] |
Wu Xiaoqin, Zhang Min, Yang Xiaolong. Time-stamp based mutual authentication protocol for mobile RFID system[C]//Wireless and Optical Communication Conference.[S.l.]: IEEE, 2013: 702-706.
|
[6] |
Wang Zhao, Zhang Xuesong, Chen Zhong. Rapdos: a RFID authentication protocol for defending against DoS[C]//International Conference on Computational and Information Sciences.[S.l.]: IEEE, 2012: 1042-1045.
|
[7] |
张忠, 徐秋亮. 物联网环境下UC安全的组证明RFID协议[J]. 计算机学报, 2011, 34(7): 1188-1194. Zhang Zhong, Xu Qiuliang. Universal composable grouping-proof protocol for RFID tags in the internet of things[J]. Chinese Journal of Computers, 2011, 34(7): 1188-1194. |
[8] |
Zhong Hong, Wen Jingyu, Cui Jie, et al. Efficient conditional privacy-preserving and authentication scheme for secure service provision in VANET[J]. Tsinghua Science and Technology, 2016, 21(6): 620-629. DOI:10.1109/TST.2016.7787005 |
[9] |
Burrows M, Abadi M M, Needham R M. A logic of authentication[J]. ACM Transactions on Computer Systems, 1990(8): 18-36. |
[10] |
Dimitriou T. rfidDOT: RFID delegation and ownership transfer made simple[C]//International Conference on Security and Privacy in Communication Netowrks.[S.l.]: ACM, 2008: 1-8.
|
[11] |
Song B, Mitchell C J. RFID authentication protocol for low-cost tags[C]//ACM Conference on Wireless Network Security, WISEC 2008. Alexandria: [s.n.], 2008: 140-147.
|
[12] |
Deursen T V, Radomirovic S. Untraceable RFID protocols are not trivially composable:attacks on the revision of EC-RAC[J]. Iacr Cryptology Eprint Archive, 2009, 332. |
[13] |
Liu Fen, Hu Lei. ROAD: a RFID offline authentication, privacy preserving protocol with DoS resilience[C]//Ifip International Conference on Network and Parallel Computing.[S.l.]: IEEE, 2008: 139-146.
|