CN107634828A - 一种增强协议抵抗去同步化攻击能力的方法 - Google Patents

一种增强协议抵抗去同步化攻击能力的方法 Download PDF

Info

Publication number
CN107634828A
CN107634828A CN201710742905.XA CN201710742905A CN107634828A CN 107634828 A CN107634828 A CN 107634828A CN 201710742905 A CN201710742905 A CN 201710742905A CN 107634828 A CN107634828 A CN 107634828A
Authority
CN
China
Prior art keywords
msub
mrow
reader
msup
label
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201710742905.XA
Other languages
English (en)
Inventor
陈秀清
马凯
袁洋
刘伟
郝杰
朴雪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xuzhou Medical University
Original Assignee
Xuzhou Medical University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xuzhou Medical University filed Critical Xuzhou Medical University
Priority to CN201710742905.XA priority Critical patent/CN107634828A/zh
Publication of CN107634828A publication Critical patent/CN107634828A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

一种增强协议抵抗去同步化攻击能力的方法,包括以下步骤:阅读器向标签发送认证请求消息;标签计算IDSnew,并将其发送给阅读器;阅读器在后台数据库中搜索该IDSnew;如果不存在,则等待标签传送IDSold,重新搜索数据库,这说明标签一方的新密钥未更新;如果存在,阅读器产生两个随机数n1,n2,并计算A,B,C,发送给标签;标签收到消息A,B,C后,提取随机数n1,n2,并计算本地的C',判断C与C'是否相——并计算D值发送给阅读器;否则,认证不通过,其中最后更新密钥和假名;阅读器收到消息D后,验证是否与本地值D'相等,若相等,则更新数据库中对应的密钥和假名。该方法采用增强随机数之间的关联性减小随机数单值的碰撞域以增强协议抵抗去同步化攻击的能力,能有效地提高协议的安全性。

Description

一种增强协议抵抗去同步化攻击能力的方法
技术领域
本发明涉及计算机技术领域,具体涉及一种增强协议抵抗去同步化攻击能力的方法。
背景技术
随着无线射频识别(Radio Frequency Identification,RFID)技术在智能交通、移动医疗、数字图书馆等领域的广泛使用,其所引起的安全问题备受关注。RFID标签的标识符通常具有唯一性,如果标签对阅读器每次访问的应答相同,那么很容易导致针对标签的跟踪攻击和重放攻击。
为了保持RFID系统认证过程中消息的新鲜性,避免跟踪攻击情况的发生,也为了实现前向和后向认证的安全性,许多设计者在其设计的安全协议中往往采用秘密值更新机制,后台服务器、阅读器、标签采用相同的秘密值更新策略一方面可以降低RFID标签被跟踪的可能性,另一方面可以保证认证消息的新鲜性。这就在一定程度上保证了认证信息的随机性。但是采用密钥更新机制的RFID系统容易存在去同步化攻击,这是由于标签、阅读器以及后台服务器的更新操作在不同阶段实现,而标签和阅读器之间的更新时间差为去同步化攻击留下了契机,去同步化攻击通过截取认证消息导致其中一方无法完成秘密值更新,或者篡改认证消息使得双方更新值相异,这两种情况很容易导致后台服务器和标签秘密值的不同步,进而会导致秘密值更新的不成功,而秘密值更新成功与否将导致标签下一次交互能否成功的关键。
去同步化攻击在超轻量级RFID安全协议中需要重点关注,一方面主要因为该类安全协议采用的都是简单原语操作,比如与、或、异或、移位等运算,另一方面主要因为针对该类协议的位篡改攻击形式可以从分析比特流开始。超轻量级RFID安全协议很适合标签计算能力有限、低成本的诸多限制,如何保证简单原子运算条件下RFID系统的高安全性是许多协议设计者都在思考的问题。
现有的增强协议抵抗去同步化攻击能力的方法多从泄露随机数的复杂程度和不可跟踪模型的角度着手以提高协议的安全性,但是他们忽略了移位等运算的固有缺陷,造成了该协议在随机数上具有很大的碰撞域。
发明内容
针对上述现有技术存在的问题,本发明提供一种增强协议抵抗去同步化攻击能力的方法,该方法采用增强随机数之间的关联性减小随机数单值的碰撞域以增强协议抵抗去同步化攻击的能力,能有效地提高协议的抵抗去同步化攻击的能力。
为了实现上述目的,本发明提供一种增强协议抵抗去同步化攻击能力的方法,包括以下步骤:
步骤一:阅读器向标签发送认证请求消息;
步骤二:标签计算新密钥IDSnew,并将其发送给阅读器;
步骤三:阅读器在后台数据库中搜索该IDSnew;如果不存在,则等待标签传送IDSold,重新搜索数据库以找出该IDSold,找到则说明标签一方的新密钥未更新;如果存在,阅读器产生两个随机数n1,n2,并计算A,B,C,发送给标签;在A,B,C产生的过程中,只要进行了伪-Kasami码计算,就检测该值X,是否hw(Kc(X))=0,只要该式成立,阅读器将重新产生随机数,并计算A,B,C,
其中
B=Rot(Rot(Per(n2,K2),IDS),K1);
步骤四:标签收到消息A,B,C后,提取随机数n1,n2,并计算本地的C',判断C与C'是否相等;如果相等,标签认证阅读器,并计算D值发送给阅读器;否则,认证不通过,其中最后更新密钥和假名,更新规则与原协议相同;
步骤五:阅读器收到消息D后,验证是否与本地值D'相等,若相等,则更新数据库中对应的密钥和假名。
在该技术方案中,通过采用Per(n1,n2)已经打乱了随机数n1的排列,使得其不仅仅依赖于左移运算。这样篡改消息A将涉及随机数n1和n2;由于n2对C的计算影响较小,所以将B值改为仅有n2确定,且密钥更新机制保持不变。C的计算不再单独依靠随机数n1,而改由的左移量确定,因此,这就增强了n1和n2之间的关联性。
进一步,所述步骤四中本地的C'的计算公式为:
进一步,所述步骤五中本地的D'的计算公式为:
该方法可以保证阅读器和标签之间的响应一致和机密性,这也说明优化协议KMAP+不仅没有降低安全性能,在保持原有结构的条件下,最大限度的增长了抵抗去同步化攻击的能力。
附图说明
图1是本发明中KMAP协议信息交互示意图;
图2是本发明中KMAP协议的去同步攻击过程的仿真数据截图;
图3是本发明中Per(X,Y)的函数变换过程示意图;
图4是本发明中KMAP+协议的主体协议图。
具体实施方式
下面对本发明作进一步说明。
超轻量级RFID安全协议很适合标签计算能力有限、低成本的诸多限制,为了保证简单原子运算条件下RFID系统的高安全性,有人提出了一种新型超轻量级RFID双向认证协议——KMAP,KMAP协议可以在一定程度上抵抗去同步化攻击、重放攻击以及跟踪攻击。实质上,KMAP协议引入了一个新的超轻量级原语——伪-Kasami码(Kc),避免了不平衡逻辑运算的使用,从而增强了协议消息的随机性,还使得密钥的汉明权重变得不可预测,这些都增强了KMAP协议的安全性。但是KMAP协议在去同步化攻击时,还存在零伪-Kasami码、二次截获、重放攻击以及去同步化攻击,特别是协议在秘密值更新条件下的去同步化攻击,很容易导致后台服务器和标签秘密值的不同步。
为了描述KMAP协议,首先通过表1来表示协议所用的运算符。
表1:KMAP协议所使用的符号及含义
KMAP协议引入了一种新的原语运算——伪-Kasami码,实质上,伪-Kasami码亦可以说是一种复合运算,因为伪-Kasami码是将随机移位和异或运算相结合的一种新的原语。为了表示该运算方法,举例如下:
假设变量X的二进制字符串为n位,即:
X=x1x2,...,xn,xi∈{0,1},i=1,2,...,n
那么X的伪-Kasami码,Kc(X)的计算可以用以下两个步骤实现:
(1)标签从阅读器发送的消息中提取随机数n1,n2,然后标签计算伪-Kasami的种子值;首先计算然后计算种子值,Seed=hw(P)modK。对于EPC标准的标签来说,n=96,对于高效硬件实现系统来说,K=64,因此,Seed∈{0,1,2,...,63}。然后通过种子值选择字符串X的比特数,并执行移位操作,即通过变量的X二进制位的循环左移得到一个新的字符串X'(X移位后的值,Seed=0表示最后一位循环左旋转Seed=63表示最后64位循环左旋转)。
(2)在X和X'之间进行异或操作得到X的伪-Kasami码。
为了方便理解,假设X=100101110101101100010110,Seed=6,那么X的伪-Kasami码Kc(X)为:
(1)计算移位量:因为Seed=6,所以X的最后六位将被用于选作循环左移,X=100101110101101100010110;计算经过循环左旋的移位量X':将X的后六位看作整体并循环左旋后可以得到X'=010110100101110101101100;
(2)将X和X'进行异或得到X的伪-Kasami码Kc(X)=110011010000011001111010。
以上就是KMAP协议引入的新的超轻量级原语——伪-Kasami码(Kc)的操作过程,它在一定程度上保证了输出结果的随机性。
由于KMAP协议弱化了阅读器的功能,在协议的执行过程中仅仅作为一种数据传递的媒介,因此可以将服务器与阅读器之间的信道视为安全信道,信息交互如图1所示,其中,后台服务器和标签存储(ID,IDSnew,K1,new,K2,new,IDSold,K1,old,K2,old,)。
(1)首先阅读器向标签发送认证请求;
(2)标签收到请求后将密钥IDS发送给阅读器;
(3)阅读器收到标签假名后检索数据库,如果存在该假名,阅读器则生成随机数n1,n2,并将n1隐匿于A,其中n2隐匿于B,其中,最后计算认证消息C,并将(A,B,C)发送给标签,其中 如果数据库无该假名,则标签将IDSold传送给阅读器,重复以上计算过程;
(4)标签收到消息(A,B,C)后,首先从消息A中提取随机数n1,接着利用随机数n1,从消息B中恢复随机数n2,最后通过消息C检验随机数n1,n2的正确性,如果正确,则标签认证阅读器/服务器,同时更新IDS,K1,new,K2,new,其中,K1,new=Kc(K1 *),K2,new=Kc(K2 *),
(5)标签认证阅读器/服务器后,利用随机数计算消息D,并将其发送给阅读器,这里
(6)阅读器收到消息D后,利用随机数n1,n2验证消息D的本地值,如果相等,阅读器认证标签,并更新数据库中的IDS,K1,new,K2,new
KMAP协议存在的主要问题在于:
(1)零伪-Kasami码的存在:伪-Kasami码Kc(X)的存在的确增加了协议的安全性和效率,但是伪-Kasami码的实质就是X与其左旋变量X'的异或操作,一旦X与X'在某一验证时刻相等那么显然有0n表示与X比特位相同的零值。一旦零值产生,那么后续密钥一直保持原始量。
(2)虽然KMAP协议具有抗去同步化攻击的能力,但是该认证协议仍然具有去同步化攻击形式:假设有一组合法的标签和阅读器,某一时刻两者密钥信息完全同步,假设攻击者可以截获信息A,B,C,D,并且使得阅读器无法收到信息D,那么后台数据库不会更新密钥,但是标签在发送信息D后已经更新了假名IDS和密钥(K1,K2),这里我们用一组状态符号表示此刻的标签内部存储值:(ID,IDSold,IDSgen,K1,old,K2,old,K1,gen,K2,gen),但是,此刻的后台服务器的状态值为(ID,IDSold,IDSnew,K1,old,K2,old,K1,new,K2,new)。所以,此刻数据库和标签的值已经有一组不正确,因此下一刻我们让标签和阅读器之间继续通信,当标签发送IDSgen后,阅读器示意标签,无此假名记录,标签不得不使用IDSold与阅读器通信,如果重复以上攻击形式,将导致IDSold对应的一组密钥在标签和数据库中产生异步。至此,标签和阅读器将产生异步,这一攻击方法称为二次截获攻击,这种攻击形式一般建立在敌手强窃取能力之下。
(3)去同步化攻击:由于即C是随机数Kc(n1)循环左移位,所以在不改变A而改变B的情况下,可以实现不改变n1而改变n2,这就有极大的可能使得C值不变,即可通过验证。因为的范围非常有限,这主要是由于汉明权hw(.)的范围仅由未知变量中1的个数决定的。对于EPC-Class-1Generation-2标签来说,HW∈(0,192),HW为整数,又因为EPC采用96位二进制,所以实际上HW∈(0,96),HW为整数。而n1的范围却是(0,296),因此出现碰撞的情况很大,下面会对KMAP协议的这一情况通过Java程序展现。发生这一情况的根本原因是协议的验证值C完全由n1的函数值确定。
(4)重放攻击:如果存在恶意阅读器,在收到IDSnew后,假装未接受到,并将先前窃听到的消息(A,B,C)重放给标签,由于该消息是合法的阅读器产生的,所以标签必会发现其对应于IDSold,这就会导致标签将将其密钥重新更新为原始值。造成这一问题的主要原因在于随机数完全由阅读器一方产生。
为了验证KMAP协议在去同步化攻击下的缺陷,使用Java程序对该协议进行了仿真分析,KMAP协议的仿真如图2所示。
为了验证前文所述该协议容易遭受异步攻击的情况,考虑到A,C值仅与n1的移位量有关,B值仅与n2的移位量有关,因此在保证A消息不受篡改的前提下,用随机数取代消息B,如果可以保证Kc(n1)的移位量不变,即存在值不受B变化的影响,则去同步化攻击成功,测试数据在ID=123456,IDS=10000,A=10000,的条件下,测试结果如表2所示。
表2:KMAP协议异步攻击测试
从表2中可以看出,测试数据10000时攻击成功率下降,但是测试其他数据发现,这段数据在其他条件下攻击成功率均大于1%甚至有的超过2%。由此可以得出结论,KMAP协议面对去同步化攻有很大的局限性。究其根本原因是该协议在标签和阅读器相互认证时,仅仅使用移位运算符造成的,移位运算符仅针对单个随机数或者其某个函数值,这将导致不同的随机数很可能满足同一个移位量,因此,超轻量级RFID协议存在缺陷的根本原因在于运算符过于简单,输入和结果之间往往存在很大程度的相关性。只有扩展运算符的复杂性,才可以有效的保护数据免于重放和篡改,这也有利于保护数据隐私性。但是,鉴于超轻量级RFID协议可以大大降低标签成本的考虑,运算符的简单性无从考虑,只能通过增强随机数之间的关联性减小随机数单值的碰撞域以增强协议抵抗去同步化攻击的能力。
为了解决KMAP协议存在的去同步化攻击,本申请提出一种可以抵抗去同步化攻击的RFID超轻量级的安全认证协议——KMAP+
本申请主旨在提供一种增强随机数之间的关联性减小随机数单值的碰撞域以增强协议抵抗去同步化攻击的能力的方法,并对协议进行Java程序去同步化攻击仿真,在协议描述之前首先介绍两种置换函数。
(1)Per(X,Y),该函数主要根据变量Y将变量X置乱,将Y中为1的位所对应的变量X相应的位连接起来,记为p1,再将Y中为0的位所对应的变量X相应的位连接起来,记为p2,最后将p1,p2连接起来。具体变换方法如图3所示。
(2)C(A,B)该函数由第二输入变量B生成另一个序列变量B',例如,B可以用作RC4的密钥调度算法的关键字来初始化序列向量B',之后再按照B'对A进行Per函数置乱加密。KMAP+主要减小了原协议随机数的碰撞域,通过Per(X,Y)函数或者C(A,B),增强随机数之间的关联性,从而增强协议抵抗去同步化攻击的能力。KMAP+协议仍旧采用图1的信息认证过程。协议每次使用伪-Kasami码都检查是否产生了零值,只要产生零值,则使用Per(X,Y)函数进行置乱,数据库和标签存放(ID,IDSnew,K1,new,K2,new,IDSold,K1,old,K2,old),KMAP+协议描述如下:
(1)阅读器向标签发送认证请求消息;
(2)标签计算新密钥IDSnew,并将其发送给阅读器;
(3)阅读器在后台数据库中搜索该IDSnew,如果不存在,则等待标签传送IDSold,重新搜索数据库以找出该IDSold,找到则说明标签一方的新密钥未更新;。如果存在,阅读器产生两个随机数n1,n2,并计算A,B,C,发送给标签。在A,B,C产生的过程中,只要进行了伪-Kasami码计算,就检测该值X,是否hw(Kc(X))=0,只要该式成立,阅读器将重新产生随机数,并计算A,B,C,其中B=Rot(Rot(Per(n2,K2),IDS),K1),
(4)标签收到消息A,B,C后,提取随机数n1,n2,并计算本地的C',判断C与C'是否相等。如果相等,标签认证阅读器,并计算D值发送给阅读器;否则,认证不通过,其中最后更新密钥和假名,更新规则与原协议相同。C'的计算公式为:
(5)阅读器收到消息D后,验证是否与本地值D'相等,若相等,则更新数据库中对应的密钥和假名。其中D'的计算公式为:
由上可知,Per(n1,n2)已经打乱了随机数n1的排列,使得其不仅仅依赖于左移运算。这样篡改消息A将涉及随机数n1和n2;由于n2对C的计算影响较小,所以将B值改为仅有n2确定,且密钥更新机制保持不变。C的计算不再单独依靠随机数n1,而改由的左移量确定,因此,这就增强了n1和n2之间的关联性。
使用串空间模型分析KMAP+协议,以证明该协议可以实现整体上的安全性。
串空间模型
(1)基本符号
串空间模型是一种基于机遇协议消息节点间偏序关系可证安全的,它将定理证明和协议迹的证明相混合,具有高效、严谨、直观、简洁等特点。表3是该模型的基本符号及含义。
表3:串空间理论的基本符号含义
(2)串空间基本性质
①一个串既可以接收消息也可以发送消息,但是不能同时进行两者。
②当一个串接收到消息t,那么存在唯一的节点发送了t。
③当一个串发送了消息t,可以有多个串接收到了该消息。
④假设C是一个丛,因为二元关系≤是偏序的,所以C的任意非空节点子集都有最下元[15]
那么节点m和m'具有相同隶属性,如果n是S的≤最小元,那么sign(n)=+。
⑥假设C是一个丛,t∈A,且n∈C是集合{m∈C:t∈term(m)}中≤的最小元,那么t起源于节点n。
⑦集合A中的运算遵循:如果{m}k={m'}k',必有m=m',k=k';如果m1m2=m3m4,必有m1=m3,m2=m4;连接加密符合m1m2≠{m3}k
(3)串空间攻击者模型
①M(t).<+t>,t∈T:攻击者可以随意发出一个原子消息。
②F(g).<-g>:攻击者截获一则消息。
③C[g,h].<-g,-h,+gh>:攻击者将截获的两则消息连接后发送出去。
④S[g,h].<-gh,+g,+h>:攻击者将截获消息分解后发送出去。
⑤K[k].<+k>,k∈Kp:攻击者发送一个已知的密钥出去。
⑥E[k,h].<-h.-k,+{h}k>:攻击者使用捕获的密钥加密截获的密文消息发送出去;一般的攻击者具有计算Hash值的能力,即H.<-g,+hash(g)>。
⑦D[k,h].<-k-1,-{h}k,+h>:攻击者使用截获到的解密密钥解密截获的密文消息并发送出去。
KMAP+协议安全性证明
图4是KMAP+协议的主体协议图,这里的k1,k2,k3设为一种对称密钥。标识符集合Tname∈Tm
设(∑,P)是一个串空间,如果∑由下述3种串组成,就称为一个KMAP+串空间:
(1)攻击串s∈P;
(2)发起串s∈Init[R,T,n1,n2],其迹为:<+query,-IDS,+(A||B||C),-D>;
(3)响应者串:s∈Resp[R,T,n1,n2,ID]其迹为:<-query,+IDS,-(A||B||C),+D>;以上串空间满足图4KMAP+协议
R1,R2∈T,发起串对应主体R,响应串对应主体T。如果s∈Init[n1,n2]或s∈Resp[n1,n2,ID]是正则串,那么主体分别为R,T。要证明这些值的随机性,即这些值在中是∑唯一起源的。
为了证明这个问题,将证明一步一步分解:
(1)响应者一致性分析
命题1:∑是KMAP+空间,且C是一个丛,s是Resp[R,T,n1,n2,ID]中的一个响应者串;
且n2唯一发源于串空间∑;
那么,丛C包含发起串t∈Init[R,T,n1,n2]。
为了证明这个命题,需要证明一系列引理才可以做出该结论。
引理1:n1唯一起源于节点N0
证明:n1本质上是起源于发起者,标签没有随机数生成模块就无法得出n1源于N0,由于建立的是概率模型,故引理成立。
引理2:集合≤有最小元N2,节点N2是正规节点,且符号为+。
证明:因为N3∈C,且N3包含n2但是不包含v0,S非空,由串空间的性质可知S至少有一个极小元,所以N2为正,下面证明N2是否可能在攻击串上:
M(t).<+t>,t∈T,所以必有t=n2,那么n2源发于此串,与引理3-2矛盾。
F(g).<-g>,没有发送消息节点。
C[g,h].<-g,-h,+gh>,正节点不是最小元。
S[g,h].<-gh,+g,+h>,假设term(N2)=g,因为N2∈S,n2∈g且(由N2的最小性,必有而v0是加密值,不是合成值,所以)。
K[k].<+k>,k∈Kp,由于所以n2不可能在这个串上。
E[k,h].<-h.-k,+{h}k>,假设因为n2≠{h}k,所以所以正节点不是最小元。
D[k,h].<-k-1,-{h}k,+h>,如果正节点是S的最小元,那么然而由自由加密假设,h=n1n2R且k=KA,KA表示阅读器和标签之间的加密算法,所以存在m节点,使得term(m)=KA -1,由于其现实意思就是R,T双方都不发送解密密钥。
因为不存在包含gh的子项的常规节点,所以Tm中的每一个成员都是攻击者节点,<p,1>∈T可知Tm非空,即存在最小元m,符号为正,所以必须考虑m在攻击串中的位置,从以上讨论可知m不可能处于M,F,K上,所以考虑剩下情况:
S[g,h].<-gh,+g,+h>,假设其中m是S类型的串p'的一个正节点,因此,必有这与m是Tm中的最小元矛盾。
同理可证,E,D,C攻击策略也无法实现,所以N2不在攻击串上,而一定是在常规串上且sign(N2)=+。
引理3:令N2是集合的≤-最小元,则其必常规节点,且节点N1在N2之前,且
证明:由于n2唯一发源于N0,且N2≠N0,所以t上有N2的前驱节点N1,满足根据N2是S的最小元可知但是没有包含加密项作为子项的常规节点,所以
引理4:包含N1,N2的常规串t是一个发起串,且有t被包含在C中。
证明:节点N2是一个符号为正的常规节点,并有形如{xyz}K的节点N1之后,因此t是一个发起串,否则其必为响应串,但是{xyz}K节点之后只包括一个负节点,因此N1,N2为别是t中第二与第三节点,由于t最后一个节点包含在C,可得前面的节点也在C中。
由引理3与引理4可得命题1成立。
(2)响应者的机密性分析
命题2:∑是KMAP+协议空间,C是∑的一个丛,s是Resp[R,T,n1,n2,ID]的响应串,且C-hight(s)=4;n1≠n2且R并非攻击者;那么对于任意满足的节点m∈C,有或者
证明:记N0的项为v0,节点N1的项记为v1,考虑集合由引理可知,如果S非空,则S必有一个最小元,我们可以通过证明S的最小元不是正规节点也不是攻击者节点,即S为空集,从而可以证明命题的成立。
引理5:S的最小元不是正规节点。
证明:假设存在一个最小元m∈S是正规节点,有串空间性质可以推出sign(m)=+,只有sign(N0)=+,v0=term(N0),显然m不可能位于串s上,同时m也不可能在响应串s'≠s上,这主要是由于n1起源于R。
引理6:S的最小元不是攻击节点。
证明:因为攻击者无法了解T的ID,和R不是攻击者的假设也保证了攻击者不可能构造出响应,所以引理6也是正确的。
综上即可证明串空间响应者的机密性。
通过分析可知KMAP+协议可以实现RFID协议的安全性需求,通过串空间模型可以发现,协议层次上的KMAP+协议可以保证阅读器和标签之间的响应一致和机密性,这也说明优化协议KMAP+不仅没有降低安全性能,在保持原有结构的条件下,最大限度的增长了抵抗去同步化攻击的能力。
KMAP+协议的去同步化攻击测试和性能比较
KMAP+协议增强了随机数之间的关联性,使得该协议在抵抗去同步化攻击上具有很大的优势。在与KMAP协议相同的条件下,对KMAP+协议进行了Java程序测试,实验结果如下:表4:KMAP+协议去同步化攻击测试
其中,表2和表4的实验环境如下表表5所示:
表5:实验环境
比较表2和表4可以发现中的增强了随机数之间的关联程度,从而极大缩小了参数之间的碰撞概率,从该实验中也可以发现KMAP+协议具有很强的抵抗异步攻击能力。KMAP+协议与KMAP协议的其他性能比较如下表所示:
表:6KMAP+和KMAP协议的主要性能
在RFID协议的设计中,标签、阅读器以及后台服务器的更新操作在不同阶段实现,三者共享的秘密值更新成功与否将导致标签下一次交互是否成功。因此,RFID安全协议的去同步化攻击的分析对于共享秘密机制的系统来说至关重要。如果合法的标签遭到去同步化攻击,标签将难以继续与阅读器以及服务器认证,这将破坏协议的实用性。本方法在KMAP协议的基础上,通过增强随机数之间的关联性从而增强协议抵抗去同步化攻击的能力,同时通过串空间模型这一形式化方法,分析了协议的响应者一致性与机密性,并通过Java程序模拟了协议的去同步化攻击,实验结果也显示优化的KMAP+协议具有很好的抗去同步化攻击的能力。

Claims (3)

1.一种增强协议抵抗去同步化攻击能力的方法,其特征在于,包括以下步骤:
步骤一:阅读器向标签发送认证请求消息;
步骤二:标签计算新密钥IDSnew,并将其发送给阅读器;
步骤三:阅读器在后台数据库中搜索该IDSnew;如果不存在,则等待标签传送IDSold,重新搜索数据库以找出该IDSold,找到则说明标签一方的新密钥未更新;如果存在,阅读器产生两个随机数n1,n2,并计算A,B,C,发送给标签;在A,B,C产生的过程中,只要进行了伪-Kasami码计算,就检测该值X,是否hw(Kc(X))=0,只要该式成立,阅读器将重新产生随机数,并计算A,B,C,
其中
<mrow> <mi>A</mi> <mo>=</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mo>(</mo> <mrow> <mi>P</mi> <mi>e</mi> <mi>r</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>n</mi> <mn>1</mn> </msub> <mo>,</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <mi>I</mi> <mi>D</mi> <mi>S</mi> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mn>1</mn> </msub> </mrow> <mo>)</mo> <mo>,</mo> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>&amp;CirclePlus;</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
B=Rot(Rot(Per(n2,K2),IDS),K1);
<mrow> <mi>C</mi> <mo>=</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mo>(</mo> <mrow> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <mrow> <msub> <mi>n</mi> <mn>1</mn> </msub> <mo>&amp;CirclePlus;</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <mrow> <msup> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>*</mo> </msup> </mrow> <mo>)</mo> </mrow> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mo>(</mo> <mrow> <msup> <msub> <mi>K</mi> <mn>1</mn> </msub> <mo>*</mo> </msup> </mrow> <mo>)</mo> <mo>&amp;CirclePlus;</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>;</mo> </mrow>
<mrow> <msup> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>*</mo> </msup> <mo>=</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>P</mi> <mi>e</mi> <mi>r</mi> <mo>(</mo> <mrow> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>,</mo> <mi>K</mi> <mi>c</mi> <mo>(</mo> <msub> <mi>n</mi> <mn>1</mn> </msub> <mo>)</mo> <mo>)</mo> </mrow> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mn>1</mn> </msub> <mo>;</mo> </mrow>
<mrow> <msup> <msub> <mi>K</mi> <mn>1</mn> </msub> <mo>*</mo> </msup> <mo>=</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>P</mi> <mi>e</mi> <mi>r</mi> <mo>(</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mo>(</mo> <msub> <mi>K</mi> <mn>1</mn> </msub> <mo>)</mo> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mo>(</mo> <msub> <mi>n</mi> <mn>1</mn> </msub> <mo>)</mo> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mo>(</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> <mo>)</mo> </mrow> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>;</mo> </mrow>
步骤四:标签收到消息A,B,C后,提取随机数n1,n2,并计算本地的C',判断C与C'是否相等;如果相等,标签认证阅读器,并计算D值发送给阅读器;否则,认证不通过,其中最后更新密钥和假名,更新规则与原协议相同;
步骤五:阅读器收到消息D后,验证是否与本地值D'相等,若相等,则更新数据库中对应的密钥和假名。
2.根据权利要求1所述一种增强协议抵抗去同步化攻击能力的方法,其特征在于,所述步骤四中本地的C'的计算公式为:
<mrow> <msup> <mi>C</mi> <mo>&amp;prime;</mo> </msup> <mo>=</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mo>(</mo> <mrow> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <mrow> <msub> <mi>n</mi> <mn>1</mn> </msub> <mo>&amp;CirclePlus;</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <mrow> <msup> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>*</mo> </msup> </mrow> <mo>)</mo> </mrow> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mo>(</mo> <mrow> <msup> <msub> <mi>K</mi> <mn>1</mn> </msub> <mo>*</mo> </msup> </mrow> <mo>)</mo> <mo>&amp;CirclePlus;</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>.</mo> </mrow>
3.根据权利要求1或2所述一种增强协议抵抗去同步化攻击能力的方法,其特征在于,所述步骤五中本地的D'的计算公式为:
<mrow> <msup> <mi>D</mi> <mo>&amp;prime;</mo> </msup> <mo>=</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mrow> <mo>(</mo> <mi>R</mi> <mi>o</mi> <mi>t</mi> <mo>(</mo> <mrow> <mi>P</mi> <mi>e</mi> <mi>r</mi> <mrow> <mo>(</mo> <mrow> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <mrow> <mi>I</mi> <mi>D</mi> </mrow> <mo>)</mo> </mrow> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>n</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> </mrow> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <mrow> <mi>I</mi> <mi>D</mi> <mi>S</mi> </mrow> <mo>)</mo> </mrow> <mo>&amp;CirclePlus;</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mrow> <mo>(</mo> <msub> <mi>K</mi> <mn>1</mn> </msub> <mo>)</mo> </mrow> </mrow> <mo>)</mo> <mo>,</mo> <msub> <mi>K</mi> <mi>c</mi> </msub> <mo>(</mo> <msub> <mi>K</mi> <mn>2</mn> </msub> <mo>)</mo> <mo>)</mo> </mrow> <mo>.</mo> </mrow>
CN201710742905.XA 2017-08-25 2017-08-25 一种增强协议抵抗去同步化攻击能力的方法 Pending CN107634828A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710742905.XA CN107634828A (zh) 2017-08-25 2017-08-25 一种增强协议抵抗去同步化攻击能力的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710742905.XA CN107634828A (zh) 2017-08-25 2017-08-25 一种增强协议抵抗去同步化攻击能力的方法

Publications (1)

Publication Number Publication Date
CN107634828A true CN107634828A (zh) 2018-01-26

Family

ID=61100859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710742905.XA Pending CN107634828A (zh) 2017-08-25 2017-08-25 一种增强协议抵抗去同步化攻击能力的方法

Country Status (1)

Country Link
CN (1) CN107634828A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108429616A (zh) * 2018-02-11 2018-08-21 众算(上海)数据科技有限公司 一种自有后量子密码分配系统
CN111641657A (zh) * 2020-06-05 2020-09-08 南京信息工程大学 智能医疗环境下基于rfid的信息匿名检索方法和系统

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078741A (zh) * 2013-01-07 2013-05-01 南通大学 一种rfid双向认证协议方法
CN103595525A (zh) * 2013-11-18 2014-02-19 北京邮电大学 一种抗去同步化的轻量级rfid双向认证协议
US8751806B1 (en) * 2006-01-20 2014-06-10 Symantec Corporation Method and apparatus to provide public key authentication with low complexity devices
US9111283B1 (en) * 2010-06-14 2015-08-18 Impinj, Inc. RFID tag authentication with public-key cryptography
CN105450673A (zh) * 2016-01-12 2016-03-30 吉林大学 基于移动rfid系统的安全协议认证方法
CN106411505A (zh) * 2016-08-31 2017-02-15 广东工业大学 一种移动射频识别的双向认证方法及移动射频识别系统
CN106713329A (zh) * 2016-12-30 2017-05-24 广州大学 一种基于交叉位运算和循环校验函数的rfid双向认证方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751806B1 (en) * 2006-01-20 2014-06-10 Symantec Corporation Method and apparatus to provide public key authentication with low complexity devices
US9111283B1 (en) * 2010-06-14 2015-08-18 Impinj, Inc. RFID tag authentication with public-key cryptography
CN103078741A (zh) * 2013-01-07 2013-05-01 南通大学 一种rfid双向认证协议方法
CN103595525A (zh) * 2013-11-18 2014-02-19 北京邮电大学 一种抗去同步化的轻量级rfid双向认证协议
CN105450673A (zh) * 2016-01-12 2016-03-30 吉林大学 基于移动rfid系统的安全协议认证方法
CN106411505A (zh) * 2016-08-31 2017-02-15 广东工业大学 一种移动射频识别的双向认证方法及移动射频识别系统
CN106713329A (zh) * 2016-12-30 2017-05-24 广州大学 一种基于交叉位运算和循环校验函数的rfid双向认证方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
郑欣颖: "轻量级及超轻量级RFID双向认证协议的研究", 《中国优秀硕士学位论文期刊》 *
马庆: "超轻量级RFID双向认证协议的研究与设计", 《中国优秀硕士学位论文期刊》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108429616A (zh) * 2018-02-11 2018-08-21 众算(上海)数据科技有限公司 一种自有后量子密码分配系统
CN108429616B (zh) * 2018-02-11 2020-10-30 陈柱 一种自有后量子密码分配系统
CN111641657A (zh) * 2020-06-05 2020-09-08 南京信息工程大学 智能医疗环境下基于rfid的信息匿名检索方法和系统
CN111641657B (zh) * 2020-06-05 2022-02-11 南京信息工程大学 智能医疗环境下基于rfid的信息匿名检索方法和系统

Similar Documents

Publication Publication Date Title
Liang et al. A mutual security authentication method for RFID-PUF circuit based on deep learning
Song et al. RFID authentication protocol for low-cost tags
EP3069249B1 (en) Authenticatable device
CN103905202B (zh) 一种基于puf的rfid轻量级双向认证方法
CN103595525B (zh) 一种抗去同步化的轻量级rfid双向认证方法
Liu et al. Grouping-proofs-based authentication protocol for distributed RFID systems
Zhuang et al. A new ultralightweight RFID protocol for low-cost tags: R 2 AP
Gao et al. An ultralightweight RFID authentication protocol with CRC and permutation
CN104333539B (zh) 一种基于切比雪夫映射的rfid安全认证方法
CN103532718A (zh) 一种认证方法及系统
CN110381055A (zh) 医疗供应链中的rfid系统隐私保护认证协议方法
Yilmaz et al. Armor: An anti-counterfeit security mechanism for low cost radio frequency identification systems
Liu et al. A Lightweight RFID Authentication Protocol based on Elliptic Curve Cryptography.
CN101488179A (zh) 一种无线射频识别系统认证方法和设备
Akgün et al. Attacks and improvements to chaotic map‐based RFID authentication protocol
Liang et al. Fog-based secure service discovery for internet of multimedia things: a cross-blockchain approach
CN107480564B (zh) 一种改进的rfid群组认证方法
CN106027237B (zh) 一种rfid系统中基于组的密钥矩阵安全认证方法
Weis New foundations for efficient authentication, commutative cryptography, and private disjointness testing
Jana et al. Differential Fault Attack on PHOTON-Beetle
CN107634828A (zh) 一种增强协议抵抗去同步化攻击能力的方法
Zhuang et al. Security analysis of a new ultra-lightweight RFID protocol and its improvement.
CN113779594A (zh) 基于区块链的数据分发共享方法及系统
Peris-Lopez et al. An efficient authentication protocol for RFID systems resistant to active attacks
Yeh et al. Improvement of two lightweight RFID authentication protocols

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180126