选择在设备中登记的多个数据集之一的方法以及相应设备的制作方法

文档序号:7947806阅读:146来源:国知局
专利名称:选择在设备中登记的多个数据集之一的方法以及相应设备的制作方法
技术领域
本发明涉及一种选择在设备中登记(register)的多个数据集之一的方法。
本发明还涉及一种设备,用于向远程设备呈现(present)在该设备中登记的多个数据集之一,以及涉及一种远程设备本身。
背景技术
诸如智能卡和RFID(“射频识别”)标签之类的识别产品被广泛用于多种领域,例如交通(检票、收过路费、行李标记)、金融(借记卡和信用卡、电子钱包、商业卡)、通信(GSM电话的SIM卡)、以及跟踪(访问控制、库存管理、资产跟踪)。国际标准ISO14443A是非接触智能卡的工业标准。服从ISO14443A的产品比如MIFARETM提供了用于在卡或标签与读取器设备之间传送数据的RF通信技术。例如,在公共交通的电子检票中,旅行者仅仅在旋转式栅门或入口点处的读取器上挥动他们的卡,从而受益于在检票过程中改善的便利性和速度。这种产品被设定为在未来支持多应用的个体流动性的关键,所述应用包括收过路费、机票、访问控制和更多。
从非接触识别和连网技术的组合发展而来的近场通信(NFC)是非常短距离的无线技术,例如以厘米为单位进行测量,并且被优化用于没有用户配置的各种设备之间的直观、容易和安全的通信。为了使两个设备通信,用户使它们靠近在一起或者甚至使它们接触。设备的NFC接口将自动连接并配置它们自己以形成对等网络。NFC还可以通过交换配置和会话数据来引导类似于BluetoothTM或无线以太网(WiFi)的其它协议。NFC与非接触智能卡平台兼容。这使得NFC设备能够从这些卡中读取信息,从而使非接触智能卡成为把信息和凭证带入NFC世界中的理想解决方案。NFC接口现在被广泛用于移动电话和其它移动设备。
从WO 01/93212和WO 04/57890得知这种设备还能够模拟若干智能卡。当特定应用需要被使用时,例如地铁检票,该设备可以把该应用呈现给相应读取器。所以,例如移动电话可以被用户用来替代所有他们的非接触智能卡,从而使移动电话变成通用钥匙和钱包。然而,为了选择应用,设备的用户必须在设备上对必须模拟哪个卡进行选择。这不是用户友好的,并且被看成是在接受能够模拟若干智能卡的设备时的主要障碍。

发明内容
本发明的目的是提供一种在开头段落中限定的类型的方法、以及在第二段中限定的类型的设备和远程设备,其允许把应用自动地呈现给诸如读取器之类的远程设备而不需要用户干预。
为了实现上面限定的目的,利用根据本发明的方法提供了特有特征,以使根据本发明的方法可以以下面限定的方式来表征,也就是一种选择在设备中登记的多个数据集之一的方法,其中在选择之后,由该设备把所述一个数据集呈现给远程设备,以及其中每个数据集与一个特定密钥相关联,该方法包括以下步骤a)加密交换信息a1)在所述设备中使用与数据集关联的多个密钥中的一个密钥,并且向远程设备发送加密的交换信息,或a2)在所述远程设备中使用在远程设备中存储的密钥,并且向所述设备发送加密的交换信息,b)解密加密的交换信息b1)在步骤a1)之后,在所述远程设备中使用在远程设备中存储的一个密钥,或b2)在步骤a2)之后,在所述设备中使用与数据集关联的多个密钥中的一个密钥,c)将交换信息与根据步骤b)解密的交换信息进行比较,以及d)如果比较的结果为真,则所述设备把数据集呈现给远程设备,或者如果所述比较为假,则使用与步骤a1)或步骤b2)中的另一数据集关联的密钥来执行步骤a)-d)。
为了实现上面限定的目的,利用根据本发明的设备提供了特有特征,以使根据本发明的设备可以以下面限定的方式来表征,也就是
一种用于把利用设备记录的多个数据集之一呈现给远程设备的设备,其中每个数据集与一个特定密钥相关联,以及其中所述设备包括利用与数据集关联的密钥之一加密交换信息的装置;向远程设备传送加密的交换信息的装置;从所述远程设备接收解密的交换信息的装置;将交换信息与解密的交换信息进行比较的装置;以及与比较装置交互来选择一个数据集的装置。
此外,为了实现上面限定的目的,利用根据本发明的设备提供了特有特征,以使根据本发明的设备可以以下面限定的方式来表征,也就是一种用于把在设备中登记的多个数据集之一呈现给远程设备的设备,其中每个数据集与一个特定密钥相关联,以及其中所述设备包括生成交换信息的装置;把交换信息传送给远程设备的装置;从所述远程设备接收加密数据的装置;利用与数据集关联的密钥之一解密所述加密的信息的装置;将交换信息与解密的交换信息进行比较的装置;以及与比较装置交互来选择一个数据集的装置。
为了实现上面限定的目的,利用根据本发明的远程设备提供了特有特征,以使根据本发明的远程设备可以以下面限定的方式来表征,也就是一种被提供用来与一个设备通信的远程设备,该设备被安排成用于把在该设备中登记的多个数据集之一呈现给所述远程设备,包括生成交换信息的装置;把交换信息传送给所述设备的装置;从所述设备接收加密数据的装置;利用在远程设备中存储的密钥解密所述加密的信息的装置;将交换信息与解密的交换信息进行比较的装置;以及向所述设备发送比较装置的结果的装置。
此外,为了实现上面限定的目的,利用根据本发明的远程设备提供了特有特征,以使根据本发明的远程设备可以以下面限定的方式来表征,也就是一种被提供用来与一个设备通信的远程设备,所述设备被安排成把在该设备中登记的多个数据集之一呈现给所述远程设备,包括利用在远程设备中存储的密钥加密交换信息的装置;向所述设备传送加密的交换信息的装置;从所述设备接收解密的交换信息的装置;将交换信息与解密的交换信息进行比较的装置;以及向所述设备发送比较装置的结果的装置。
根据本发明的特有特征提供了不再需要用户必须手动选择设备上的应用的优点,因为由于所提出的设备与远程设备之间的通信,所述设备自动地确定哪个应用或对应于某个应用的哪个数据必须被呈现给远程设备。
所提出的方法以及设备的重要优点在于,密钥从不出现在理论上可以被探出的无线通信中。
在根据本发明的方法的第一实施例中,提供了由所述设备执行以下步骤-生成交换信息;-根据步骤a1)加密所述交换信息;-从所述远程设备接收解密的交换信息;-根据步骤c)比较交换信息;以及-如果比较的结果为真,则把数据集呈现给远程设备;或者如果所述比较为假,则从使用与步骤a1)中另一数据集关联的密钥的生成或加密的步骤重新开始。
这些措施提供了以下优点由于在设备中生成交换信息的事实,可以减少设备与远程设备之间的通信,这有助于节省时间和增加安全性。然而应当注意,在远程设备上创建交换信息原则上是可能的。
在根据本发明的方法的甚至更有利的实施例中,提供了由所述设备执行以下步骤-生成交换信息并将其传送给远程设备;-从所述远程设备接收加密的交换信息;-根据步骤b2)解密所述加密的交换信息;-根据步骤c)比较交换信息;以及-如果比较的结果为真,则把数据集呈现给远程设备;或者如果所述比较为假,则从使用与步骤b2)中另一数据集关联的密钥的生成或解密的步骤重新开始。
本发明的该实施例提供了所述设备与远程设备之间的通信(由所述设备发送交换信息和由远程设备发送加密的信息)必须进行仅一次的进一步优点,因为利用不同密钥的后续解密仅仅在所述设备中进行。
当交换信息是随机数时,可以改善所述设备与远程设备之间通信的安全性。把随机数用作交换信息提供了使所谓的“重放攻击”不可能的优点。
根据特定应用的不同数据集在所述设备中被“登记”。术语“登记”是指数据集不必被直接存储在所述设备中,而是还可以例如被存储在(另一)远程设备比如远程服务器中,其中在被选择之后从该远程服务器中检索必需的数据集。此外,还可以想象得到,与数据集关联的密钥没有被存储在设备中,而是在需要时进行下载。
然而,在本发明的有利实施例中,提供了把多个数据集和/或关联密钥存储在设备中。
利用这些措施实现了下述优点当两个设备接触时,可以立即开始该设备与远程设备之间的所提出的交互。然后建立与远程服务器的可能慢的和不稳定的连接是不必要的。此外,应当注意,在某些情形下(地铁、飞机等),因为网络是不可用的,所以可能发生不能建立与远程服务器的连接。因此,当数据集和相应密钥被存储在设备中时,这是特别有利的。
如上所述,所提出的方法以及设备的优点是,密钥从不出现在与理论上可以被探出的远程设备的无线通信中。然而,为了进一步改善安全性,以安全方式把数据存储在设备中是有利的,例如以避免用户或他人对数据的未经授权的访问。
尤其是特定解决方案的措施,即数据集以加密形式被存储在设备的第一存储器中,利用关联密钥来解密根据步骤d)所选的加密数据集,把解密的数据集存储在设备的更抗篡改的第二存储器中,这提供了以下优点一方面有可能使用大的便宜的第一存储器来永久地存储加密数据,以及使用小的昂贵的第二存储器来在要使用解密的数据时临时地存储该解密的数据。该第二存储器可以由几个应用来共享,这降低了技术工作量和成本。
根据本发明,表示智能卡应用的加密数据现在被解密,并且被有利地装载到第二存储器中。
对于上述加密过程,可以使用非对称加密,这意味着必须使用私有密钥和公用密钥。因而,交换信息可以利用私有密钥加密并利用公用密钥解密,反之亦然。对称加密也是适用的。
然而,在远程设备中存储的密钥与在设备中存储的密钥之一是相同的,此措施提供了以下优点读取器与标签之间的公知通信可以用于本发明的目的,这意味着只须实施比非对称加密情况更少的变化,并且现有技术的读取器通常可以用于本发明的目的。
有利的是,上述第二存储器和/或所述解密装置是NFC接口的一部分。如上所述,NFC技术是从非接触识别即RFID技术和互连技术的组合发展而来的。NFC在通常为几厘米的距离上工作于13.56MHz频率范围,但是工程师还研制工作于高达1m的更大距离的系统。NFC技术在ISO 18092、ECMA 340和ETSI TS 102 190中被标准化。NFC还兼容基于ISO 14443广泛建立的非接触智能卡基础设施。NFC接口通常已经包括抗篡改存储器以及加密/解密模块。因此,使用这些模块来用于本发明是有利的。
进一步有利的是,第一存储器被另外安排成存储用于操作所述设备的功能。设备通常包括非保密的主存储器,用于存储设备的操作系统。在该实施例中,加密数据以及用于操作系统的功能被存储在第一存储器中。因此,以协同方式使用第一存储器。
最后有利的是,所述第二存储器被安排成存储所述密钥。对于一些应用,当把用于解密加密的数据的密钥存储在设备本身中时是有益的。在此情况下,所述密钥应当被存储在抗篡改第二存储器中以避免对加密数据的滥用。


根据下文将要描述的实施例的例子,本发明的上面限定的方面和更多方面是显而易见的,并将参考实施例的这些例子对其进行解释。现在借助于示出本发明的有利实施例的附图来更详细地解释本发明。注意,这些例子不会是用来使本发明的宽范围变窄。
图1示出服务初始化以及加密数据的使用。
图2示出用于建立服务的替代实施例。
图3示出根据本发明选择多个加密数据集之一的方法的第一实施例。
图4示出根据本发明选择多个加密数据集之一的方法的第二实施例。
图5示出RFID标签与读取器之间的标准识别过程。
图6基于根据图5的RFID标签的标准识别再次示出如图4所示的方法的第二实施例。
图7-10示出根据本发明的方法的不同变形的概观。
具体实施例方式
图1和图2示出一种设备和方法,其中可以以解密的格式使用在设备DEV中存储的加密数据DATenc,而不向设备DEV的所有者提供对所述解密数据DAT的访问。这种设备DEV可以有利地供本发明使用。特别地,图1示出一种安排,包括设备DEV以及由服务器SER和读取器RD构成的两个远程设备。所述设备DEV在该实例中是移动电话或者PDA,它包括第一存储器MEM1和更抗篡改的第二存储器MEM2以及加密/解密模块ENC/DEC。该实例中的所述第一存储器MEM1假定是用于操作系统和供设备DEV使用所需的其它数据的存储器。由于通常没有或者仅有较小程序来保护设备DEV的主存储器被滥用,因此改变在这种存储器中存储的数据通常是非常容易的。因此,敏感数据,例如在移动电话情况下的IMSI(国际移动用户标识),被存储在抗篡改存储器中,例如被存储在SIM(用户识别模块)中。另一实例是越来越成为移动电话的一部分或者被移动电话分别模拟的智能卡。在该情况下,还必须提及根据用于近场通信(NFC)的标准来操作的接口。该接口实现与读取器RD的短距离通信,并且通常还包括抗篡改存储器以及用于加密和解密的装置。因此,该实例假定第二存储器MEM2和加密/解密模块ENC/DEC是NFC(近场通信)接口INT的一部分。
该安排的功能如下在第一步骤中,也能够根据NFC标准通信的读取器RD向设备DEV发送加密数据DATenc(实线)。在本情况下,加密数据DATenc表示用于公共交通中检票的应用,该应用在可以使用前被安装在设备DEV中。一旦接收到加密数据DATenc,因此就把所述加密数据DATenc存储在第一存储器MEM1中。
可选择地,服务器SER还可以提供加密数据DATenc。这由图中从服务器SER到设备DEV的虚线来指示。在此情况下,假设服务器SER是因特网的一部分,并且保持上述的应用。根据请求,可以经由比较快(和非保密)的因特网连接来下载加密数据DATenc。所述请求可以由设备DEV直接发送给服务器SER或者通过读取器RD发送给服务器SER。
原则上,设备DEV现在随时可以被使用。因此,当设备DEV在读取器RD的附近时,在第二步骤,密钥K从读取器RD被发送给设备DEV(实线)。在第三步骤中,从第一存储器MEM1读取加密数据DATenc,并且借助于加密/解密模块ENC/DEC和从读取器RD接收的密钥K对其进行解密。在第四步骤中,该解密结果,即数据DAT被存储在第二存储器MEM2中。现在设备DEV与读取器RD之间的通信可以进行,因为它可以从现有技术系统中得知。数据DAT也可以包括变量和代码。
在一个替代实施例中,密钥K在服务初始化期间被存储在设备DEV中,这意味着从读取器RD或服务器SER接收到加密数据DATAenc。加密数据DATAenc可以经由如上所述的非保密通信信道进行发送。唯一的限制是把密钥k保密。因此,小密钥K经由慢但安全的近场通信(点划线)进行发送并被存储在第二存储器MEM2中。
原则上,设备DEV现在随时可以被再次使用,其中例如可以人工启动过程,而不是由读取器RD远程启动过程。此外,与上述的方法相反,密钥k不是从读取器RD接收,而是从第二存储器MEM2被发送到加密/解密模块ENC/DEC。加密数据DATenc再次被解密,并且此解密的结果即数据DAT被存储在第二存储器MEM2。设备DEV与读取器RD之间的通信可以如前所述那样进行。
设备DEV与读取器RD之间的通信信道假设是安全的。而且,第二存储器MEM2如前所述是抗篡改的。因此,误用密钥k来滥用地改变加密数据DATAenc以及例如买票而不付款是不可能的。该方法的优点在于,通常使用大存储空间的应用可以被存储在便宜的标准存储器中,并且被临时装载到昂贵的抗篡改第二存储器MEM2中,如后面更详细解释的那样,可以以这种方式在若干服务之间共享第二存储器MEM2。
图2示出本发明设备DEV的替代实施例。设备DEV被再次示出为与由服务器SER和读取器RD构成的两个远程设备相结合。除了图1外,设备DEV还包括随机数发生器RAND,它是NFC的接口INT的一部分。
图2的安排的功能如下首先,未加密数据DAT经由短距离通信从读取器RD被发送给设备DEV,并在那里被存储在第二存储器MEM2中(实线)。在第二步骤中,随机密钥K通过随机数发生器RAND生成,并且被存储在第二存储器MEM2中,以及被发送给加密/解密模块ENC/DEC。在第三步骤中,数据DAT借助于加密/解密模块ENC/DEC利用所述密钥K加密。最后,作为该步骤的结果,即加密数据DATenc在第四步骤中被存储在第一存储器MEM1中。
此外,还可以由服务器SER发送数据DAT(虚线)。与图1的实施例相反,这里,安全通信信道应当存在于服务器SER与设备DEV之间,因为数据DAT未被加密。还可以想象得到,数据DAT经由抗篡改通信信道(例如借助于公司内部网络)从服务器SER被发送给读取器RD(点划线),然后经由短距离无线通信链路被发送给设备DEV。
下面的图3-10描述了把已经登记的、特别是在设备DEV中存储的多个应用之一呈现给读取器RD的方法的不同实施例。
图1和图2示出这样一种设备DEV,它能够用于把多个应用之一呈现给读取器RD的方法。此外,图1和图2解释了加密数据DATenc能够如何以解密格式被存储在这样的设备DEV中,而不向设备DEV的所有者(或其他人)提供对所述解密数据DAT的访问。由于这个原因,使用这种发明的设备DEV来用于如所要求和如在下文中(图3-6)所述的根据本发明的方法是有利的。
然而应当注意,使用不包括第一存储器MEM1和第二存储器MEM2的设备(类似于如上面在图1和图2中所述的设备DEV),如在下文中所述的根据本发明的方法原则上也是适用的。
此外,原则上不必使用如在下文中所述的加密数据DATenc或数据集DS1enc...DSnenc,以及根据本发明的方法也适用于在设备DEV中存储的未加密的数据(集)。然而,由于涉及加密数据DATenc的安全存储的上述原因,因此供该方法使用的数据(集)采用加密形式是有利的。因此,在下文中将使用加密数据DATenc来描述如在权利要求书中所要求的根据本发明的方法。然而,本发明的范围不限于加密数据集DS1enc...DSnenc的使用。
图3示出可以如何把某个应用呈现给远程设备(这里是以读取器RD的形式)的根据本发明的方法的第一实现。对于该实例,假设加密数据DATenc被划分成若干加密数据集DS1enc...DSnenc,它们表示不同的智能卡应用,一个用于公共交通,一个用于电影院检票,一个用于公司身份卡,等等。在图1或图2所示的初始化例程期间之前已经存储这些加密数据集DS1enc...DSnenc。以不同方式存储应用也是可能的,例如由设备DEV(例如移动电话)的供应商直接存储。每个加密数据集DS1enc...DSnenc具有存储在第二存储器MEM2中的关联密钥K1...Kn。与图2对比,设备DEV另外包括比较器COMP,以及读取器RD另外包括加密/解密模块ENC/DEC’。
图3的安排的功能如下当设备DEV在读取器RD附近时,它必须确定由加密数据集DS1enc...DSnenc表示的应用中的哪个应用必须被选择。
在第一步骤中,由设备DEV生成交换信息。当交换信息是由随机数发生器RAND生成的随机数时,这是有利的。
在第二步骤中,设备DEV利用多个密钥K1...Kn中的一个密钥Kx加密该随机数R。所述密钥Kx还用于解密关联的加密数据集DSx。接着,在第三步骤中,把加密随机数Renc发送给读取器RD。在第四步骤中,加密随机数Renc借助于读取器RD的加密/解密模块ENC/DEC’利用读取器密钥Krd解密。该操作的结果即读取器随机数Rrd随后被回送给设备DEV,并且在第五步骤中借助于比较器COMP将其与原始随机数R进行比较。
如果所述比较的结果为真,意味着随机数R和读取器随机数Rrd是相同的,则正确密钥Kx被找到(假设用于对称加密的正确操作)。然后,在第六步骤中,与所述密钥Kx关联的加密数据集Dsxenc借助于加密/解密模块ENC/DEC利用密钥Kx解密。在第七步骤中,解密的结果即数据DSx被存储在第二存储器MEM2中(虚线)。现在,设备DEV随时可供例如公共交通使用。
在随机数的比较为真的情况下,与设备DEV中加密数据集DSxenc关联的用来加密随机数R的密钥Kx和在读取器RD上用来解密加密的随机数R的密钥Krd是相同的,即Kx=Krd。这意味着正确的应用或数据集DSxenc被找到。
如果所述比较的结果为假,即如果随机数R和读取器随机数Rrd不相同,则设备DEV上使用的密钥Kx和读取器RD上使用的密钥Krd是不相同的,这意味着正确的数据集/正确的应用还未被找到。新的循环开始,随之使用生成的新随机数或者与已在第一循环中生成的相同的随机数R,用设备DEV上的新密钥来加密该随机数R。该加密的随机数被发送给远程读取器RD等。所述循环被递归地执行,直至上述比较的结果为真。
图4示出可以如何把某个应用呈现给读取器RD的根据本发明的方法的另一实现。再次假定加密数据DATenc被划分为若干加密数据集DS1enc...DSnenc,它们表示不同的智能卡应用,一个用于公共交通,一个用于电影院检票,一个用于公司身份卡,等等。在图1或图2所示的初始化例程期间之前已经存储这些加密数据集DS1enc...DSnenc。以不同方式存储应用也是可能的,例如如上所述,应用由设备DEV(例如移动电话)的供应商直接存储。
再次,每个加密数据集DS1enc...DSnenc具有在第二存储器MEM2中存储的关联密钥K1...Kn。与图2对比,设备DEV另外包括比较器COMP,以及读取器RD另外包括加密/解密模块ENC/DEC’。
图4的安排的功能如下当设备DEV在读取器RD附近时,它必须确定由加密数据集DS1enc...DSnenc表示的应用中的哪个应用必须被选择。
在第一步骤中,交换信息由设备DEV生成。当交换信息是由随机数发生器RAND生成的随机数R时,这再次是有利的。在第二步骤中,设备DEV把该随机数R传送给读取器RD。在第三步骤中,读取器RD利用在读取器RD中存储的密钥Krd加密该随机数R。在第四步骤中,读取器RD把加密随机数Renc’回送给设备DEV。在第五步骤中,借助于设备DEV的加密/解密模块ENC/DEC利用在设备DEV中存储的密钥K1...Kn中的一个密钥Kx解密该加密随机数Renc’,以及在第六步骤中,所得到的随机数R’在比较器COMP中与原始随机数R进行比较。
如果所述比较的结果为真,即原始随机数R和通过加密随机数Renc’的解密而接收的随机数R’是相同的,则用于设备DEV中解密的密钥Kx和用于读取器RD中加密的密钥Krd是相同的。这意味着要呈现给读取器RD的正确应用或数据集DSxenc被找到。然后在第七步骤中,与所述密钥Kx关联的加密数据集DSxenc借助于加密/解密模块ENC/DEC利用在设备DEV中的密钥Kx解密。在第八步骤中,解密的结果,即数据DSx被存储在第二存储器MEM2中(虚线)。设备DEV现在随时可以供例如公共交通使用。
正如上面已经提到的那样,在随机数的比较为真的情况下,在设备DEV中使用的用来解密加密的随机数Renc’的密钥Kx和在读取器RD中使用的用来加密原始随机数R的密钥Krd是相同的,即Kx=Krd。这意味着正确的应用或加密数据集DSxenc被找到。
如果所述比较的结果为假,即随机数R和R’不相同,则在设备DEV中使用的密钥Kx和在读取器RD上使用的密钥Krd是不相同的,这意味着正确的数据集/正确的应用还未被找到。在此情况下,在设备DEV中存储的另一密钥用来解密加密的随机数Renc’,并且所得到的随机数与原始随机数R进行比较。该过程进行重复,直至随机数R和R’相同,并且找到正确的应用。
如结合图4所述的方法提供了以下优点将随机数R加密成加密的随机数Renc’以及设备DEV与读取器RD之间的通信(发送随机数R和加密的随机数Renc’)必须进行仅一次,因为利用不同密钥的后续解密仅仅在设备DEV中进行。与此相反,如图3所述的方法使下述成为必需的,即如果在第一循环中不能找到正确的应用,则设备DEV与读取器RD之间的双向通信必须再次进行。
将参考图5和图6进一步描述如图4所述的方法。图5示出在应答器例如RFID标签TRA(它存储用于一个应用的数据和相应密钥K)与读取器RD之间的公知通信。通常,在任何通信可能发生之前RFID标签需要验证。图5示出这种交互。相互验证过程从读取器RD向标签TRA发送GET_CHALLENGE命令开始。然后在标签TRA中生成随机数R,并将其回送给读取器RD。读取器RD使用在读取器RD中存储的其秘密密钥Krd和公共算法来计算包含加密随机数Renc’和附加控制数据的加密数据块TK1,并把它回送给标签TRA。接收的加密数据块TK1在标签TRA中被解密,并且将在数据块TK1中包含的随机数R’与先前发送的随机数R进行比较。如果两个一致,则标签TRA检测到相同的密钥K=Krd在使用。标签TRA然后加密由读取器RD发送的控制数据,并且利用第二加密数据块TK2对其进行回送,从而允许读取器RD也证实相同的密钥K=Krd以类似的方式在使用。假设读取器RD还检测到相同的密钥K=Krd在使用,则最终在标签TRA与读取器RD之间的数据交换可以进行。
读取器RD与标签TRA之间的这种验证过程还用于如图4所述的根据本发明的方法。在图6中,图5的标签TRA由如图4所述的设备DEV比如移动电话或PDA来替代。不同的标签,例如地铁票、电影票等,在设备DEV中被登记。该登记包含加密数据集DS1enc...DSnec以及供验证使用的密钥K1...Kn。加密数据集DS1enc...DSnec被存储在安全存储器MEM1的数据库CDB中,如上面在图4中所述。密钥K1...Kn被存储在设备DEV的安全的更抗篡改的存储器MEM2中的密钥数据库KDB中。
当设备DEV被呈现给读取器设备DEV时,最初使用如参考图5所述的基本交互。在接收到加密数据块TK1之后,该交互分支成如图6所述的方案。
一旦读取器RD利用如图5所示的加密数据块TK1进行响应,则设备DEV从密钥数据库KDB中检索密钥Kx,并使用该密钥来解密加密的数据块TK1。设备DEV尝试一个接一个的密钥,直至找到正确的密钥,并且设备DEV把正确的数据集DSxenc(DSx)呈现给读取器,如在图4中更详细地所述。
在图3-6的说明中,假设了不同的应用即加密数据集DS1enc...DSnenc和相应密钥K1...Kn已经被存储在设备DEV中。然而,还可能出现应用仅仅在设备DEV中进行登记的情况。在此情况下,(加密)数据集DS1enc...DSnenc未被直接存储在设备DEV中,而是例如被存储在服务器SER中,如果设备DEV需要数据集,则可以从该服务器SER下载加密数据集DS1enc...DSnenc之一,例如如在图1和2中所述。在下载之后,下载的数据集DSxenc被存储在设备DEV中,然后由设备DEV呈现给远程设备RD。
在设备DEV是(移动)电话的情况下,有可能的是,设备DEV从登记的应用(标签)的远程数据库CDB中检索与特定应用关联的数据集。该数据集然后被装载到NFC硬件的工作存储器中。现在,该交互可以以操作的标准模式继续,因为设备DEV正在模拟仅仅一个标签TRA。
以密钥被存储在第二存储器MEM2中的顺序来尝试密钥K1..Kn不是必须的。还有可能的是,密钥K1...Kn具有不同的权重,这取决于每隔多久使用它们,由此降低搜索时间。这里,搜索从具有是正确密钥的最大可能性的密钥Kx开始。
还可以想象得到,不同于用于解密关联加密数据集DSx的密钥Kx的密钥被用来选择适当的应用。所以,每个加密数据集DSx与两个密钥关联。一个用于解密,一个与读取器密钥Krd相同。
使用对称加密也不是必须的。使用利用公用和私有密钥的不对称加密也是可以想象得到的。
应当注意,加密/解密模块ENC/DEC、随机数发生器RAND以及比较器COMP未必是NFC接口INT的一部分。然而,所示的安排是优选的,因为NFC接口INF总体上被认为是抗篡改的,或者至少比设备DEV的剩余部分更抗篡改。
应当进一步提及,本发明不限于智能卡应用。而是,加密数据必须被解密的任何设备都是合适的,特别是具有安全第二存储器的适配PC。设备DEV与读取器RD通信也不是必须的。在两个类似设备DEV(例如两个NFC兼容移动电话)之间进行通信是可以想象得到的。一个应用可以是在两个电话(每个具有加密账户)之间(数字)货币的交换。
如参考图4和6所述的方法是根据本发明的方法的最有利的变形,因为它使用如图5所述的用于RFID标签的标准验证过程。此外,正如已经描述的那样,该实施例仅仅需要远程设备RD与设备DEV之间的少量通信,所以本发明方法的所述变形是快速且可靠的。
然而,正如已经参考图3所述的那样,本发明的其它实施例原则上也是可能的,并且在某些特定情况下也许是有利的。
在下文中给出了根据本发明的方法的可能实施例的简短概述图7示意性地描绘了如已经在图3中所示的方法设备DEV生成随机数R,利用在设备DEV中存储的密钥K1...Kn中的一个密钥Kx加密该随机数R,并把加密的随机数Renc发送给读取器RD。读取器RD利用在读取器RD中存储的读取器密钥Krd来解密该数Renc(读取器密钥Krd与在设备DEV中存储的密钥K1...Kn之一相同)。该解密的读取器数Rrd被回送给设备DEV,其中原始随机数R和读取器数Rrd进行比较以识别正确的应用。
图8示意性地示出图4和6的方法,其中由设备DEV所生成的随机数R被发送给读取器RD。读取器RD利用读取器密钥Krd把随机数R加密成加密的读取器数Renc’,并且把该数Renc’回送给设备DEV。设备DEV利用在设备DEV中存储的密钥K1...Kn中的一个密钥Kx解密该加密的数Renc’,并且把所得到的数R’与原始随机数R进行比较。利用在设备DEV中存储的密钥K1...Kn解密加密的数Renc’的该过程被重复,直至找到正确的应用。
在根据图9的另一实施例中,交换信息,即通常为随机数R,由读取器RD生成。随机数R被送给设备DEV,其中利用密钥K1..Kn中的一个密钥Kx将其加密成加密的数Renc。该数Renc被回送给读取器RD,在那里借助于读取器密钥Krd对其进行解密。所得到的数R’与原始随机数R进行比较。如果原始随机数R和解密随机数R’相同,则找到正确的密钥/正确的应用,如果该比较不为真,则设备DEV利用另一密钥加密随机数R,并将其发送给读取器RD等。在该情况中,读取器RD可以把随机数R发送给设备DEV,以使设备DEV可以检测到另一加密是必须的,或者把某个特定信息发送给设备DEV。
如所述,比较将在读取器RD中进行。然而,原则上还能够把数Rrd从读取器RD发送给设备DEV,该设备DEV然后比较这两个随机数R、Rrd。
在图10中示出另一实施例。这里,读取器RD生成随机数R,利用读取器密钥Krd加密随机数R,并且向设备DEV发送加密数Renc’。设备DEV借助于密钥K1...Kn中的一个密钥Kx解密加密的数Renc’。
所得到的随机数R’与原始随机数R进行比较,优选如在读取器RD中所示的那样。然而,还有可能读取器RD把原始随机数R进一步发送给设备DEV,以使比较可以在设备DEV中进行。
最后应当注意,上述实施例是说明而非限制本发明,并且本领域技术人员将能够设计许多替代实施例而不背离如在所附权利要求书中限定的本发明的范围。特别注意,尽管在权利要求书和附图中选择数据集主要涉及加密数据集,但是这不视为本发明必须遵循的。而是本发明还涉及选择多个未加密数据集之一。在权利要求书中,置于括号中的任何参考标记将不解释为限制权利要求。词“包括”和“包含”等并不排除不同于在权利要求书或者整个说明书中列举的元件或步骤的存在。元件的单数引用并不排除这种元件的复数引用,反之亦然。在列举若干装置的设备权利要求中,这些装置中的若干可以由同一项硬件或软件来实现。仅仅在互不相同的从属权利要求中陈述某些措施的事实并不表明这些措施的组合不能被有利地使用。
权利要求
1.一种选择在设备(DEV)中登记的多个数据集(DS1enc...DSnenc)之一的方法,其中在选择之后,由该设备(DEV)把所述一个数据集(DSxenc)呈现给远程设备(RD),以及其中每个数据集(DS1enc...DSnenc)与一个特定密钥(K1...Kn)相关联,该方法包括以下步骤a)加密交换信息(R)a1)在所述设备(DEV)中使用与数据集(DS1enc...DSnenc)关联的多个密钥(K1...Kn)中的一个密钥(Kx),并且向远程设备(RD)发送加密的交换信息(Renc),或a2)在所述远程设备(RD)中使用在远程设备(RD)中存储的密钥(Krd),并且向所述设备(DEV)发送加密的交换信息(Renc’),b)解密加密的交换信息(Renc,Renc’)b1)在步骤a1)之后,在所述远程设备(RD)中使用在远程设备(RD)中存储的一个密钥(Krd),或b2)在步骤a2)之后,在所述设备中(DEV)中使用与数据集(DS1enc...DSnenc)关联的多个密钥(K1...Kn)中的一个密钥(Kx),c)将交换信息(R)与根据步骤b)解密的交换信息(Rrd,R’)进行比较,以及d)如果比较的结果为真,由所述设备(DEV)把数据集(DSxenc)呈现给远程设备(RD),或者如果所述比较为假,则使用与步骤a1)或步骤b2)中的另一数据集关联的密钥执行步骤a)-d)。
2.如权利要求1所述的方法,其中由设备(DEV)执行以下步骤-生成交换信息(R);-根据步骤a1)加密所述交换信息(R);-从所述远程设备(RD)接收解密的交换信息(Rrd);-根据步骤c)比较交换信息(R);以及-如果比较的结果为真,则把数据集(DSxenc)呈现给远程设备(RD),或者如果所述比较为假,则从使用与步骤a1)中的另一数据集关联的密钥的生成或加密步骤重新开始。
3.如权利要求1所述的方法,其中由设备(DEV)执行以下步骤-生成交换信息(R)并将其发送给远程设备(RD);-从所述远程设备(RD)接收加密的交换信息(Renc’);-根据步骤b2)解密所述加密的交换信息(Renc’);-根据步骤c)比较交换信息(R);以及-如果比较的结果为真,则把数据集(DSxenc)呈现给远程设备(RD),或者如果所述比较为假,则从使用与步骤b2)中的另一数据集关联的密钥的生成或解密步骤重新开始。
4.如权利要求1至3之一所述的方法,其中交换信息(R)是随机数(R)。
5.如权利要求1所述的方法,其中数据集(DS1enc...DSnenc)以加密的形式被存储在设备(DEV)的第一存储器(MEM1)中,根据步骤d)的所选加密数据集(DSxenc)利用关联密钥(Kx)进行解密,解密的数据集(DSx)被存储在设备(DEV)中更抗篡改的第二存储器(MEM2)中。
6.一种设备(DEV),用于把在该设备(DEV)中登记的多个数据集(DS1enc...DSnenc)之一呈现给远程设备(RD),其中每个数据集(DS1enc...DSnenc)与一个特定密钥(K1...Kn)相关联,以及其中所述设备(DEV)包括利用与数据集(DS1enc...DSnenc)关联的多个密钥(K1...Kn)中的一个密钥(Kx)加密交换信息(R)的装置;向远程设备(RD)发送加密的交换信息(Renc)的装置;从所述远程设备(RD)接收解密的交换信息(Rrd)的装置;将交换信息(R)与解密的交换信息(Rrd)进行比较的装置;以及与比较装置交互来选择一个数据集(DSx)的装置。
7.一种设备(DEV),用于把在该设备(DEV)中登记的多个数据集(DS1enc...DSnenc)之一呈现给远程设备(RD),其中每个数据集(DS1enc...DSnenc)与一个特定密钥(K1...Kn)相关联,以及其中所述设备(DEV)包括生成交换信息(R)的装置;把交换信息(R)发送给远程设备(RD)的装置;从所述远程设备(RD)接收加密的数据(Renc’)的装置;利用与数据集(DS1enc...DSnenc)关联的多个密钥(K1...Kn)中的一个密钥解密所述加密的信息(Rrd)的装置;将交换信息(R)与解密的交换信息(R’)进行比较的装置;以及与比较装置交互来选择一个数据集(DSx)的装置。
8.如权利要求6或7所述的设备(DEV),其中所述设备(DEV)包括-第一存储器(MEM1),-更抗篡改的第二存储器(MEM2),-从第一存储器(MEM1)读取加密数据(DATenc;DS1enc..DSnenc)的装置,-利用关联密钥(K;K1...Kn)解密(ENC/DEC)加密的数据(DATenc;DS1enc..DSnenc)的装置,以及-把解密的数据(DAT;D1...Dn)存储在第二存储器(MEM2)中的装置。
9.如权利要求8所述的设备(DEV),其中所述第二存储器(MEM2)和/或所述解密装置(ENC/DEC)是NFC接口(INT)的一部分。
10.如权利要求8所述的设备(DEV),其中所述第一存储器(MEM1)被另外安排成存储用于操作所述设备(DEV)的功能。
11.如权利要求8所述的设备(DEV),其中所述第二存储器(MEM2)被安排成存储所述密钥(K)。
12.一种被提供用来与一个设备(DEV)通信的远程设备(RD),所述设备(DEV)被安排成用于把在该设备(DEV)中登记的多个数据集(DS1enc...DSnenc)之一呈现给所述远程设备(RD),包括生成交换信息(R)的装置;把交换信息(R)发送给所述设备(DEV)的装置;从所述设备(DEV)接收加密数据(Renc)的装置;利用在远程设备(RD)中存储的密钥(Krd)解密所述加密的信息(Renc)的装置;将交换信息(R)与解密的交换信息(Rrd)进行比较的装置;以及向所述设备(DEV)发送比较装置的结果的装置。
13.一种被提供用来与一个设备(DEV)通信的远程设备(RD),所述设备(DEV)被安排成用于把在该设备(DEV)中登记的多个数据集(DS1enc...DSnenc)之一呈现给所述远程设备(RD),包括利用在远程设备(RD)中存储的密钥(Krd)加密交换信息(R)的装置;向所述设备(DEV)发送加密的交换信息(Renc’)的装置;从所述设备(DEV)接收解密的交换信息(R’)的装置;将交换信息(R)与解密的交换信息(R’)进行比较的装置;以及向所述设备(DEV)发送比较装置的结果的装置。
全文摘要
一种选择在设备(DEV)中登记的多个数据集(DS1enc...DSnenc)之一的方法,其中每个数据集(DS1enc...DSnenc)与一个特定密钥(K1...Kn)相关联,其中在所述设备(DEV)中使用多个密钥(K1...Kn)中的一个密钥(Kx)加密交换信息(R),向远程设备(RD)发送加密的交换信息(Renc),使用在远程设备(RD)中存储的一个密钥(Krd)在那里解密加密的交换信息,并且把解密的交换信息(Rrd)回送给设备(DEV)。随后,将交换信息(R)与解密的交换信息(Rrd)进行比较。如果两者相等,则找到正确的数据集(DSx),否则利用另一密钥再次开始循环。设备(DEV)和远程设备(RD)的角色可以互换,以使可以在远程设备(RD)中启动循环。本发明还涉及一种设备,用于把在该设备中登记的多个数据集之一呈现给远程设备。
文档编号H04Q7/38GK1981475SQ200580022218
公开日2007年6月13日 申请日期2005年6月23日 优先权日2004年6月30日
发明者R·布拉克, H·马斯, F·加洛 申请人:皇家飞利浦电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1