一种基于Present算法的轻量级RFID安全认证方法与流程

文档序号:11253729阅读:1502来源:国知局
一种基于Present算法的轻量级RFID安全认证方法与流程

本发明涉及一种基于present算法的轻量级rfid安全认证方法,属于rfid系统信息安全技术领域。



背景技术:

rfid(radiofrequencyidentification)认证协议是解决无线射频识别系统安全与隐私问题的有效手段,但由于低成本rfid系统在计算能力、存储空间方面存在诸多局限性,难以实现复杂的密码算法和大容量的数据存储,因此现有的不少rfid认证协议和方案都不能较全面地满足无线射频系统的隐私安全属性。早期提出的轻量级rfid协议完全依靠hash(哈希)函数的随机性和单向性实现身份认证和密钥更新,如ducdn和kwangjokim的抗dos的rfid认证协议(ducdn,kimk.defendingrfidauthenticationprotocolsagainstdo-sattacks[j].computercommunications,2011,34(3):384-390)以及mitchell的拥有权转换协议(songb,mitchellcj.scalablerfidsecurityprotocolssupportingtagownershiptransfer[j].computercommunications,2011,34(4):556-566)等。

为进一步降低标签计算开销,后来的协议设计者开始寻求具有更小计算开销的轻量级算法代替多次hash计算,以实现协议认证和前向安全。但在节约成本的同时,协议的设计缺陷也引发了密钥更新去同步化和标签位置跟踪等诸多问题。比如limj的隐私保护认证协议(limj,ohh,kims.anewhash-basedrfidmutualauthenticationprotocolprovidingenhanceduserprivacyprotection[c]//roceedingsofthe4thinformationsecuritypracticeandexperienceconference.lncs4991,berlin:springer-verlag,2008:278-289)中,会话双方在未完成认证的情况下仍能执行密钥动态更新,可以避免标签位置隐私泄露,但由于该协议缺乏可信任新鲜量,攻击者仍可以利用通信量分析获得标签密钥状态。2007年chienhy在超轻量级sasi认证协议(hychien.sasi:anewultralightweightrfidauthenticationprotocolprovidingstrongauthenticationandstrongintegrity[j].ieeetransactionsondependableandsecurecomputing,2007,4(9):337-340)中仅利用有限次数的xor(异或)、循环移位等超轻量级算法实现挑战-应答,并在后台数据库中建立两个密钥存储单元,提高密钥恢复能力,但由于rot函数的代数特性,sasi被证明易受位篡改型(dimitriou,t.(2005).alightweightrfidprotocoltoprotectagainsttraceabilityandcloningattacks[c]//proceedingsoffirstinternationalconferenceonsecurityandprivacyforemergingareasincommunicationsnetworks(securecomm2005),athens,greece,isbn:0769523692)去同步化攻击。perislopez设计的协议完全依靠阅读器prng(伪随机数发生器)提供新鲜量,节约了标签的计算开销,但是该协议同样容易遭受去同步化攻击(litwang.securityanalysisoftwoultra-lightweightrfidauthenticationprotocols[c]//proceedingsoftheifiptc-1122ndinternationalinformationsecurityconferenceifipsec2007.southafrica:2007:109-120)和代数攻击(gidasavoine,xaviercarpent.strongauthenticationandstrongintegrity(sasi)isnotthatstrong[c]//the6thinternationalworkshop.rfidsec2010.turkey:istanbul,2010,50-64)。



技术实现要素:

基于上述,本发明提出面向物联网低成本rfid系统的双向认证方法,该方法利用记录新旧密钥对的办法提高协议对密钥去同步化的容忍度,利用双随机数的办法提高协议新鲜量的可信任性和实时性,可以有效抵抗来自系统外部和内部的攻击,不仅具有完善的隐私安全属性,而且满足低成本rfid系统对于通信次数、密钥长度、标签搜索复杂度和标签计算复杂度方面的要求,通过ban逻辑的形式化证明方法和非形式化方法对方法进行隐私安全性分析,证明该方法可以达到预期状态空间,能够安全、高效地完成rfid阅读器和标签之间的身份认证以及密钥更新。

为实现低成本rfid应用的安全认证,本发明设计了基于present算法的轻量级rfid双向认证方法,其具体认证方法会话过程如附图所示。

本发明的优点在于:方法交互轮数少,密钥长度低、标签搜索复杂度低以及计算开销小等,能够实现rfid应用的双向身份认证,具有完美的前向安全和后向安全,能够有效避免由消息重放、位置跟踪、标签伪造等典型攻击方式给rfid系统带来的安全性威胁。

表1协议中出现的符号及其含义

附图说明

附图1为本发明中设计的流程附图;

附图2为本发明中设计的基于present算法的rfid双向认证方法。

具体实施方式

(一)实施步骤

认证方法包括初始化、认证、更新三个阶段,现将协议中后台数据库、阅读器、标签之间的具体交互过程描述如下:

1.初始化阶段

rfid系统为每个标签tag产生一个唯一性检索名ids(标签假名),并和数据库共享密钥(k)。标签方保存其唯一检索名和密钥,存储单元为(ids,k);后台数据库存储目录(idsold,kold;ids,k),其中数据库的密钥单元(ids,k)和标签的(ids,k)相同。

2.认证阶段

2.1)step1reader→tag(challengemessage):hello

读写器发请求应答消息(hello)给标签。

2.2)step2tag→reader→back-endserver(respondingmessage):a

标签接收到请求消息后,取出当前唯一性索引名ids,计算a=pre(ids)并将其发送给读写器,读写器将标签应答消息转发给后台数据库。

2.3)step3back-endserver→reader→tag(forwardingmessage):r1,b

数据库接收到认证信息后,对其进行解密运算ids=dpre(a),然后查询ids,若在数据库端查询到ids,则生成随机数r1,并计算认证信息将其发送给读写器。

2.4)step4reader→back-end(authenticatingback-end):b'

读写器将信息及随机数r1发送给标签,标签收到消息后分离出随机数r1,然后根据随机数r1和自存储信息计算消息

2.4.1)若b'=b,则标签完成对数据库端的认证,标签生成随机数r2,并计算并将信息及随机数r2发送给读写器;

2.4.2)若b'≠b,则数据库未通过标签的认证,认证失败,认证过程结束。

2.5)step5tag→reader→back-endserver(authenticatingtag):r2,c

读写器将信息及随机数r2转发给数据库,数据库分离出随机数r2后,计算认证信息

2.5.1)若c'=c,数据库完成对标签的认证,计算更新指令信息并开始更新存储信息;

2.5.2)若c'≠c,则标签未通过数据库的认证,认证失败,认证过程结束。

2.6)back-endserver→reader→tag(updatingmesage):d

标签接到更新指令信息后,计算认证信息

2.6.1)若d'=d,标签更新存储信息。

2.6.2)若d'≠d,标签放弃更新存储信息,认证结束。

3.更新阶段

为保证方法前向安全,认证双方通过协议新鲜量执行更新,数据库将ids和k写入idsold,kold单元,并将更新后的ids和k写入本轮认证的ids和k所占单元。标签则直接将更新后的参数写入内存。

3.1)若认证过程中以ids认证的话,数据库端更新:

idsold=idskold=k

3.2)若认证过程中以idsold认证的话,数据库端更新:

idsold=idsoldkold=kold

3.3)标签端更新:

(二)ban逻辑形式化证明

1.ban逻辑

ban逻辑是由美国dec公司研究人员提出的一种可用于认证协议形式化分析的逻辑。借助此逻辑,认证双方可以对相互身份进行确认。该逻辑是基于知识和信仰的,认证双方通过相互接收和发送消息来从最初的信仰逐渐发展到最终信仰。ban逻辑在协议分析时假设协议采用的密码算法是完美的,即不考虑密码算法被攻破。ban逻辑主要对象包括:主体p、q,密钥k,公式,任意语句x。

1.1ban逻辑的基本语句

ban逻辑的基本语句及其解释如下:

(1)p∣≡x主体p相信x是真的

(2)p∣~x主体p曾经发送过包含x的消息

(3)主体p接收到了包含x的消息,或存在某主体q向p发送了包含x的消息

(4)主体p对x有管辖权

(5)#(x)x是新鲜的,没有在当前回合前被作为消息的一部分发送过

(6)k为主体p和q的共享密钥

(7)k为主体p的公开密钥

(8)<x>k用密钥k对消息x进行加密的密文

1.2ban逻辑的推理规则

ban逻辑的主要推理规则如下所示:

(1)消息含义规则

p相信q与p之间共享密钥k,且p曾收到过用密钥k加密的消息x,则得出p相信q曾说过x。

(2)仲裁规则

p相信q对x有仲裁权,p也相信q相信x,则得到p相信x。

(3)临时验证规则

p相信x是新鲜的,p相信q说过x,则p相信q相信x。

(4)信仰规则

a)p相信x的真实性,p相信y的真实性,则p相信由x、y组成的信息。

b)p相信由x、y组成的信息,则p相信信息x。

c)p相信q相信由x、y组成的信息,则p相信q相信x。

(5)新鲜性规则

p相信信息x的新鲜性,则p相信由x、y组成信息的新鲜性。

2.本文协议的形式化证明

2.1协议描述:

1)t→db:pre(ids)

2)db→t:

3)

4)

2.2协议理想化:

1)t→db:{ids}p

2)

3)

4)

2.3协议初始化假设:

1)

2)

3)

4)

2.4协议目标:

1)

2)

3)

2.5协议证明:

1)由消息2可得到:

根据规则可得到:

可得到:

由初始化假设和规则可得到:

初始化假设条件下,由规则可得到:

因此,由规则可得到:

在根据规则可得到:

再由初始化假设条件和规则可得到:

2)由消息3可得到:

根据规则可得到:

可得到:

由初始化假设和规则可得到:

初始化假设条件下,由规则可得到:

因此,由规则可得到:

在根据规则可得到:

再由初始化假设条件和规则可得到:

3)由消息4可得到:

由初始化假设和规则可得到:

在t|≡#(r2)初始化假设条件下,由规则可得到:

因此,由规则可得到:

在根据规则可得到:

(三)认证方法的安全性分析

轻量级协议认证方法中仅包括位运算来实现加密过程及相互认证,因此其安全性分析主要依靠非形式化的分析方法。从加密计算的角度来看,协议需要满足数据的机密性、完整性和安全认证性;从攻击检测角度来看,协议需要抵抗重放攻击、窃听攻击、跟踪攻击、去同步化攻击,并能够保证前向安全和后向安全。

下面详细介绍:

1.协议的安全认证性

只有合法的数据库和标签才能够取得对方的彼此认证,并在认证过程结束后对内部存储信息进行更新。新协议在每次认证过程结束后,都会对协议信息进行更新,并且更新的消息同步且相同,只有合法的数据库与标签才知道更新过的信息,且它们之间信息共享,所以,新协议满足安全认证性。

2.数据的机密性和完整性

标签和阅读器之间通过不安全信道传输消息,攻击者通过监听信道分析有用的数据信息。本文所提协议中的传递消息全部由present加密函数进行加密,不安全信道中的认证消息具有足够的机密性。此外,present算法的密钥只在数据库和标签端共享,任何形式的消息篡改都会导致认证过程的失败,因此,新协议能够保证消息数据的机密性和完整性。

3.抵抗重放攻击

每次标签与读写器的会话信息中都有随机数的参与,并且在认证过程结束后,所有信息都会更新。当攻击者截获本轮的认证消息要对下一轮标签与读写器会话时进行重放,标签会根据计算识别出重放的会话信息,并停止会话,导致攻击失败。所以,标签可以抵抗重放攻击。

4.抵抗窃听攻击

标签与数据库执行互相认证时,所有认证过程中的消息都有数据库产生的随机数的参与,且通过present算法加密,因此,攻击者对认证过程进行非法入侵时,是不能够从截获的消息中推测出任何关于标签和数据库的消息。因此,新协议可以抵抗窃听攻击。

5.防跟踪攻击

标签和读写器在每完成一次认证过程后,都会对标签假名信息ids,密钥信息k进行更新,并且更新的信息都包含了每次认证过程中标签端提供的随机数来作为新鲜量。在认证交互的信息中,所有的信息都由present算法加密,攻击者无法从截获的信息中获取标签的关联性,也不能从标签的发送信息中获得相关的信息。因此,新协议能够保证防跟踪攻击。

6.防去同步化攻击

本协议在认证过程中,标签端产生了新的随机数,它的产生使得每次认证过程的信息都不相同。因此,在抵抗去同步化攻击时,若攻击者第一轮会话中截获了消息b和随机数r1,并阻止了标签接收消息d,使读写器更新,标签不更新;第二轮会话,攻击者再次截止消息d的发送以阻止标签更新;第三轮,攻击者对标签重放第一轮截获的消息b和随机数r1,标签通过分离得出的随机数r1通过了消息b的验证,而攻击者截取的对标签更新起绝对作用的消息d并不能够通过认证,因为在第三轮会话时,标签已经产生了新的随机数来计算认证消息。因此,标签识别出消息假冒,会话结束,标签信息不更新。因此,新协议能够防止去同步化攻击。

7.协议的前向安全和后向安全

攻击者利用侧信道攻击等方式获得标签内部状态,并通过获取的信息推导之前或之后读写器与标签之间的会话情况,即通过记录回话消息来推测内部存储信息。在双向认证过程中,每次会话过程都引入数据新鲜量——随机数,同时,每次认证的回话消息都是加密消息,没有明文发送,攻击者无法根据present加密运算后输出结果来推导加密运算前的输入信息。因此,可知协议能够保证前向安全和后向安全。

(四)性能分析

本设计协议中,选取present加密算法作为信息加密的安全手段,而present加密算法在执行过程中所消耗的硬件功耗低,算法运行周期短,因此,本协议所采用的present算法的加密机制,非常适合于硬件资源有限的rfid系统。

计算开销:本文所设计的协议在计算方面仅使用了present加密算法一种,并且,present加密算法在加密和解密阶段的计算时间小于hash、rot及mixbits等加密计算方法。因此,在计算开销上,本协议完全适用于低成本的rfid系统。

存储开销:本文在标签端的存储开销为2l,而文献[贾庆轩,陈鹏,高欣,韦凌云,王鑫,赵兵.抗去同步化的轻量级rfid双向认证协议[j].中南大学学报(自然科学版),2015,46(06):2149-2156.]、[刘亚丽,秦小麟,王超.一种超轻量级rfid双向认证协议[j].计算机科学,2013,40(12):141-146.]、[彭朋,赵一鸣,韩伟力,金波.一种超轻量级的rfid双向认证协议[j].计算机工程,2011,37(16):140-142]中的在标签端的开销为4l,4l,4l。与他们相比,大大减少了标签的存储量,导致标签在存储结构的逻辑门电路设计上的开销进一步降低。

通信开销:本协议在认证过程中,共有标签共有5次的交互信息认证,3次接收,2次发送。接收和发送的数据量都为3l。而协议[贾庆轩,陈鹏,高欣,韦凌云,王鑫,赵兵.抗去同步化的轻量级rfid双向认证协议[j].中南大学学报(自然科学版),2015,46(06):2149-2156.]、[刘亚丽,秦小麟,王超.一种超轻量级rfid双向认证协议[j].计算机科学,2013,40(12):141-146.]、[彭朋,赵一鸣,韩伟力,金波.一种超轻量级的rfid双向认证协议[j].计算机工程,2011,37(16):140-142]中具有较高的协议接收和发送量,降低了协议的信息交互效率。

表2协议标签端的性能对比分析

其中,h代表hash计算,r代表rot(x,y)循环移位计算,m代表misbits嵌套式循环移位计算,p代表present加密计算,加密算法的效率为:h>r>m>p。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1