CN103457731B - 信息处理设备、集成电路芯片以及信息处理方法 - Google Patents
信息处理设备、集成电路芯片以及信息处理方法 Download PDFInfo
- Publication number
- CN103457731B CN103457731B CN201310196799.1A CN201310196799A CN103457731B CN 103457731 B CN103457731 B CN 103457731B CN 201310196799 A CN201310196799 A CN 201310196799A CN 103457731 B CN103457731 B CN 103457731B
- Authority
- CN
- China
- Prior art keywords
- encryption
- equipment
- target
- card
- individualized
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/061—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
- H04L2209/805—Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor
Abstract
提供了一种信息处理设备,包括加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;通信部分,其将加密ID作为要发送的ID信息发送到其他设备;个别化代码持有部分,其事先持有能够在其他设备中通过对ID信息进行解密而生成的个别化代码;以及访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥。
Description
技术领域
本发明涉及信息处理设备、IC芯片以及信息处理方法。
背景技术
在相关技术中,FeliCa(索尼公司的注册商标)所代表的非接触通信系统被广泛使用。
每个非接触通信系统包括读写器(以下被简写为R/W)和非接触通信IC卡(以下被简写为IC卡)。在非接触通信系统中,通过使用电磁波以非接触的方式来进行通信,以在至少一个R/W和相应的IC卡之间交换信息。在各种类型的信息的通信之前,互相认证处理被执行。代替IC卡,移动电话等有时被使用,其具有内置的IC芯片,该IC芯片具有和IC卡相同的功能。
例如,一张IC卡可以具有关于多种服务的信息,例如电子货币服务、用于电车等的月票服务、以及员工ID卡服务。
在服务单元中控制对IC卡中的用户数据的访问权限或访问方法。对于每种服务,存在用于访问用户数据的密钥,并且其用于控制对该服务的用户数据的访问权限。此外,对于每种服务,根据用途来指定访问方法,例如使用历史数据写入方法或电子货币扣除方法。
为了一次执行历史数据写入过程和电子货币扣除过程,从多种服务的密钥生成一个密钥(简并密钥)。当简并密钥被使用时,可以通过执行一次互相认证处理来访问多种服务。但是,在使用针对每种服务来持有的密钥时,也可能通过执行互相认证处理来独立地访问服务。
但是,为了使用多种不同的服务,即访问关于该服务的信息,需要执行依赖于服务而变化的互相认证处理。使用针对各个服务的不同密钥来执行互相认证处理导致费力的处理。因此,已经实现了下列技术,其基于用于服务的多个密钥事先生成一个密钥(简并密钥),且该简并密钥被用于在各个服务中使用的每个互相认证处理。于是,在每种服务中读取或写入信息时,根据简并密钥生成加密密钥(访问密钥),来执行互相认证处理。
在这些情形下,作为用于生成依赖于IC卡而变化的加密密钥的方法,如JP2011-71758A所述有一种已知的方法,其使用基于参数(卡特有的ID)生成的个别化代码,该参数依赖于IC卡而变化。
发明内容
在JP2011-71758A中,IC卡向R/W通知IC卡的卡特有ID,且R/W生成加密密钥(访问密钥)。在该情形下,在公布的过程中,IC卡的卡特有ID可能被泄漏给第三方。IC卡的卡特有ID可被用于IC卡用户行为的跟踪等。例如,卡特有的ID甚至可被滥用以识别用户在何处购买了何物,且由此用户隐私可能被侵犯。
在这方面,JP2011-71758A还描述了一种方法,其中卡特有ID的一部分被随机化,以避免在向R/W通知的过程中将IC卡的卡特有ID泄漏给第三方。
但是,在该方法中,可用于生成个别化代码的信息被限制为卡特有ID中未被随机化的部分的信息。由于这个原因,该方法有一个缺点,会出现具有相同个别化代码的另一IC卡,且由此阻碍依赖于IC卡将访问密钥完全个别化。
如果怀疑特定的个别化代码被泄漏,需要停用具有相同个别化代码的所有IC卡以停止其使用。用户的便利性可被严重损害。
此外,在卡特有ID的一部分被随机化的方法中,可以基于未随机化部分的卡特有ID信息来识别用户。
因此,存在个别化访问密钥并阻止卡特有ID的泄漏的需求。
根据本公开的实施例,提供了一种信息处理设备,包括:加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;通信部分,其将加密ID作为要发送的ID信息发送到其他设备;个别化代码持有部分,其事先持有可在其他设备中通过对ID信息解密而生成的个别化代码;以及访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥。
加密ID生成部分可以通过使用种子值来加密所述唯一ID,该种子值依赖于要生成的加密ID而变化。
加密ID生成部分可以基于所述唯一ID以及加密数据来生成加密ID,该加密数据是基于加密密钥生成的。
加密ID生成部分可以基于加密密钥以及种子值来生成加密数据,该种子值依赖于要生成的加密ID而变化。
通信部分可以将所述加密ID以及在生成所述加密ID时获取的种子值发送到其他设备。
信息处理设备还可以包括随机化ID生成部分,其随机化所述唯一ID的至少一部分以生成随机化ID。通信部分可以将所述随机化ID作为ID信息发送到其他设备。
信息处理设备还可以包括标记持有部分。所述加密ID和所述随机化ID中的一个可以基于该标记持有部分所持有的标记来生成。
信息处理设备还可以包括用于接收操纵输入的操纵输入部分。所述加密ID和所述随机化ID中的一个可以基于所述操纵输入来生成。
所述加密ID生成部分可以在开始与其他设备的通信时生成所述加密ID。
所述加密ID生成部分可以响应于来自其他设备的指令来生成所述加密ID。所述信息处理设备可以包括存储部分,其存储所生成的加密ID。
加密密钥可以被个别化,以对应于唯一ID的至少一部分。所述通信部分将唯一ID的该部分发送到其他设备,以便其他设备生成个别化加密密钥。
根据本公开的实施例,提供了一种IC芯片,包括:加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;通信部分,其将加密ID作为要发送的ID信息发送到其他设备;个别化代码持有部分,其事先持有能够在其他设备中通过对ID信息进行解密而生成的个别化代码;以及访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥。
所述加密ID生成部分可以通过使用种子值来对唯一ID进行加密,该种子值依赖于要生成的加密ID而变化。
所述加密ID生成部分可以通过使用加密数据的异或操作来生成所述加密ID,该加密数据是基于加密密钥和所述唯一ID生成的。
加密ID生成部分可以基于所述加密密钥以及种子值来生成加密数据,该种子值依赖于要生成的加密ID而变化。
所述通信部分可以将所述加密ID以及在生成所述加密ID时获取的种子值发送到其他设备。
所述IC芯片还可以包括随机化ID生成部分,其对唯一ID的至少一部分进行随机化以生成随机化ID。通信部分可以将所述随机化ID作为ID信息发送到其他设备。
IC芯片还可以包括标记持有部分。所述加密ID和所述随机化ID中的一个可以基于该标记持有部分所持有的标记来生成。
所述加密密钥可以被个别化,以对应于所述唯一ID的至少一部分。所述通信部分将唯一ID的该部分发送到其他设备,以便其他设备生成个别化加密密钥。
根据本公开的实施例,提供了一种信息处理方法,包括:对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;将所述加密ID作为要发送的ID信息发送到其他设备;以及基于能够在其他设备中通过对ID信息进行解密而生成的个别化代码来生成用于其他设备的认证的访问密钥。
此外,根据本公开的实施例,提供了一种信息处理设备,包括:通信部分,其向其他设备发送响应请求并接收加密ID,该加密ID是基于唯一ID由其他设备生成的,该唯一ID被设置为对于其他设备唯一的ID;个别化代码生成部分,其通过对所述加密ID进行解密来生成个别化代码,该个别化代码由其他设备持有;以及访问密钥生成部分,其基于个别化代码来生成用于其他设备的认证的访问密钥。
此外,根据本公开的实施例,提供了一种信息处理方法,包括向其他设备发送响应请求并接收加密ID,该加密ID是基于唯一ID由其他设备生成的,该唯一ID被设置为对于其他设备唯一的ID;通过对加密ID进行解密来生成个别化代码,该个别化代码由其他设备持有;以及基于个别化代码来生成用于其他设备的认证的访问密钥。
此外,根据本公开的实施例,提供了一种程序,其使得计算机用作用于向其他设备发送响应请求并接收加密ID的装置,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;通过对加密ID进行解密来生成个别化代码的装置,该个别化代码由其他设备持有;以及基于个别化代码来生成用于其他设备的认证的访问密钥的装置。
根据如上所述的本公开的实施例,可能使访问密钥个别化并阻止唯一ID的泄漏。
附图说明
图1是图示了其中注册对于所有IC卡共同的加密密钥的情形的示意图;
图2是图示了其中注册用于各张IC卡的不同加密密钥的情形的示意图;
图3是图示了使卡特有ID的一部分随机化的方法的示意图;
图4是图示通过将数据填充添加到未被随机化的2字节(D6和D7)且然后使用个别化代码生成密钥来加密该2字节来生成个别化代码的过程的示意图;
图5是图示加密ID生成部分所执行的处理的示意图;
图6是图示了第一实施例的系统配置示例的示意图;
图7是分别通过由R/W的CPU和IC卡的CPU执行的控制程序所实现的功能块的图;
图8A是图示了IC卡的目标ID输出部分生成目标ID的过程的图;
图8B是图示了IC卡的目标ID输出部分生成目标ID的过程的图;
图8C是图示了IC卡的目标ID输出部分生成目标ID的过程的图;
图8D是图示了IC卡的目标ID输出部分生成目标ID的过程的图;
图9是图示了简并密钥的个别化的图;
图10是图示了个别化代码生成部分所执行的处理的示意图;
图11是图示了非接触通信系统所执行的通信处理的流程图;
图12是图示了IC卡所执行的处理的流程图;
图13是图示了R/W所执行的处理的流程图;
图14是ID解密部分所执行的处理的示意图;
图15是图示了第二实施例中的IC卡的加密ID生成部分所执行的处理的示意图;
图16是R/W的ID解密部分所执行的处理的示意图;和
图17是图示了在第二实施例中使用的加密ID的数据结构的示意图。
具体实施方式
下面,将参考附图来详细描述本公开的优选实施例。注意到,在本说明书和附图中,具有基本相同功能和结构的结构元件用相同的参考标号来表示,且对于这些结构元件的重复解释被忽略。
注意到将以下列顺序来给出描述。
1.第一实施例
1.1作为本公开的实施例的前提的技术
1.2第一实施例的概述
1.3第一实施例的特定配置示例
1.4部分随机化ID和加密ID的生成
1.5简并密钥的个别化
1.6ID解码部分的处理
1.7非接触通信系统的操作
1.8ID卡的操作
1.9R/W的操作
2.第二实施例
2.1第二实施例的概述
2.2加密ID生成部分的处理
2.3R/W的ID解密部分的处理
2.4在第二实施例中使用的加密ID的数据结构
<1.第一实施例>
[1.1.作为本公开的实施例的前提的技术]
首先,给出了作为本公开的实施例的前提的技术的描述。图1图示了注册对于所有IC卡500共同的加密密钥(访问密钥)600的情形。在图1所示的其中注册对于所有IC卡500共同的加密密钥600的这个情形下,当IC卡500中的某一个被攻击者物理或逻辑地分析、并且其加密密钥600被泄漏时,使用加密密钥600的其他IC卡500也会受影响,且使用IC卡500的包含电子货币等的整个系统面临风险。
相反,图2图示了其中注册用于各张IC卡500的不同加密密钥(访问密钥)700的情形。通过如图2所示来为各张IC卡500注册不同的加密密钥700,安全性可被提升。这里,为各张IC卡500设置不同的加密密钥被称为加密密钥700的个别化。在该情形下,即使IC卡500之一的加密密钥700被泄漏,也不会允许加密密钥700用于认证任意其他IC卡500。因此,其他IC卡500不会受影响。此外,当检测到加密密钥700的泄漏时,具有泄漏的密钥700的IC卡500被禁用以停止其使用。于是,可以采取合适的补救并避免整个系统可能面临的风险。
作为为各张IC卡500生成不同加密密钥700的方法,JP2011-71758A描述了一种方法,其使用基于不同参数(卡特有ID)为各张IC卡生成的个别化代码。但是,在该情形下,需要每张IC卡500向R/W通知其卡特有的ID。因此,在通知过程中,IC卡500的卡特有ID可被泄漏给第三方。IC卡500的卡特有ID可被用于IC卡500的用户行为的跟踪等。例如,卡特有的ID可被滥用以识别用户在何处购买了何物,且由此用户隐私可能被侵犯。
在这方面,如图3所示,JP2011-71758A公开了随机化卡特有ID的一部分以避免用户隐私侵犯的方法。该方法可以在向R/W通知的过程中避免向第三方泄漏IC卡500的卡特有ID,因为部分被随机化的8字节卡特有ID被发送到R/W。
如上所述,为了提高IC卡500的安全性,需要实现加密密钥的个别化和用户隐私保护二者。
但是,这两个需求具有权衡关系并且难以同时实现。在卡特有ID的一部分被随机化以用于隐私保护的方法中,假定下列有害的影响。在该方法中,可用于生成个别化代码的信息被限制为卡特有ID中未被随机化的部分的信息。图4图示了通过将数据填充添加到未被随机化的2字节(D6和D7)且然后使用个别化代码生成密钥加密该2字节来生成个别化代码的过程。由于图4所示的方法使用卡号的较低2位(2字节)来生成个别化代码,会出现具有相同个别化代码的IC卡。例如,当作为卡特有ID的卡号的6字节中的4字节被随机化时,仅有2字节(=16比特)被用于生成个别化代码,则有65536分之一的机会(1/(2的16次方))存在具有相同个别化代码的IC卡。这意味着,假设4千万用户使用特定的服务,有610张IC卡具有相同的个别化代码。如果怀疑其中一张IC卡的个别化代码被泄漏,则需要禁用610张IC卡以停止其使用。用户的便利性会被严重损害。
此外,卡特有ID的一部分被随机化的方法具有基于未被随机化的一部分的信息来识别卡特有ID的用户的可能性。在该情形下,即使仅使用卡特有ID的未被随机化部分的信息仅能缩小到几万用户,通过基于用户生活的区域以及用户使用ID卡的时区来进一步缩小用户,跟踪目标用户也可被识别。例如,当攻击者具有跟踪目标用户生活在IbarakiPrefecture并且主要在夜间使用其IC卡这一基本信息,进一步缩小是可能的,且由此攻击者可以完全跟踪用户的行为。因此,根据本实施例,密钥的个别化被完全实现,而阻止了基于用户IC卡的卡特有ID进行的用户跟踪。
[1.2.本实施例的概述]
本实施例的概述将被描述,作为本实施例的特定配置的描述的前提。本实施例具有加密密钥个别化和用户隐私保护的下列特征。
如图5所示,不是通过随机化并更新卡特有ID的一部分而是通过加密并更新卡特有ID,来实现随机加密ID的生成。然后,由此生成的加密ID被发送到R/W。
由于未授权的攻击者将加密ID完全看作随机数,不可能基于该加密ID来跟踪目标IC卡的用户。
另一方面,有授权的服务提供商可以对加密ID进行解密并完全实现恢复为原始的卡特有ID。由此,通过使用整个卡特有ID而不是卡特有ID的一部分,可以生成用于每张IC卡的完全不同的个别化代码。当怀疑特定的一张IC卡的个别化代码被泄漏时,只有这一张IC卡需要被禁用,且其他IC卡不受影响。
如上所述,不仅可能将IC卡加密密钥的泄漏的影响限制到一张IC卡,并且还能实现隐私保护。以下,将更具体地描述本实施例。
[1.3第一实施例的特定配置示例]
在第一实施例中,给出了在本公开中使用的标准方法的描述。图6是图示了本公开的第一实施例中的系统配置示例的示意图。系统包括R/W(读写器)100和IC卡200。每张IC卡200被设计为:当用户将IC卡200靠近一个R/W100时,在IC卡200内部产生驱动功率。IC卡200是根据本公开的实施例的信息处理设备的例子。根据本公开的实施例的信息处理设备可以是移动电话或类似的设备。
R/W100具有内置的CPU120。ROM102、RAM104、NVM(非易失性存储器)106以及调制/解调电路108经总线110连接到CPU120。CPU120通过执行事先存储在ROM102中的控制程序来控制R/W100的各部分。RAM104被用作CPU120在执行各种进程时使用的工作区域的存储器。NVM106持有简并密钥。调制/解调电路108基于要用于将载波发送到IC卡200的信息来调制该载波,并将调制的载波输出到天线112,信息从CPU120输出并经总线110输入到调制/解调电路108。调制/解调电路108还对天线112接收到的载波进行解调,且将由此获得的从IC卡200发送的信息经总线110输出到CPU120。
IC卡200具有内置CPU220。ROM202、RAM204、NVM206、调制/解调电路208以及操纵输入部分240经总线210连接到CPU220。CPU220通过执行事先存储在ROM202中的控制程序来控制IC卡200的各部分。RAM204被用作在CPU220执行各种进程时使用的工作区域的存储器。NVM206在各种服务的层中存储简并密钥以及关于各种服务(例如电子货币服务、用于电车等的月票服务、以及员工ID卡服务)的信息。
图7图示了分别由R/W100的CPU120以及IC卡200的CPU220执行的控制程序所实现的功能块的图。
在R/W100中,通过CPU120执行的控制程序来实现通信部分122、目标代码确定部分124、个别化代码生成部分126、ID解密部分128、访问密钥生成部分130、密钥管理部分132、和数据处理部分134。
通信部分122控制与IC卡220的通信。目标代码确定部分124读取由IC卡200通知的目标ID的目标代码,并确定该目标ID是卡特有ID、部分随机化ID还是加密ID。
基于目标代码确定部分124的确定结果,个别化代码生成部分126使用卡号来生成IC卡200的个别化代码。注意到,下面将参考图10来描述个别化代码的生成。
ID解密部分128响应于来自个别化代码生成部分126的请求来对加密ID进行解密,并输出从所述解密产生的卡号。下面将参考图14来描述对加密ID进行解密的处理。
访问密钥生成部分130基于目标代码确定部分124的确定结果通过对简并密钥进行个别化来生成访问密钥。注意到,下面将参考图9来描述简并密钥的个别化。
密钥管理部分132管理事先持有的简并密钥以及生成的访问密钥。数据处理部分134使用生成的访问密钥、通过通信部分122来执行与IC卡200的互相认证处理。在互相认证处理之后,数据处理模块134将从IC卡200发送的加密信息进行解密,并对要发送到IC卡200的信息进行加密。
在IC卡200中,通过CPU120执行的控制程序来实现通信部分222、目标ID输出部分224、标记持有部分226、随机数生成部分228、加密ID生成部分230、访问密钥生成部分232、个别化代码持有部分234、密钥管理部分236以及数据处理部分238。注意到,当根据本公开的实施例的信息处理设备是移动电话或类似装置时,在信息处理设备中包含的IC卡具有和图7中的IC卡200的功能块相同的组件。
通信部分222控制与R/W100的通信。依赖于由标记持有部分226所持有的标记的状态,目标ID输出部分224输出卡特有ID、通过将卡特有ID替换为随机数等而生成的部分随机化ID、或者通过加密所述卡特有ID而获得的加密ID,来作为目标ID。注意到,卡特有ID被事先存储在NVM206中。部分随机化ID由目标ID输出部分224在预定的时间生成,并被存储在NVM206中。下面将参考图8B来描述部分随机化ID的生成。加密ID是由目标ID输出部分224在预定的时间生成的,并被存储在NVM206。
标记持有部分206事先设置目标ID确定标记,该标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID。以下,当目标ID确定标记所指明的卡特有ID有效时,使用卡特有ID而没有特殊处理。当部分随机化ID有效时,使用部分随机化ID。当加密ID有效时,使用加密ID。
换句话说,在IC卡200被交付到用户之前,确定没有处理的卡特有ID、部分随机化ID还是加密ID被用作通知给R/W的目标ID。但是,标记持有部分226中持有的目标ID确定标记的状态可响应于来自R/W100的预定命令而改变。于是,例如,目标ID确定标记的设置可以以下列方式来改变。在根据本公开的实施例的R/W100在社会上被广泛使用之前,作为目标ID而通知卡特有ID或部分随机化ID。在现有R/W停止使用且R/W100被广泛使用之后,加密ID被通知为目标ID。
标记持有部分226中持有的目标ID确定标记状态还可以由操纵输入部分240的用户输入来改变。于是,用户可以适当地设置要被用作目标ID的未处理的卡特有ID、部分随机化ID或加密ID。
随机数生成部分228响应于来自目标ID输出部分224的请求来生成随机数。加密ID生成部分230响应于来自目标ID输出部分224的请求来加密卡特有ID并输出加密ID。
图5是图示由加密ID生成部分230执行的处理的示意图。如图5所示,加密ID生成部分230包括加密部分230a、6字节提取部分230b、异或部分230c。如图5所示,加密ID生成部分230的加密部分230a通过使用ID加密密钥对明文的计数器值进行加密。这里,每次生成加密ID时,计数器值被递增1。例如AES或DES的加密算法可被用于加密。然后,提取6字节加密结果,并通过异或部分230c来计算提取的6字节与卡特有ID的低位6字节的异或。计算的结果被设置在加密ID的D2到D7中。于是,在加密ID的D0和D1中替换采用预定值的系统编号和IDc代码,从而完成加密ID更新处理。
个别化代码持有部分234管理事先为IC卡200注册的个别化代码。访问密钥生成部分232基于在预定时间生成的目标ID的目标代码、通过使简并密钥个别化来生成访问密钥。密钥管理部分236管理在NVM206中事先持有的简并密钥。注意到,下面将参考图9来描述简并密钥的个别化。
数据处理部分238通过使用生成的访问密钥经由通信部分222来执行与R/W100的互相认证处理。在互相认证处理之后,数据处理部分238将R/W100发送的加密信息进行解密,或对要发送到R/W100的信息进行加密。
注意到,图7所述的功能块可以通过如上所述的软件来实现,且可以被安装为硬件。
[1.4部分随机化ID和加密ID的生成]
图8A到8D中的每个是图示了其中IC卡200的目标ID输出部分224生成目标ID的过程的图。
图8A图示了事先被分配给IC卡200并存储在NVM206等中的卡特有ID的数据结构。卡特有ID例如具有分配给D0到D7的8字节的信息量。按照从MSB(最高有效位)(从图8A中的最左侧比特)开始的顺序在其中记录4比特系统编号、12比特制造商代码以及6字节卡号。由同一制造商制造的IC卡200具有相同的系统编号和相同的制造商代码,但各张IC卡200具有不同的卡号。因此,在每张IC卡200中,6字节的卡号D2到D7实际上是唯一信息。
图8B图示了目标ID输出部分224生成的部分随机化ID的数据结构。即,在部分随机化ID中,卡特有ID中的制造商代码被替换为预定值的IDr代码,且6字节卡号的MSB端的预定n字节(图8B中的4字节)的值被替换为由随机数生成部分228生成的随机数。这里,n是等于或大于1且小于6的整数。
图8C图示了由目标ID输出部分224输出的加密ID的数据结构。如上所述,加密ID生成部分230响应于来自目标ID输出部分224的请求来对卡特有ID进行加密,并将加密ID输出到目标ID输出部分224。在加密ID中,卡特有ID中的制造商代码被替换为具有预定值的IDc代码,且6字节卡号的D2到D7都被加密。
如图8所示,卡特有ID、部分随机化ID和加密ID被统称为目标ID。注意到如图8D所示,系统编号之后的12比特以下被称为目标代码,且D2到D7的6字节被称为目标ID的低位6字节。
当IC卡200向R/W通知图8A中的卡特有ID、图8b中的部分随机化ID或图8C中的加密ID作为目标ID时,系统编号后面的12比特包括指明该目标ID是卡特有ID、部分随机化ID还是加密ID的信息。于是,R/W100可以基于系统编号后面的12比特来确定目标ID是卡特有ID、部分随机化ID还是加密ID。
[1.5简并密钥的个别化]
图9是图示简并密钥的个别化的图。简并密钥的个别化是由R/W100的访问密钥生成部分130和IC卡200的访问密钥生成部分232中的每个执行的。访问密钥生成部分130和访问密钥生成部分232分别包括加密处理部分103a和232a。
如图9所示,在对简并密钥进行个别化时,由加密处理部分103a和232a中的每个通过将个别化代码应用到简并密钥来执行加密过程。例如,通过将个别化代码加到简并密钥来执行简并密钥的个别化。以下,通过个别化过程由此获得的个别化简并密钥被称为访问密钥。
这里,通过使用输入到个别化代码生成部分126的输入参数来生成个别化代码。输入参数是卡特有ID、部分随机化ID或被解密的加密ID的低位6字节。该ID是从IC卡200发送的。图10图示了由个别化代码生成部分126执行的处理。当目标ID是卡特有ID时,目标ID的整个卡号(即6字节)被用作个别化代码的输入参数。此外,当目标ID是部分随机化ID时,在目标ID的低位6字节之中除了用于随机数的字节之外的字节被用作个别化代码的输入参数。在图10中,目标ID中的D6和D7中的2字节被用作个别化代码的输入参数。当目标ID是加密ID时,目标ID的低位6字节被ID解密部分128解密,且然后通过解密产生的所有6字节被用作用于个别化代码的输入参数。
在个别化代码生成部分126中,例如,加密部分126b将输入参数当作明文并使用个别化代码生成密钥126a来加密该输入参数,并且个别化代码输出部分126c输出该加密结果。
当输入参数是卡特有ID的低位6字节或被解密的加密ID的低位6字节时,从个别化代码输出部分126c输出的个别化代码是个别化代码(A)。相反,当输入参数是部分随机化ID的低位2字节时,个别化代码是个别化代码(B)。
因此,在同时支持部分随机化ID和加密ID时,IC卡200同时管理个别化代码(A)和个别化代码(B),且由此个别化代码持有部分234持有个别化代码(A)和(B)二者。另一方面,在仅支持加密ID时,IC卡200可以仅管理个别化代码(A)。相应地,仅支持加密ID的IC卡200可以仅使用个别化代码(A)来生成访问密钥,由此其处理可以更简单。
由此生成的个别化代码在IC卡200的发行等时间上在IC卡200中事先注册,并且由个别化代码持有部分234来管理。相反,在R/W100中,每当R/W100与位于R/W100附近的IC卡200进行通信时,个别化代码生成部分126生成IC卡200的个别化代码。
在生成个别化代码时,分别位于R/W100和IC卡200中的图9的加密处理部分103a和232a分别生成访问密钥。于是,通过使用访问密钥生成部分130生成的访问密钥,数据处理部分134通过通信部分122、利用IC卡200的访问密钥生成部分232所生成的访问密钥来执行互相认证处理。如果访问密钥生成部分130生成的访问密钥与访问密钥生成部分232生成的访问密钥一致,互相认证被建立,且R/W100和IC卡200互相通信。
[1.6ID解密部分的处理]
图14是图示ID解密部分128执行的处理的示意图。如图14所示,ID解密部分128包括加密部分128a、6字节提取部分128b以及异或部分128c。从IC卡200发送的计数器值被输入到加密部分128a。通过使用ID加密密钥对从IC卡200接收的计数器值进行加密,然后通过6字节提取部分128b来提取加密结果的低位6字节。ID解密部分128的异或部分128c计算提取的低位6字节与从IC卡200接收的加密ID的低位6字节的异或,以将卡特有ID的卡号恢复为原始卡号,并将卡号输出到个别化代码生成部分126。
在图5和14中,相同的计数器值被输入到加密部分128a和加密部分230a,因为从IC卡200发送的计数器值被输入到加密部分128a。注意到尽管在描述中计数器值被当作例子,但是分别输入到加密部分128a和加密部分230a的值仅需要是相同值(种子值),且由此不限于计数器值。此外,图5中的ID加密密钥与图14中的ID加密密钥相同,且6字节提取部分128b和6字节提取部分230b输出相同的值。因此,通过异或部分128c来计算在提取的低位6字节和从IC卡200接收的加密ID的低位6字节之间的异或,卡特有ID的卡号可被恢复为原始卡号。注意到,尽管在描述中异或被当作例子,但是异或部分128c和异或部分230c可以执行另一类型的计算。
[1.7非接触通信系统的操作]
接下来,给出了根据本实施例的非接触通信系统的通信处理的描述。图11是图示了非接触通信系统的通信处理的流程图。
首先,在步骤S1,R/W100和IC卡200之间的通信处理开始。在后续步骤S2,执行轮询处理。特别地,当R/W100执行轮询处理来搜索作为通信对方的IC卡200时,响应于轮询处理的IC卡200向R/W100通知IC卡200的目标ID(部分随机化ID、卡特有ID或加密ID)。
在步骤S3,执行互相认证处理。这里,通过从IC卡200通知的目标ID生成个别化代码、然后通过将生成的个别化代码应用到简并密钥,R/W100执行个别化,且随后获得访问密钥。相反,通过将个别化代码持有部分234管理的个别化代码应用到简并密钥,IC卡200执行个别化,且随后获得访问密钥。这意味着R/W100和IC卡200获得相同的访问密钥。于是,使用该访问密钥来执行互相认证处理。
在步骤S4,执行用户块访问处理。特别地,根据未示出的来自控制器的指令,R/W100执行下列处理:读取IC卡200中记录的信息、覆盖IC卡200中记录的信息、或者向IC卡200写入新信息。
在步骤S5,执行部分随机化ID更改处理或加密ID更新处理。只有当IC卡200被设置为向R/W100通知部分随机化ID作为目标ID时,IC卡200才根据来自R/W100的预定命令来执行部分随机化ID的更改处理。特别地,通过改变在作为目标ID的部分随机化ID中包含的随机数,随机数生成部分228执行对部分随机化ID进行更新的处理。
此外,只有当IC卡200被设置为向R/W100通知加密ID作为目标ID时,IC卡200才根据来自R/W的预定命令来执行加密ID的更新处理。参考图5描述的方法来执行加密ID的更改处理。换句话说,加密ID生成部分230首先通过使用ID加密密钥来对作为明文的计数器值进行加密。如上所述,每次生成加密ID时,计数器值被递增1。例如AES或DES的加密算法可被用于加密。于是,提取加密结果的6字节,并计算提取的6字节和卡特有ID的低位6字节的异或。计算结果被设置在加密ID的D2到D7中。然后,在加密ID的D0和D1中替换采用预定值的系统编号和IDc代码,从而完成加密ID更新处理。
注意到,步骤S5中的处理不需要在每次通信处理中执行。换句话说,R/W100可以在需要时使用上述预定命令,以促使IC卡200执行更改处理。在步骤S5之后,处理终止(结束)。
此外,步骤S5中的更新处理可以在通信开始时执行。换句话说,当IC卡200响应于R/W100在步骤S2执行的轮询过程而向R/W100通知其目标ID时,可执行更新处理。
此外,还可以响应于用户通过操纵输入部分240执行的输入操纵来执行步骤S5中的更新处理。在该情形下,在操纵输入部分240接收到输入操纵的时候,随机数生成部分228改变在部分随机化ID中包含的随机数,或者加密ID生成部分230执行对加密ID的更新处理。
[1.8.ID卡的操作]
接下来,给出了IC卡200在通信处理中执行的处理的细节的描述。图12是图示了由IC卡200执行的处理的流程图。当在R/W100附近的IC卡200中产生驱动功率时,该处理开始。
这里,IC卡200的NVM206已经持有所述部分随机化ID或所述加密ID。
首先,在步骤S11中,IC卡200的处理开始。在步骤S12,IC卡200的通信部分222等待来自R/W100的轮询。在接收到轮询时,通信部分222将处理移到步骤S13。
在步骤S13,目标ID输出部分224确定标记持有部分226所持有的目标ID确定标记的状态。这里,在确定目标ID确定标记的状态指明部分随机化ID有效时,处理进入步骤S14,之后将部分随机化ID通知给R/W100作为目标ID。
换句话说,在步骤S14中,目标ID输出部分224读取在NVM206中存储的部分随机化ID,并将部分随机化ID输出到通信部分222和访问密钥生成部分232。注意到,这里基于已生成部分随机化ID的假设来给出描述。但是,当由于某种原因还没有生成所述部分随机化ID时,可以在步骤S14中生成该部分随机化ID。
在步骤S15,通信部分222向R/W100发送部分随机化ID作为目标ID,该部分随机化ID是从目标ID输出部分224输入的。
在步骤S16,访问密钥生成部分232使得密钥管理部分236读取简并密钥,通过将个别化代码持有部分234所管理的个别化代码(B)应用到读取的简并密钥来生成访问密钥,并将访问密钥输出到数据处理部分238。
在步骤S17,数据处理部分238使用生成的访问密钥通过通信部分222来执行与R/W100的互相认证处理。在互相认证处理成功之后,数据处理部分238在步骤S18中执行用户块访问处理。换句话说,数据处理部分238响应于来自R/W100的请求从NVM206读取信息/向NVM206写入信息。
在步骤S19,目标ID输出部分224确定R/W100是否发送了随机数更改命令。当确定发送了随机数更改命令时,处理进入步骤S20。
在步骤S20,目标ID输出部分224使得随机数生成部分228生成随机数,并将当前的部分随机化ID中的随机数部分替换为该生成的随机数。由此,目标ID输出部分224重新生成部分随机化ID并将该部分随机化ID存储在NVM206中。注意到,重新生成的部分随机化ID被用作目标ID,以在下一通信处理中将该目标ID从IC卡200通知给R/W100。在上述步骤之后,IC卡200的处理终止。
同时,当在步骤S13中确定目标ID确定标记处于指明加密ID有效的状态时,处理进入步骤S21,之后将加密ID公布给R/W100作为目标ID。
换句话说,在步骤S21中,目标ID输出部分224读取在NVM206中存储的加密ID和当前计数器值,并将加密ID和当前计数器值输出到通信部分222和访问密钥生成部分232。当前计数器值是在生成存储在NVM206中的加密ID时获得的计数器值。注意到,这里基于已生成所述加密ID的假设来给出描述。但是,当因为某种原因而没有生成加密ID时,可以在步骤S21中生成加密ID。
在步骤S22,通信部分222向R/W100发送加密ID作为目标ID,该加密ID是从目标ID输出部分224输入的。通信部分222将当前计数器值和目标ID一起发送到R/W100。
在步骤S23,访问密钥生成部分232使得密钥管理部分236读取简并密钥,通过将个别化代码持有部分234所管理的个别化代码(A)应用到读取的简并密钥来生成访问密钥,并将访问密钥输出到数据处理部分238。
在步骤S24,数据处理部分238使用生成的访问密钥通过通信部分222来执行与R/W100的互相认证处理。
在互相认证处理成功之后,数据处理部分238在步骤S25中执行用户块访问处理。换句话说,数据处理部分238响应于来自R/W100的请求从NVM206读取信息/向NVM206写入信息。
在步骤S26,目标ID输出部分224确定R/W100是否发送了加密ID更改命令。当确定发送了加密ID更改命令时,处理进入步骤S27。
在步骤S27,加密ID生成部分230如图5所示使计数器值递增1,对卡特有ID执行加密过程以更新所述加密ID,并将加密ID存储在NVM206中。更新的加密ID和计数器值被记录在NVM206中。注意到,重新生成的加密ID被用作目标ID,以在下一通信处理中将该目标ID从IC卡200通知给R/W100。在上述步骤之后,IC卡200的处理终止。
同时,当在步骤S13中确定目标ID确定标记处于指明卡特有ID有效的状态时,处理进入步骤S28,之后将卡特有ID通知给R/W100作为目标ID。
换句话说,在步骤S28中,目标ID输出部分224读取在NVM206中存储的卡特有ID,并将卡特有ID输出到通信部分222和访问密钥生成部分232。
在步骤S29,通信部分222向R/W100发送卡特有ID作为目标ID,该卡特有ID是从目标ID输出部分224输入的。
在步骤S30,访问密钥生成部分232使得密钥管理部分236读取简并密钥,通过将个别化代码持有部分234所管理的个别化代码(A)应用到读取的简并密钥来生成访问密钥,并将访问密钥输出到数据处理部分238。
在步骤S31,数据处理部分238使用生成的访问密钥通过通信部分222来执行与R/W100的互相认证处理。在互相认证处理成功之后,数据处理部分238在步骤S32中执行用户块访问处理。在上述步骤之后,IC卡200的处理终止。
注意到,在上述描述中,在每次接收到轮询时,目标ID确定标记的状态被确定,但这可以被省略。相反,部分随机化ID、卡特有ID或加密ID可以事先与目标ID关联。
此外,在上述描述中,在向R/W100通知部分随机化ID或加密ID作为目标ID时,可读取和通知事先生成并被存储在NVM206中的值。但是,每次进行通知时,可重新生成(更新)部分随机化ID或加密ID。
[1.9.R/W的操作]
接下来,给出了R/W100在通信处理中执行的处理的详细描述。图13是图示了R/W100执行的处理的流程图。根据未示出的控制器的控制来开始该处理。
在步骤S40中,开始R/W100执行的处理。在步骤S41中,R/W100的通信部分122执行轮询,从位于R/W100附近的IC卡200获取目标ID,并将获取的目标ID输出到目标代码确定部分124。
在步骤S42,目标代码确定部分124确定目标ID的目标代码是IDr代码、IDc代码还是制造商代码,并向个别化代码生成部分126通知确定结果和目标ID。这里,当确定目标代码是IDr代码时,处理进入步骤S43。在该情形下,从IC卡200通知的目标ID是部分随机化ID。
在步骤S43,个别化代码生成部分126使用目标ID(部分随机化ID)中的卡号的低位2字节作为个别化代码的输入参数,并通过执行图10中的处理来生成个别化代码(B)。生成的个别化代码(B)被传递到访问密钥生成部分130。
在步骤S44,访问密钥生成部分130使得密钥管理部分132读取简并密钥,通过将个别化代码(B)应用到读取的简并密钥来生成访问密钥,并将访问密钥输出到数据处理部分134。
在步骤S45,数据处理部分134使用生成的访问密钥通过通信部分122来执行与IC卡200的互相认证处理。在互相认证处理成功之后,数据处理部分134在步骤S46中执行用户块访问处理。换句话说,数据处理部分134从IC卡200读取信息/向IC卡200写入信息。
在步骤S47,通信部分122向IC卡200发送随机数更改命令。响应于该随机数更改命令,IC卡200重新生成部分随机化ID。注意到步骤S47中的处理可被省略。或者,例如,随机数更改命令可被设计为仅在预定时区中执行通信处理时才被发送。在上述步骤之后,R/W100的处理终止。
同时,当在步骤S42中确定目标代码是IDc代码时,处理进入到步骤S48。在该情形下,从IC卡200通知的目标ID是加密ID。R/W100不仅接收加密ID还接收计数器值。
在步骤S48中,个别化代码生成部分126调用ID解密部分128来解密目标ID并提取原始卡特有ID。如图14所示,ID解密部分128通过使用ID加密密钥对从IC卡200接收的计数器值进行加密,之后提取加密结果的低位6字节。ID解密部分128计算提取的低位6字节和从IC卡200接收的加密ID的低位6字节的异或,以将卡号恢复为原始卡号,并将该卡号输出到个别化代码生成部分126。
在步骤S49,个别化代码生成部分126使用构成整个卡号的6字节作为个别化代码的输入参数,并通过执行图10的处理来生成个别化代码(A)。生成的个别化代码(A)被传递到访问密钥生成部分130。
在步骤S50,访问密钥生成部分130使得密钥管理部分132读取所述简并密钥,通过将个别化代码(A)应用到简并密钥来生成访问密钥,并将访问密钥输出到数据处理部分134。
在步骤S51中,数据处理部分134使用生成的访问密钥通过通信部分122来执行与IC卡200的互相认证处理。在互相认证处理成功之后,数据处理部分134在步骤S52中执行用户块访问处理。换句话说,数据处理部分134从IC卡200读取信息/向IC卡200写入信息。
在步骤S53中,通信部分122将加密ID更改命令发送到IC卡200。响应于该加密ID更改命令,IC卡200重新生成加密ID。注意到,步骤S53中的处理可被忽略。或者,例如,加密ID更改命令可被设计为仅在预定时区中执行通信处理时才被发送。在上述步骤之后,R/W100的处理结束。
同时,当在步骤S42中确定目标代码是制造商代码时,处理进入步骤S54。在该情形下,从IC卡200通知的目标ID是卡特有ID。
在步骤S54,个别化代码生成部分126使用形成目标ID的整个卡号的6字节作为个别化代码的输入参数,并通过执行图10的处理来生成个别化代码(A)。生成的个别化代码(A)被传递到访问密钥生成部分130。
在步骤S55,访问密钥生成部分130使得密钥管理部分132读取简并密钥,通过将个别化代码(A)应用到所述简并密钥来生成访问密钥,并将访问密钥输出到数据处理部分134。
在步骤S56,数据处理部分134使用生成的访问密钥通过通信部分122来执行与IC卡200的互相认证处理。在互相认证处理成功之后,数据处理部分134在步骤S57中执行用户块访问处理。换句话说,数据处理部分134从IC卡200读取信息/向IC卡200写入信息。在上述步骤之后,R/W100的处理终止。
如上所述,在第一实施例中,当IC卡200的标记持有部分226中持有的目标ID确定标记被设置为“有效加密ID”时,IC卡200由此向R/W100公布加密ID作为目标ID。由于在攻击者看来加密ID是完全随机的值,因此不可能基于加密ID来跟踪IC卡200的用户。
另一方面,有授权的服务提供商可以对解密ID进行解密,并将卡特有ID的卡号完全恢复为原始卡号。由此,不仅卡号的一部分而是整个卡号(6字节)可被用于生成依赖于IC卡200的完全不同的个别化代码(A)。由于这个原因,即使某一张IC卡200的个别化代码(A)被泄漏,个别化代码(A)也不会被允许用于其他IC卡200。因此,可能避免其他IC卡200的安全受威胁。这使得可能实现保护隐私并完全对密钥进行个别化,由此使其可能显著提升IC卡的安全性。
注意到,根据本公开的实施例的信息处理设备不限于作为本实施例的IC卡200,且可被用于其中具有和安装在其上的IC卡200相同的IC芯片的移动电话等。
此外,根据本公开的实施例的通信系统不限于根据本实施例的非接触通信系统,且可被用于其中执行互相认证处理的任意通信系统。
此外,本公开包括JP2011-71758A中描述的部分随机化ID处理,但该处理不是必须要被执行的。在该情形下,目标ID被限制为两种类型的目标ID,即卡特有ID和加密ID。
此外,在本实施例示出的例子中,个别化代码被用作参数,该参数被用于依赖于IC卡200来改变访问密钥的值。但是,被用于个别化访问密钥的参数不限于个别化代码。例如,可以以下列方式来个别化访问密钥。特别地,在IC卡200所属的服务区域中将个别化参数注册为服务密钥,且在生成简并密钥的处理中包含该服务密钥。于是,本实施例可被用于其中未使用个别化代码的另一系统。
同时,上述一系列过程可由硬件来执行,或可以由软件来执行。在该系列过程由软件来执行的情形下,将配置该软件的程序从记录该程序的介质安装到计算机中。这里,属于专用硬件的计算机以及通用目的个人计算机被包含在该计算机中,该计算机能够通过安装各种程序来执行各种功能。
由计算机执行的过程可以以根据如上所述的实施例的描述顺序的时间序列来执行,或者可以并行地或以调用时的需要时序来执行。
此外,可以通过一台计算机或以分布式的方式通过多台计算来执行该程序的过程。此外,程序可被传送到位于远程的计算机并由该远程计算机来执行。
此外,本说明书中的系统表示多种设备的整体。实施例不限于上述实施例,而可以在本公开的范围内被不同地修改。
<2.第二实施例>
[2.1.第二实施例的概述]
接下来,给出了本公开的第二实施例的描述。在第一实施例中,对于所有IC卡200共同的ID加密密钥被存储。在该情形下,在一张IC卡200的ID加密密钥被攻击者分析而泄漏时,可以从IC卡200的加密ID恢复卡特有ID,且由此用户隐私会被侵犯。
在第二实施例中,在如图5或14所示的ID加密密钥被泄漏的情况下,对所有IC卡200的隐私侵犯的风险被抑制。因此,在第二实施例中,还针对相应的IC卡200来个别化ID加密密钥。即使ID加密密钥被泄漏,安全性也可以被可靠地保证。
[2.2加密ID生成部分的处理]
图15图示了第二实施例中的每张IC卡200的加密ID生成部分230所执行的处理。IC卡200的其他功能块与第一实施例中的图6的相同。与第一实施例的不同在于,通过使用依赖于IC卡的不同个别化ID加密密钥来执行加密。个别化加密密钥是在IC卡200中事先注册的,例如,在IC卡200发行的时候注册。注意到,下面将基于图16来描述如何对个别化ID加密密钥进行个别化。此外,卡特有ID的整个卡号未被加密,且其某些字节保持未被加密。在图15的例子中,卡特有ID的D6和D7中的低位2字节的值被用作加密ID的一部分而未被加密。
[2.3.R/W的ID解密部分的处理]
图16图示了R/W100的ID解密部分128的处理。在第二实施例中,R/W100的其他功能块与图6中的相同。与第一实施例的不同在于,通过个别化ID加密密钥生成部分170来进行的处理,该处理被图16中的虚线围绕。从IC卡200接收的加密ID的低位2字节(D6和D7)未被加密,并采用卡特有ID的相应部分的值。通过向其添加固定数据(例如仅具有值0的数据),该2字节数据被填充,从而具有允许加密的块大小。通过使用R/W100持有的ID加密主密钥来对作为明文的数据进行加密,且该加密数据被用作IC卡200的个别化ID加密密钥。
IC卡200也执行与图16中的个别化ID加密密钥生成部分170的处理相同的处理,以生成与图15中相同的个别化ID加密密钥。个别化ID加密密钥是在制造IC卡200时生成的,并由IC卡200持有。
通过这种方式,被设置为依赖于IC卡200而变化的个别化ID加密密钥对应于在R/W100的个别化ID加密密钥生成部分170的处理中生成的个别化ID加密密钥。使用该个别化ID加密密钥来对从IC卡200接收的计数器值进行加密,且之后通过4字节提取部分128b来提取加密结果的低位4字节。ID解密部分128的异或部分128c计算所提取的4字节与从IC卡200接收的加密ID的4字节(D2到D5)的异或,以将卡特有ID的卡号恢复为原始卡号,并将卡号输出到个别化代码生成部分126。
[2.4.第二实施例中使用的加密ID的数据结构]
图17图示了第二实施例中使用的加密ID的数据结构。在加密ID中,将卡特有ID中的制造商代码替换为采用预定值的IDc代码,卡号的4字节被加密,且卡特有ID的卡号的低位2字节被用作加密ID的低位2字节
在攻击者成功分析一张IC卡200的个别化ID加密密钥的情况下,使用如上所述的依赖于IC卡200来个别化的个别化ID加密密钥,使得可能通过使用个别化ID加密密钥来最小化可被解密的加密ID的数量。在其中通过使用卡号的低位2字节来生成个别化ID加密密钥的图16的例子中,可以设置65536(2的十六次方)种个别化ID加密密钥。因此,即使一张IC卡200的个别化ID加密密钥被泄漏,该泄漏的影响被降低到未使用个别化ID加密密钥的情形的65536分之一。因此,有可能消除整个系统中对用户的隐私侵犯的风险。
同时,图16所示的用于生成个别化ID加密密钥的算法仅是示例。还可以通过使用对本领域技术人员已知的技术来改变算法或添加参数。
如上所述,根据第二实施例,ID加密密钥依赖于IC卡200而不同。在ID加密密钥被泄漏的情况下,可以抑制所有IC卡200的隐私侵犯的风险。
本领域技术人员应理解,依赖于设计需求和其他因素,可以有各种修改、组合、子组合和调整,只要它们在所附权利要求及其等同物的范围内。
此外,本技术还可以被如下配置。
(1)一种信息处理设备,包括
加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;
通信部分,其将加密ID作为要发送的ID信息发送到其他设备;
个别化代码持有部分,其事先持有能够在其他设备中通过对ID信息进行解密而生成的个别化代码;以及
访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥。
(2)根据(1)所述的信息处理设备,
其中,所述加密ID生成部分通过使用种子值来加密所述唯一ID,该种子值依赖于要生成的加密ID而变化。
(3)根据(1)所述的信息处理设备,
其中,所述加密ID生成部分基于唯一ID以及加密数据来生成加密ID,该加密数据是基于加密密钥生成的。
(4)根据(3)所述的信息处理设备,
其中,所述加密ID生成部分基于加密密钥以及种子值来生成加密数据,该种子值依赖于要生成的加密ID而变化。
(5)根据(4)所述的信息处理设备,
其中,所述通信部分将加密ID以及在生成加密ID时获取的种子值发送到其他设备。
(6)根据(1)所述的信息处理设备,还包括:
随机化ID生成部分,其对唯一ID的至少一部分进行随机化以生成随机化ID,
其中,所述通信部分将随机化ID作为ID信息发送到其他设备。
(7)根据(6)所述的信息处理设备,还包括:
标记持有部分;
其中,加密ID和随机化ID中的一个是基于该标记持有部分所持有的标记来生成的。
(8)根据(6)所述的信息处理设备,还包括:
操纵输入部分,其接收操纵输入,
其中,加密ID和随机化ID中的一个是基于操纵输入来生成的。
(9)根据(1)所述的信息处理设备,
其中,所述加密ID生成部分在开始与其他设备通信时生成所述加密ID。
(10)根据(1)所述的信息处理设备,
其中,所述加密ID生成部分响应于来自其他设备的指令来生成所述加密ID,并且
其中,所述信息处理设备包括
存储部分,其存储生成的加密ID。
(11)根据(3)所述的信息处理系统,
其中,所述加密密钥被个别化,以对应于唯一ID的至少一部分,并且
其中,所述通信部分以其他设备生成个别化加密密钥的方式来将唯一ID的该部分发送到其他设备。
(12)一种IC芯片,包括:
加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;
通信部分,其将加密ID作为要发送的ID信息发送到其他设备;
个别化代码持有部分,其事先持有能够在其他设备中通过对ID信息进行解密而生成的个别化代码;以及
访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥。
(13)根据(12)所述的IC芯片,
其中,所述加密ID生成部分通过使用种子值来加密所述唯一ID,该种子值依赖于要生成的加密ID而变化。
(14)根据(12)所述的IC芯片,
其中,所述加密ID生成部分通过使用加密数据的异或来生成加密ID,该加密数据是基于加密密钥和唯一ID生成的。
(15)根据(14)所述的IC芯片,
其中,所述加密ID生成部分基于加密密钥以及种子值来生成加密数据,该种子值依赖于要生成的加密ID而变化。
(16)根据(15)所述的IC芯片,
其中,所述通信部分将加密ID以及在生成加密ID时获取的种子值发送到其他设备。
(17)根据(12)所述的IC芯片,还包括:
随机化ID生成部分,其随机化唯一ID的至少一部分以生成随机化ID,
其中,所述通信部分将随机化ID作为ID信息发送到其他设备。
(18)根据(17)所述的IC芯片,还包括:
标记持有部分;
其中,加密ID和随机化ID中的一个是基于该标记持有部分所持有的标记来生成的。
(19)根据(14)的IC芯片,
其中,所述加密密钥被个别化,以对应于唯一ID的至少一部分,并且
其中,所述通信部分将唯一ID的该部分发送到其他设备,以便其他设备生成个别化加密密钥。
(20)一种信息处理方法,包括:
对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;
将加密ID作为要发送的ID信息发送到其他设备;以及
基于能够在其他设备中通过对ID信息进行解密而生成的个别化代码来生成用于其他设备的认证的访问密钥。
(21)一种信息处理设备,包括:
通信部分,其向其他设备发送响应请求并接收加密ID,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;
个别化代码生成部分,其通过对加密ID进行解密来生成个别化代码,该个别化代码由其他设备持有;以及
访问密钥生成部分,其基于个别化代码来生成用于其他设备的认证的访问密钥。
(22)一种信息处理方法,包括:
向其他设备发送响应请求并接收加密ID,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;
通过对加密ID进行解密来生成个别化代码,该个别化代码由其他设备持有;以及
基于个别化代码来生成用于其他设备的认证的访问密钥。
(23)一种程序,使得计算机用作:
用于向其他设备发送响应请求并接收加密ID的装置,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;
通过对加密ID进行解密来生成个别化代码的装置,该个别化代码由其他设备持有;以及
基于个别化代码来生成用于其他设备的认证的访问密钥的装置。
本公开包含与2012年5月30日向日本专利局提交的日本优先专利申请JP2012-123045中所公开的主题,其全部内容通过引用结合于此。
Claims (23)
1.一种信息处理设备,包括
加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;
通信部分,其将加密ID作为要发送的ID信息发送到其他设备;
个别化代码持有部分,其事先持有能够在其他设备中通过对ID信息进行解密而生成的个别化代码;以及
访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥;以及
标记持有部分,其提供目标ID确定标记,
其中所述目标ID确定标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID,且其中所述加密ID响应于指示加密ID将被用作目标ID的目标ID确定标记而生成。
2.如权利要求1所述的信息处理设备,
其中,所述加密ID生成部分通过使用种子值来加密唯一ID,该种子值依赖于要生成的加密ID而变化。
3.如权利要求1所述的信息处理设备,
其中,所述加密ID生成部分基于唯一ID以及加密数据来生成加密ID,该加密数据是基于加密密钥生成的。
4.如权利要求3所述的信息处理设备,
其中,所述加密ID生成部分基于加密密钥以及种子值来生成加密数据,该种子值依赖于要生成的加密ID而变化。
5.如权利要求4所述的信息处理设备,
其中,所述通信部分将加密ID以及在生成加密ID时获取的种子值发送到其他设备。
6.如权利要求1所述的信息处理设备,还包括:
随机化ID生成部分,其对唯一ID的至少一部分进行随机化以生成随机化ID,
其中,所述通信部分将随机化ID作为ID信息发送到其他设备。
7.如权利要求6所述的信息处理设备,
其中,所述加密ID和所述随机化ID中的一个是基于该标记持有部分所持有的标记来生成的。
8.如权利要求6所述的信息处理设备,还包括:
操纵输入部分,其接收操纵输入,
其中,所述加密ID和所述随机化ID中的一个是基于操纵输入来生成的。
9.如权利要求1所述的信息处理设备,
其中,所述加密ID生成部分在开始与其他设备的通信时生成所述加密ID。
10.如权利要求1所述的信息处理设备,
其中,所述加密ID生成部分响应于来自其他设备的指令来生成所述加密ID,并且
其中,所述信息处理设备包括:
存储部分,其存储生成的加密ID。
11.如权利要求3所述的信息处理设备,
其中,所述加密密钥被个别化,以对应于唯一ID的至少一部分,并且
其中,所述通信部分将唯一ID的该部分发送到其他设备,以便其他设备生成个别化加密密钥。
12.一种IC芯片,包括:
加密ID生成部分,其对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;
通信部分,其将加密ID作为要发送的ID信息发送到其他设备;
个别化代码持有部分,其事先持有能够在其他设备中通过对ID信息进行解密而生成的个别化代码;
访问密钥生成部分,其基于个别化代码持有部分所持有的个别化代码来生成用于其他设备的认证的访问密钥;以及
标记持有部分,其提供目标ID确定标记,
其中所述目标ID确定标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID,且其中所述加密ID响应于指示加密ID将被用作目标ID的目标ID确定标记而生成。
13.如权利要求12所述的IC芯片,
其中,所述加密ID生成部分通过使用种子值来加密唯一ID,该种子值依赖于要生成的加密ID而变化。
14.如权利要求12所述的IC芯片,
其中,所述加密ID生成部分通过使用加密数据和唯一ID的异或来生成所述加密ID,该加密数据是基于加密密钥生成的。
15.如权利要求14所述的IC芯片,
其中,所述加密ID生成部分基于加密密钥以及种子值来生成加密数据,该种子值依赖于要生成的加密ID而变化。
16.如权利要求15所述的IC芯片,
其中,所述通信部分将所述加密ID以及在生成所述加密ID时获取的种子值发送到其他设备。
17.如权利要求12所述的IC芯片,还包括:
随机化ID生成部分,其对唯一ID的至少一部分进行随机化以生成随机化ID,
其中,所述通信部分将随机化ID作为ID信息发送到其他设备。
18.如权利要求17所述的IC芯片,
其中,所述加密ID和所述随机化ID中的一个是基于该标记持有部分所持有的标记来生成的。
19.如权利要求14所述的IC芯片,
其中,所述加密密钥被个别化,以对应于唯一ID的至少一部分,并且
其中,所述通信部分将唯一ID的该部分发送到其他设备,以便其他设备生成个别化加密密钥。
20.一种信息处理方法,包括:
对唯一ID进行加密以生成加密ID,该唯一ID被设置为对于信息处理设备唯一的ID;
将加密ID作为要发送的ID信息发送到其他设备;
基于能够在其他设备中通过对ID信息进行解密而生成的个别化代码来生成用于其他设备的认证的访问密钥;以及
提供目标ID确定标记,
其中所述目标ID确定标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID,且其中所述加密ID响应于指示加密ID将被用作目标ID的目标ID确定标记而生成。
21.一种信息处理设备,包括:
通信部分,其向其他设备发送响应请求并接收加密ID,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;
个别化代码生成部分,其通过对加密ID进行解密来生成个别化代码,该个别化代码由其他设备持有;
访问密钥生成部分,其基于个别化代码来生成用于其他设备的认证的访问密钥;以及
标记持有部分,其提供目标ID确定标记,
其中所述目标ID确定标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID,且其中所述加密ID响应于指示加密ID将被用作目标ID的目标ID确定标记而生成。
22.一种信息处理方法,包括:
向其他设备发送响应请求并接收加密ID,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;
通过对加密ID进行解密来生成个别化代码,该个别化代码由其他设备持有;
基于个别化代码来生成用于其他设备的认证的访问密钥;以及
提供目标ID确定标记,
其中所述目标ID确定标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID,且其中所述加密ID响应于指示加密ID将被用作目标ID的目标ID确定标记而生成。
23.一种计算机可读记录介质,其上存储有程序,所述程序使得计算机用作:
用于向其他设备发送响应请求并接收加密ID的装置,该加密ID是由其他设备基于唯一ID生成的,该唯一ID被设置为对于其他设备唯一的ID;
用于通过对加密ID进行解密来生成个别化代码的装置,该个别化代码由其他设备持有;
用于基于个别化代码来生成用于其他设备的认证的访问密钥的装置;以及
用于提供目标ID确定标记的装置,
其中所述目标ID确定标记指明在未被处理的卡特有ID、部分随机化ID和加密ID中的哪一个将被用作目标ID,且其中所述加密ID响应于指示加密ID将被用作目标ID的目标ID确定标记而生成。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012123045A JP2013251609A (ja) | 2012-05-30 | 2012-05-30 | 情報処理装置、icチップ及び情報処理方法 |
JP2012-123045 | 2012-05-30 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103457731A CN103457731A (zh) | 2013-12-18 |
CN103457731B true CN103457731B (zh) | 2018-07-20 |
Family
ID=49670266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310196799.1A Active CN103457731B (zh) | 2012-05-30 | 2013-05-24 | 信息处理设备、集成电路芯片以及信息处理方法 |
Country Status (3)
Country | Link |
---|---|
US (2) | US9065635B2 (zh) |
JP (1) | JP2013251609A (zh) |
CN (1) | CN103457731B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014117311B4 (de) | 2014-11-26 | 2017-04-06 | Infineon Technologies Ag | Kommunikationsanordnung und Verfahren zum Generieren eines Kryptografieschlüssels |
KR102527330B1 (ko) * | 2015-09-17 | 2023-05-02 | 삼성전자주식회사 | 입력 장치 및 그 제어 방법 |
KR101792498B1 (ko) * | 2016-04-06 | 2017-11-20 | 펜타시큐리티시스템 주식회사 | 키 동기화를 이용한 정보 보안 방법 및 정보 보안 시스템 |
CN106357505A (zh) * | 2016-08-30 | 2017-01-25 | 张颖 | 一种基于局域网使用平板电脑的即时通讯系统及方法 |
JPWO2021020144A1 (zh) * | 2019-07-30 | 2021-02-04 | ||
US11374770B2 (en) | 2019-11-25 | 2022-06-28 | Texas Instruments Incorporated | Data integrity validation via degenerate keys |
US20230046788A1 (en) * | 2021-08-16 | 2023-02-16 | Capital One Services, Llc | Systems and methods for resetting an authentication counter |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1596522A (zh) * | 2001-09-27 | 2005-03-16 | 松下电器产业株式会社 | 加密装置、解密装置、密钥生成装置、版权保护系统和密码通信装置 |
CN1846455A (zh) * | 2003-08-29 | 2006-10-11 | 松下电器产业株式会社 | 控制装置和控制方法 |
CN102035650A (zh) * | 2009-09-25 | 2011-04-27 | 索尼公司 | 通信设备、通信方法、信息处理设备和方法、通信系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438133B1 (en) * | 1998-09-09 | 2002-08-20 | Cisco Technology, Inc. | Load balancing mechanism for a translational bridge environment |
JP3610341B2 (ja) * | 2002-02-19 | 2005-01-12 | キヤノン株式会社 | ネットワーク機器及び遠隔制御中継サーバ |
JP3965126B2 (ja) * | 2002-03-20 | 2007-08-29 | 松下電器産業株式会社 | コンテンツを再生する再生装置 |
JP4375415B2 (ja) * | 2007-02-28 | 2009-12-02 | 株式会社デンソー | 自動料金収受システム、車載装置及び端末 |
JP2009258860A (ja) * | 2008-04-14 | 2009-11-05 | Sony Corp | 情報処理装置および方法、記録媒体、プログラム、並びに情報処理システム |
JP5526747B2 (ja) * | 2009-12-04 | 2014-06-18 | パナソニック株式会社 | 復号化装置、暗号化装置、復号化方法、暗号化方法、および通信システム |
-
2012
- 2012-05-30 JP JP2012123045A patent/JP2013251609A/ja active Pending
-
2013
- 2013-05-17 US US13/896,626 patent/US9065635B2/en active Active
- 2013-05-24 CN CN201310196799.1A patent/CN103457731B/zh active Active
-
2015
- 2015-05-20 US US14/717,916 patent/US10027639B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1596522A (zh) * | 2001-09-27 | 2005-03-16 | 松下电器产业株式会社 | 加密装置、解密装置、密钥生成装置、版权保护系统和密码通信装置 |
CN1846455A (zh) * | 2003-08-29 | 2006-10-11 | 松下电器产业株式会社 | 控制装置和控制方法 |
CN102035650A (zh) * | 2009-09-25 | 2011-04-27 | 索尼公司 | 通信设备、通信方法、信息处理设备和方法、通信系统 |
Also Published As
Publication number | Publication date |
---|---|
US9065635B2 (en) | 2015-06-23 |
US20150256524A1 (en) | 2015-09-10 |
US10027639B2 (en) | 2018-07-17 |
US20130322619A1 (en) | 2013-12-05 |
JP2013251609A (ja) | 2013-12-12 |
CN103457731A (zh) | 2013-12-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103457731B (zh) | 信息处理设备、集成电路芯片以及信息处理方法 | |
US11615411B2 (en) | POS system with white box encryption key sharing | |
EP3324322B1 (en) | Secure mobile device transactions | |
US10089627B2 (en) | Cryptographic authentication and identification method using real-time encryption | |
CN105722067B (zh) | 移动终端上数据加/解密方法及装置 | |
CN106067205B (zh) | 一种门禁鉴权方法和装置 | |
EP2839602A1 (en) | Multi-issuer secure element partition architecture for nfc enabled devices | |
JPH06511125A (ja) | 能動カードの個別化方法 | |
EP2695119A1 (en) | Payment system for authorising a transaction between a user device and a terminal | |
US20170230365A1 (en) | Method and system for securing electronic data exchange between an industrial programmable device and a portable programmable device | |
CN105005731A (zh) | 一种数据加密、解密的方法及移动终端 | |
CN107508679A (zh) | 一种智能终端主控芯片与加密芯片的绑定及认证方法 | |
WO2019109640A1 (zh) | 一种锁定sim卡的方法及装置 | |
JP4696449B2 (ja) | 暗号化装置およびその方法 | |
KR100968494B1 (ko) | Otp를 이용한 태그 보안 처리 방법 | |
CN200993803Y (zh) | 网上银行系统安全终端 | |
US8798261B2 (en) | Data protection using distributed security key | |
EP2136311B1 (en) | Data keeping method, client apparatus, storage device and program | |
CN100462992C (zh) | 生产信息安全设备的方法和系统 | |
CN113067701B (zh) | 一种更新绑定关系的方法及装置 | |
CN111624934B (zh) | 一种plc应用程序数据保护系统和方法 | |
CN108471418A (zh) | 终端设备的数据安全传输方法 | |
CN105843782A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |