一种实现RFID系统中阅读器与标签认证的方法与系统与流程

文档序号:12670322阅读:366来源:国知局
一种实现RFID系统中阅读器与标签认证的方法与系统与流程

本发明涉及RFID系统空口安全协议领域,特别是涉及一种基于极小加密算法、采用RFID空口安全协议实现RFID系统中阅读器与标签间双向认证的方法与系统。



背景技术:

射频识别(Radio Frequency Identification,RFID)技术通过射频信号自动识别目标对象并获取相关数据,是一种非接触式的自动识别技术。由于RFID技术具有多目标识别和非接触识别等优点,目前,RFID技术已广泛应用于制造业、商业、军事和日常生活等领域。

RFID系统一般包括三部分:阅读器、标签和后台数据库。其中,阅读器是一个带有天线的无线发射与接收设备,具有较大的存储空间和微处理器,微处理器具有较强的处理能力;标签是配有天线的微型电路,由数千个逻辑门电路组成,通常没有微处理器;后台数据库是可以运行与任意硬件平台的数据库系统,具有强大的存储空间并且具有微处理器,具有较强的逻辑处理能力。

一般,RFID系统在实际中识别目标对象时,阅读器与标签是分开的,标签被集成在被识别的目标对象中,阅读器与标签之间,通过发送无线射频信号进行认证以及获取相关数据。由于阅读器与标签之间通过无线射频信号传输数据,信号的传输介质是空气,容易遭到各种恶意攻击等不安全因素的影响。



技术实现要素:

发明人在研究过程中发现,为了克服各种恶意攻击等不安全因素的影响,提高阅读器与标签间通信信道传输数据的安全性,可以将多种基于对称密钥体制的安全协议应用于阅读器与标签之间,但是,这些协议采用阅读器对标签或者标签对阅读器的单向认证,在阅读器与标签间信道传输的数据遇到各种恶意攻击等不安全因素时,传输数据的安全性低。同时,这些基于对称密钥体制的安全协议中所采用的加密算法,要求标签具有较大的存储空间,所以这种提高安全性的方法不能应用于低成本RFID系统标签。

有鉴于此,本发明的主要目的是针对低成本RFID标签,提供一种实现RFID系统中阅读器与标签双向认证的方法与系统,此方法与系统是基于极小加密算法的RFID空口安全协议实现的双向认证,因为极小加密算法对标签的存储空间要求较小,所以,本发明基于极小加密算法实现的双向认证方法与系统,既能适用于低成本RFID系统标签,又能克服各种恶意攻击等不安全因素的影响,进而提高认证的安全性。进一步的,基于前述的双向认证方法,还能实现低成本RFID系统中阅读器与标签间传输数据的安全性。

为此,本发明解决上述问题的技术方案是:

一种实现RFID系统中阅读器与标签认证的方法,其特征在于,所述认证的方法应用于RFID系统,所述RFID系统包括阅读器、标签和数据库,所述数据库与所述标签具有共享密钥,该方法为:

所述标签采用哈希算法对标签标识符与标签认证码进行计算,得到令牌信息;其中,所述令牌信息是所述标签在接收所述阅读器发送的查询命令后计算得到的;

所述标签将令牌信息发送给所述阅读器;

所述数据库根据所述阅读器发送的所述令牌信息获取所述标签对应的共享密钥;

所述数据库将所述共享密钥、第一随机数和第二随机数发送给所述阅读器,所述第一随机数与所述第二随机数由所述数据库生成;

所述阅读器采用极小加密算法,并利用所述共享密钥对所述第一随机数加密得到第一密文;

所述阅读器将所述第一随机数、所述第二随机数与所述第一密文发送给所述标签;

所述标签比较所述第一密文与第二密文,所述第二密文由所述标签采用所述极小加密算法,并使用所述共享密钥对所述第一随机数加密得到,若所述第一密文与所述第二密文相同,则所述标签对所述阅读器认证通过;

所述标签将第三密文发送给所述阅读器,所述第三密文由所述标签采用极小加密算法,并使用所述共享密钥对所述第二随机数加密得到;

所述阅读器比较所述第三密文与第四密文,所述第四密文由所述阅读器采用所述极小加密算法,并使用所述共享密钥对所述第二随机数加密得到,若所述第三密文与所述第四密文相同,则阅读器对所述标签认证通过。

优选地,所述标签采用哈希算法对标签标识符与标签认证码计算,得到令牌信息的方法,具体包括:

所述标签采用字符串拼接符,对所述标签标识符与所述标签认证码进行拼接,得到拼接字符;

所述标签采用所述哈希算法计算所述拼接字符,得到所述令牌信息。

优选地,所述数据库根据所述阅读器发送的令牌信息获取所述标签对应的共享密钥,具体包括:

所述数据库接收阅读器发送的令牌信息;

所述数据库从存储表中查找与所述令牌信息对应的索引号,所述存储表为每个标签预留两对索引号与令牌信息,所述两对索引号与令牌信息中包含标签发送的令牌信息,所述存储表保存在所述数据库中;

所述数据库获取所述令牌信息对应的索引号;

所述数据库利用所述索引号获得与所述索引号对应的共享密钥。

优选地,所述数据库根据所述阅读器发送的令牌信息获取所述标签对应的共享密钥后,还包括:

所述数据库计算所述索引号与第一随机数的异或结果,所述第一随机数由数据库生成;

所述数据库利用所述异或结果更新存储表中另一对索引号与令牌信息。

优选地,所述一种实现RFID系统中阅读器与标签认证的方法,还包括:

所述阅读器向所述标签发送无线射频信号,所述标签集成于目标对象中;

所述阅读器根据所述标签的反馈信号,获取所述目标对象的数据;

本发明还提供一种实现RFID系统中阅读器与标签认证的系统,所述系统包括:阅读器、标签和数据库,所述数据库与所述标签具有共享密钥。

所述系统中的标签具体包括:

计算单元,用于采用哈希算法对标签标识符与标签认证码进行计算,得到令牌信息;其中,所述令牌信息是所述标签在接收所述阅读器发送的查询命令后计算得到的;

第一发送单元,用于将令牌信息发送所述阅读器;所述比较单元用于比较所述第一密文与第二密文,所述第二密文由所述标签采用所述极小加密算法,并使用所述共享密钥对所述第一随机数加密得到,若所述第一密文与所述第二密文相同,则所述标签对所述阅读器认证通过;

第二发送单元,用于将第三密文发送所述阅读器,所述第三密文由所述标签采用极小加密算法,并使用所述共享密钥对所述第二随机数加密得到。

优选地,所述计算单元包括:

拼接模块,用于采用字符串拼接符,对所述标签标识符与所述标签认证码进行拼接,得到拼接字符;

计算模块,用于采用所述哈希算法计算所述拼接字符,得到所述令牌信息。

所述系统中的数据库具体包括:

获取单元,用于根据所述阅读器发送的所述令牌信息获取所述标签对应的共享密钥;

发送单元,用于将所述共享密钥、第一随机数和第二随机数发送所述阅读器,所述第一随机数与所述第二随机数由所述数据库生成。

优选地,所述获取单元具体包括:

接收模块,用于接收阅读器发送的令牌信息;

查找模块,用于从存储表中查找与所述令牌信息对应的索引号,所述存储表为每个标签预留两对索引号与令牌信息,所述两对索引号与令牌信息中包含标签发送的令牌信息,所述存储表保存在所述数据库中;

获取索引号模块,用于获取所述令牌信息对应的索引号;

获取共享密钥模块,用于利用所述索引号获得与所述索引号对应的共享密钥。

优选地,所述数据库还包括:

计算单元,用于计算所述索引号与第一随机数的异或结果,所述第一随机数由数据库生成;

更新单元,用于利用所述异或结果更新存储表中另一对索引号与令牌信息。

所述认证系统中的阅读器具体包括:

加密单元,用于采用极小加密算法,并利用所述共享密钥对所述第一随机数加密得到第一密文;

发送单元,用于将所述第一随机数、所述第二随机数与所述第一密文发送所述标签;

比较单元,用于比较所述第三密文与第四密文,所述第四密文由所述阅读器采用所述极小加密算法,并使用所述共享密钥对所述第二随机数加密得到,若所述第三密文与所述第四密文相同,则阅读器对所述标签认证通过。

优选地,所述认证系统中的阅读器还包括:

发送无线射频信号单元,用于向所述标签发送无线射频信号,所述标签集成于目标对象中;

获取目标对象数据单元,用于根据所述标签的反馈信号,获取所述目标对象的数据。

与现有技术相比,本发明具有以下有益效果:

针对低成本的RFID系统,为了克服RFID系统中阅读器与标签之间传输数据容易遭受各种恶意攻击等不安全因素的影响,保证阅读器与标签间传输数据的安全性,本发明提出基于极小加密算法的RFID空口安全协议,其中安全协议采用的对称密钥加密算法是极小加密算法(Tiny Encryption Algorithm,TEA),此算法加密解密速度快、实现简单、具有较好的抗差分性能,并且,此算法不采用转换矩阵,对标签的存储空间的要求不高,适用于低成本RFID系统标签。同时,此安全协议采用阅读器与标签间双向认证的方式,只有当阅读器对标签认证通过,同时标签对阅读器认证通过后才能进行阅读器与标签间的数据传输;并且,在每次认证的过程中标签对标签标识符进行更新,数据库对存储表中的索引号进行更新,使得在每次认证过程中,标签标识符与数据库中的索引号是动态变化的,克服了现有技术中阅读器与标签间单向认证方式对各种恶意攻击等不安全因素的抵制性低的缺点,从而使得阅读器与标签间传输数据的安全性更高。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1是本发明中RFID系统的组成结构示意图;

图2是本发明中阅读器与标签采用极小加密算法进行双向认证的流程图;

图3是本发明中收费站收取车辆费用的流程图;

图4是本发明中一种认证的系统中标签对应的结构示意图;

图5是本发明中一种认证的系统中数据库对应的结构示意图;

图6是本发明中一种认证的系统中阅读器对应的结构示意图;

图7是本发明中一种应用认证系统中阅读器还包括的单元结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种RFID系统中阅读器与标签认证的方法与系统,此阅读器与标签的认证是基于极小加密算法实现的双向认证。在阅读器与标签进行双向认证的过程中,首先,阅读器根据标签标识符ID从数据库中获得此标签对应的共享密钥,并且阅读器从数据库获取第一随机数与第二随机数;然后,阅读器将采用此共享密钥加密第一随机数得到的第一密文、第一随机数以及第二随机数发送给标签,标签采用其拥有的共享密钥将第一随机数加密得到第二密文,标签比较第一密文与第二密文,若两者相同,则标签对阅读器的认证通过;最后,标签采用共享密钥对第二随机数加密得到第三密文,并将第三密文发送给阅读器,阅读器用其所拥有的共享密钥对第二随机数加密得到第四密文,阅读器比较第三密文与第四密文,若两者相同,则阅读器对标签的认证通过。当RFID系统中的阅读器与标签双向认证通过后,阅读器需要获取标签的信息可以通过加密在通信信道中安全传输。

为了保证低成本标签的RFID系统中阅读器获取标签的信息,可以在通信信道中安全传输,提出了一种基于极小加密算法的双向认证的方法与系统。为了使本领域技术人员更好地理解本发明的方法与系统,下面先对RFID系统与极小加密算法进行详细介绍。

RFID系统的组成图,如图1所示,由图1可知,RFID系统包括后台数据库、阅读器与标签三部分。通常RFID系统在实际应用中识别目标对象时,目标对象会有多个,RFID系统中的标签与目标对象是一一对应的,在每个目标对象上都集成一个标签,并且阅读器与标签之间是分开的,阅读器与标签之间通过射频信号进行相互认证与获取相关数据。

在阅读器与标签通过射频信号进行传输数据时,通常将阅读器向标签发送射频信号的信道称为“前向信道”,标签向阅读器发送射频信号的信道称为“反向信道”。由于阅读器与标签的无线功率差别很大,阅读器的无线功率要大于标签的无线功率,因此前向信道的通信范围远远大于反向信道的通信范围。

在RFID系统中,阅读器与标签是分开的,通过无线射频信号在前向信道与反向信道中传输,而阅读器与后台数据库是相连接的,阅读器可以从后台数据库中获取数据。此外,阅读器与数据库都具有微处理器,具有较大的计算能力与存储空间。但是,低成本标签通常不具有微处理器,仅由数千个逻辑门电路组成,其计算速度、通信能力与存储空间都非常有限。

因此,针对低成本标签的RFID系统,本发明提出阅读器与标签的双向认证方法与系统是基于极小加密算法实现的。极小加密算法(Tiny Encryption Algorithm,TEA)是一种对称密钥加密算法,具有占用存储空间小,同时,此算法不采用转换矩阵,不需要标签具有较大的存储空间,适用于与低成本标签。此外,TEA算法采用128位密钥对数据明文最少进行32轮迭代(推荐进行64轮迭代),具有计算速度快以及抗差分性能好的特点。

以TEA采用128位密钥对64位明文数据进32轮迭代加密得到64位密文为例,介绍TEA加密的过程,其过程如下:

(1)参数初始化

将64位明文数据分为x和y两部分,各占32位;

将128位密钥分为4部分,分别为a、b、c、d,每部分各占32位;

参数δ=0x9E3779B9,Sum=0。

(2)对明文数据进行32轮迭代运算过程为:

Sum=Sum+δ;

其中,“<<”表示按位左移,“>>”表示按位右移,表示异或操作。

将第(2)步中的x和y合并得到64位密文。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

实施例1

为了使本技术领域的人员对RFID系统中阅读器与标签之间基于极小加密算法进行双向认证有更好地了解,下面详细介绍RFID系统中阅读器与标签之间基于极小加密算法进行双向认证的步骤。

请参阅图2,是本发明实施例中阅读器与标签采用极小加密算法进行双向认证的流程图,具体步骤可以包括:

步骤S200:首先,阅读器向标签发送查询命令,此查询命令是本发明进行双向认证的第一步。当阅读器需要与标签进行双向认证时,阅读器首先向标签发送查询命令。

例如,将本发明提出的RFID系统中阅读器与标签进行双向认证的方法与系统应用于统计公司固定资产的管理中,将所有公司的资产都分别内置RFID系统的标签,RFID系统的阅读器与数据库相连接,在该数据库中存有公司所有固定资产的相关信息。当公司需要统计现在公司的所有固定资产时,阅读器向所有标签发送查询命令,提示与标签进行双向认证,以实现对标签的识别,进而实现对现有固定资产的统计。

在RFID系统中有多个标签,下面以阅读器与一个标签进行双向认证的方法进行介绍,阅读器与其余标签的双向认证方法与此方法类似。

步骤S201:所述标签采用哈希算法对标签标识符与标签认证码进行计算,得到令牌信息;其中,所述令牌信息是所述标签在接收所述阅读器发送的查询命令后计算得到的;

标签接收此查询命令后,采用字符串拼接符“‖”将标签标识符“ID”与标签认证码“P”进行拼接,得到拼接字符“ID‖P”。其中每个标签有两个可选的标签标识符分别为ID0与ID1。其中,ID0与ID1都可以被标签生成拼字符,如果选定其中一个,在以后每次与阅读器进行认证时,都使用此标签标识符。例如,在标签初次与阅读器进行认证的过程中,选用ID0作为生成拼接字符的“ID”,那么在以后每次认证过程中一直使用ID0,并且ID0与ID1在每次的认证过程中都会被更新;

标签认证码是本发明为了实现阅读器与标签的双向认证,在标签以及后台数据库中增加的内容,标签认证码用于标签生成令牌信息,此标签认证码不会被更新,是与标签一一对应的。接着,标签采用哈希算法对拼接字符“ID‖P”进行计算,得到令牌信息。

步骤S202:标签将所述令牌信息发送给所述阅读器。

阅读器接收标签发送的令牌信息,以便后续将此令牌信息发送给数据库。

步骤S203:所述数据库根据所述阅读器发送的所述令牌信息获取所述标签对应的共享密钥。

具体的,阅读器接收标签发送的令牌信息,并将此令牌信息发送给数据库。

数据库根据此令牌信息获取该标签对应的共享密钥的具体步骤包括:步骤A1~A4。

步骤A1:数据库接收阅读器发送的令牌信息。

步骤A2:数据库从存储表中查找与所述令牌信息对应的索引号,所述存储表中包括所有标签对应的令牌信息与索引号,所述存储表保存在所述数据库中。

在数据库中保存有存储表,此存储表中包括所有标签的信息,每个标签对应存储表中的一条记录,此记录内容含有:(ID0,H(ID0//P),ID1,H(ID1//P),data)。

其中,ID0与ID1分别表示H(ID0//P)与H(ID1//P)的索引号,在存储表中为每个标签分别预留ID0与ID1,数据库通过从存储表中查找接收的令牌信息,来确定使用预留的ID0或ID1,在每次的认证过程中ID0与ID1被更新;“data”表示标签的私密信息数据,如货物价格、货物产地等需要保密的数据;在初始化时,ID0=ID,ID1=0。

数据库根据接收阅读器发送的令牌信息,从存储表记录中获取所述令牌信息对应的索引号。

步骤A3:数据库利用所述索引号获得所述共享密钥。

数据库采用得到的索引号按照与标签约定好的方式获得共享密钥,此共享密钥的获取方式是标签与数据库约定的,标签与数据库之间获得共享密钥的方式:

方式一:在进行RFID系统中阅读器与标签双向认证前,标签厂商已经将共享密钥写入标签中,每个标签有多个共享密钥,共享密钥已经完成排序,每次进行认证时按照顺序使用共享密钥生成第二密文与第三密文,并且将此标签的多个排序的共享密钥保存在后台数据库中,数据库根据标签发送的令牌信息查找到索引号后按照认证的次数与共享密钥的顺序,来确定本次认证的共享密钥,此时,在每次阅读器与标签认证的过程中,数据库选取的共享密钥与标签所使用的共享密钥是相同的。

方式二:标签在每次认证中生成令牌信息的同时生成共享密钥,标签采用非对称加密算法并利用公钥将此共享密钥加密得到加密的共享密;数据库根据此标签的私钥对加密的共享密钥解密得到所述共享密钥,。

需要说明的是,采用此种密钥共享的方式,需要阅读器与标签进行双向认证之前,数据库中已存有与所有标签相对应的非对称密钥算法的私钥,数据库利用该私钥对接收的加密共享密钥解密得到该标签的共享密钥,并且数据库中每个标签的索引号与该标签所对应的非对称密码算法的私钥是对应的。

标签与数据库间采用此种密钥共享的方式,需要阅读器向数据库发送令牌信息的同时,将标签加密的共享密钥也发送给数据库。数据库根据该令牌信息在数据库中对应的索引号,查找到该标签所对应的私钥,数据库利用此私钥解密加密的共享密钥来获取共享密钥。

需要说明的是,以上的标签与数据库获取共享密钥的方式只是本发明实施例给出的两种方式,还存在其他的方式,实际应用中,应根据标签的存储空间与计算能力等性能来确定标签与数据库获取共享密钥的方式。

在数据库获的该标签对应共享密钥后,数据库将该标签对应的索引号与第一随机数进行异或,将得到的异或结果替换存储表中另外一个索引号。

例如,数据库的存储表中保存有标签的信息(ID0,H(ID0//P),ID1,H(ID1//P),data)。ID0与ID1是为该标签预留的两个索引号,数据库根据接收的令牌信息,得到存储表中的H(ID0//P)与该令牌信息相同,则数据根据H(ID0//P)对应的索引号ID0获得了该标签的共享密钥后,采用公式来更新ID1与H(ID1//P)。

步骤S204:所述数据库将所述共享密钥、第一随机数和第二随机数发送所述阅读器,所述第一随机数与所述第二随机数由所述数据库生成;

数据库生成第一随机数与第二随机数,并将此第一随机数与第二随机数以及步骤S203获取的共享密钥发送给阅读器。具体的,数据库可以采用随机数发生器来生成两个不同的随机数分别作为第一随机数和第二随机数,需要说明的是第一随机数与第二随机数的长度与需要更新的索引号的长度相同。

步骤S205:所述阅读器采用极小加密算法,并利用所述共享密钥对所述第一随机数加密得到第一密文;

阅读器接收数据库发送的第一随机数、第二随机数以及共享密钥。阅读器采用内置的极小加密算法,并利用共享密钥对第一随机数加密得到第一密文。具体的,本领域技术人员在不付出创造性劳动的情况下,很容易依据所述极小加密算法采用128位密钥对64为明文数据进行32轮迭代加密得到64位密文的加密方法为例,得到阅读器以极小加密算法采用共享密钥对第一随机数加密的得到第一密文,在这里对阅读器生成第一密文不在赘述。

步骤206:所述阅读器将所述第一随机数、所述第二随机数与所述第一密文发送所述标签;

阅读器将步骤S205加密得到的第一密文、第一随机数以及第二随机数发送给标签。

步骤S207:所述标签比较所述第一密文与第二密文,所述第二密文由所述标签采用所述极小加密算法,并使用所述共享密钥对所述第一随机数加密得到,若所述第一密文与所述第二密文相同,则所述标签对所述阅读器认证通过;

标签接收阅读器发送的第一密文、第一随机数以及第二随机数;标签采用其内置的极小加密算法,并利用共享密钥对接收的第一随机数进行加密得到第二密文,具体的,标签加密第一随机数得到第二密文的方法,与阅读器加密第一随机数得到第一密文的方法相同。

标签比较第一密文与第二密文,若两者相同,则标签对阅读器的认证通过,若两者不同,则结束认证流程。

需要说明的是,标签对第一密文与第二密文比较完后,采用公式来刷新标签中两个可选的标签标识符ID0与ID1,公式中,X的取值为1或0,RA为所述的第一随机数。例如,在标签与阅读器认证过程中,标签采用ID0来生成令牌信息,此时,根据公式来更新标签的两个备选标签标识符,在以后标签与阅读器进行认证的过程中,标签采用更新的ID0来生成令牌信息。

步骤S208:所述标签将第三密文发送所述阅读器,所述第三密文由所述标签采用极小加密算法,并使用所述共享密钥对所述第二随机数加密得到;

标签采用内置的极小加密算法,并利用共享密钥对第二随机数加密得到第三密文,将此第三密文发送给阅读器。其中,标签对第二随机数加密得到第三密文的方法与阅读器对第一随机数加密得到第一密文的方法类似,这里不再赘述。

步骤S208:所述阅读器比较所述第三密文与第四密文,所述第四密文由所述阅读器采用所述极小加密算法,并使用所述共享密钥对所述第二随机数加密得到,若所述第三密文与所述第四密文相同,则阅读器对所述标签认证通过。

阅读器接收标签发送的第三密文,采用极小加密算法并利用共享密钥对第二随机数加密得到第四密文,此处的共享密钥是在步骤S204中数据库发送给阅读器的共享密钥。其中,阅读器对第二随机数加密得到第四密文的方法与标签对第二随机数加密得到第三密文的方法类似,这里不再赘述。

接着,阅读器比较第三密文与第四密文,若两者相同,则阅读器对标签的认证通过,若两者不同,则结束阅读器与标签间的认证过程。

从上述实现双向认证的步骤中可以看出,通过此双向认证后,阅读器与标签间传输的数据可以是通过极小加密算法加密后的数据,根据极小加密算法的特性,在没有共享密钥的情况下,不可能获得数据,因此,攻击者如果想要获得此数据必须要有共享密钥,而共享密钥只有存在于数据库与标签中,如果想从数据库中获取此共享密钥,需要得到令牌信息中的索引号,即便攻击者窃取都令牌信息,根据哈希函数的特性,也无法根据令牌信息恢复出该标签对应的索引号,进而不可能获得共享密钥,所以阅读器与标签通过本发明的双向认证后,可以保证传输数据的秘密性。

同时,在上述实现双向认证的步骤中,标签采用哈希函数计算明文数据得到令牌信息,根据哈希函数的特性,如果明文数据改变1bit,得到的哈希函数值将产生巨大的变化,同样,反过来,如果对哈希函数值改变1bit,无法得知对应的明文数据是什么。同样,如果更改TEA加密得到密文1bit,将导致解密出的数据与原始的数据有很大的差异。因此,本发明实施例提供的方法可以保证双向认证过程中阅读器与标签间传输数据的完整性,如果认证过程中遭到攻击者对数据的篡改,则标签与阅读器不会实现双向认证。

并且,在阅读器与标签间进行双向认证的过程中,只有阅读器与标签知道共享密钥,当标签接收阅读器发送的第一密文时,通过第二密文与第一密文的比较,可以判定出此第一密文是真实的阅读器发送的;同理,阅读器接收标签发送的第三密文,通用第三密文与第四密文的比较,阅读器可以判定此第三密文是真实的标签发送的,证明阅读器与标签之间的应答数据是对另一方询问的回应,通过两者的认证后,可以保证数据的真实性。

进一步的,由于在认证的过程中,标签对第一密文与第二密文进行比较后,对该标签生成令牌信息所使用的标识符进行了更新,使得在每次认证过程中标签发出的令牌信息均与前次不同,并且令牌信息之间没有联系。因此,通过标签对标识符刷新的方法可以保护用户的隐私。同时,在认证的过程中,数据库存储表中为每个标签预留两个索引号,在每次的认证过程中数据库对接收令牌信息所对应的索引号不更新,只更新与令牌信息不对应的索引号,使得无论本次认证过程中标签是否对生成令牌信息所使用的标识符进行更新,在下一次认证过程中,都可以在数据库存储表中找到该令牌信息对应的索引号,进而数据库获取共享密钥,实现双向认证的过程。因此本发明实施例解决了由于数据库更新索引号标签更新标识符所带来失步的问题。

并且,即便攻击者在阅读器与标签进行下一次通信,能够冒充标签来向阅读器重新发送之前窃听到的令牌信息,以便后续标签对阅读器认证能够通过,但是,由于本次认证过程中,数据库向阅读器发送的随机数已经发生了改变,在阅读器对标签认证的过程中,攻击者向阅读器发送的随机数还是上次通信窃听到的随机数,与本次数据库向阅读器发送的随机数不同,因此,阅读器对标签的认证不会通过,使得本次阅读器与标签间的双向认证失败,进而攻击者不能得到后续标签与阅读器间传输的数据,可见,本发明的双向认证实现了对攻击者重放攻击的防范。

更进一步的,因为本发明实施例中标签生成令牌信息的标识符是变化的,即便,攻击者可以交换两个合法标签的标识符,形成置换攻击,但是,两个标签所对应的认证码是不会随着置换两个标签的标识符而改变,因此,标签根据置换的标签标识符与认证码生成的令牌信息,不会存在于数据库的存储表中,进而不会实现标签与阅读器间的双向认证,实现了对攻击者置换攻击的防范。

综上,本发明实施例通过以上步骤实现阅读器与标签的双向认证,可以实现阅读器与标签间传输数据的秘密性、完整性、真实性以及提高对各种恶意攻击的防范性。

实施例2

对于阅读器想要获取目标对象的数据,此目标对象中内置有RFID系统的标签,比如RFID系统应用于高速公路(路桥)不停车收费管理中,在高速公路收费站中安装有RFID系统中的阅读器与数据库,在车辆中内置有RFID系统的标签,当车辆通过此收费站时,阅读器以标签首先进行双向认证,通过双向认证后,收费站收取车辆的费用,可以实现不停车收费。

请参阅图3,是本发明实施例中收费站收取车辆费用的流程图,具体步骤可以包括:

步骤S301:所述阅读器向所述标签发送无线射频信号,所述标签集成于目标对象中。

车辆中集成有RFID系统的标签,收费站内安装有RFID系统的阅读器与数据。当车辆经过收费站时,收费的阅读器向车辆中的标签发送进行双向认证的无线射频信号。

步骤S302:所述阅读器根据所述标签的反馈信号,获取所述目标对象的数据;

标签收到阅读器发送进行双向认证的无线射频信号后,按照实施例1的方法,阅读器与标签进行双向认证。若收费站的阅读器与车辆中的标签之间的双向认证通过后,车辆的标签向阅读器反馈车辆对应的账户名称,收费站在车辆的账户中自动提取车辆应付的费用,从而实现高速公路(路桥)不停车收费管理。

本发明实施例中,首先公路收费站安装有RFID系统的阅读器与数据库,通过收费站的车辆中安装有RFID系统的标签。然后,当车辆通过收费站时,阅读器与标签进行双向认证。最后,阅读器与标签双向认证通过后,阅读器获取车辆的账户名称,进而获取该车辆应支付的费用。实现了高速公路(路桥)不停车收费管理。

实施例3

本发明实施例公开了一种认证的系统,该系统包括:阅读器、标签和数据库,所述数据库与所述标签具有共享密钥。

该系统的标签包括:计算单元、第一发送单元、比较单元与第二发送单元,请参见图4,包括:

计算单元401:用于采用哈希算法对标签标识符与标签认证码进行计算,得到令牌信息;其中,所述令牌信息是所述标签在接收所述阅读器发送的查询命令后计算得到的;

第一发送单元402:用于,将所述令牌信息发送所述阅读器;

比较单元403:用于,比较所述第一密文与第二密文,所述第二密文由所述标签采用所述极小加密算法,并使用所述共享密钥对所述第一随机数加密得到,若所述第一密文与所述第二密文相同,则所述标签对所述阅读器认证通过;

第二发送单元404:用于将第三密文发送所述阅读器,所述第三密文由所述标签采用极小加密算法,并使用所述共享密钥对所述第二随机数加密得到;

该系统中的数据库包括获取单元与发送单元,请参见图5,具体包括:

获取单元501,用于根据所述阅读器发送的所述令牌信息获取所述标签对应的共享密钥;

发送单元502,用于将所述共享密钥、第一随机数和第二随机数发送所述阅读器,所述第一随机数与所述第二随机数由所述数据库生成;

该系统中的阅读器包括加密单元、发送单元与比较单元,参见图6,具体包括:

加密单元601,用于采用极小加密算法,并利用所述共享密钥对所述第一随机数加密得到第一密文;

发送单元602,用于将所述第一随机数、所述第二随机数与所述第一密文发送所述标签;

比较单元603,用于比较所述第三密文与第四密文,所述第四密文由所述阅读器采用所述极小加密算法,并使用所述共享密钥对所述第二随机数加密得到,若所述第三密文与所述第四密文相同,则阅读器对所述标签认证通过。

可选的,本发明实施例中,所述系统标签中的计算单元401采用哈希算法对标签标识符与标签认证码进行计算,得到令牌信息时,具体包括:

拼接模块,用于采用字符串拼接符,对所述标签标识符与所述标签认证码进行拼接,得到拼接字符;

计算模块,用于采用所述哈希算法计算所述拼接字符,得到所述令牌信息。

可选的,本发明实施例中,所述的获取单元501根据所述阅读器发送的所述令牌信息获取所述标签对应的共享密钥时,具体包括:

接收模块,用于接收阅读器发送的令牌信息;

查找模块,用于从存储表中查找与所述令牌信息对应的索引号,所述存储表为每个标签预留两对索引号与令牌信息,所述两对索引号与令牌信息中包含标签发送的令牌信息,所述存储表保存在所述数据库中;获取索引号模块,用于获取所述令牌信息对应的索引号;

获取共享密钥模块,用于利用所述索引号获得与所述索引号对应的共享密钥。

可选的,本发明实施例中,所述数据库还包括:

计算单元,用于计算所述索引号与第一随机数的异或结果,所述第一随机数由数据库生成;

更新单元,用于利用所述异或结果更新存储表中另一对索引号与令牌信息。

本发明系统实施例公开了一种RFID系统中阅读器与标签间双向认证的系统,该系统通过标签中的计算单元、第一发送单元、比较单元与第二发送单元,通过数据库中的获取单元与发送单元以及阅读器中的加密单元、发送单元与比较单元,实现阅读器与标签的双向认证。

实施例4

本发明实施例公开了一种应用RFID系统实现阅读器获取标签的数据的系统,参见图7,该系统中的阅读器还包括:

发送无线射频信号单元701,用于向所述标签发送无线射频信号,所述标签集成于目标对象中;

获取目标对象数据单元702,用于根据所述标签的反馈信号,获取所述目标对象的数据。

本发明系统实施例公开了一种应用RFID系统实现阅读器获取标签数据的系统,该系统首先实现阅读器与标签间的双向认证;然后,通过双向认证后,阅读器获取标签中的数据。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

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