CN101976363B - 一种基于Hash函数的RFID认证方法 - Google Patents

一种基于Hash函数的RFID认证方法 Download PDF

Info

Publication number
CN101976363B
CN101976363B CN201010503354XA CN201010503354A CN101976363B CN 101976363 B CN101976363 B CN 101976363B CN 201010503354X A CN201010503354X A CN 201010503354XA CN 201010503354 A CN201010503354 A CN 201010503354A CN 101976363 B CN101976363 B CN 101976363B
Authority
CN
China
Prior art keywords
electronic tag
random number
authentication
hash function
write line
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.)
Expired - Fee Related
Application number
CN201010503354XA
Other languages
English (en)
Other versions
CN101976363A (zh
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.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
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 Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201010503354XA priority Critical patent/CN101976363B/zh
Publication of CN101976363A publication Critical patent/CN101976363A/zh
Application granted granted Critical
Publication of CN101976363B publication Critical patent/CN101976363B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种基于Hash函数的RFID认证方法,能够避免位置泄露、明文传输ID信息、单向认证与Hash值冲突等安全漏洞。读写器向电子标签发送认证请求和后端数据库产生的随机数R;电子标签计算数据对(H(ID||R)和G(ID||R))发送给后端数据库;后端数据库对自身存储的所有电子标签IDi计算H(IDi||R)和G(IDi||R),如H(IDk||R)=H(ID||R)且G(IDk||R)=G(ID||R),则后端数据库计算G(H(IDk)||R)并发送给电子标签,同时销毁自身存储的R;电子标签利用自身ID计算G(H(ID)||R)并与接收值进行比较,若两者相等,则确定认证通过。

Description

一种基于Hash函数的RFID认证方法
技术领域
本发明涉及身份认证技术领域,特别是一种基于Hash函数的RFID认证方法。
背景技术
射频识别(RFID,Radio Frequency Identification)是一种非接触式的自动识别技术,其基本原理是利用射频信号和空间耦合传输特性,实现对被识物体的自动识别。RFID系统一般由三部分组成,即电子标签、读写器以及后端数据库。其中电子标签存储相关物体的各种信息,读写器在一定的范围内以无接触的方式将电子标签中的信息读取出来,并可将处理后的信息再写入电子标签中。
RFID作为一种新兴的技术,目前已经被广泛应用于仓储管理、停车场管理、防盗系统、动物管理等等方面。随着RFID技术的进一步发展,RFID应用的领域会越来越广泛,其中许多领域对数据的安全性有着严格的要求,因此人们对RFID系统的数据安全性也越来越重视。
RFID系统的传输信道可分为电子标签与读写器的无线通信信道与读写器与后端数据库的有线通信信道,有线通信信道通常是作为高保密性的通信信道进行研究的,相比较而言,无线通信信道就是一种极易受到攻击与窃听的信道,因此目前人们对RFID系统的安全性研究都集中于无线通信信道。
为了确保数据通信的安全,为通信系统制定一个完善的认证协议是基础且有效的方法。针对RFID系统的特性,目前人们已经提出了许多安全认证协议,例如Hash-lock协议、分布式RFID询问-响应认证协议、LCAP协议、基于杂凑ID变化协议、防追踪和克隆的轻量级协议等,这些安全认证协议都为RFID系统的数据通信提供了一定的安全保证。其中Hash-lock协议是一种广泛应用的协议,人们在其基础上还进行了一系列的改进,在一定程度上保证了数据的安全性。
随着人们研究的进一步深入,发现在目前已有的各类认证协议中,都存在一定的漏洞,攻击者可以针对这些漏洞对数据进行窃取与伪造。例如①Hash-lock协议在认证过程中固定传送的关键值哈希计算结果即H(key)容易造成电子标签的位置泄露。②在认证完成的最后一步,电子标签将自身ID以明文形式发送给读写器,容易遭到攻击者的窃取,造成信息泄露。随机Hash-lock协议同样存在明文传送ID的安全隐患。③而Hash-Chain协议是一个单向认证协议,只对电子标签的合法性进行认证,没有认证读写器的合法性,因此存在一定的安全风险。④目前许多常用认证协议都是以Hash函数为核心的,而Hash函数是将大范围的输入域映射到小范围的输出域中,这种特性很容易产生Hash值冲突,即出现两个不同的关键值对应同一个Hash值的情况,这自然会给认证带来混乱与安全隐患。
可见,现有基于Hash函数的认证过程存在位置泄露、明文传输ID信息、单向认证和Hash值冲突等安全漏洞。
发明内容
有鉴于此,本发明提供了一种基于Hash函数的RFID改进认证方法,能够避免现有基于Hash函数的认证过程存在的位置泄露、明文传输ID信息、单向认证与Hash值冲突等安全漏洞。
首先,引入两个不同的Hash函数:H和G;在后端数据库引入一个随机数模块;认证开始前,电子标签存储自身ID,后端数据库存储所有合法电子标签的ID;
该射频识别RFID认证步骤包括:
步骤1、由后端数据库中的随机数模块产生一个随机数R,然后读写器向电子标签发送认证请求和随机数R;
步骤2、电子标签接收到认证请求和随机数R后,利用Hash函数H和G分别计算H(ID||R)和G(ID||R),然后将数据对(H(ID||R),G(ID||R))发送给读写器,同时电子标签暂存随机数R;其中,“||”为字符串连接符号,H(·)表示利用Hash函数H对“·”取Hash值,G(·)表示利用Hash函数G对“·”取Hash值;
步骤3、读写器将数据对(H(ID||R),G(ID||R))转发给后端数据库,后端数据库对自身存储的所有电子标签IDi分别计算H(IDi||R)和G(IDi||R),并与接收到的数据对进行对比,如果找到一个IDk使得H(IDk||R)=H(ID||R)且G(IDk||R)=G(ID||R),则读写器通过对电子标签的认证,并将IDk设为合法标签,执行步骤4;否则,读写器认定该电子标签非法,本认证过程立即结束;
步骤4、后端数据库计算G(H(IDk)||R),并通过读写器将G(H(IDk)||R)发送给电子标签,同时销毁自身存储的随机数R;其中,i为整数,1<i<N,N为后端数据库存储的所有电子标签的总数;
步骤5、电子标签接收到G(H(IDk)||R)后,利用自身ID计算G(H(ID)||R)并与接收值进行比较,若两者相等,则确定电子标签通过对读写器的认证,同时删除之前存储的随机数R;否则,删除之前存储的随机数R,退出认证过程。
有益效果:
(1)本发明在电子标签中引入两个Hash函数:H和G,这是两个不同构造方式的Hash函数,由目前人们的研究已知,任何一种构造方式的Hash函数都存在Hash值冲突问题,实验验证Hash函数的冲突概率也即破解概率为2-4左右,即H的冲突概率为2-4,G的冲突概率为2-4,则由概率论知识可知,H、G同时产生值冲突的概率为2-4*2-4=2-8,在实际应用中,要以10-8的概率破解一个Hash函数,其时间成本和计算成本都相当的大,即大大减小了被破解的概率,可近似认为经过两个Hash函数同时加密的认证值是安全的,即解决了只使用单个Hash函数时带来的Hash值冲突问题。
(2)本发明通过在后端数据库引入一个随机数发生模块,利用随机数的特性解决了位置泄漏的问题。即使电子标签与读写器间传递的信息被攻击者截获,由于每次传输的信息都随着随机数R的不同而改变,且下一次传递的信息由于随机数R的不确定性而使得攻击者无法判断下一次传递的具体信息值,因此攻击者无法根据已经传递的消息对RFID系统进行重放攻击。
(3)在认证的最后一步,将标签ID与随机数R相结合,并通过Hash运算之后再进行传输,从而避免了明文传输ID所引起的安全隐患。
(4)本发明的认证方法是一个双向认证方法,对电子标签和读写器都进行了认证,保证了通信双方的安全性。
附图说明
图1为本发明基于Hash函数的RFID改进认证方法的流程示意图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
在当前已有的Hash-lock认证协议基础上,本发明提出了一种基于Hash函数的RFID改进认证方法。如图1所示,该方法具体为:
首先,本发明引入两个不同的Hash函数H和G。这里的H和G指的是由不同方法构造而成的Hash函数,例如可选择一个Hash函数由MD5算法构成,另一个Hash函数由SHA-1算法构成。在后端数据库引入一个随机数模块。认证开始前,电子标签存储自身ID,后端数据库存储所有合法电子标签的ID,具体认证步骤如下:
步骤1、由后端数据库中的随机数模块产生一个随机数R,然后读写器向电子标签发送认证请求Request和R。
步骤2、电子标签接收到Request和R后,通过Hash函数H和G分别计算H(ID||R)和G(ID||R),然后将数据对(H(ID||R),G(ID||R))发送给读写器,同时电子标签暂存随机数R;其中,“||”为字符串连接符号,H(·)表示利用Hash函数H对“·”取Hash值,G(·)表示利用Hash函数G对“·”取Hash值。例如,ID=00002,R=4X,则ID||R=000024X。
步骤3、读写器将数据对(H(ID||R),G(ID||R))转发给后端数据库,后端数据库对其存储的所有电子标签IDi(i为整数,1<i<N,N为后端数据库存储的所有电子标签的总数)分别进行运算H(IDi||R)和G(IDi||R),并与接收到的数据对进行对比,如果能找到一个IDk使得H(IDk||R)=H(ID||R)且G(IDk||R)=G(ID||R),则读写器对电子标签的认证通过,并将IDk设为合法标签,并执行步骤4进行下一步认证,即电子标签对读写器的认证;否则,读写器对电子标签的认证不通过,则认证过程自动结束。
步骤4、读写器对电子标签的认证通过后,后端数据库计算G(H(IDk)||R),并通过读写器将G(H(IDk)||R)发送给电子标签,同时销毁自身存储的随机数R。
步骤5、电子标签接收到G(H(IDk)||R)后,对自身的ID计算G(H(ID)||R)并与接收值进行比较,若两者不相等,则确定认证失败,删除之前存储的随机数R,退出本认证过程;反之则确定电子标签通过对读写器的认证,同时电子标签删除之前存储的随机数R,那么,电子标签就可以对自身的数据进行解锁,从而与读写器间进行进一步的数据传输。
本发明在电子标签中引入两个不同构造方式的Hash函数,要同时对这两个Hash函数产生的Hash值进行破译,破译成功的概率为2-4-2-12,要以如此低的概率破解成功,所花费的时间和付出的成本都将大大增长,因此引入两个不同构造方式的Hash函数能保证密文的安全性。
其次,本发明通过在后端数据库引入一个随机数发生模块,利用随机数的特性解决了位置泄漏的问题。即使电子标签与读写器间传递的信息被攻击者截获,由于每次传输的信息都随着随机数R的不同而改变,且下一次传递的信息由于随机数R的不确定性而使得攻击者无法判断下一次传递的具体信息值,因此攻击者无法根据已经传递的消息对RFID系统进行重放攻击。
此外,本发明在认证的最后一步,将标签ID与随机数R相结合,并通过Hash运算之后再进行传输,从而避免了明文传输ID所引起的安全隐患。若攻击者截取了该认证信息,但是由于两个不同Hash函数的高安全性及随机数R的特性,攻击者无法获取通信电子标签的ID及位置信息。
再次,本发明改进的认证协议是一个双向认证协议,对电子标签和读写器都进行了认证,保证了通信双方的安全性。
在实际中,一个电子标签中可用于安全和隐私保护的门电路数量限制在5000个以内,而设计一个Hash函数模块大约需要1700个门电路,设计一个随机数发生模块大约需要数百个门电路,因此在电子标签中嵌入两个Hash函数模块是可行的,而将随机数发生模块至于后端数据库中,又在一定程度上降低了电子标签的电路复杂度。
针对Hash值冲突的问题,可以采用对Hash值再次进行Hash运算的方法,即对一个有可能产生Hash值冲突的关键值进行两次Hash运算——H(H(key)),这种再Hash的方法在物理设计方面只需要一个Hash函数模块,但是其是先运算H(key),然后再运算H(H(key)),这样在运算时间上的支出就是同时运算H(key)与G(key)的两倍。然而,在RFID系统中对数据通信的实时性有着严格的要求,因此虽然在电子标签中嵌入两个不同的Hash函数增加了其物理负担,但是两个Hash函数模块的引入既解决了Hash值冲突问题,又保证了数据通信的实时性,总体性能优于使用再Hash方法解决Hash冲突问题。而在后端数据库中的虽然是采用顺序进行Hash运算得到G(H(ID)||R),但是由于后端数据库具备丰富的软硬件资源,因此其具备强大的运算能力,可以快速的进行Hash函数运算。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (2)

1.一种基于Hash函数的RFID认证方法,所述RFID由三部分组成,即电子标签、读写器以及后端数据库,其特征在于,引入两个不同的Hash函数:H和G;在后端数据库引入一个随机数模块;认证开始前,电子标签存储自身ID,后端数据库存储所有合法电子标签的ID;
该射频识别RFID认证步骤包括:
步骤1、由后端数据库中的随机数模块产生一个随机数R,然后读写器向电子标签发送认证请求和随机数R;
步骤2、电子标签接收到认证请求和随机数R后,利用Hash函数H和G分别计算H(ID||R)和G(ID||R),然后将数据对(H(ID||R),G(ID||R))发送给读写器,同时电子标签暂存随机数R;其中,“||”为字符串连接符号,H(·)表示利用Hash函数H对“·”取Hash值,G(·)表示利用Hash函数G对“·”取Hash值;
步骤3、读写器将数据对(H(ID||R),G(ID||R))转发给后端数据库,后端数据库对自身存储的所有电子标签IDi分别计算H(IDi||R)和G(IDi||R),并与接收到的数据对进行对比,如果找到一个IDk使得H(IDk||R)=H(ID||R)且G(IDk||R)=G(ID||R),则读写器通过对电子标签的认证,并将IDk设为合法标签,执行步骤4;否则,读写器认定该电子标签非法,本认证过程立即结束;
步骤4、后端数据库计算G(H(IDk)||R),并通过读写器将G(H(IDk)||R)发送给电子标签,同时销毁自身存储的随机数R;其中,i为整数,1<i<N,N为后端数据库存储的所有电子标签的总数;
步骤5、电子标签接收到G(H(IDk)||R)后,利用自身ID计算G(H(ID)||R)并与接收值进行比较,若两者相等,则确定电子标签通过对读写器的认证,同时删除之前存储的随机数R;否则,删除之前存储的随机数R,退出认证过程。
2.如权利要求1所述的基于Hash函数的RFID认证方法,其特征在于,在两个Hash函数中,其中一个Hash函数由MD5算法构成,另一个Hash函数由SHA-1算法构成。
CN201010503354XA 2010-09-30 2010-09-30 一种基于Hash函数的RFID认证方法 Expired - Fee Related CN101976363B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010503354XA CN101976363B (zh) 2010-09-30 2010-09-30 一种基于Hash函数的RFID认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010503354XA CN101976363B (zh) 2010-09-30 2010-09-30 一种基于Hash函数的RFID认证方法

Publications (2)

Publication Number Publication Date
CN101976363A CN101976363A (zh) 2011-02-16
CN101976363B true CN101976363B (zh) 2012-07-25

Family

ID=43576247

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010503354XA Expired - Fee Related CN101976363B (zh) 2010-09-30 2010-09-30 一种基于Hash函数的RFID认证方法

Country Status (1)

Country Link
CN (1) CN101976363B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102394753B (zh) * 2011-11-01 2014-02-12 西安电子科技大学 基于密钥和缓存机制的rfid双向认证方法
CN102497264B (zh) * 2011-11-10 2014-04-02 西安电子科技大学 基于epc c-1 g-2标准的rfid安全认证方法
CN102739402B (zh) * 2012-06-06 2014-11-19 天津大学 Rfid系统中基于hb+的一种强安全认证方法
CN102882683B (zh) * 2012-09-26 2015-04-22 南京三宝科技股份有限公司 一种可同步的rfid安全认证方法
CN102916956A (zh) * 2012-10-15 2013-02-06 北京理工大学 一种基于Hash函数的RFID双向认证方法
CN102984823A (zh) * 2012-10-30 2013-03-20 上海孚恩电子科技有限公司 物联网移动终端的多功能管理系统
CN103020671B (zh) * 2012-11-20 2015-08-19 南京邮电大学 一种基于哈希函数的无线射频识别双向认证方法
CN103905202B (zh) * 2014-03-28 2017-07-11 广东工业大学 一种基于puf的rfid轻量级双向认证方法
CN106548102A (zh) * 2016-10-24 2017-03-29 珠海南方集成电路设计服务中心 一种基于动态id的rfid验证方法和系统
CN106712962B (zh) * 2016-12-23 2019-12-24 西安电子科技大学 移动rfid系统双向认证方法及其系统
CN107171811B (zh) * 2017-07-17 2020-07-03 北京邮电大学 一种基于Present算法的轻量级RFID安全认证方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100345149C (zh) * 2006-03-17 2007-10-24 清华大学 用于射频识别系统的加密验证方法
CN100552691C (zh) * 2007-02-02 2009-10-21 中国科学院声学研究所 在rfid中一种带有安全机制的二进制防冲突方法

Also Published As

Publication number Publication date
CN101976363A (zh) 2011-02-16

Similar Documents

Publication Publication Date Title
CN101976363B (zh) 一种基于Hash函数的RFID认证方法
CN103795543B (zh) 一种用于rfid系统的安全双向认证方法
US8138889B2 (en) Method, transponder, and system for secure data exchange
CN103020671B (zh) 一种基于哈希函数的无线射频识别双向认证方法
CN102737260B (zh) Rfid隐私保护识别验证方法及其装置
US20160034728A1 (en) Rfid tag and reader characteristic determination using group keys
WO2012119434A1 (zh) 一种读写器与标签卡之间的动态认证方法及实现装置
CN102682311B (zh) 基于循环冗余校验码运算的无源射频识别安全认证方法
CN110147666B (zh) 物联网场景下的轻量级nfc身份认证方法、物联网通信平台
US11985245B2 (en) Access security system using security card and mobile terminal, and security method for same
CN101950367B (zh) 一种引入代理装置的rfid系统及其双向认证方法
CN102026180A (zh) M2m传输控制方法、装置及系统
CN103281189A (zh) 一种射频识别设备的轻量级安全协议认证系统及方法
CN102855504A (zh) Rfid标签所有权转移方法及其装置
CN104112106A (zh) 一种基于物理不可克隆的rfid轻量级认证方法
CN102970676A (zh) 一种对原始数据进行处理的方法、物联网系统及终端
US11496285B2 (en) Cryptographic side channel resistance using permutation networks
CN110324820A (zh) 一种物联网安全鉴权方法、系统及可读介质
CN103227793A (zh) 基于随机序列的rfid设备层信息安全传递方法及装置
CN105323094A (zh) 基于设备标识的安全管理方法和系统
CN102983979B (zh) 基于标签间共享秘密信息的快速rfid认证方法
CN103218633B (zh) 一种rfid安全认证方法
Peng et al. Privacy protection based on key-changed mutual authentication protocol in internet of things
CN104579688B (zh) 一种基于Hash函数可同步更新密钥的RFID双向认证方法
CN102684872A (zh) 基于对称加密的超高频射频识别空中接口安全通信方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120725

Termination date: 20160930

CF01 Termination of patent right due to non-payment of annual fee