本发明属于通信技术领域,特别涉及一种无线射频识别标签所有权转移方法,可用于具有低成本要求的无线射频识别系统。
背景技术:
无线射频识别(radiofrequencyidentification,rfid)技术,是非接触式自动识别技术。通常,一个rfid认证系统由标签、阅读器、后端存储服务器三部分组成,其基本工作原理是:标签进入阅读器的读取范围后,对于无源标签,阅读器发出射频信号给标签提供能量,标签发送数据给阅读器作为响应,阅读器接收后解码并传输给后端存储服务器进行相关数据处理;对于有源标签,在电子标签进入阅读器的作用范围后,能自己提供能量并发送数据给阅读器,后续步骤同无源标签。rfid标签具有相比于一般条形码而言的一系列优点,例如成本低廉、体积小、重量轻、易于携带、可工作于恶劣环境等。与起初主要用于军事不同,现在rfid技术主要被用于物流管理、访问控制、跟踪、定位、道路桥梁、自动收费和图书分类等。
传统意义上,rfid认证方案中后台数据库的存储量和处理能力比较有限,随着物联网的快速发展,需要处理的标签越来越多,传统的后台服务器已经不能满足需求了,此时具有相当可观的运算能力和可扩展存储容量等优势的云存储技术给rfid技术的发展带来了新的希望。但是基于云的rfid系统不同于安全的有线连接,阅读器与数据库之间通过存在更多安全隐患的互联网连接,甚至云服务供应商都有可能被攻击者攻击利用,因此,存储在云数据库中的数据必须进行加密处理,以防隐私泄露。另外,由于rfid技术应用的普遍性,标签和商品的权限并不只是属于同一个所有者,为了提高系统的安全性,在应用过程中涉及到标签所有权转换的问题。在所有权转换时,大致会遇到这三类攻击:敌手攻击,标签上的隐藏商品信息被攻击者窃取;所有权转移成功后,原所有者仍然能对标签信息进行读取或篡改、跟踪;新所有者在获得标签所有权后能获得原所有者与标签的交互信息和隐私数据,从而威胁原所有者的安全。因而,基于云存储的rfid所有权转移方法的研究更具挑战性、具有十分重要的意义。
基于云存储的标签所有权转移系统结构一般包含云数据库、新所有者阅读器、旧所有者阅读器及等待转移所有权的标签四个参与实体。转移过程就是将所有权安全地从旧所有者阅读器中转移到新所有者阅读器中去。目前,业界已经提出了许多的解决方案,但是都有各自的不足。如yang等人2012年提出的一种在移动环境下数据域变换的转移标签所有权的方案,安全性较高,但不适用于大批量标签所有权的转移,不能满足市场需求;胡勋强等人在2015提出的一种所有权转移协议cotpg,由获取群组信息和身份认证后批量转移所有权两个阶段组成,但在密钥更新环节处理不完善,不能抵抗多轮dos攻击、去同步化攻击等。
技术实现要素:
本发明的目的在于克服上述已有技术存在的缺陷,提出了一种基于云存储的无线射频识别标签所有权转移方法。该方法实现了标签、新旧阅读器和云数据库之间的相互认证,降低了硬件成本,通过安全性分析,该方法满足强前向不可跟踪性和后向不可跟踪性的隐私性能,且能够抵抗内部阅读器假冒攻击、去同步化攻击和标签假冒攻击等安全威胁。
实现本发明的技术方案是:一种基于云存储的无线射频识别标签所有权转移方法,由新阅读器首先向标签发起请求,获得标签带有标识的加密信息,新阅读器将加密信息转发给当前阅读器,当前阅读器认证标签合法性;随后当前阅读器结合自身标识加密信息发送至云数据库;云端数据库检索数据发送至新阅读器,新阅读器利用数据认证当前阅读器合法性;新阅读器发送消息至标签,标签认证当前阅读器和新阅读器的合法性;认证成功后,标签响应数据给新阅读器,进而反馈到云端数据库,开始云端数据库更新;更新完成后,发送信息至新阅读器和标签,新阅读器进行数据更新,标签确认消息未被篡改后也进行数据更新。
所述方法具体包括如下步骤:
(1)数据初始化:
a.将标签和阅读器的密钥信息均以哈希加密的方式存储于哈希加密表[eht]中,而哈希加密表[eht]存储于云端数据库中;
b.将哈希加密的标签标识符h(tid),标签与当前阅读器共享密钥ktidc,阅读器与标签新旧共享密钥(ri)new,(ri)old,梅森素数ti,大素数p,q,存储在当前阅读器中;
c.将哈希加密的标签标识符h(tid),标签与新阅读器共享密钥ktidn,新阅读器与标签新旧共享密钥(ri+1)new,(ri+1)old,梅森素数ti+1,大素数p′,q′存储在新阅读器中,其中h(·)代表哈希运算;
d.将标签标识符信息tid,哈希加密的标签标识符h(tid),标签与当前阅读器共享密钥ktidc,标签与当前阅读器的共享密钥ri,ri+1存储在标签中;
(2)离线认证阶段
a.当前阅读器ri生成第一随机数nr1,发送至新阅读器ri+1;新阅读器ri+1产生第一随机数nr2,并发送所有权转移请求ot和随机数nr1、nr2至标签;标签收到新阅读器的所有权转移请求之后,产生第一随机数nt1和第二随机数nt2,计算标签第一消息rt、第二消息r″t、第三消息rp、第四消息e、第五消息f,并返回标签第二消息r″t、第三消息rp、第四消息e、第五消息f给新阅读器;其中:
b.新阅读器ri+1转发(r″t,rp,f)至当前阅读器ri,当前阅读器ri通过三条标签消息认证标签t身份合法性,确认合法后计算当前阅读器第一消息acks、第二消息ii、第三消息pi,将消息(ii,pi)发送至云端,若不合法,终止通信;其中:
c.云端通过两条当前阅读器消息获得云端第一消息mi和第二消息ki,并发送消息(mi,pi)至新阅读器ri+1;ri+1通过消息(mi,pi)认定ri合法性,不合法则终止通信,若合法则新阅读器ri+1通过标签消息e获取标签第二随机数
(3)所有权转移阶段
a.标签t根据接收到的消息(g,q,acks)认证原所有者和新所有者身份合法性;若身份不合法,通信终止;若合法,则标签生成第三随机数nt3,并计算标签第六消息x、第七消息x′、第八消息x″、第九消息c0,标签将消息(c0,x″)发送至新阅读器ri+1,其中:
b.新阅读器ri+1验证消息x″是否被篡改,若已篡改,通信终止;反之,新阅读器ri+1根据自身存储的(n′,p′,q′)和消息x″获取(x,r),并计算新阅读器第三消息ackn、第四消息ii+1,发送(ot、ii+1)至云端;云端从[eht]表中查找对应的云端第三消息ki+1、第四消息mi+1,计算云端第五消息
ii+1=h(h(tid)||ktidn||ri+1);
c.新阅读器ri+1从云端消息中获取消息tid2modn′,计算新阅读器第三消息c1,第四消息c2、第五消息c3,更新新旧密钥,新阅读器ri+1将消息(c2、c3)发送至云端,将消息
d.云端收到新阅读器消息后做出相应的更新,标签t利用自身存储信息与收到的信息
进一步的,所述步骤(1)a中云端数据库中存储的哈希加密表[eht]中包含新旧密钥信息,用以抵抗去同步化攻击。
进一步的,步骤(3)a中当前阅读器认证标签身份合法性的具体实现步骤如下:
a.当前阅读器ri收到消息后,根据已知的n,p,q,利用中国剩余定理从标签第二消息r″t中获得相对应的rt,从标签第五消息f中获取随机数nt1;
b.验证等式
进一步的,所述当前阅读器ri利用梅森素数相关性质存储计算数据,节省存储空间,利用中国剩余定理从标签第二消息r″t中获得消息,安全性更强,提高认证效率。
进一步的,步骤(2)c中新阅读器ri+1认证当前阅读器ri身份合法性的具体实现步骤如下:
a.新阅读器ri+1通过云端第一消息mi和当前阅读器第三消息pi计算出r′i+1;
b.将r′i+1与依次自身存储的(ri+1)new、(ri+1)old相比较;若r′i+1与ri+1中存储的ri+1((ri+1)new或(ri+1)old)比较等式成立,则新阅读器ri+1认定当前阅读器ri是合法的,继续通信;若r′i+1≠(ri+1)new且r′i+1≠(ri+1)old,则新阅读器ri+1认定当前阅读器ri是不合法的,终止通信。
进一步的,步骤(3)a中标签t认证新阅读器ri+1和当前阅读器ri身份合法性的具体实现步骤如下:
a.标签利用自身id、标签第一随机数nt1和共享密钥字段vp+l进行异或、哈希加密运算,得出验证信息ack′s;
b.将ack′s与当前阅读器第一消息acks进行比对;若比对结果一致,则标签认定当前阅读器ri身份合法,继续通信;若比对结果不一致,则标签认定当前阅读器ri身份不合法,终止通信;
c.标签利用新阅读器第一消息g、标签第二随机数nt2及新阅读器第一随机数nr2的级联、异或、哈希运算得出验证消息n′,利用新阅读器第二消息q与h(acks||nt2||n′)进行比对;若比对结果一致,则标签认定新阅读器ri+1身份合法,继续通信;若比对结果不一致,则标签认定新阅读器ri+1身份不合法,终止通信。
进一步的,其特征在于,步骤(3)b中新阅读器ri+1验证消息x″是否被篡改的具体实现步骤如下:
新阅读器ri+1根据标签第八消息x″和标签第二随机数nt2级联后的随机数运算prng(·)作为验证消息与标签第九消息c0进行比对,来验证标签第八消息x″是否被篡改,若比对一致,则标签消息未被篡改,继续通信;若比对不一致,则消息已被篡改,终止通信。
进一步的,所述步骤(3)c中新阅读器ri+1为抵去同步化攻击,新旧密钥都做出相应更新,
进一步的,所述步骤(3)d中为保证云端与阅读器的同步更新,新阅读器ri+1将自身第四消息c2、第五消息c3发送至云端;云端收到消息之后将eht表中关于新阅读ri+1的内容更新为;
所述步骤(3)d中确认标签消息未被攻击者篡改并更新步骤如下:
a.新阅读器ri+1将消息
b.标签利用自身第二随机数nt2、消息r和收到的消息计算验证消息
c.标签t进行如下更新:
上述方法中出现的hash加密表[eht]内部结构为:
加密hash表
在上述的安全协议中出现的符号如下定义:
本发明的所有权转移方法与现有技术相比,具有如下有益效果:
1.本发明采用云数据库代替传统数据库,使认证进行的更加方便,而且大大减少了阅读器存储空间的消耗,提高了阅读器利用率和工作效率。
2.云端存储hash加密表,放置标签和阅读器的新旧密钥等信息,能有效地抵抗去同步化攻击。
3.本发明采用二次剩余加密索引的方式提高阅读器的认证效率,利用梅森素数节省了阅读器存储空间。
4.本发明中使用的运算方法均为轻量级运算方法,极大的减小了标签和阅读器的运算负担,大大提高了运算效率。
5.本发明在通信过程中,新旧密钥的使用,可有效抵抗去同步化攻击;通信过程中加入随机数,用hash函数全程标签id,保证了标签的匿名性和不可追踪性,可有效抵抗假冒攻击。
6.本发明中,标签和云数据库在每次所有权转换成功后,都会进行数据更新,并且每次使用的阅读器随机数和标签随机数都不同,所以能抵重放攻击。
7.本发明在每次的认证过程中,阅读器和标签的随机数能保持认证消息的新鲜性,并且信息均由哈希函数加密,即使攻击者获取了某次通信的数据,也不可能推算出标签或者阅读器发送的历史数据和将要发送的数据,故该协议具有前后向安全性。
附图说明
图1为一种基于云存储的无线射频识别标签所有权转移方法详细流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本实施例提供了一种基于云存储的无线射频识别标签所有权转移方法,由新阅读器首先向标签发起请求,获得标签带有标识的加密信息,新阅读器将加密信息转发给当前阅读器,当前阅读器认证标签合法性;随后当前阅读器结合自身标识加密信息发送至云数据库;云端数据库检索数据发送至新阅读器,新阅读器利用数据认证当前阅读器合法性;新阅读器发送消息至标签,标签认证当前阅读器和新阅读器的合法性;认证成功后,标签响应数据给新阅读器,进而反馈到云端数据库,开始云端数据库更新;更新完成后,发送信息至新阅读器和标签,新阅读器进行数据更新,标签确认消息未被篡改后也进行数据更新。所述方法具体包括如下步骤:
(1)数据初始化:
a.将标签和阅读器的密钥信息均以哈希加密的方式存储于哈希加密表[eht]中,而哈希加密表[eht]存储于云端数据库中;
b.将标签标识符h(tid),标签与当前阅读器共享密钥ktidc,阅读器与标签新旧共享密钥(ri)new,(ri)old,梅森素数ti,大素数p,q,存储在当前阅读器中;
c.将哈希加密的标签标识符h(tid),标签与新阅读器共享密钥ktidn,新阅读器与标签新旧共享密钥(ri+1)new,(ri+1)old,梅森素数ti+1,大素数p′,q′存储在新阅读器中,其中h(·)代表哈希运算;
d.将标签标识符信息tid,哈希加密的标签标识符h(tid),标签与当前阅读器共享密钥ktidc,标签与当前阅读器的共享密钥ri,ri+1存储在标签中;
(2)离线认证阶段
a.当前阅读器ri生成第一随机数nr1,发送至新阅读器ri+1;新阅读器ri+1产生第一随机数nr2,并发送所有权转移请求ot和随机数nr1、nr2至标签;标签收到新阅读器的所有权转移请求之后,产生第一随机数nt1和第二随机数nt2,计算标签第一消息rt、第二消息r″t、第三消息rp、第四消息e、第五消息f,并返回标签第二消息r″t、第三消息rp、第四消息e、第五消息f给新阅读器;其中:
b.新阅读器ri+1转发(r″t,rp,f)至当前阅读器ri,当前阅读器ri通过三条标签消息认证标签t身份合法性,确认合法后计算当前阅读器第一消息acks、第二消息ii、第三消息pi,将消息(ii,pi)发送至云端,若不合法,终止通信;其中:
c.云端通过两条当前阅读器消息获得云端第一消息mi和第二消息ki,并发送消息(mi,pi)至新阅读器ri+1;ri+1通过消息(mi,pi)认定ri合法性,不合法则终止通信,若合法则新阅读器ri+1通过标签消息e获取标签第二随机数
(3)所有权转移阶段
a.标签t根据接收到的消息(g,q,acks)认证原所有者和新所有者身份合法性;若身份不合法,通信终止;若合法,则标签生成第三随机数nt3,并计算标签第六消息x、第七消息x′、第八消息x″、第九消息c0,标签将消息(c0,x″)发送至新阅读器ri+1,其中:
b.新阅读器ri+1验证消息x″是否被篡改,若已篡改,通信终止;反之,新阅读器ri+1根据自身存储的(n′,p′,q′)和消息x″获取(x,r),并计算新阅读器第三消息ackn、第四消息ii+1,发送(ot、ii+1)至云端;云端从[eht]表中查找对应的云端第三消息ki+1、第四消息mi+1,计算云端第五消息
ii+1=h(h(tid)||ktidn||ri+1);
c.新阅读器ri+1从云端消息中获取消息tid2modn′,计算新阅读器第三消息c1,第四消息c2、第五消息c3,更新新旧密钥,新阅读器ri+1将消息(c2、c3)发送至云端,将消息
d.云端收到新阅读器消息后做出相应的更新,标签t利用自身存储信息与收到的信息
进一步的,所述步骤(1)a中云端数据库中存储的哈希加密表[eht]中包含新旧密钥信息,用以抵抗去同步化攻击。
进一步的,步骤(3)a中当前阅读器认证标签身份合法性的具体实现步骤如下:
a.当前阅读器ri收到消息后,根据已知的n,p,q,利用中国剩余定理从标签第二消息r″t中获得相对应的rt,从标签第五消息f中获取随机数nt1;
b.验证等式
进一步的,所述当前阅读器ri利用梅森素数相关性质存储计算数据,节省存储空间,利用中国剩余定理从标签第二消息r″t中获得消息,安全性更强,提高认证效率。
进一步的,步骤(2)c中新阅读器ri+1认证当前阅读器ri身份合法性的具体实现步骤如下:
a.新阅读器ri+1通过云端第一消息mi和当前阅读器第三消息pi计算出r′i+1;
b.将r′i+1与依次自身存储的(ri+1)new、(ri+1)old相比较;若r′i+1与ri+1中存储的ri+1((ri+1)new或(ri+1)old)比较等式成立,则新阅读器ri+1认定当前阅读器ri是合法的,继续通信;若r′i+1≠(ri+1)new且r′i+1≠(ri+1)old,则新阅读器ri+1认定当前阅读器ri是不合法的,终止通信。
进一步的,步骤(3)a中标签t认证新阅读器ri+1和当前阅读器ri身份合法性的具体实现步骤如下:
a.标签利用自身id、标签第一随机数nt1和共享密钥字段vp+l进行异或、哈希加密运算,得出验证信息ack′s;
b.将ack′s与当前阅读器第一消息acks进行比对;若比对结果一致,则标签认定当前阅读器ri身份合法,继续通信;若比对结果不一致,则标签认定当前阅读器ri身份不合法,终止通信;
c.标签利用新阅读器第一消息g、标签第二随机数nt2及新阅读器第一随机数nr2的级联、异或、哈希运算得出验证消息n′,利用新阅读器第二消息q与h(acks||nt2||n′)进行比对;若比对结果一致,则标签认定新阅读器ri+1身份合法,继续通信;若比对结果不一致,则标签认定新阅读器ri+1身份不合法,终止通信。
进一步的,其特征在于,步骤(3)b中新阅读器ri+1验证消息x″是否被篡改的具体实现步骤如下:
新阅读器ri+1根据标签第八消息x″和标签第二随机数nt2级联后的随机数运算prng(·)作为验证消息与标签第九消息c0进行比对,来验证标签第八消息x″是否被篡改,若比对一致,则标签消息未被篡改,继续通信;若比对不一致,则消息已被篡改,终止通信。
进一步的,所述步骤(3)c中新阅读器ri+1为抵去同步化攻击,新旧密钥都做出相应更新,
进一步的,所述步骤(3)d中为保证云端与阅读器的同步更新,新阅读器ri+1将自身第四消息c2、第五消息c3发送至云端;云端收到消息之后将eht表中关于新阅读ri+1的内容更新为;
所述步骤(3)d中确认标签消息未被攻击者篡改并更新步骤如下:
a.新阅读器ri+1将消息
b.标签利用自身第二随机数nt2、消息r和收到的消息计算验证消息
c.标签t进行如下更新:
实施例1
如图1所示,一种基于云存储的无线射频识别标签所有权转移方法具体实现步骤如下:
步骤1:当前阅读器ri生成随机数nr1,并发送至新阅读器ri+1。
步骤2:新阅读器ri+1收到随机数nr1后,产生随机数nr2,并发送所有权转移请求ot和随机数nr1,nr2至标签。
步骤3:标签收到新阅读器的所有权转移请求之后,生成两个随机数(nt1,nt2)并且完成下面的计算:
步骤4:当前阅读器ri收到消息后,根据已知的n,p,q,利用中国剩余定理从消息r″t中获得相对应的rt,根据自身存储的共享密钥ri和随机数nr1,从消息f中获取随机数
步骤5:新阅读器ri+1通过mi和pi计算出r′i+1与自身存储的ri+1相比较(首先比较(ri+1)new),如果r′i+1≠(ri+1)new且r′i+1≠(ri+1)old,则ri+1认为ri是不合法的,终止通信;如果r′i+1与ri+1中存储的ri+1((ri+1)new或(ri+1)old)匹配成功,则ri+1认为ri是合法的且后续的计算均采用匹配成功的ri+1,随后ri+1通过收到消息e获取
步骤6:标签t根据接收到的消息(g,q,acks)来认证原所有者和新所有者阅读器身份是否合法。首先,根据自身存储的信息(h(tid),vp+l,nt1)计算
步骤7:新阅读器ri+1根据计算prng(x″||nt2)=c0是否成立来验证消息x″是否被篡改,如果不成立,通信终止。新阅读器ri+1根据自身存储的(n′,p′,q′)和中国剩余定理从消息x″获取x,r(r=x2modn′),并计算
步骤8:云端根据索引ii+1从[eht]表中进行查找,首先与(ii+1)new进行匹配查找,如果匹配失败,则从(ii+1)old再次匹配查找,匹配成功后得到(ki+1,mi+1),其中ki+1=tid4modn′;
步骤9:新阅读器ri+1从ki+1中解密获取tid2modn′,计算
步骤10:标签t利用其自身存储信息与收到的信息来计算
以上所述仅是本发明的一个具体实例,并未构成对本发明的任何限制,应当指出,对于本技术领域的普通技术人员,在不背离本发明原理、结构的前提下,还可以做出若干改进和补充,这些改进和补充也应视为本发明的权利要求保护范围之内。