基于 LMAP和 EAP-SAKE的 RFID系统安全解决方案

2010-01-29 03:15吕欣美
中州大学学报 2010年5期
关键词:校验码读写器报文

吕欣美

(中州大学就业指导中心,郑州 450044)

1.引言

无线射频识别(Radio Frequency IDentification,RF ID)是一种利用射频信号自动识别目标对象并获取相关信息的技术。与条形码技术相比,RF ID技术具有使用寿命长、读取距离远、扫描速度快、数据存储量大等优点。目前,其应用领域日益扩大,已在制造、零售、物流等领域显示出强大的实用价值和发展潜力。

RF ID系统主要包括三个组成部分:标签 (Tag)、读写器(Reader)和后端数据库 (Backend database)。标签主要由芯片和内置天线组成,存储有所附的物品信息,可以和读写器进行通信。读写器主要用于和标签进行通信,并将标签所发送的消息转发给后端数据库进行处理,以及将后端数据库的处理结果转发给标签。后端数据库主要为整个系统提供各种服务,如认证服务等。

阻碍 RF ID系统进一步推广应用的一个关键问题是系统中信息的安全性。标签和读写器之间采用的是无线通信,具有开放性的特点,容易受到窃听攻击。而且 RF ID标签的计算能力、存储空间和电力供应都非常有限,无法执行对称或非对称密码算法,为保护系统中信息的安全性带来很大困难[1,2]。

目前所进行的研究工作主要集中于研究标签与标签读写器之间的安全通信,并没有设计出一个包括标签、读写器和后端数据库在内的完整的安全方案。本文提出一种用于保护 RF ID系统中标签 -读写器 -后端数据库之间安全通信的整体安全方案,并对其进行了分析。

2.标签与读写器之间的安全通信协议

LMAP(LightweightMutualAuthentication Protocol)由Pedro等人提出。在该协议中,标签只需要具备伪随机发生器,并能执行异或运算 (⊕)、按位的与运算 (∩)、按位的或运算(∪)和模 2m(+)的加法即可,大大降低了对标签计算能力的要求。该协议可以分成四个阶段,标签身份标识阶段、相互认证阶段、索引假名更新阶段和密钥更新阶段。其过程为[3]:

(1)读写器向标签发送查询请求。

(2)标签收到请求后,发送索引假名 IDS(index-pseudonym)给读写器。

(3)读写器转发 IDS给后端数据库。

(4)后端数据库搜寻相对应的记录,找出所对应的标签I

D与四个子密钥 K1、K2、K3与 K4,并发送给读写器。

(5)读写器生成两个随机数 n1与 n2,并计算 A= IDS⊕K1⊕ n1、B=( IDS K2)+n1、C= IDS+K3+n2,并发送 A、B和 C给标签。

(6)标签收到消息后,根据标签存储的 IDS和 K1与 K2,可以求出 n1,并对读写器进行身份认证,再使用 C计算出n2。计算出 n1与 n2后,标签计算 D=( IDS+ ID)⊕ n1⊕ n2并将其发送给读写器,n1、n2用来保护标签 ID并供读写器验证标签的合法性。

(7)读写器使用自己存储的 n1、n2、 IDS、 ID和收到的 D对标签的身份进行认证,防止伪造标签。

(8)读写器与标签认证完成后,标签与后台数据库所储存的索引假名 IDS与密钥 K必须同时进行更新,以提供前向安全,并抵御重放攻击。更新过程分别为: IDS=( IDS+(n2⊕ K4))⊕ ID、K1=K1⊕ n2⊕ (K3+ ID)、K2=K2⊕ n2⊕(K4+ ID)、K3=(K3⊕ n1)+(K1⊕ ID)、K4=(K4⊕ n1)+(K2⊕ ID)。

图 1 LMAP协议

3.读写器与后端数据库之间的安全通信协议

在标签读写器与后端数据库之间的通信中,采用基于EAP-SAKE(Extensible Authentication Protocol-Shared-secretAuthentication and Key Establishment)的安全协议[4,5]提供相互认证和协商密钥的安全特性。

在报文交换之前,后端数据库和读写器要共享一个根密钥 (Root-Secret),并用其生成两个相互独立的、用于不同目的的密钥,分别是根密钥 A(Root-Secret-A)和根密钥 B(Root-Secret-B)。根密钥A主要用于进行认证和生成临时 EAP密钥 (Transient EAP Keys,TEK),根密钥 B主要用于计算主会话密钥 (Master Session Key,MSK)和扩展主会话密钥 (Extended Master Session Key,EMSK)。临时 EAP密钥TEK又可分为 TEK-Auth和 TEK-Cipher,前者为 TEK的前16个字节,用于消息完整性保护和认证过程;后者为 TEK的后 16个字符,用于加解密过程。其密钥体系结构如图 2所示:

图 2 EAP-SAKE中的密钥体系

报文交换过程为:

(1)当读写器要和后端数据库进行通信时,后端数据库首先发送 EAP.Request_Challenge报文,其中包括数据库生成的随机数 AT_RAND_S和数据库的身份标识符 AT_SERVER ID。

(2)读写器收到 EAP.Request_Challenge报文后发送EAP.Response_Challenge报文,其中包括读写器生成的随机数 AT_RAND_P、读写器的身份标识符 AT_PEER ID、所支持的密文族 AT_SPI_P和生成的完整性校验码 AT_M I C_P。然后读写器使用 AT_RAND_S、AT_RAND_P和 Root-Secret-A计算出 SAKE主密钥 (SAKE Master Secret,S MS)和临时EAP密钥 TEK。

(3)后端数据库收到读写器发送来的 EAP.Response_Challenge报文后,用同样的办法计算出 S MS和 TEK,以及完整性校验码,并将计算结果与收到的 AT_M IC_P进行比较,如果相同,就认为读写器通过了认证。后端数据库从读写器发送的AT_SPI_P中选择适当的加密算法和参数,对通信数据进行加密。然后后端数据库发送 EAP.Request_Confirm报文,其中包括后端数据库选择的密文 AT_SPI_S、加密后的信息 AT_ENCR_DATA和完整性校验码 AT_M IC_S。

(4)读写器收到后端数据库发送的 EAP.Request_Confir m报文后认为后端数据库已经通过了对它的认证。读写器采用同样的方法计算完整性校验码,将计算结果与 EAP.Request_Confir m报文中的 AT_M IC_S进行比较,如果相同,就认为后端数据库通过了认证。然后发送 EAP.Response_Confir m报文,其中包括完整性校验码 AT_M IC_P。

(5)后端数据库收到 EAP.Request_Confir m报文后,发送 EAP.Success报文给读写器,结束 EAP会话。此后,读写器使用协商生成的 TEK-Cipher加密 IDS发送给后端数据库,后端数据库则将加密后的标签的 ID和密钥 K发送给读写器。

4.协议分析

在该安全方案中,标签与读写器之间采用了 LMAP协议,读写器与后端数据库之间采用的是基于 EAP-SAKE的安全协议。

(1)LMAP协议分析

在 LMAP协议中,只采用了伪随机生成、异或运算、按位的与运算、按位的或运算和模 2m的加法等轻量级计算,具有计算量小、计算速度快等优点,对标签的计算资源、存储空间和电力供应的要求非常低,非常适合用于具有有限计算资源的标签和读写器之间的安全通信。在安全性方面,对该协议做如下分析:

标签 ID的机密性

在LMAP协议中,后端数据库主要使用标签的假名 IDS确认标签的身份,标签 ID并不以明文形式进行传输,而是以加密之后的密文形式进行传输。因此,该协议提供了标签ID的机密性。

标签的匿名性

为了防范攻击者对标签携带者进行跟踪,需要保证标签I

D不被攻击者截获,而且每轮通信中所发送的消息都要不同 ,即上一轮所发送的 A、B、C、D和下一轮发送的 A、B、C、D不同。前者已通过标签 ID的机密性得以实现,后者则通过读写器生成的不重复的 n1和 n2以及每次会话完成后对 IDS和 K1、K2、K3、K4进行更新来实现。

双向认证

本协议中,读写器和后端数据库通过检查标签发送来的I

DS和 D是否正确来确定该标签是否为合法标签;标签则通过检查读写器发送来的 A、B、C是否正确来读写器是否为授权的读写器。

抵御中间人攻击和重放攻击

该协议中,即使攻击者窃听到标签和读写器之间的所有通信,也无法获取机密信息密钥 K1、K2、K3、K4和标签 ID,因此能够抵御中间人攻击。此外,由于在协议中使用了不重复的随机数 n1和 n2,因此能抵御重放攻击。

LMAP协议能够提供双向认证和对标签机密性、匿名性的保护,并抵御中间人攻击和重放攻击。

(2)EAP-SAKE协议分析

读写器与后端数据库之间采用的基于 EAP-SAKE的安全协议,只需要 2轮的请求 /响应消息交换,能够提供双向认证功能,确认通信双方的身份。还可以提供密钥协商功能,生成会话密钥进行保密通信。

双向认证

后端数据库通过检查读写器发送来的M IC_P是否正确来对读写器进行认证;读写器通过检查后端数据库发送来的M I C_S是否正确来对后端数据库进行认证。因此,该协议提供了双向认证。

密钥协商

在协议初始化时,后端数据库和读写器共享一个根密钥,由此生成根密钥 A和根密钥 B、S MS、TEK-Auth和 TEK-Cipher。TEK-Auth用于进行认证,TEK-Cipher用于进行后续的保密通信。因此,该协议提供了密钥协商功能。

EAP-SAKE协议提供了双向认证和密钥协商功能,并能对后续通信提供机密性保护。

从以上的分析可以看出,提出的基于 LMAP和 EAPSAKE的 RF ID安全方案不仅可以保护标签 -读写器之间的安全通信,也可以保护读写器 -后端数据库之间的安全通信。在标签 -读写器端,所采用的安全协议计算量小、计算速度快,对标签的计算资源的要求很低,非常适合用低成本标签和读写器之间的安全通信,而且能够提供双向认证和对标签机密性、匿名性的保护,并抵御中间人攻击和重放攻击。在读写器 -后端数据库端,所采用的安全协议提供了双向认证和密钥协商功能,并能够对后续通信进行加密,提供机密性保护。

5.结束语

无线射频识别系统目前已广泛应用于制造、零售、物流等领域,但系统中信息传输的安全性问题阻碍了它的进一步推广。目前所进行的研究主要集中于研究标签与标签读写器之间的安全通信。本文提出一种用于保护 RF ID系统中标签 -读写器 -后端数据库之间安全通信的整体安全方案,该方案适用于使用低成本标签的 RF ID系统,能够为标签 -读写器 -后端数据库之间提供双向认证和机密性保护等安全特性。

[1]Sarma S E,Weis SA,EngelsD W.RF ID systems and security and privacy implications:CHES 2002:Proceedings of the 4th InternationalWorkshop on Cryptographic Hardware and Embedded Systems[C].Berlin:Springer-Verlag,2003.

[2]Sarma S E,Weis S A,Engels D W.Radio-frequency identification:Secure risks and challenges[J].RSA Laboratories Cryptobytes,2003(6):2-9.

[3]Pedro Peris-Lopez,Julio Cesar Hernandez-Castro,Juan M.Estevez Tapiador,Arturo Ribagorda.LMAP:A Real LightweightMutual Authentication Protocol for Low-cost RF ID tags[M].Proceeding of 2ndWorkshop on RF ID Security,2006.

[4]VanderveenM,Soliman H.RFC4763,ExtensibleAuthentication ProtocolMethod for Shared-secret Authentication and Key Establishment[S].2006.

[5]Blunk L,Vollbrecht J.RFC2284,PPP Extensible Authentication Protocol[S],1998.

猜你喜欢
校验码读写器报文
基于J1939 协议多包报文的时序研究及应用
Basic UDI校验码算法
低轨星座短报文通信中的扩频信号二维快捕优化与实现
基于加密设备特征信息的配置数据自动校验方法
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
基于Excel实现书号校验码的验证
身份证号码中的数学
RFID技术中防碰撞算法的改进
基于视频抓拍读写器的高速公路防倒卡研究