信息处理设备和方法、记录介质和程序的制作方法

文档序号:6649423阅读:190来源:国知局
专利名称:信息处理设备和方法、记录介质和程序的制作方法
技术领域
本发明涉及信息处理设备和方法、记录介质和程序,尤其涉及可以防止数据和信息的篡改和泄漏的信息处理设备和方法、记录介质和程序。
背景技术
由于信息处理技术的发展,要经由通信网络发送和接收大量的信息。例如,在电子现金(e-cash)系统和安全系统中使用的IC卡(智能卡)具有执行各种处理任务的内置的中央处理单元(CPU)和储存处理所需要的数据的存储器设备。在IC卡与预定的读取器/写入器电接触期间,可以发送和接收数据。
在IC卡的生命周期中,添加了用于储存提供服务所需要的数据的新文件夹,或者改变了存取数据所需要的密钥,即执行了所谓的“卡发行操作”。
图1是说明已知IC卡的生命周期的流程图。
由预定卡生产商制造IC卡,然后将该IC卡作为不具有提供服务所需要的数据或者存取数据所需要的密钥的原始IC卡,发货给IC卡发行者(在下文中,这样的卡状态被称为“生产商发货状态”)。
然后IC卡发行者执行处理,诸如在IC卡的存储区域中生成用于在其中储存数据的主文件夹(MF),以及记录用于相互验证的认证密钥(在下文中,这样的处理称为“零级发行操作”)。然后,该IC卡被发送到服务提供者,其通过使用该IC卡作为具有MF和相互验证密钥的IC卡,向用户提供预定的服务(在下文中,这样的卡状态称为“零级卡发行状态”)。
随后,服务供应商执行处理,诸如在MF内保留用于提供服务的存储区域(专用文件(DF)),以及写入存取保留的DF所需要的密钥(在下文中,这样的处理称为“初级发行操作”)。
然后,经受了初级发行操作的IC卡作为在主文件夹中具有DF和用于存取DF的密钥的IC卡,分发给向用户提供服务的机构,例如分发给服务供应商的办事处(在下文中,这样的卡状态称为“初级卡发行状态”)。
然后,在办事处,执行诸如把用户接收服务所需要的数据,例如个人信息,以及存取该数据所需要的密钥写入到DF中的处理(在下文中,这样的处理称为“二级发行操作”),而且然后将该IC卡分发给用户。
用户通过使用其中写入了诸如个人信息之类的数据和用于存取该数据的密钥的IC卡,接收由服务供应商所提供的服务(在下文中,这样的卡状态称为“二级卡发行状态”)。
当废弃IC卡时,它由服务供应商收回。服务供应商擦除(删除)存储在收回的IC卡中的全部数据,并且将没有数据(销毁(disposal)状态)的IC卡递交给销毁代理,并且销毁代理销毁该IC卡。
用这样的方式,在IC卡生命周期的每个状态中,执行IC卡的IC卡发行操作。
在某些巳知的IC卡中,例如,日本未经审查的专利申请公开2000-36014中公开的IC卡,在IC卡发行操作中,接收并且解密从IC卡发行机器发送的、加密的卡发行信息。也就是说,在这个IC卡中,通过解密所接收的卡发行信息并且记录解密的卡发行信息来执行IC卡发行操作。

发明内容
然而,在上述技术中,虽然可以由IC卡执行的处理类型在IC卡生命周期的每个状态中不同,但是IC卡无条件地接收包括不应当被处理的命令在内的全部命令,并且执行全部所接收的命令。
另外,在IC卡生命周期的每个状态中,使用了相同的验证密钥用于实施与通信方的相互验证。因此,拥有验证密钥的卡发行者或者服务供应商可以向IC卡传送不应该被处理的命令、并且允许IC卡执行那个命令是可能的。
当使IC卡可销毁时,可以擦除记录在IC卡上的数据,或者可以改变用于相互验证的验证密钥。然而,因为IC卡可以接收包括不应该被处理的命令在内的所有命令,并且执行所有接收的命令,所以可能不利地重新构造所清除的数据。
因此很难防止数据或者信息的篡改或者泄漏。
鉴于上述背景,限制在IC卡的生命周期的每个状态中要被执行的处理是合乎需要的。
在IC卡的生命周期的各个状态,使用不同的验证密钥实施相互验证也是合乎需要的。
依据本发明的实施例,提供了一种信息处理设备,其包括接收装置,用于接收请求执行预定处理的命令;存储装置,用于储存数据以及存储第一信息和第二信息,第一信息指示在信息处理设备的生命周期的多个阶段当中、由存储的数据确定的当前阶段,第二信息指示在当前阶段的可执行命令,为多个阶段中的每个阶段确定该可执行命令;以及确定装置,用于基于第一信息和第二信息确定由接收装置所接收的命令是否是当前阶段的可执行命令。
在本说明书中,术语“信息处理设备”不仅意指IC卡,而且还意指其它的数据存储/通信设备,诸如例如,具有IC卡功能的便携式电话或者PDA。这些设备包括至少一个被配置为起IC卡作用的IC芯片。
信息处理设备还可以包括控制装置,用于控制要被更新的第一信息,以便依据执行的命令改变信息处理设备的当前阶段。
存储在存储装置中的第二信息可以包括,当信息处理设备处于特定阶段时、指示没有命令是可执行的信息,以及当信息处理设备处于该特定阶段时,确定装置可以基于第一信息和第二信息确定所接收的命令不是可执行的。
依据本发明的另一个实施例,提供了一种信息处理方法,其包括步骤控制接收请求执行预定处理的命令;控制第一信息的存储,第一信息指示,在信息处理设备的生命周期中的多个预定阶段当中,由存储的数据所确定的当前阶段;以及基于第一信息和指示当前阶段中的可执行命令的第二信息确定所接收的命令是否是当前阶段的可执行命令,其中为多个预定阶段中的每个阶段确定可执行命令。
依据本发明另一个实施例的记录介质中的程序包括步骤控制接收请求执行预定处理的命令;控制第一信息的存储,第一信息指示,在信息处理设备的生命周期中的多个预定阶段当中,由所存储的数据确定的当前阶段;以及基于第一信息和指示当前阶段中的可执行命令的第二信息确定所接收的命令是否是当前阶段的可执行命令,其中为多个预定阶段中的每个阶段确定该可执行命令。
依据本发明另一个实施例的程序允许计算机执行步骤控制接收请求执行预定处理的命令;控制第一信息的存储,第一信息指示,在信息处理设备的生命周期中的多个预定阶段当中,由所存储的数据确定的当前阶段;以及基于第一信息和指示当前阶段中的可执行命令的第二信息确定所接收的命令是否是当前阶段的可执行命令,其中为多个预定阶段中的每个阶段确定可执行命令。
依据上述信息处理设备和方法、记录介质、以及程序,接收请求执行预定处理的命令;并且存储预定数据和第一信息以及第二信息,其中第一信息指示,在信息处理设备的生命周期中的多个预定阶段当中、由所存储的数据确定的当前阶段,第二信息指示当前阶段的可执行命令,为多个预定阶段中的每个阶段确定该可执行命令。基于第一信息和第二信息,确定所接收的命令是否是当前阶段的可执行命令。
依据本发明的实施例,提供了一种信息处理设备,其包括接收装置,用于接收请求执行预定处理的命令;第一存储装置,用于存储第一信息和第二信息,第一信息指示在信息处理设备的生命周期中的预定多个阶段当中、由所存储的数据确定的当前阶段,第二信息指示当前阶段的可执行命令,为多个预定阶段中的每个阶段确定该可执行命令;确定装置,用于基于第一信息和第二信息确定由接收装置所接收的命令是否是当前阶段的可执行命令;以及第二存储装置,用于存储验证数据,其用于相互验证处理以及用于加密和解密与多个预定阶段中的每一个相关联的预定数据。
第二存储装置还可以储存用于生成验证数据的数据,而且信息处理设备还可以包括生成装置,其用于基于用于生成验证数据的数据,生成用于多个预定阶段中的每个阶段的不同验证数据。
依据上述信息处理设备,接收请求执行预定处理的命令;并且存储预定数据和第一信息以及第二信息,其中第一信息指示,在信息处理设备的生命周期中的多个预定阶段当中、由所存储的数据确定的当前阶段,第二信息指示当前阶段的可执行命令,其中为多个预定阶段中的每个阶段确定可执行命令。基于第一信息和第二信息确定所接收的命令是否是当前阶段的可执行命令。存储验证数据,其用于相互验证处理以及用于加密或者解密与多个预定阶段中的每个阶段相关联的预定数据。
在本说明书中,术语“通信”不仅意指无线通信或者有线通信,而且还意指包括无线通信和有线通信的通信,即在一个区域执行无线通信并且在另一个区域执行有线通信的通信。此外,可以从第一设备到第二设备执行有线通信,而且可以从第二设备到第一设备执行无线通信。
依据本发明的实施例,可以防止数据或者信息的篡改或者泄漏。


图1说明了已知IC卡的生命周期;图2说明了依据本发明实施例的IC卡的生命周期;图3为一个框图,说明了依据本发明实施例的无线通信系统;图4为说明读取器/写入器的功能配置的框图;图5为说明IC卡的功能配置的框图;图6为说明命令发送处理的流程图;图7为说明命令执行处理的流程图;图8说明了生命周期阶段表;图9说明了命令表;图10为说明在生产商发货阶段的命令执行处理的流程图;图11说明了IC卡的生产商发货阶段;图12说明了IC卡的零级卡发行阶段;图13为说明在零级卡发行阶段的命令执行处理的流程图;图14说明了IC卡的初级卡发行阶段;图15为说明在初级卡发行阶段的命令执行处理的流程图;图16说明了IC卡的二级卡发行阶段;以及图17为说明在二级卡发行阶段中的命令执行处理的流程图。
具体实施例方式
在描述本发明的实施例之前,在下面论述在这个说明书中公开的发明和本发明实施例之间的对应关系。这个描述用于确保在这个说明书中描述了支持在这个说明书中所公开的本发明的实施例。因此,即使实施例没有被描述为与本发明有关,也未必是意指该实施例不与本发明有关。相反地,即使此处将实施例描述为与本发明有关,也未必是意指该实施例不与本发明的其它方面有关。
此外,这个描述不应该被看作是限制在该实施例中公开的本发明的所有方面都在说明书中描述了。也就是说,该描述没有否认在这个说明书中描述、但是没有在这个申请的发明中主张权利的本发明的方面的存在,即没有否认在将来可以通过分案申请主张权利、或者可以通过修改而另外地主张权利的本发明的方面的存在。
依据本发明的实施例的信息处理设备包括接收装置(例如,图5所示的天线101),用于接收请求执行预定处理的命令;存储装置(例如,图5所示的表格存储单元108),用于存储预定数据以及存储第一信息(例如,图8所示的生命周期阶段表)和第二信息(例如,图9所示的命令表),其中第一信息指示在信息处理设备生命周期中的多个预定阶段当中,由所存储的数据确定的当前阶段,第二信息指示当前阶段的可执行命令,为多个预定阶段中的每个阶段确定可执行命令;以及确定装置(图5所示的确定单元131),用于基于第一信息和第二信息,确定由接收装置所接收的命令是否是在当前阶段的可执行命令。
信息处理设备还可以包括控制装置(例如,图5所示的控制器104),用于控制要被更新的第一信息(例如,图8所示的生命周期阶段表),以便依据所执行的命令改变信息处理设备的当前阶段。
存储在存储装置(例如,图5所示的表格存储单元108)中的第二信息(例如,图9所示的命令表)可以包括指示当信息处理设备处于特定阶段(例如,下面参考图8所示的生命周期阶段表论述的销毁阶段)时,没有命令可执行的信息,以及当信息处理设备处于该特定阶段时,确定装置(例如,图5所示的确定单元131)可以基于第一和第二信息确定所接收的命令是不可执行的。
依据本发明另一个实施例的信息处理方法包括步骤控制请求执行预定处理的命令的接收(例如,图7中的步骤S32);控制第一信息(例如,图8所示的生命周期阶段表)的存储,其中第一信息指示在信息处理设备生命周期中的多个预定阶段当中,由所存储的数据确定的当前阶段(例如,图10中的步骤S70);以及基于第一信息和指示在当前阶段可执行的命令的第二信息(例如,图9所示的命令表)、确定所接收的命令是否是在当前阶段可执行的命令(例如,图10中的步骤S61和S66),其中为多个预定阶段中的每个阶段确定可执行命令。
依据本发明实施例的记录介质的处理和依据本发明实施例的程序的处理基本上类似于上述信息处理设备,并且因此省略它们的说明。
依据本发明的另一个实施例的信息处理设备包括接收装置(例如,图5所示的天线101),用于接收请求执行预定处理的命令;第一存储装置(例如,图5所示的表格存储单元108),用于存储第一信息(例如,图8所示的生命周期阶段表)和第二信息(例如,图9所示的命令表),其中第一信息指示在信息处理设备生命周期中的多个预定阶段当中、由所存储的数据确定的当前阶段,第二信息指示在当前阶段可执行的命令,为多个预定阶段中的每个阶段确定该可执行命令;确定装置(例如,图5所示的确定单元131),用于基于第一信息和第二信息、确定由接收装置所接收的命令是否是在当前阶段的可执行命令;以及第二存储装置(例如,图5所示的存储器107),用于存储验证数据(例如,图12所示的发货密钥A和B),这些数据用于相互验证处理以及用于加密或者解密与多个预定阶段中的每个阶段相关联的预定数据。
第二存储装置(例如,图5所示的存储器107)还可以存储用于生成验证数据的数据(例如,图14所示的服务供应商密钥A和B),而且信息处理设备还可以包括生成装置(例如,图5所示的控制器104),用于基于用于生成验证数据的数据、生成用于多个预定阶段中每个阶段的不同的验证数据。
本发明的实施例可以在用于发送和接收数据的信息处理系统中使用,或者在经由有线或者无线通信网络使用IC卡的电子现金系统或者安全系统中使用。
下面通过优选实施例的说明、参考附图详细地描述本发明。
图2说明了依据本发明实施例的IC卡的生命周期。
由预定卡生产商制造IC卡,然后将该IC卡作为不具有用于提供服务的数据或者用于存取数据的密钥的IC卡、发货给IC卡发行者(在下文中,这样的卡阶段被称为“生产商发货阶段”)。在处于生产商发货阶段的IC卡上,记录生产商号码,其用作指定制造该IC卡的卡生产商的信息。
IC卡的生命周期中的每个阶段由记录在IC卡中的数据所确定,而且IC卡的阶段由诸如发行IC卡的命令之类的预定命令的执行进行改变。
IC卡发行者通过操作IC卡发行机器(读取器/写入器)向处于生产商发货阶段的IC卡发送零级发行命令,并且允许IC卡执行预定的处理以执行零级发行操作。
处于生产商发货阶段的IC卡接收来自读取器/写入器的零级发行命令,并且执行该命令。在这种情况下,IC卡记录包含在零级发行命令中的数据,例如,用作指定该IC卡的信息的设备标识(ID)号、用于储存提供服务所需要的数据的主文件夹(MF)、以及发货密钥,该密钥用作用来实施与服务供应商的相互验证的验证密钥。
IC卡发行者将经受了零级发行操作的IC卡(在下文中,这样的卡阶段称为“零级卡发行阶段”)发货给服务供应商,其通过使用IC卡向用户提供预定的服务。
服务供应商通过操作读取器/写入器向处于零级卡发行阶段的IC卡发送初级发行命令,并且允许IC卡执行预定的处理以执行初级发行操作。
IC卡然后从读取器/写入器接收该初级发行命令,并且执行该命令。在这种情况下,IC卡基于初级发行命令记录例如用于储存使用服务所需要的数据的文件夹/目录(DF)和基本文件(EF),以及存取DF或者EF所需要的验证密钥,作为取决于MF的数据。
在DF中,存储对应于文件的EF。在国际标准化组织(ISO)7816中定义了DF和EF。
服务供应商将经受了初级发行操作的IC卡(在下文中,这样的卡阶段称为“初级卡发行阶段”)分发给诸如服务供应商的办事处之类、向用户提供服务的机构。
在接收该IC卡的办事处,服务供应商通过操作读取器/写入器向处于初级卡发行阶段的IC卡发送二级发行命令或者全部重置命令,其指示擦除(删除)记录在IC卡上的数据以把IC卡重置到零级卡发行阶段的指令,并且允许IC卡执行预定的处理。
当例如从读取器/写入器接收全部重置命令时,IC卡擦除DF、EF、以及用于存取DF或者EF的验证密钥。在执行全部重置命令之后,IC卡的生命周期阶段被重置到零级卡发行阶段。
当例如从读取器/写入器接收二级发行命令时,IC卡基于二级发行命令、记录诸如用户接收服务所需要的个人信息以及存取数据所需要的验证密钥之类的数据,作为取决于DF的数据。
换句话说,IC卡基于二级发行命令、在EF中存储诸如用户接收服务所需要的个人信息、以及存取数据所需要的验证密钥之类的数据,作为取决于DF的数据。
在办事处,服务供应商通过操作读取器/写入器向处于二级卡发行阶段的IC卡发送全部重置命令或者数据重置命令,其中全部重置命令用于擦除记录在IC卡上的数据以把IC卡重置到零级卡发行阶段,数据重置命令用于擦除记录在IC卡上的个人信息以把IC卡重置到初级卡发行阶段,并且允许IC卡执行预定处理。
当例如从读取器/写入器接收全部重置命令时,IC卡擦除DF、EF、以及存取DF或者EF所需要的验证密钥。执行了全部重置命令的IC卡的生命周期阶段被重置到零级卡发行阶段。
当例如从读取器/写入器接收数据重置命令时,IC卡擦除诸如用户接收服务所需要的个人信息以及存取数据所需要的验证密钥之类的数据。执行了数据复位命令的IC卡的生命周期阶段被重置到初级卡发行阶段。
在相应的办事处,将经受了二级发行操作的IC卡(二级卡发行阶段)分发给用户。用户然后使用在其上记录了该用户个人信息的IC卡,作为例如电子兑换票或者电子钱包,以接收由服务供应商提供的服务。
当废弃IC卡时,它由服务供应商收回。服务供应商通过操作读取器/写入器发送终止命令,用于擦除存储在所收回的IC卡中的数据,以及用于把IC卡重置到其中不能执行命令的销毁阶段,并且允许IC卡执行预定的处理。
当从读取器/写入器接收终止命令时,IC卡擦除所记录的数据。执行了终止命令的IC卡的生命周期阶段被设置为销毁阶段,而且处于销毁阶段的IC卡不执行任何命令。
然后,服务供应商从用户收回该IC卡并且把它递送给销毁代理,并且销毁代理物理地销毁该IC卡。
用这样的方式,在IC卡的生命周期的每个阶段中,执行IC卡的发行操作。IC卡存储表明IC卡的生命周期阶段以及可以在每个阶段执行的命令的信息,而且即使指示了不应该被执行的命令的执行,IC卡也不会执行那个命令。
在生命周期的每个阶段,IC卡从读取器/写入器接收各种命令并且执行它们。
图3说明了包括读取器/写入器11和IC卡12的无线通信系统。读取器/写入器11和IC卡12通过使用电磁波执行无接触的无线通信,以在它们之间发送和接收数据。
读取器/写入器11发射无线电波(电磁波),以通过执行例如轮询来检测IC卡。
当通过将IC卡12带入与读取器/写入器11紧密接触而由读取器/写入器11检测到该IC卡时,如有必要,读取器/写入器11和IC卡12通过发送和接收预定数据来实施相互验证。
在建立了相互验证之后,读取器/写入器11生成诸如IC卡发行之类的、指示IC卡12执行预定处理的命令,并且通过无线通信向IC卡12发送所生成的命令。
当从读取器/写入器11接收命令时,IC卡12基于表明IC卡12的生命周期阶段以及可以在IC卡12的每个阶段中执行的命令的信息,确定所接收的命令是否是可以在IC卡12的当前生命周期阶段中执行的命令。
如果确定所接收的命令是可以在IC卡12的该生命周期阶段执行的命令,则IC卡12执行所接收的命令。相反,如果确定所接收的命令不是可以在IC卡12的该生命周期阶段执行的命令,则IC卡12不执行所接收的命令。
例如,现在假定,IC卡12的生命周期阶段是其中仅仅可以执行零级发行命令的生产商发货阶段。在这种情况下,响应于初级发行命令,IC卡12确定所接收的命令不是可以在IC卡12的该生命周期阶段执行的命令,而且不执行所接收的命令。
如果IC卡12的生命周期阶段是销毁阶段,则IC卡12既不实施相互验证也不执行所接收的命令。
图4为说明读取器/写入器11的功能配置的框图。
读取器/写入器11包括控制器31、存储器32、信号处理单元(SPU)33、调制器34、振荡电路35、天线36、解调器37、以及驱动器38。
控制器31生成指示IC卡12执行预定处理的各种命令,并且向SPU 33提供所生成的命令。例如,控制器31生成零级发行命令、全部重置命令、终止命令、以及实施相互验证的命令(在下文中也称为“相互验证命令”),并且向SPU提供所生成的命令。
控制器31包括加密单元51和解密单元52。如有必要,控制器31生成要在各种命令中存储的数据。加密单元51通过如有必要、使用记录在存储器32中的验证密钥,加密由控制器31生成并且存储在命令中的数据。例如,加密单元51通过使用记录在存储器32中的相应验证密钥,加密由控制器31生成并且要存储在相互验证命令中的数据。
解密单元52通过使用如有必要、记录在存储器32中的验证密钥,解密从SPU 33提供的数据。也就是说,如果从SPU 33提供的数据由预定方法加密,则解密单元52通过使用与加密方法相关联的解密方法,用记录在存储器32中的验证密钥解密从SPU 33提供的数据。如有必要,控制器31然后将由解密单元52解密的数据提供给存储器32。
如果从SPU 33提供的数据没有被加密,则解密单元52不解密该数据。
控制器31读取从附于读取器/写入器11的驱动器38提供的程序,并且执行所读取的程序。如果从驱动器38提供了程序或者数据,则如有必要,控制器31向存储器32提供该程序或者数据,并且读取记录在存储器32中的程序来执行所读取的程序。
存储器32是所谓的“非易失性可重写存储介质或者记录介质”,如硬盘或者闪速存储器,其即使关掉电源也可以保持数据。存储器32记录各种数据并且向控制器31提供所记录的数据。
存储器32也记录与记录在IC卡12上的数据相关的验证密钥,并且向控制器31提供所记录的验证密钥。存储器32还记录从控制器31提供的数据。
SPU 33依据预定方法对从控制器31提供的命令进行编码,并且向调制器34提供所编码的命令。SPU 33还依据对应于用于编码数据的方法的解码方法、对从解调器37提供的数据进行解码,并且向控制器31提供解码的数据。
例如,如果从控制器31提供了要发送给IC卡12的命令,则SPU 33对该命令执行诸如曼彻斯特(Manchester)编码之类的编码操作,并且向调制器34输出产生的信号。例如,如果从解调器37提供了来自IC卡12的数据,则SPU 33对该数据执行诸如曼彻斯特解码之类的解码操作,并且向控制器31提供产生的信号。
调制器34基于从振荡电路35提供的、具有预定频率的时钟信号生成载波。调制器34基于该载波、依据预定方法调制从SPU 33提供的命令,并且将所调制的命令提供给天线36。调制器34通过例如改变载波的相位、振幅、或者频率调制来自SPU 33的命令。
更具体地说,调制器34通过使用从振荡电路35提供的、具有13.56MHz频率的时钟信号作为载波,对从SPU 33提供的数据执行幅移键控(ASK)调制,并且作为电磁波通过天线36输出该已调制波。
振荡电路35生成具有预定频率的参考时钟信号,并且向调制器34提供所生成的时钟信号。
天线36通过无线通信向IC卡12发送从调制器34提供的命令。也就是说,天线36放射无线电波,以便传送从调制器34提供的命令。天线36还从IC卡12接收数据,并且向解调器37提供所接收的数据。
解调器37依据与IC卡12的解调器110(图5)的调制法相关联的解调方法,解调从天线36提供的数据,并且向SPU 33提供已解调的数据。例如,解调器37解调经由天线36提供的已调制波(ASK调制波),并且向SPU 33输出解调的数据。
当在驱动器38中安装了磁盘71、光盘72、磁光盘73、或者半导体存储器74时,驱动器38驱动所安装的记录介质,并且获得记录在该记录介质上的程序或者数据。将所获得的程序或者数据传送到控制器31或者IC卡12。如有必要,记录或者执行传送(发送)到IC卡12的程序。
图5为说明IC卡12的功能配置的框图。
IC卡12包括天线101、解调器102、SPU 103、控制器104、只读存储器(ROM)105、随机存取存储器(RAM)106、存储器107、表格存储单元108、振荡电路109、调制器110、和发电机111。
天线101接收从读取器/写入器11发送的命令,并且向解调器102提供所接收的命令。天线101还通过无线通信向读取器/写入器11发送从调制器110提供的数据。也就是说,天线110发射无线电波,用于传送从调制器110提供的数据。在天线110中,由从读取器/写入器11发射的、具有预定频率的无线电波发生调谐,以生成电动势。
解调器102依据与读取器/写入器11(图4)的调制器34的调制方法相关联的解调方法,解调从天线101提供的命令,并且向SPU 103提供解调的命令。例如,解调器102通过执行包络检波、解调由经由天线101接收的ASK调制波代表的命令,并且向SPU 103输出解调的命令。
SPU 103依据预定方法解码从解调器102提供的命令,并且向控制器104提供已解码的命令。例如,如果由解调器102解调的命令是通过曼彻斯特编码方法编码,则SPU 103基于从锁相回路(PLL)(未显示)提供的时钟信号、解码该曼彻斯特编码的命令,并且向控制器104提供所解码的命令。SPU 103还依据预定的编码方法对从控制器104提供的数据进行编码,并且向调制器110提供编码的数据。例如,SPU 103还通过曼彻斯特编码方法对从控制器104提供的数据进行编码,并且向调制器110提供编码的数据。
控制器104执行从SPU 103提供的各种命令。控制器104包括确定单元131、加密单元132、和解密单元133。
确定单元131基于存储在表格存储单元108中的生命周期阶段表和命令表,确定从SPU 103提供的命令是否是可以在IC卡12的该生命周期阶段执行的命令。
生命周期阶段表指示IC卡12的生命周期阶段。命令表指示在IC卡12的每个生命周期阶段、可以由IC卡12执行的命令。在下面给出生命周期阶段表和命令表的详细内容。
如果发现从SPU 103提供的命令是可以在IC卡12的当前生命周期阶段执行的命令,则控制器104执行来自SPU 103的命令。相反,如果确定从SPU103提供的命令不是可以在IC卡12的当前生命周期阶段执行的命令,则控制器104不执行那个命令。
例如,响应于来自SPU 103的相互验证命令,控制器104执行那个命令。在这种情况下,加密单元132通过使用记录在存储器107中的验证密钥,加密实施相互验证所需要的数据,诸如随机数或者时间戳。控制器104然后向SPU 103提供由加密单元132加密的数据。
控制器104还依据从SPU 103提供的命令控制存储器107,以擦除或者更新(重写)记录在存储器107中的数据。
如果包含在从SPU 103提供的命令中的数据由预定方法加密,则解密单元133依据与加密方法相关联的解密方法、使用记录在存储器107中的验证密钥解密该数据。如有必要,控制器104然后将由解密单元133解密的数据提供给存储器107。如果包含在从SPU 103提供的命令中的数据没有被加密,则解密单元133不解密该数据。
控制器104控制表格存储单元108以更新存储在表格存储单元108中的生命周期阶段表。例如,如果控制器104通过执行零级发行命令而执行零级发行操作,则它控制表格存储单元108更新生命周期阶段表,以指示当前生命周期阶段是零级卡发行阶段。
如有必要,控制器104读取记录在ROM 105中的程序,并且执行所读取的程序。如有必要,控制器104向RAM 106提供数据,并且还获得暂时存储在RAM 106中的数据。
ROM 105记录控制器104执行各种处理项目所需要的程序和数据。ROM105向控制器104提供所记录的程序和数据。
RAM 106暂时存储当由控制器104正进行处理时所使用的数据,并且还向控制器104提供存储在RAM 106中的数据。
存储器107是诸如闪速存储器、电可擦可编程只读存储器(EEPROM)、磁阻随机存取存储器(MRAM)、或者铁电随机存取存储器(FeRAM)之类的非易失性存储器,并且记录要发给读取器/写入器11、诸如敏感数据之类的各种类型的数据。存储器107还记录用于实施与读取器/写入器11的相互验证的验证密钥。
表格存储单元108是非易失性存储器,例如闪速存储器、EEPROM、MRAM、或者FeRAM,并且存储生命周期阶段表和命令表。表格存储单元108在控制器104的控制下更新生命周期阶段表。
振荡电路109生成与由天线101接收的命令具有相同频率的时钟信号,并且向调制器110提供所生成的时钟信号。振荡电路109具有例如内置的PLL电路,以便生成具有与命令相同频率的时钟信号。
调制器110基于从振荡电路109提供的、具有预定频率的时钟信号生成载波。调制器110然后基于该载波、依据预定方法调制从SPU 103提供的数据,并且向天线101提供已调制的数据。例如,调制器110对从SPU 103提供的、由曼彻斯特编码方法编码的数据执行ASK调制,并且经由天线101向读取器/写入器11发送已调制的数据。
调制器110可以导通或者断开用于从SPU 103提供的数据的预定开关设备(未显示),并且只有当开关设备导通时与天线101并联连接预定的负载,以改变天线101的负载。然后通过改变天线101的负载、经由天线101向读取器/写入器11发送ASK调制的数据。更具体地说,ASK调制的数据改变读取器/写入器11的天线36的端电压。
发电机111基于在天线101中生成的交流电动势生成直流电源,并且向IC卡12的各个元件提供所生成的直流电源。
现在参考图6中的流程图,描述由读取器/写入器11进行的命令发送处理。
在步骤S11,如有必要,读取器/写入器11发送和接收诸如随机数之类的数据,以实施与IC卡12的相互验证。读取器/写入器11通过使用例如在国际标准化组织/国际电工技术委员会(ISO/IEC)9798-2和日本工业标准(JIS)X5056-2中定义的对称加密算法,实施相互验证。
在这种情况下,读取器/写入器11通过使用为要由IC卡12存取的数据或者执行的命令预置的预定验证密钥,加密或者解密要被发送或者接收的数据。如果IC卡12的当前生命周期阶段是生产商发货阶段或者销毁阶段,则读取器/写入器11不实施相互验证。如果作为相互验证的结果,IC卡12没有被认证为是授权的IC卡,则结束该命令发送处理。
在建立相互验证之后,在步骤S12,控制器31生成各种用于执行预定类型处理的命令,并且向SPU 33提供所生成的命令。
更具体地说,在步骤S12,控制器31生成例如零级发行命令、全部重置命令、和终止命令,并且向SPU 33提供它们。在由控制器31生成的各种命令中,如有必要,存储执行那些命令所需要的数据。
在步骤S13,SPU 33通过预定编码方法对从控制器31提供的命令进行编码,并且向调制器34提供编码的命令。更具体地说,在步骤S13,SPU 33通过例如曼彻斯特编码方法对从控制器31提供的命令进行编码,并且向调制器34提供编码的命令。
在步骤S14,调制器34调制从SPU 33提供的命令,并且向天线36提供所调制的命令。例如,在步骤S14,调制器34基于具有对应于从振荡电路35提供的时钟信号的预定频率,例如13.56MHz,调制从SPU 33提供的命令,并且向天线36提供已调制的命令。
更具体地说,在步骤S14,调制器34通过例如ASK方法、相移键控(PSK)方法、或者频移键控(FSK)方法调制命令,并且向天线36提供已调制的命令。
在步骤S15,天线36通过无线通信向IC卡12发送从调制器34提供的命令。更具体地说,在步骤S15,天线36发射无线电波,以便传送来自调制器34的命令。然后完成该命令发送处理。
用这样的方式,读取器/写入器11生成命令,并且通过无线通信向IC卡12发送所生成的命令。
现在参考图7中的流程图在下面描述由IC卡12执行的命令执行处理。
在步骤S31,如有必要,IC卡12发送和接收诸如随机数之类的数据,以实施与读取器/写入器11的相互验证。更具体地说,在步骤S31,IC卡12通过使用例如在ISO/IEC9798-2和JIS X5056-2中定义的对称加密算法,实施与读取器/写入器11的相互验证。
在这种情况下,IC卡12通过使用为要被存取的数据或者要被执行的命令预置的预定验证密钥,加密或者解密要被发送或者接收的数据。如果IC卡12的当前生命周期阶段是生产商发货阶段或者销毁阶段,则IC卡12不实施相互验证。如果作为相互验证的结果,读取器/写入器11没有被认证为授权的读取器/写入器,则结束命令执行处理。
在步骤S31中建立相互验证之后,在步骤S32,天线101接收从读取器/写入器11发送的命令,并且向解调器102提供所接收的命令。
在步骤S33,解调器102通过使用与读取器/写入器11(图4)的调制器34的调制方法相关联的解调方法,解调由天线101接收的命令,并且向SPU103提供已解调的命令。
在步骤S34,SPU 103通过使用与读取器/写入器11(图4)的SPU 33的编码方法相关联的解码方法,对从解调器102提供的命令进行解码,并且向控制器104提供所解码的命令。
在步骤S35,控制器104的确定单元131通过参考存储在表格存储单元108中的生命周期阶段表,确定IC卡102的当前生命周期阶段是否是生产商发货阶段。
诸如图8所示,表格存储单元108存储生命周期阶段表。
生命周期阶段表包括指示IC卡12的各个生命周期阶段的标记。
更具体地说,生命周期阶段表包括与生产商发货阶段相关联的标记、与零级卡发行阶段相关联的标记、与初级卡发行阶段相关联的标记、与二级卡发行阶段相关联的标记、以及与销毁阶段相关联的标记。
置位为例如1的标记指示IC卡12的当前生命周期阶段是与那个标记相关联的阶段。复位为例如0的标记指示IC卡12的当前生命周期阶段不是与那个标记相关联的阶段。
在生命周期阶段表中,仅仅置位了一个标记,而且复位其它四个标记。
在图8所示的生命周期阶段表中,与生产商发货阶段相关联的标记被置位为1,而且与零级卡发行阶段、初级卡发行阶段、二级卡发行阶段、以及销毁阶段相关联的其它标记被复位为0。因此,图8所示的生命周期阶段表指示IC卡12的当前生命周期阶段为生产商发货阶段。
回到图7中的流程图的描述,在步骤S35,控制器104的确定单元131通过参考图8所示的生命周期阶段表、确定IC卡12的当前生命周期阶段是否是生产商发货阶段。
在这种情况下,因为在图8所示的生命周期阶段表中,对应于生产商发货阶段的标记被设置为1,所以确定单元131确定IC卡12的当前生命周期阶段是生产商发货阶段。
处理然后继续到步骤S36,其中IC卡12执行在生产商发货阶段的命令执行处理。
虽然在下面给出了详细内容,但是在步骤S36中在生产商发货阶段的命令执行处理中,通过参考存储在表格存储单元108中的命令表,在从SPU 103提供的命令当中,IC卡12仅仅执行可以在生产商发货阶段执行的命令。
在这种情况下,表格存储单元108存储诸如图9所示的命令表。命令表指示在IC卡12的每个生命周期阶段可以执行的命令。
更具体地说,命令表指示在生产商发货阶段可以执行的命令是跟踪命令和零级发行命令。跟踪命令是用于通过无线通信向读取器/写入器11发送记录在IC卡12中的生产商号码的命令,其中该生产商号码用作指定制造了IC卡12的卡生产商的信息。
命令表还指示在零级卡发行阶段可以执行的命令是相互验证命令、跟踪命令、和初级发行命令,以及在初级卡发行阶段可以执行的命令是相互验证命令、全部重置命令、和二级发行命令。
类似地,命令表指示在二级卡发行阶段可以执行的命令是相互验证命令、全部重置命令、数据重置命令、常规操作命令、和终止命令。
常规操作命令是用于执行用户接收由服务供应商提供的服务所需要的处理的命令。IC卡12执行常规操作命令,以例如在存储器107中记录诸如用户个人信息之类的数据,或者从存储器107中读取用户个人信息、并且通过无线通信把它发送给读取器/写入器11。
命令表还指示在销毁阶段没有命令可被执行。也就是说,当IC卡12的当前生命周期阶段是销毁阶段时,IC卡12不执行任何命令。
因此,在步骤S36,IC卡12在从SPU 103提供的命令当中,仅仅执行跟踪命令或者零级发行命令。
如果在步骤S35确定当前的生命周期阶段不是生产商发货阶段,则处理继续到步骤S37。在步骤S37,控制器104的确定单元131通过参考诸如图8所示、存储在表格存储单元108中的生命周期阶段表,确定生命周期阶段是否是零级卡发行阶段。
如果对应于零级卡发行阶段的标记被置位为1,则确定单元131确定生命周期阶段是零级卡发行阶段。如果对应于零级卡发行阶段的标记被复位为0,则确定单元131确定生命周期阶段不是零级卡发行阶段。
如果在步骤S37发现生命周期阶段是零级卡发行阶段,则处理继续到步骤S38,其中IC卡12执行在零级卡发行阶段中的命令执行处理。然后完成该命令执行处理。
虽然在下面给出了详细内容,但是在零级卡发行阶段的命令执行处理中,通过参考存储在表格存储单元108中的命令表,IC卡12在从SPU 103提供的命令当中,仅仅执行可以在零级卡发行阶段执行的命令。
因此,如果表格存储单元108存储图9所示的命令表,则在步骤S38,在从SPU 103提供的命令当中,IC卡12仅仅执行跟踪命令或者初级发行命令。
如果在步骤S37确定生命周期阶段不是零级卡发行阶段,则处理继续到步骤S39。在步骤S39,确定单元131通过参考诸如图8所示、存储在表格存储单元108中的生命周期阶段表,确定当前生命周期阶段是否是初级卡发行阶段。
如果对应于初级卡发行阶段的标记被置位为1,则确定单元131确定生命周期阶段是初级卡发行阶段。如果对应于初级卡发行阶段的标记被复位为0,则确定单元131确定生命周期阶段不是初级卡发行阶段。
如果在步骤S39发现生命周期阶段是初级卡发行阶段,则处理继续到步骤S40,其中IC卡12执行在初级卡发行阶段中的命令执行处理。然后完成该命令执行处理。
虽然在下面给出了详细内容,但是在初级卡发行阶段的命令执行处理中,通过参考存储在表格存储单元108中的命令表、在从SPU 103提供的命令当中,IC卡12仅仅执行可以在初级卡发行阶段执行的命令。
因此,如果表格存储单元108存储图9所示的命令表,则在步骤S40,在从SPU 103提供的命令当中,IC卡12仅仅执行全部重置命令或者二级发行命令。
如果在步骤S39确定生命周期阶段不是初级卡发行阶段,则处理继续到步骤S41。在步骤S41,确定单元131通过参考诸如图8所示、存储在表格存储单元108中的生命周期阶段表,确定生命周期阶段是否是二级卡发行阶段。
如果与二级卡发行阶段相关联的标记被置位为1,则确定单元131确定生命周期阶段是二级卡发行阶段。如果与二级卡发行阶段相关联的标记被复位为0,则确定单元131确定生命周期阶段不是二级卡发行阶段。
如果在步骤S41发现生命周期阶段是二级卡发行阶段,则处理继续到步骤S42,其中IC卡12执行在二级卡发行阶段中的命令执行。然后完成该命令执行处理。
虽然在下面给出了详细内容,但是在步骤S42的命令执行处理中,通过参考存储在表格存储单元108中的命令表,在从SPU 103提供的命令当中,IC卡12仅仅执行可以在二级卡发行阶段执行的命令。
如果表格存储单元108存储图9所示的命令表,则在步骤S42,IC卡42在从SPU 103提供的命令当中,仅仅执行全部重置命令、数据重置命令、常规操作命令、和终止命令。
如果在步骤S41确定生命周期阶段不是二级卡发行阶段,则这意指生命周期阶段是销毁阶段,而且IC卡12不执行任何命令。然后,结束命令执行处理。
以这种方式,IC卡12从读取器/写入器11接收命令并且执行它们。
如上所述,通过在IC卡12的每个生命周期阶段仅仅执行预定命令,可以防止数据或者信息的篡改或者泄漏。
现在参考图10的流程图给出在图7的步骤S36中、在生产商发货阶段的命令执行处理的描述。
在步骤S61,控制器104的确定单元131确定从SPU 103提供的命令是否是跟踪命令。如果在步骤S61发现该命令是跟踪命令,则处理继续到步骤S62,这是因为在生产商发货阶段可以执行跟踪命令。在步骤S62,控制器104执行跟踪命令。更具体地说,在步骤S62,控制器104获得记录在存储器107中的生产商号码,并且把它提供给SPU 103。
当IC卡12的当前生命周期阶段是生产商发货阶段时,如图11所示,在存储器107中仅仅记录了生产商号码,其用作指定制造了该IC卡12的卡生产商的信息。除生产商号码之外,还可以记录其它的信息,例如,制造IC卡12的日期。
在步骤S63,SPU 103依据预定编码方法,例如曼彻斯特编码方法,对从控制器104提供的生产商号码进行编码,并且向调制器110提供编码的生产商号码。
在步骤S64,调制器110调制从SPU 103提供的生产商号码,并且向天线101提供已调制的生产商号码。更具体地说,在步骤S64,调制器110基于从振荡电路109提供的时钟信号所生成的载波、依据ASK调制方法调制生产商号码,并且向天线101提供已调制的生产商号码。
在步骤S65,天线101通过例如通过无线通信传送无线电波,向读取器/写入器11发送从调制器110提供的已调制的生产商号码。然后完成该命令执行处理。当接收从IC卡12发送的生产商号码时,读取器/写入器11可以检查IC卡12的生产商来源。
如果在步骤S61确定从SPU 103提供的命令不是跟踪命令,则处理继续到步骤S66,以确定提供的命令是否是零级发行命令。
如果在步骤S66发现提供的命令是零级发行命令,则处理继续到步骤S67,这是因为可以在生产商发货阶段执行零级发行命令。在步骤S67,控制器104执行零级发行命令。
更具体地说,在步骤S67,控制器104向存储器107提供包含在零级发行命令中的设备ID号,并且存储器107在其中记录设备ID号。
设备ID号是IC卡12唯一的ID号,并且指定该IC卡12。
在步骤S68,控制器104设置MF。更具体地说,控制器104生成MF以及用于管理包含在MF中的数据的信息,并且向存储器107提供生成的MF和管理信息。存储器107然后记录MF和管理信息。管理信息包括指示MF属性的信息,例如包含在MF中的DF和EF的数目。
在步骤S69,控制器104向存储器107提供包含在零级发行命令中的发货密钥,作为用于MF的验证密钥。存储器107将该发货密钥记录为用于MF的验证密钥。发货密钥是验证密钥,其用于当执行初级发行操作的服务供应商对读取器/写入器11进行操作以控制卡12执行跟踪命令或者初级发行命令时,实施相互验证。
在步骤S70,表格存储单元108在控制器104的控制下更新生命周期阶段表,以指示当前生命周期阶段是零级卡发行阶段。
更具体地说,在步骤S70,表格存储单元108将对应于图8所示的生命周期阶段表中的生产商发货阶段的标记复位为0,并且将对应于零级卡发行阶段的标记置位为1,由此更新生命周期阶段表。然后完成该命令执行处理。
当生命周期阶段是零级卡发行阶段时,如图12所示,在存储器107中记录了生产商号码如设备ID号、MF 151、发货密钥A、以及发货密钥B。
MF 151是在分级结构中处于最高层的文件夹。除MF 151之外,还在存储器107中记录了用于管理包含在MF 151中的数据的信息。
存储器107还把发货密钥A和发货密钥B记录为验证密钥。当从读取器/写入器11接收用于发送跟踪命令或者初级发行命令的相互验证命令时,处于零级卡发行阶段的IC卡12通过使用发货密钥A和发货密钥B实施与读取器/写入器11的相互验证。
回到图10所示的流程图,如果在步骤S66确定从SPU 103提供的命令不是零级发行命令,则结束命令执行处理,这是因为所提供的命令不能在生产商发货阶段执行。
例如,如果在步骤S66发现从SPU 103提供的命令是初级发行命令,则结束命令执行处理,这是因为初级发行命令不是可以在生产商发货阶段执行的命令。
以这种方式,控制器104执行从SPU 103提供的跟踪命令或者零级发行命令。
如上所述,通过仅仅执行在IC卡12的生产商发货阶段可以执行的预定命令,可以防止数据或者信息的篡改或者泄漏。
下面参考图13的流程图论述在图7的步骤S38中、在零级卡发行阶段的命令执行处理。
在步骤S101,控制器104的确定单元131确定从SPU 103提供的命令是否是跟踪命令。如果在步骤S101发现所提供的命令是跟踪命令,则处理继续到步骤S102,这些因为在零级卡发行阶段可以执行跟踪命令,而且控制器104执行该跟踪命令。
图13中的步骤S102到S105分别类似于图10中的步骤S62到S65,因此省略它们的说明。
如果在步骤S101确定所提供的命令不是跟踪命令,则处理继续到步骤S106,以确定所提供的命令是否是初级发行命令。
如果在步骤S106发现提供的命令是初级发行命令,则处理继续到步骤S107,这是因为可以在零级卡发行阶段执行初级发行命令。在步骤S107,控制器104执行初级发行命令。
更具体地说,在步骤S107,控制器104向存储器107提供包含在初级发行命令中的服务供应商密钥,其用作验证密钥。存储器107然后用从控制器104提供的服务供应商密钥重写存储的验证密钥。服务供应商密钥是验证密钥,其用于当执行二级发行操作的服务供应商对读取器/写入器11进行操作以控制IC卡12执行全部重置命令、二级发行命令、数据重置命令、或者终止命令时,实现相互验证。
在步骤S108,控制器104设置DF。更具体地说,控制器104生成取决于MF 151的DF以及用于管理包含在DF中的数据的信息,并且向存储器107提供生成的DF和管理信息。存储器107然后记录DF和管理信息。管理信息包括用于DF的验证密钥,以及指示DF属性的信息,例如禁止重写包含在DF中的数据、或者允许重写部分数据。
在步骤S109,控制器104设置EF。更具体地说,控制器104生成取决于DF的EF以及用于管理包含在EF中的数据的信息,并且向存储器107提供生成的EF和管理信息。存储器107然后记录EF和管理信息。管理信息包括用于EF的验证密钥,以及指示EF属性的信息,例如禁止重写包含在EF中的数据、或者允许重写部分数据。
在步骤S110,控制器104向存储器107提供包含在初级发行命令中的服务供应商号码。存储器107然后记录该服务供应商号码。服务供应商号码是用于指定执行初级发行操作的服务供应商的信息。
在步骤S111,表格存储单元108在控制器104的控制下更新生命周期阶段表,以指示当前生命周期阶段是初级卡发行阶段。
更具体地说,在步骤S111,在控制器104的控制下,表格存储单元108将对应于生命周期阶段表中的零级卡发行阶段的标记复位为0,并且将对应于初级卡发行阶段的标记置位为1,由此更新生命周期阶段表。然后完成该命令执行处理。
当生命周期阶段是初级卡发行阶段时,例如如图14所示,在存储器107中记录了生产商号码、设备ID号、MF 151、服务供应商密钥A、服务供应商密钥B、服务供应商号码152、DF 153-1、DF 153-2、以及EF 154-1到154-4。在图14中,用同样的附图标记指定对应于图12中的要素的那些要素,并且因此省略它们的说明。
在MF 151中,包含了用于指定执行初级发行操作的服务供应商的服务供应商号码152,作为取决于MF 151的数据。MF 151还包含取决于MF 151的DF 153-1和153-2以及EF 154-1。
在DF 153-1中,包含了EF 154-2和154-3作为取决于DF 153-1的数据。在存储器107中,包括用于DF 153-1的验证密钥在内、用于管理DF 153-1的信息与DF 153-1一起记录。类似地,在存储器107中,包括用于EF 154-2和154-3的验证密钥在内、用于管理EF 154-2和EF 154-3的信息与EF 154-2和154-3一起被记录。在这种情况下,作为用于EF 154-2的验证密钥,记录了四个验证密钥,每个密钥都被设置为“0000000”。类似地,作为用于EF 154-3的验证密钥,记录了四个验证密钥,每个密钥都被设置为“0000000”。
在DF 153-2中,包含了EF 154-4作为取决于DF 153-2的数据。在存储器107中,包括用于DF 153-2的验证密钥在内、用于管理DF 153-2的信息与DF 153-2一起被记录。类似地,在存储器107中,包括用于EF 154-4的验证密钥在内、用于管理EF 154-4的信息与EF 154-4一起被记录。在这种情况下,作为用于EF 154-4的验证密钥,记录了四个验证密钥,每个密钥都被设置为“0000000”。
同样,在存储器107中,包括用于EF 154-1的验证密钥在内、用于管理EF 154-1的信息与EF 154-1一起被记录。在这种情况下,作为用于EF 154-1的验证密钥,记录了四个验证密钥,每个密钥都被设置为“0000000”。
除非必需单独区分它们,否则在下文中将DF 153-1和153-2简单地称为“DF 153”。类似地,除非必需单独区分它们,否则在下文中将EF 154-1到154-4简单地称为“EF 154”。
在存储器107中,作为验证密钥记录服务供应商密钥A和服务供应商密钥B。当生命周期阶段是初级卡发行阶段或者二级卡发行阶段时,响应于来自读取器/写入器11的全部重置命令、二级发行命令、数据重置命令、或者终止命令,IC卡12通过使用服务供应商密钥A和B实施与读取器/写入器11的相互验证。
回到图13所示的流程图,如果在步骤S106确定从SPU 103提供的命令不是初级发行命令,则结束命令执行处理,这是因为所提供的命令不是可以在零级卡发行阶段执行的命令。
例如,如果所提供的命令是二级发行命令,则在步骤S106确定所提供的命令不是初级发行命令,并且结束该处理。
以这种方式,控制器104执行从SPU 103提供的跟踪命令或者初级发行命令。
如上所述,通过仅仅执行在零级卡发行阶段可以执行的预定命令,可以防止数据或者信息的篡改或者泄漏。另外,依据IC卡12的生命周期阶段重写用于相互验证的验证密钥,并且通过使用不同的验证密钥实施相互验证,由此防止数据或者信息的篡改或者泄漏。
现在参考图15的流程图给出在图7的步骤S40中、在初级卡发行阶段的命令执行处理的描述。
在步骤S131,控制器104的确定单元131确定从SPU 103提供的命令是否是全部重置命令。如果在步骤S131发现所提供的命令是全部重置命令,则处理继续到步骤S132,这是因为可以在初级卡发行阶段执行全部重置命令。在步骤S132,控制器104执行全部重置命令。
在步骤S132,存储器107在控制器104的控制下,擦除取决于MF的服务供应商号码、DF、和EF。更具体地说,如图14所示,存储器107在控制器104的控制下,擦除取决于MF 151的服务供应商号码152、DF 153、和EF 154。
在步骤S133,表格存储单元108在控制器104的控制下更新生命周期阶段表,以指示生命周期阶段是零级卡发行阶段。
更具体地说,在步骤S133,表格存储单元108将与生命周期阶段表中的初级卡发行阶段相关联的标记复位为0,并且将与零级卡发行阶段相关联的标记置位为1,由此更新生命周期阶段表。然后完成该命令执行处理。
在这种情况下,在存储器107中,将服务供应商密钥记录为用于MF的验证密钥,并且因此当执行跟踪命令或者初级发行命令时,使用服务供应商密钥用于实施相互验证。
如果在步骤S131确定所提供的命令不是全部重置命令,则处理继续到步骤S134,以确定所提供的命令是否是二级发行命令。
如果在步骤S134发现提供的命令是二级发行命令,则处理继续到步骤S135,这是因为可以在初级卡发行阶段执行二级发行命令。在步骤S135,控制器104执行二级发行命令。
更具体地说,在步骤S135,控制器104设置DF 153。例如,控制器104基于包含在二级发行命令中的数据,生成诸如用户个人信息之类、要存储在取决于MF 151的DF 153中的数据,以及用于管理包含在DF 153中的数据的信息,并且向存储器107提供生成的、要存储在DF 153中的数据和管理信息。存储器107然后记录该数据和管理信息。
在步骤S136,控制器104设置EF 154。例如,控制器104基于包含在二级发行命令中的数据,生成诸如用户个人信息之类、要存储在取决于DF 153的EF 154中的数据,以及用于管理包含在EF 154中的数据的信息,并且向存储器107提供生成的、要存储在EF 154中的数据和管理信息。
存储器107然后记录该数据和管理信息。管理信息包括为EF 154新设置的验证密钥。也就是说,存储器107通过记录管理信息重写用于EF 154的验证密钥。
在步骤S137,表格存储单元108在控制器104的控制下更新生命周期阶段表,以指示生命周期阶段是二级卡发行阶段。
更具体地说,在控制器104的控制下,表格存储单元108将与生命周期阶段表中的初级卡发行阶段相关联的标记复位为0,并且将与二级卡发行阶段相关联的标记置位为1,由此更新生命周期阶段表。然后完成该命令执行处理。
当生命周期阶段是二级卡发行阶段时,例如,在存储器107中记录了生产商号码、设备ID号、MF 151、服务供应商密钥A、服务供应商密钥B、服务供应商号码152、DF 153-1和153-2、以及EF 154-1到154-4。在图16中,用同样的附图标记指定对应于图14中示出的要素的那些要素,并且因此省略它们的说明。
在DF 153和EF 154中,存储了诸如用户个人信息之类、接收由服务供应商所提供的服务所需要的数据。在这种情况下,在EF 154-1中,设置了诸如“0454879”、“0679831”、“9864136”、和“8794246”之类、用于EF 154-1的验证密钥。
类似地,在EF 154-2中,设置了“4657564”、“4301445”、“4315798”、和“4687144”、用于EF 154-2的验证密钥。在EF 154-3中,设置了“0038432”、“4863204”、“6870680”、和“3654640”,用于EF 154-3的验证密钥。在EF 154-4中,设置了“4687063”、“4013698”、“4430413”、和“2444545”,用于EF 154-4的验证密钥。
回到图15所示的流程图的描述,如果在步骤S134确定从SPU 103提供的命令不是二级发行命令,则结束该处理,这是因为所提供的命令不是可以在初级卡发行阶段执行的命令。
例如,如果所提供的命令是初级发行命令,则在步骤S134确定所提供的命令不是二级发行命令,并且因此,因为不能在初级卡发行阶段执行初级发行命令而结束该处理。
以这种方式,控制器104执行从SPU 103提供的全部重置命令或者二级发行命令。
如上所述,通过仅仅执行在IC卡12生命周期阶段中、初级卡发行阶段中的预定命令,可以防止数据或者信息的篡改或者泄漏。另外,依据IC卡12的生命周期阶段,重写用于相互验证的验证密钥,并且通过使用不同的验证密钥实施相互验证,由此防止数据或者信息的篡改或者泄漏。
现在在下面参考图17所示的流程图、描述在图7的步骤S42中、在二级卡发行阶段的命令执行处理。
在步骤S151,确定单元131确定从SPU 103提供的命令是否是全部重置命令。如果在步骤S151发现所提供的命令是全部重置命令,则处理继续到步骤S152,这是因为可以在二级卡发行阶段执行全部重置命令。在步骤S152,控制器104执行全部重置命令。
步骤S152和S153分别类似于图15中的步骤S132和S133,并且因此省略它们的说明。
如果在步骤S151确定所提供的命令不是全部重置命令,则处理继续到步骤S154,以确定所提供的命令是否是数据重置命令。
如果在步骤S154发现所提供的命令是数据重置命令,则处理继续到步骤S155,这是因为可以在二级卡发行阶段执行数据重置命令。在步骤S155,存储器107执行数据重置命令。
更具体地说,在步骤S155,存储器107在控制器104的控制下,初始化取决于MF的DF和EF。例如,在控制器104的控制下,存储器107擦除如图16所示、存储在取决于MF 151的DF 153和EF 154中的数据,以及用于管理EF 153和EF 154的信息,由此初始化DF 153和EF 154。
在步骤S156,表格存储单元108在控制器104的控制下更新生命周期阶段表,以指示生命周期阶段是初级卡发行阶段。
更具体地说,在控制器104的控制下,表格存储单元108将对应于生命周期阶段表中的二级卡发行阶段的标记复位为0,并且将对应于初级卡发行阶段的标记置位为1,由此更新生命周期阶段表。然后完成该命令执行处理。
如果在步骤S154确定所提供的命令不是数据重置命令,则处理继续到步骤S157,以确定所提供的命令是否是常规操作命令。
如果在步骤S157发现所提供的命令是常规操作命令,则处理继续到步骤S158,这是因为可以在二级卡发行阶段执行常规操作命令。在步骤S158,IC卡12依据常规操作命令执行处理。
例如,响应于来自SPU 103、请求重写存储在EF中的数据的常规操作命令,控制器104向存储器107提供包含在该常规操作命令中的数据。然后,存储器107用从控制器104提供的数据重写存储在EF中的数据。更具体地说,在这种情况下,如果包含在常规操作命令中的数据依据预定方法加密了,则控制器104的解密单元133解密该数据,而且控制器104然后向存储器107提供由解密单元133解密的数据。
如果从SPU 103提供了请求发送存储在EF中的数据的常规操作命令,则在步骤S158,控制器104从存储器107获得数据,并且把它提供给SPU 103。
SPU 103然后通过例如曼彻斯特编码方法对从控制器104提供的数据进行编码,并且向调制器110提供编码的数据。调制器110对该数据执行例如ASK调制,并且向天线101提供已调制的数据。天线101然后通过无线通信向读取器/写入器11发送从调制器110提供的数据。在这种情况下,控制器104的加密单元132可以通过预定加密方法加密要发送给读取器/写入器11的数据。
然后完成该命令执行处理。
如果在步骤S157确定从SPU 103提供的命令不是常规操作命令,则处理继续到步骤S159,以确定提供的命令是否是终止命令。
如果在步骤S159发现所提供的命令是终止命令,则处理继续到步骤S160,这是因为可以在二级卡发行阶段执行终止命令。在步骤S160,存储器107在控制器104的控制下擦除所有数据。
在步骤S161,表格存储单元108在控制器104的控制下更新生命周期阶段表,以指示生命周期阶段是销毁阶段。
更具体地说,在步骤S161,表格存储单元108将对应于生命周期阶段表中的二级卡发行阶段的标记复位为0,并且将对应于销毁阶段的标记置位为1,由此更新生命周期阶段表。然后完成该处理。
如果在步骤S159确定所提供的命令不是终止命令,则结束处理,这是因为所提供的命令不是可以在二级卡发行阶段执行的命令。
例如,如果所提供的命令是二级发行命令,则在步骤S159确定所提供的命令不是终止命令,并且因为不能在二级卡发行阶段执行二级发行命令而结束该处理。
以这种方式,控制器104执行从SPU 103提供的全部重置命令、数据重置命令、常规操作命令、或者终止命令。
如上所述,通过仅仅执行在IC卡12的生命周期阶段中、二级卡发行阶段中的预定命令,可以防止数据或者信息的篡改或者泄漏。这使回收处于销毁阶段的IC卡12以交付给销毁代理的服务供应商确信IC卡12不会出现数据或者信息的篡改或者泄漏。
如果IC卡12从读取器/写入器11接收了不能在IC卡12的生命周期阶段执行的命令,它不必向读取器/写入器11返回响应,或者可以向读取器/写入器11发送指示所接收的命令不能在当前生命周期阶段执行的错误信号。此外,可以在存储器107中包含表格存储单元108。
如上所述,通过执行初级发行命令或者二级发行命令重写验证密钥,更具体地说,通过执行包含在初级发行命令或者二级发行命令中、用于重写验证密钥的命令(以下称为“密钥改变命令”),来执行这个重写处理。
因此,有可能通过执行二级发行命令重写记录在存储器107中、用于MF的服务供应商密钥。然而,还有可能通过执行初级发行命令仅仅可以重写发货密钥(用于MF的验证密钥),以及通过执行二级发行命令仅仅可以重写用于DF或者EF的验证密钥。在这种情况下,禁止在二级卡发行阶段中对验证密钥进行重写。
在上述实施例中,当在初级卡发行阶段或者二级卡发行阶段执行命令时,通过使用服务供应商密钥作为验证密钥实施相互验证。作为选择,当执行二级发行命令时,图14所示的服务供应商密钥A可以用于实施相互验证,而且当在二级卡发行阶段执行命令(例如,终止命令)时,图16所示的服务供应商密钥B可以用来实施相互验证。
利用这种安排,即使执行二级发行操作的服务供应商和执行命令的服务供应商是不同的,也可以执行相应的命令而不用使用相同的验证密钥。
作为选择,基于所记录的服务供应商密钥,可以生成不同的验证密钥,而且不同的验证密钥可以被用于实施用于执行二级发行命令的相互验证以及用于执行终止命令的相互验证。
更具体地说,当执行二级发行命令时,控制器104可以执行图14所示的服务供应商密钥A和服务供应商密钥B的逻辑或(OR),以生成被用于相互验证处理的验证密钥。当执行终止命令时,控制器104执行图16所示的服务供应商密钥A和服务供应商密钥B的异或,以生成验证密钥。利用这种安排,可以为每个要被执行的命令设置访问权。
如上所述,可以发送和接收记录在IC卡中的数据。此外,通过在IC卡的每个生命周期阶段仅仅执行预定的命令,可以防止数据或者信息的篡改或者泄漏。另外,在IC卡的各个生命周期阶段使用不同的验证密钥,由此防止数据或者信息的篡改或者泄漏。
上述系列处理任务可以由硬件或者软件执行。如果使用了软件,则从记录介质将相应的软件程序安装到内置于专用硬件的计算机或者诸如通用计算机之类的计算机中,这些计算机可以通过在其中安装各种程序而执行各种功能。
该记录介质可以是要被分配以向用户提供程序的、在其中存储程序的封装介质,诸如磁盘71(包括软盘)、光盘72(包括光盘只读存储器(CD-ROM)或者数字多用途盘(DVD)、磁光盘73(包括小型盘(MD)(商标))、或者半导体存储器74。作为选择,记录介质可以是包含在存储程序的存储器32中的ROM或者硬盘。
如有必要,上述程序可以通过诸如路由器或者调制解调器之类的接口、经由诸如局域网(LAN)、因特网、或者数字卫星广播之类的有线或者无线通信介质安装到计算机中。
在本说明书中,形成存储在记录介质中的程序的步骤可以以说明书中描述的时间顺序执行。作为选择,它们可以并列执行或者逐个执行。
本领域的技术人员应当理解,在权利要求及其等价物的范围之内,取决于设计要求及其他因素,可以出现各种修改、组合、子组合以及变化。
权利要求
1.一种信息处理设备,包含接收装置,用于接收请求执行预定处理的命令;存储装置,用于储存数据以及第一信息和第二信息,其中第一信息指示在信息处理设备的生命周期的多个阶段当中、由存储的数据确定的当前状态,第二信息指示在当前阶段中的可执行命令,为多个阶段中的每个阶段确定该可执行命令;以及确定装置,用于基于第一信息和第二信息确定由接收装置所接收的命令是否是当前阶段中的可执行命令。
2.如权利要求1所述的信息处理设备,还包含控制装置,用于控制要被更新的第一信息,以便依据执行的命令改变信息处理设备的当前阶段。
3.如权利要求1所述的信息处理设备,其中,存储在存储装置中的第二信息包括指示当信息处理设备处于特定阶段时没有命令可执行的信息,以及当信息处理设备处于特定阶段时,确定装置基于第一信息和第二信息确定所接收的命令是不可执行的。
4.一种信息处理方法,包含步骤控制请求执行预定处理的命令的接收;控制第一信息的存储,其中第一信息指示,在信息处理设备的生命周期中的多个阶段当中,由所存储的数据确定的当前阶段;以及基于第一信息和指示当前阶段中的可执行命令的第二信息确定所接收的命令是否是当前阶段的可执行命令,其中为多个阶段中的每个阶段确定该可执行命令。
5.一种记录用于允许计算机执行信息处理的程序的记录介质,该信息处理包含步骤控制请求执行预定处理的命令的接收;控制第一信息的存储,其中第一信息指示,在信息处理设备的生命周期中的多个阶段当中,由所存储的数据确定的当前阶段;以及基于第一信息和指示当前阶段中的可执行命令的第二信息确定所接收的命令是否是当前阶段的可执行命令,其中为多个阶段中的每个阶段确定该可执行命令。
6.一种程序,允许计算机执行下列步骤控制请求执行预定处理的命令的接收;控制第一信息的存储,其中第一信息指示,在信息处理设备的生命周期中的多个阶段当中,由所存储的数据确定的当前阶段;以及基于第一信息和指示当前阶段中的可执行命令的第二信息确定所接收的命令是否是当前阶段的可执行命令,其中为多个阶段中的每个阶段确定该可执行命令。
7.一种信息处理设备,用于在作为与通信方实施相互验证处理的结果而验证了该通信方之后发送和接收数据,该信息处理设备包含接收装置,用于接收请求执行预定处理的命令;第一存储装置,用于储存第一信息和第二信息,其中第一信息指示在信息处理设备的生命周期的多个阶段当中、由存储的数据确定的当前阶段,第二信息指示当前阶段的可执行命令,其中为多个阶段中的每个阶段确定该可执行命令;确定装置,用于基于第一信息和第二信息确定由接收装置所接收的命令是否是当前阶段的可执行命令;以及第二存储装置,用于存储验证数据,其用于相互验证处理以及用于加密或解密与多个阶段中的每一个相关联的预定数据。
8.如权利要求7所述的信息处理设备,其中,第二存储装置还储存用于生成验证数据的数据,该信息处理设备还包含生成装置,用于基于用于生成验证数据的数据,生成用于多个阶段中的每个阶段的不同验证数据。
9.一种信息处理装置,包含接收器,被配置为接收请求执行预定处理的命令;存储单元,被配置为存储数据和第一信息以及第二信息,其中第一信息指示,在信息处理设备的生命周期中的多个阶段当中、由所存储的数据确定的当前阶段,第二信息指示当前阶段中的可执行命令,为多个阶段中的每个阶段确定该可执行命令;以及确定单元,被配置为基于第一信息和第二信息确定由接收器所接收的命令是否是当前阶段的可执行命令。
10.一种信息处理设备,用于在作为与通信方实施相互验证处理的结果而验证了该通信方之后发送和接收数据,该信息处理设备包含接收器,被配置为接收请求执行预定处理的命令;第一存储单元,被配置为存储第一信息以及第二信息,其中第一信息指示,在信息处理设备的生命周期中的多个阶段当中、由所存储的数据确定的当前阶段,第二信息指示当前阶段中的可执行命令,为多个阶段中的每个阶段确定该可执行命令;确定单元,被配置为基于第一信息和第二信息确定由接收器所接收的命令是否是当前阶段的可执行命令;以及第二存储单元,被配置为存储验证数据,其用于相互验证处理以及用于加密和解密与多个阶段中的每个阶段相关联的预定数据。
全文摘要
一种信息处理设备,包括以下元件。接收器,接收请求执行预定处理的命令。存储单元,存储数据和第一信息以及第二信息,其中第一信息指示,在信息处理设备的生命周期中的多个阶段当中、由所存储的数据确定的当前阶段,第二信息指示在当前阶段中的可执行命令,为多个阶段中的每个阶段确定该可执行命令。确定单元,基于第一信息和第二信息确定由接收器所接收的命令是否是当前阶段中的可执行命令。
文档编号G06K17/00GK1755712SQ20051010871
公开日2006年4月5日 申请日期2005年9月28日 优先权日2004年9月29日
发明者吉田里志, 伊藤勋 申请人:索尼株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1