椭圆曲线上轻量级的RFID相互认证方法技术

技术编号:11053470 阅读:199 留言:0更新日期:2015-02-18 17:39
本发明专利技术提供一种椭圆曲线上轻量级的RFID相互认证方法。本发明专利技术基于椭圆曲线上离散对数困难问题,该算法在相同的安全强度条件下,具有更短的密钥长度,而且运算速度快,存储空间小。考虑到标签的运算能力弱,认证过程中的运算仅涉及生成随机数、Hash运算、点乘、加法以及异或。本发明专利技术保护了标签的身份信息,并且实现了标签和服务器的相互认证,达到了一定的安全和隐私要求。

【技术实现步骤摘要】
椭圆曲线上轻量级的RFID相互认证方法
本专利技术涉及数字认证技术,特别涉及RFID相互认证技术。
技术介绍
射频识别RFID(RadioFrequencyIdentification),是一种快速、准确、实时采集与处理信息,实现普适计算环境的自动识别技术。RFID系统主要利用射频信号通过空间耦合来实现无接触的信息传递,并依据所传递的信息来达到相互识别的目的。在认证系统中,有三个参与方,标签,阅读器和服务器。服务器中包含后台数据库。阅读器和服务器之间的信道是安全的,标签和阅读器之间的信道是不安全的。RFID安全问题中面临的一个重要挑战就是隐私泄露。由于阅读器与标签之间采用无线射频信号进行通信,无线通信固有的脆弱性使得所传送的信息被完全暴露,易受到窃听、篡改等各种攻击,导致一些敏感信息被泄露。RFID的安全隐私问题主要包括两方面:(1)攻击者对标签进行位置追踪。由于标签发送的信息可能包含唯一的身份标识信息(如身份标识ID),即使经过加密处理也有可能包含某种固定或有规律的信息,攻击者可以根据标签响应服务器的响应信息对标签进行位置跟踪,而当标签的使用者没有改变时,攻击者就可以通过跟踪标签来推测出用户的位置,从而泄露用户的位置信息。(2)对窃听获取的标签信息进行分析后再进行攻击。当标签携带信息包含了用户的个人信息时,攻击者就可以通过分析标签传输的信息来获取用户的隐私信息。例如用户使用信用卡在商店消费时,如果不良商户将用户的身份信息和用户身上的标签发送的信息内容联系在一起,便可以获取很多用户的隐私信息。因此,设计高效安全的认证协议来保护用户隐私,是我们目前迫切需要解决的难题。随着公钥密码的发展,椭圆曲线密码受到越来越多的重视。相对于传统的公钥密码,椭圆曲线密码在相同的安全强度下,具有更短的密钥长度,更快的运算速度和更小的存储空间。所以,椭圆曲线密码很适合设计RFID认证协议。Tuyls和Batina提出了第一个使用椭圆曲线的RFID认证协议。随后,Batina等人提出了一个相似的椭圆曲线上的RFID认证协议。但是,Lee等人指出Tuyls和Batina的协议以及Batina等人提出的协议存在隐私问题。随后Lee等人给出了一个改进方案,但是他们的方案不能提供扩展性。2013年,Liao和Hsiao提出了一个新的椭圆曲线上的RFID认证协议。但是Peeters等人指出Liao和Hsiao的协议存在标签伪装攻击、服务器钓鱼攻击、位置追踪攻击和标签克隆攻击。2014年,Chou提出了一个新的椭圆曲线上的RFID认证协议,并声称他们的协议可以抵抗各种攻击。但是Zhang和Qi指出Chou的协议存在标签信息隐私问题。
技术实现思路
本专利技术所要解决的技术问题是,提供一种适用于RFID的能防止隐私泄露的相互认证方法。本专利技术为解决上述技术问题所采样的技术方案是,椭圆曲线上轻量级的RFID相互认证方法,包括以下步骤:1)服务器预处理步骤:服务器选择q,n两个大素数,两个哈希函数H1与H2,一个n阶生成元P;服务器确定椭圆曲线E为y2=x3+ax+b,其中椭圆曲线常数a,b∈Zq,Zq为长度为q的有限域;服务器产生随机数作为其私钥,并计算其公钥PS=xSP,生成其公私钥对(PS,xS),为大素数n的整数模的乘法群;服务器为每个标签选择身份信息XT,XT为0、1字符串,将身份信息XT作为秘密值存储在服务器中,同时存储到对应标签的内存中;2)相互认证步骤:2-1)服务器选择一个随机数计算挑战信息R1=r1P发送给标签Ti;2-2)标签Ti选择随机数计算中间数R2=r2P,利用服务器公钥计算中间数TKT=r2PS,再将挑战信息R1与中间数TKT作为哈希函数H1的输入,将标签身份信息XT与哈希函数H1的输出值进行异或得到结果AuthT=XT⊕H1(R1,TKT),最后把响应数据(AuthT,R2)返回给服务器;2-3)服务器收到响应数据(AuthT,R2)后,首先利用服务器私钥计算中间数TKs=xSR1,将本地生成的挑战信息R1与中间数TKs输入哈希函数H1,将响应数据中的数据AuthT与哈希函数H1的输出值进行异或得到结果作为计算得到的标签身份信息XT′,XT′=AuthT⊕H1(R1,TKs),服务器在它自己的数据库中查找XT′,若查找到标签身份信息XT′,则视为合法标签,并将挑战信息R1、标签身份信息XT′、中间数R2输入哈希函数H2得到哈希函数值e=H2(R1,XT′,R2),再利用服务器私钥xS与哈希函数值e相乘,得到响应值s≡xSe+r1modn,并将响应值s发送给标签Ti;2-4)标签Ti收到响应值s后,首先将接收到的挑战信息R1、本地的标签身份信息XT、本地产生的中间数R2输入哈希函数H2得到哈希函数值e′=H2(R1,XT,R2),再验证sP≡e′PS+R1modn是否成立,若成立,则为合法的服务器,否则为非法服务器。本专利技术基于椭圆曲线上离散对数困难问题。该算法在相同的安全强度条件下,具有更短的密钥长度,而且运算速度快,存储空间小。考虑到标签的运算能力弱,认证过程中的运算仅涉及生成随机数、Hash运算、点乘、加法以及异或。本专利技术的有益效果是,保护了标签的身份信息,并且实现了标签和服务器的相互认证,达到了一定的安全和隐私要求。具体实施方式实施中用到的符号说明见下表:本方案中,没有发行机构这个可信的第三方。只有服务器、阅读器和标签。服务器产生阅读器和标签的公私钥对。此外,阅读器和服务器之间的通信信道是安全的。所以本方案中,我们把标签和阅读器之间的通信,写成标签和服务器之间的通信。(一)系统初始化:服务器生成其公私钥对,标签的身份信息以及两个安全的哈希函数。其中服务器中保存了所有合法标签的身份列表。服务器选择q,n两个大素数,两个哈希函数H1与H2,一个n阶生成元P;服务器确定椭圆曲线E为y2=x3+ax+b,其中椭圆曲线常数a,b∈Zq,Zq为长度为q的有限域;服务器产生随机数作为其私钥,并计算其公钥PS=xSP,生成其公私钥对(PS,xS),为大素数n的整数模的乘法群;服务器为每个标签选择身份信息XT,XT为0、1字符串,将身份信息XT作为秘密值存储在服务器中,同时存储到对应标签的内存中;(二)RFID相互认证协议:服务器向标签发送消息作为挑战。标签利用服务器的公钥,自己的身份信息通过简单乘法和异或运算计算出应答值,然后把应答值发送给服务器。服务器对应答值进行正确性验证。若验证通过,则说明标签是合法的,否则,说明标签是非法的。然后服务器利用自己的私钥通过简单乘法和加法运算计算出应答值,把应答值发送给标签。标签对应答值进行正确性验证。若验证通过,则说明服务器是合法的,否则,说明服务器是非法的。1)服务器选择一个随机数计算挑战信息R1=r1P发送给标签Ti;2)标签Ti选择随机数计算中间数R2=r2P,利用服务器公钥计算中间数TKT=r2PS,再将挑战信息R1与中间数TKT作为哈希函数H1的输入,将标签身份信息XT与哈希函数H1的输出值进行异或得到结果AuthT=XT⊕H1(R1,TKT),最后把响应数据(AuthT,R2)返回给服务器;3)服务器收到响应数据(AuthT,R2)后,首先利用服务器私钥与挑战信息R1得到中间本文档来自技高网
...

【技术保护点】
椭圆曲线上轻量级的RFID相互认证方法,其特征在于,包括以下步骤:1)服务器预处理步骤:服务器选择q,n两个大素数,两个哈希函数H1与H2,一个n阶生成元P;服务器确定椭圆曲线E为y2=x3+ax+b,其中椭圆曲线常数a,b∈Zq,Zq为长度为q的有限域;服务器产生随机数作为其私钥,并计算其公钥PS=xSP,生成其公私钥对(PS,xS),为大素数n的整数模的乘法群;服务器为每个标签选择身份信息XT,XT为0、1字符串,将身份信息XT作为秘密值存储在服务器中,同时存储到对应标签的内存中;2)相互认证步骤:2‑1)服务器选择一个随机数计算挑战信息R1=r1P发送给标签Ti;2‑2)标签Ti选择随机数计算中间数R2=r2P,利用服务器公钥计算中间数TKT=r2PS,再将挑战信息R1与中间数TKT作为哈希函数H1的输入,将标签身份信息XT与哈希函数H1的输出值进行异或得到结果最后把响应数据(AuthT,R2)返回给服务器;2‑3)服务器收到响应数据(AuthT,R2)后,首先利用服务器私钥计算中间数TKs=xSR1,将本地生成的挑战信息R1与中间数TKs输入哈希函数H1,将响应数据中的数据AuthT与哈希函数H1的输出值进行异或得到的结果作为标签身份信息X′T,服务器在它自己的数据库中查找X′T,若查找到标签身份信息X′T,则视为合法标签,并将挑战信息R1、标签身份信息X′T、中间数R2输入哈希函数H2得到哈希函数值e=H2(R1,X′T,R2),再利用服务器私钥xS与哈希函数值e相乘,得到响应值s≡sRe+r1modn,并将响应值s发送给标签Ti;2‑4)标签Ti收到响应值s后,首先将接收到的挑战信息R1、本地的标签身份信息XT、本地产生的中间数R2输入哈希函数H2得到哈希函数值e′=H2(R1,XT,R2),再验证sP≡e′PS+R1modn是否成立,若成立,则为合法的服务器,否则为非法服务器。...

【技术特征摘要】
1.椭圆曲线上轻量级的RFID相互认证方法,其特征在于,包括以下步骤:1)服务器预处理步骤:服务器选择q,n两个大素数,两个哈希函数H1与H2,一个n阶生成元P;服务器确定椭圆曲线E为y2=x3+ax+b,其中椭圆曲线常数a,b∈Zq,Zq为长度为q的有限域;服务器产生随机数作为其私钥,并计算其公钥PS=xSP,生成其公私钥对(PS,xS),为大素数n的整数模的乘法群;服务器为每个标签选择身份信息XT,XT为0、1字符串,将身份信息XT作为秘密值存储在服务器中,同时存储到对应标签的内存中;2)相互认证步骤:2-1)服务器选择一个随机数计算挑战信息R1=r1P发送给标签Ti;2-2)标签Ti选择随机数计算中间数R2=r2P,利用服务器公钥计算中间数TKT=r2PS,再将挑战信息R1与中间数TKT作为哈希函数H1的输入,将标签身份信息XT与哈希函数H1的输出值进行异或得到结果最后把响应数据(AuthT,...

【专利技术属性】
技术研发人员:许春香金春花张晓均
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1