智能卡及其应用选择方法

文档序号:6415554阅读:215来源:国知局
专利名称:智能卡及其应用选择方法
本申请要求享有于1997年9月19日提交的美国临时专利申请号60/059,382的专利申请的申请日。
本发明领域本发明涉及智能卡,具体涉及多应用智能卡的智能卡应用选择。
智能卡有着广泛的应用,如电子游戏卡,银行卡、和身份卡等。智能卡常常被包裹防护层、塑料或金属外套中,其尺寸与信用卡相仿,并包含一个或更多的嵌入式集成电路元件。诸如电子游戏机、自动售货机、和ID识别系统等终端,公知地采用一个或更多将智能卡连接到这些终端的智能卡接口。
常规终端内置用于支持智能卡应用的通信协议。这些协议通常要求智能卡在从终端接收到一个复位信号(RESET)时立即提供RESET的应答信号(ATR)来确认它自己。各种智能卡应用可具有不同的ATR和/或要求不同的协议。因此,如果终端没有接收到可识别的ATR,即该终端不支持此应用,它会立即拒绝该智能卡。
单应用的智能卡只是简单地提供它本身的唯一ATR,终端或者接收或者拒绝该智能卡。参照图1,常规终端10、12、14、16分别与智能卡11、13、15、17兼容,并分别只识别智能卡11、13、15、17发出的特定期望ATR。然而,随着多应用智能卡的出现,即使插入正确的智能卡,也会向终端提供错误的ATR,原因是,智能卡的各种应用可以具有不同的ATR和/或通信协议。智能卡在提供ATR之前没有机会来发现终端的性质,因此不知道哪一个ATR是所要求的。
一种解决方法是,通过一种选择机构使终端向多应用智能卡发出“选择(SELECT)”命令,该命令选择要运行的特定应用。一旦选定,智能卡接收和发出的信息和/或数据就被指定路由到所选择的应用,直到接收了另一个SELECT命令为止。采用这种机构的智能卡必须具有由支持该机构的终端所识别的特定ATR。
该选择机构虽有效但还是有两个主要缺点。首先,大多数现在使用的终端不支持这种选择机构,也不能够识别相关的ATR。因此,采用这种机构的智能卡只能与在设计上支持应用选择的新型终端兼容,并且不能在绝大多数的现存终端上使用。其次,终端和终端设备的设计者和/或软件编程员必须花费大量时间、精力和资源来将这种选择机构并入他们的产品中。对于他们来说,简单地使用现存的终端和终端设备规范要容易得多。
本发明概要本发明的目的是提供一种用于选择在多应用智能卡上运行的下一个应用的方法和/或机构。
在一个方面,本发明一般地涉及多应用智能卡,它包括指出要运行的当前应用的持久存储单元。智能卡运行由持久存储单元指出的应用,并修改持久存储单元来指出要运行的下一个应用。在某些实施例中,智能卡可以在各个常规应用之间运行应用选择应用。应用选择应用允许用户选择下一次要运行的应用。智能卡还可根据预定应用列表来选择下一个应用。下一个应用可以是与当前应用相同的应用。智能卡可以使用特定的信令来启动应用选择应用。
在另一个方面,本发明一般地涉及多应用智能卡,它包括指出装置,用于指出要运行的当前应用;运行装置,用于运行所指出的应用;以及,修改装置,用于修改指出装置来指出要运行的下一个应用。在一个实施例中,修改装置修改指出装置来指出应用选择应用为要运行的下一个应用。在另一实施例中,修改装置修改指出装置来指出预定列表中的下一个应用为要运行的下一个应用。修改装置还可修改指出装置来指出当前应用为要运行的下一个应用,或指出用户选择应用为要运行的下一个应用。在从智能卡终端接收到预定信号后,运行装置可运行应用选择应用,该应用选择应用使用户能够选择下面运行的应用。
在另一方面,本发明一般涉及一种智能卡系统,它包括多应用智能卡,具有指出在该智能卡中要运行的下一个应用的持久存储单元;以及,应用选择终端,它允许用户选择该智能卡中下面要运行的应用。在某些实施例中,所述智能卡修改所述持久存储单元来指定应用选择应用为下面要运行的应用。在其它实施例中,所述终端修改所述持久存储单元来指定用户选择的应用为下面要运行的应用。
本发明的优点至少包括以下几点灵活和容易地选择多应用智能卡上的几个应用之一、与现在使用的常规智能卡终端兼容。这种向下兼容性使得在传统的单一应用终端上能够使用多应用智能卡,并允许在相同智能卡上开发新应用。其它优点通过下面的说明和权利要求来体现。


图1示出单一应用智能卡和与之相应的终端。
图2示出多应用智能卡。
图3A和3B是表示智能卡操作的流程图,其中按照预定列表确定要运行的下一个应用。
图4示出具有应用选择应用的多应用智能卡和应用选择的终端。
图5A-5C是表示智能卡操作的流程图,其中在各应用相互之间运行应用选择应用。
图6A-5D是表示智能卡操作的流程图,其中只在检测到特定信令时运行应用选择应用。
图7示出本发明的多应用智能卡。
图8示出本发明的应用选择终端。
优选实施例说明在说明书和附图中,相同的标号表示相同的元件。
参照图2,多应用智能卡20包含至少四个由可用ATR指定的常规应用,它们由常规终端10、12、14、16支持。智能卡20上的持久存储单元22保存指示要运行四个应用中哪一个的信息。持久存储单元22可以是EEPROM或FLASH存储器,或在智能卡未加电时仍保存其数据的其它类型存储器。根据以上说明,应理解,当将智能卡20插入终端时,必须提供一种机构或方案来将持久存储单元22中保存的值,改变或变化到所需应用的值,来防止运行错误的应用。
参照图3A,开始多应用智能卡操作时,用户将智能卡20插入常规或通常终端(ST30)。在智能卡20和终端之间执行事务处理(ST31),用户在事务处理结束时从终端拔出智能卡20(ST32)。因为在智能卡20上有多个应用,用户必须确定是否运行了正确的应用(ST33)。如果运行了正确的应用,则用户简单地停止或进行他的其它业务。如果运行了错误的应用,则用户可以重新将智能卡插回终端(ST30)。
本实施例的关键之处在于,在用户每次执行事务处理时(ST31),运行在智能卡20内应用列表中的不同应用。因此,采用以下将详细说明的一种循环(round-robin)方法,可以通过重复插入智能卡20来最终运行正确的应用。
参照图3B,在用户操作开始时(ST31),智能卡20从终端接收预定的信号(ST31a),如RESET信号。接收到此预定信号后,智能卡20读持久存储单元22来判断要运行的当前应用(ST31b)。然后,智能卡20修改持久存储单元22来保存该应用值,它在预定应用列表中的下一行中(ST31c)。注意,在大多数实施例中,一般在智能卡上安装和删除应用时创建和/或修改预定应用列表,以便该列表将追踪可用的应用。然后,在持久存储单元22中保存的该应用就是在下一次智能卡20插入终端时运行的应用。然后,智能卡20运行当前应用(ST31e),当前应用将它的ATR发送到终端。然后,终端判断该ATR是否是终端可识别或可接收的一种ATR(ST31f)。如果是,则智能卡20和终端交换数据(ST31g)或者进行一次事务处理,然后结束该事务处理(ST31h)。如果不是,则马上结束事务处理(ST31h)。
此实施例的优点在于,能够运行智能卡20上的任何应用,而不需要特殊的终端来选择应用。然而,在智能卡上有大量应用时,重复插入和拔出智能卡20的方法的确有些烦琐。而且,有可能某些终端会对提供不可识别ATR的智能卡的重复插入产生负面反应。
在另一实施例中,参照图4,智能卡40具有持久存储单元42,并包含用于特殊的“应用选择”应用的第五可用ATR,该应用仅由一特殊的应用选择终端44支持。在某些实施例中,应用选择终端44是SchlumbergerPocketDockTM牌的终端,它是一种体积小、易携带的便携终端。当然,也可以使用能够支持应用选择应用的其它类型终端,这包括其它的便携终端、具有智能卡读卡器的便携或桌面计算机、或支持此应用的其它终端。
当被插入终端44时,智能卡40向终端44提供应用选择应用的ATR。在终端44接受或确认该ATR之后,智能卡40运行应用选择应用,该应用允许用户通过终端44手工选择要下次运行的应用。终端44随后修改持久存储单元42,指定所选择的应用作为在下次插入时运行的应用。
参照图5A,在一个实施例中,智能卡40操作开始时,将智能卡插入应用选择终端44(ST50)。然后,用户选择要运行的所需应用(ST51),再拔出智能卡40(ST52)。接着,用户将智能卡20再插入到所需的常规或通常的终端(ST53)。用户执行所需的事务处理(ST54),之后拔出智能卡(ST55)。
本实施例的关键之处在于,应用选择应用是要运行的缺省应用。为了运行其它的应用,用户必须首先将智能卡40插入到应用选择终端44。这允许用户手工选择所需应用。于是,用户在确信要运行正确的应用之后,可以将智能卡40插入到所需的通常终端。
参照图5B,应用的用户选择(ST51)开始于智能卡40从终端44接收预定的信号(ST51a)。然后,智能卡40读持久存储单元42,查找下面要运行的应用选择应用(ST51b)。然后,智能卡40运行应用选择应用(ST51c),该应用将其ATR发到终端44(ST51d)。终端44选择、调查或确定智能卡40上可用的该应用(ST51e)。然后,终端44提示用户进行选择(ST51f),用户进行选择(ST51g)。在优选实施例中,终端44随后修改持久存储单元42,来指定作为要运行应用的用户选择应用(ST51h)。在某些实施例中,终端44还可以将用户选择应用值替代地传给智能卡40,智能卡40相应修改持久存储器42。之后,结束事务处理(ST51i)。
在此实施例中,参照图5C,除了在持久存储单元42中保存的值不是按照预定列表确定的以外,事务处理(ST54)的执行方式是与图3A和3B的智能卡20的执行方式相同的。(参见图3B,ST31C)。在此实施例中。不同的是,智能卡40总是修改持久存储单元42,来指定作为下面要运行的应用的应用选择应用(ST54c)。
注意在此实施例中,为了在通常终端中、甚至在刚刚拔出智能卡的同一通常终端中再次使用智能卡,由于应用选择应用已被指定为下一个要运行的应用,需要再次将智能卡40插回终端44,并再次选择所需应用。因此,虽然本实施例具有使用户能够选择所需应用而不必升级或更新现存通常终端的优点,但它需要可使用户进行选择的终端44。
在另一实施例中,如图6A所示,用户可随时将智能卡40插入应用选择终端44或通常终端(ST60)。一旦插入,智能卡40依据通常不在常规终端中采用的特殊信令(以下将说明)来判断是否该终端是应用选择终端44(ST61)。如果是,则用户可选择要运行的应用(ST62)。如果不是,则用户可执行通常的事务处理(ST63)。之后,用户拔出智能卡40。若用户准备再次使用智能卡,他可以简单地将智能卡再次插入任何类型的终端,智能卡将运行适当的应用。
参照图6B,通过例如从终端接收预定信号(ST61a),智能卡40判断该终端是否是应用选择终端(ST61)。然后,智能卡等待预定时间间隔来查看是否接收到第2个预定信号(ST61b)。在优选实施例中,智能卡40采用微控制器和/或计数器来测量在两个复位信号之间的经过时间。如果第二复位信号在第一复位信号之后例如0.5到1.5毫秒之间出现,则智能卡判定该终端是应用选择终端44。如果第二复位信号在其它时期出现,则智能卡将该终端当为通常的终端。
参照图6C,如果该终端是应用选择终端44,则智能卡自动运行应用选择应用(ST62a),而不管当前持久存储单元42中指定的要运行应用是哪一个应用。该应用将它的ATR发送到终端44(ST62b),并且按图示的过程进行选择处理,最终结果是终端44修改持久存储单元42来指出用户选择应用为下一个应用(ST62f)。
参照图6D,如果该终端是通常的终端,则智能卡40读持久存储单元42来判断要运行哪一个应用(ST63a)。在优选实施例中,然后,智能卡40将同一应用设置为要运行的下一个应用(ST63b)。这要通过修改持久存储单元42来保存适当值、或简单地保持持久存储器42中当前值不变来完成。在某些实施例中,智能卡40可以按照预定列表来设置要运行的下一个应用。然后,智能卡40运行当前应用(ST63c),该应用将其ATR发送到终端(ST63d)。智能卡40和终端交换数据(ST63e)或者执行事务处理,之后结束事务处理(ST63f)。
在此实施例的典型情况下,用户在所需终端上反复使用智能卡,直到他准备选择不同应用为止,然后,他将智能卡插入到具有特定信令功能的特定应用选择终端,装备有例如微控制器(未示出)来识别特定信令的智能卡40,在接收到和识别出该特定信令时旁通持久存储单元指定的应用并且运行应用选择应用。
该实施例的优点在于,能够反复运行在智能卡上的同一指定应用而不需要将卡插入应用选择终端。然而,它不仅需要专用的智能卡还需要能够支持特定信令来选择另一个应用的应用选择终端。
附录中包含的智能卡Java程序示出了优选实施例的详细实施过程。该程序包含一个选择应用和四个展示应用。该程序旨在符合Java卡API的智能卡,如Schlumberger CyberFlexTM卡中运行,并且应用选择应用在设计上与Schlumberger PocketDockTM兼容。
参照图7,多应用智能卡70包括连接到保存单元74和存储单元76的微控制器72。微控制器72执行智能卡软件和程序,执行终端指令,并通常管理进出智能卡70的数据流。在某些实施例中,微控制器72可包括微处理器、可编程阵列逻辑(PAL)电路、专用集成电路(ASIC)、和/或其它的集成电路器件。保存单元74可包括只读存储器(ROM),用于保存智能卡70操作所需的程序和数据,这包括一个或更多应用的程序和ATR。存储单元76可包括随机存取存储器(RAM),它在执行程序期间临时存储微控制器72使用的程序和数据。新的或更新的程序和数据可以时常被下载或编程到智能卡70以更新智能卡70。智能卡70还具有与之连接的通信单元78,它允许微控制器72和外部设备之间相互传递数据。此外,智能卡70具有持久存储单元80,它保存名称、位置或其它信息,来指示下次智能卡70插入终端时要运行的应用。按照上述实施例,微控制器72修改持久存储单元80来指示要运行的下一个应用。
虽然作为单独块示出了微控制器72、保存单元74、存储单元76、通信单元78和持久存储区80,但它们可组合成单个IC器件或数目更少或更多的单独IC器件。
现在参照图8,应用选择终端82具有连接到微控制器86的智能卡接口84。接口84允许智能卡80连接到终端82,并使智能卡80和终端82之间能够通信。在优选实施例中,接口84包括智能卡读卡器或读卡器-写卡器和/或为智能卡70供电的电源,如电池等(未示出)。在某些实施例中,接口84物理地与智能卡70接合。然而,在其它实施例中,接口84可以使用电感性、电容性或光学性的耦合,或者,接口84可使用射频信号将智能卡70连接到终端82。微控制器86可包括一个或多个处理器、PAL、ASIC或其它IC器件,它执行终端程序,并通常管理进出智能卡70的数据流。保存单元88可包括硬盘,它连接到微控制器86,并保存终端82操作所需的基本程序和数据。存储单元90暂时存储在终端82操作期间微控制器86使用的程序和数据。此外,智能卡82具有手工选择单元92,它可以是键板、键盘或其它让用户能够手工输入选择的手工选择设备。手工选择单元92允许用户选择下次在将智能卡70插入终端时他希望运行的应用。
注意,如智能卡70的场合,终端82的微控制器86、保存单元88和存储单元90可以组合成单个IC器件,或者数目更少或更多的单独IC器件。
智能卡70和终端82的操作与图5A-5C和6A-6D的实施例的操作非常相似,故这里不再描述。
应该理解,上述实施例只是示范性的,本领域普通技术人员在实施本发明时可以在不脱离本发明的范围内能够设计其它的结构。例如,虽然在说明中第一和第二信号是特定的信令,但也可以采用被主张的如状态行或通信行的其它信号和/或其它信令机构、或其它常规和/后非常规的信令机构来触发应用选择应用。而且,本发明的智能卡指微控制器和/或相关设备,并不限于“卡”或任何具体形态的因素。这样的设备可以嵌入,例如,标准信用卡格式,或嵌入电话、钟表、自动元件或各种各样形态的因素,而不脱离本发明的范围。
权利要求
1.一种操作多应用智能卡的方法,包括将智能卡插入终端;读智能卡内的持久存储单元来确定要运行的应用;运行该应用;修改持久存储单元来指出要运行的下一个应用;以及从终端中拔出智能卡。
2.如权利要求1所述的方法,其中所述修改包括修改持久存储单元来指出应用选择应用为要运行的下一个应用。
3.如权利要求1所述的方法,其中所述修改包括修改持久存储单元来指出当前应用为要运行的下一个应用。
4.如权利要求1所述的方法,其中所述修改包括修改持久存储单元来指出用户选择的应用为要运行的下一个应用。
5.如权利要求1所述的方法,其中所述修改包括修改持久存储单元来指出在预定列表中的下一个应用为要运行的下一个应用。
6.如权利要求1所述的方法,还包括在从终端接收到预定信号后,运行应用选择应用。
7.如权利要求1所述的方法,还包括确定在智能卡中可运行的应用。
8.如权利要求1所述的方法,还包括向智能卡发送预定信号。
9.一种在多应用智能卡中选择要运行的应用的方法,包括将智能卡插入终端;选择应用;配置智能卡来在下一次插入时运行所选择的应用;以及从终端中拔出智能卡。
10.如权利要求10所述的方法,其中该终端是应用选择终端。
11.如权利要求10所述的方法,还包括向智能卡发送预定信号。
12.如权利要求10所述的方法,还包括确定在智能卡中哪一个应用可运行。
13.一种能够运行多种应用的智能卡,包括持久存储单元,它指出要运行的当前应用;以及微控制器,它应用持久存储单元指出的应用,并修改持久存储单元来指出要运行的下一个应用。
14.如权利要求13所述的智能卡,其中微控制器修改持久存储单元来指出应用选择应用为要运行的下一个应用。
15.如权利要求13所述的智能卡,其中微控制器修改持久存储单元来指出在预定列表中的下一个应用为要运行的下一个应用。
16.如权利要求13所述的智能卡,其中微控制器修改持久存储单元来指出当前应用为要运行的下一个应用。
17.如权利要求13所述的智能卡,其中微控制器修改持久存储单元来指出用户选择的应用为要运行的下一个应用。
18.如权利要求13所述的智能卡,其中在从智能卡终端接收到一个或更多的预定信号后,微控制器运行应用选择应用。
19.如权利要求18所述的智能卡,其中所述预定信号包括之后经过预定间隔出现第二复位信号的第一复位信号。
20.一种能够运行多种应用的智能卡,包括指出装置,用于指出要运行的当前应用;运行装置,用于运行所指出的应用;以及修改装置,用于修改指出装置来指出要运行的下一个应用。
21.如权利要求20所述的智能卡,其中修改装置修改指出装置来指出应用选择应用为要运行的下一个应用。
22.如权利要求20所述的智能卡,其中修改装置修改指出装置来指出在预定列表中的下一个应用为要运行的下一个应用。
23.如权利要求20所述的智能卡,其中修改装置修改指出装置来指出当前应用为要运行的下一个应用。
24.如权利要求20所述的智能卡,其中修改装置修改指出装置来指出用户选择的应用为要运行的下一个应用。
25.如权利要求20所述的智能卡,其中在从智能卡终端接收到预定信号后,运行装置运行应用选择应用。
26.如权利要求25所述的智能卡,其中所述预定信号包括之后经过预定间隔出现第二复位信号的第一复位信号。
27.一种智能卡应用选择终端,包括智能卡接口,它将多应用智能卡连接到该终端;以及手工选择单元,用于手工选择可用应用,作为在多应用智能卡中要运行的下一个应用。
28.如权利要求27所述的终端,还包括确定在多应用智能卡中哪一个应用可运行的微控制器。
29.如权利要求27所述的终端,其中微控制器通过向智能卡发送预定信号来启动与多应用智能卡的通信。
30.如权利要求27所述的终端,其中微控制器通知所述智能卡选定的要运行的下一个应用。
31.一种智能卡应用选择终端,包括接口装置,应用与多应用智能卡接口;以及手工选择装置,用于手工选择可用应用,作为在多应用智能卡中要运行的下一个应用。
32.如权利要求31所述的终端,还包括启动装置,用于通过向所述智能卡发送预定信号来启动与所述智能卡的通信。
33.如权利要求31所述的终端,还包括通信装置,用于通知所述智能卡选择了哪一个应用作为要运行的下一个应用。
34.如权利要求31所述的终端,还包括确定装置,用于确定在所述多应用智能卡中可运行的应用。
35.一种智能卡系统,包括多应用智能卡,具有指出在该智能卡中要运行的下一个应用的持久存储单元;以及应用选择终端,它允许用户选择下面运行该智能卡中的哪一个应用。
36.如权利要求35所述的系统,其中所述智能卡修改所述持久存储单元来指出应用选择应用为下面要运行的应用。
37.如权利要求35所述的系统,其中所述终端修改所述持久存储单元来指定用户选择的应用为下面要运行的应用。
38.如权利要求13所述的智能卡,其中所述智能卡可以采用任何具体形式因素。
全文摘要
一种多应用智能卡具有持久存储单元。该持久存储单元保存数据和/或指出在下一次将存储卡插入终端时要运行哪一个应用。持久存储单元可指出下次运行的是同一应用、不同的用户选择的应用还是应用选择应用。或者,持久存储单元可指出在预定列表中的下一个应用为下一次要运行的应用。应用选择终端允许用户手工选择用户选择的应用。该终端可以向智能卡发送特殊的预定信号来启动与智能卡的通信。
文档编号G06K19/07GK1236462SQ98801156
公开日1999年11月24日 申请日期1998年9月18日 优先权日1997年9月19日
发明者迈克尔·A·蒙哥马利 申请人:施蓝姆伯格工业公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1