自动选择能够由设备实现的应用的方法和设备的制作方法

文档序号:6669807阅读:171来源:国知局
专利名称:自动选择能够由设备实现的应用的方法和设备的制作方法
技术领域
本发明涉及适合于与外部实体进行通信的多应用电子设备的技术领域,优选地, 所述设备可便携。
背景技术
具体地当并非以非限制方式,本发明适用于微电路卡(智能卡),该微电路卡适合 于与智能卡读取器进行通信,以实现一个或多个应用(支付交易、控制访问、...)。文献US2008/0306849描述了一种能够由用于与智能卡进行通信的读取器实现的 方法,该方法适用于实现符合ISO 14443-4协议的应用,以及符合MIFARE协议的应用。在 该方法中,需要读取器认识到智能卡所支持的应用,以便能够选择这些应用。本发明足以避免这种限制。

发明内容
在第一方面中,本发明提供了一种电子设备,包括 用于接收外部实体所发送的消息的装置; 用于使用相同协议实现与所述外部实体进行通信的至少两个应用的装置; 产生器装置,适合于在接收到从所述实体接收的至少一个特定消息时,或在初始 化与所述实体的通信的情况下,产生预定事件;以及 选择装置,适合于检测所述事件,并在所述应用之中选择一个应用,与从所述外 部实体接收到的任何消息无关地,选择所选应用。以相应的方式,本发明还提供了一种能够由电子设备实现的选择方法,该电子设 备适合于与外部实体进行通信,并适合于实现至少两个应用,至少两个应用使用相同协议 与所述外部实体进行通信,该方法包括步骤 在接收到从所述实体接收的至少一个特定消息时,或在初始化与所述实体的通 信的情况下,产生预定事件; 检测所述事件; 在所述应用之中选择一个应用,与从所述外部实体接收到的任何消息无关地,选 择所选应用。因此,以非常有利的方式,本发明能够在外部单元不发送用于选择应用的任何命 令的情况下,选择由电子设备实现的应用。在特定实施例里,本发明的电子设备包括 用于执行第一计算机模块的装置,该第一计算机模块适合于发起第二计算机模 块的执行,该第二模块适合于实现所述应用;以及 由第一模块实现的事件产生装置。当对于电子设备而言实现上述应用的第二计算机模块以“黑盒”形式出现时,实现 本发明的优选、但非限制的应用。
这通常适用于在第三方已经开发了第二计算机模块时。本文中,“计算机模块”的概念应当广义地理解具体地,它涵盖了计算机程序、计 算机子程序、函数、或函数库。在本发明的一个特定实施例中 第一模块适合于与应用ISO 14443-1至ISO 14443-3标准的外部实体进行通 所述应用是MIFARE (注册商标)应用;以及 第二模块适合于实现应用,以便在MIFARE应用的上下文中产生与外部实体交换 的消息的发送和接收。注意MIFARE技术依赖于IS014443type A标准,并且与该标准的不同之处在于用 专有MIFARE协议代替了 ISO 14443-4层,“IS014443type A”和MIFARE技术共同共享ISO 14443-1、ISO 14443-2 和 ISO 14443-3 协议。对于更多关于MIFARE技术的信息,本领域技术人员可参考2008年1月29日的文 献"MF1ICS50, functional specification, Rev. 5. 3"。以已知方式,在MIFARE应用的上下文中,由读取器(或更通常地由外部实体)发 送到智能卡(或更通常地到便携式电子设备)的消息实质上在于,用于获得对存储器的读 写访问的控制消息,该存储器专用于MIFARE应用。在该特定领域中,使用术语“MIFARE应用”来指示存储器本身是惯用技术手段。因 此,需要区分 MIFARE应用,即存储器;以及 产生与读取器交换的消息以便访问用于读或写的存储器的应用。因此,在特定实现中,本发明能够选择例如由智能卡实现的MIFARE应用,以便执 行与所述卡的读取器的交易,而无需所述读取器发出任何命令,来选择MIFARE应用或专用 于MIFARE应用的存储器。在本发明的实施例中,第一模块在接收到可由其解释的命令时,产生预定事件。当第一模块适合于在ISO 14443-1至ISO 14443-3标准的应用中与外部实体进行 通信时,产生本发明意义上的预定事件的特定消息具体可以选自于 由读取器周期性发出的REQA轮询消息; 用于选择卡(本发明意义上的电子设备)的SEL消息;或者 如ISO 14443-3标准所定义的结束交易的HALT消息。有利地,该实施例能够在第一 MIFARE交易结束之后,且不管第一 MIFARE应用终止 的方式(例如由于读取器发送HALT消息或者由于电磁场受到干扰),都能够选择MIFARE应用。在特定情况下,外部实体能够若干次发出特定消息,例如,若干轮询消息。本领域技术人员将理解,在这种情况下,某些应用永远不被选择。本发明提出两种避免上述问题的解决方案 在发起第二模块的执行之前立即产生预定事件;或者 在接收到不可由第一模块解释的命令时,产生预定事件。在一个特定实施例中,第二模块执行之后,第一模块重新开始执行,并且在重新开
5始执行之后后,第一模块产生预定事件。根本上需要清楚注意的是,根据本发明,应用选择(即,从可能的应用之中选择一 个应用)以与正从读取器接收的任何消息无关地进行。在特定实施例中,本发明的设备的选择装置顺序地逐一选择应用。在变型中,可以循环地或随机地选择应用。在特定实施例中,选择方法的不同步骤由计算机程序指令来确定。因此,本发明还提供了一种在数据介质上的计算机程序,该程序适合于在通信电 子设备中,或更通常地在计算机中实现,该程序包括适合于执行如上所述选择方法的步骤 的指令。该程序可使用任何编程语言,其可以采用源代码、目标码或介于源代码和目标码 之间的代码形式,例如部分编译形式或任何其它期望形式。本发明还提供了一种计算机可读并包括如上所述计算机程序的指令的数据介质。数据介质可以是能够存储程序的任何实体或设备。例如,该介质可包括诸如只 读存储器(ROM)(例如,光盘(CD)ROM或微电子电路ROM)等的存储装置,或真正磁记录装置 (例如,软盘或硬盘)。此外,数据介质可以是可传输介质,例如电或光信号,可以经由电缆或光缆以无线 或其他方式进行传递。具体地,本发明的程序可以从互联网类型的网络上下载。备选地,数据介质可以其中并入了程序的集成电路,该电路适于执行所讨论的方 法,或用于执行所讨论的方法。在上面所提到的发明的第一变型实施例中,在被事件的发生触发时,电子设备判 定选择应用,该事件与从读取器接收到的特定消息的接收有关。在第二方面中,本发明还提供了一种电子设备,包括 用于实现至少两个MIFARE应用的装置;以及 用于已经执行所述MIFARE应用之一之后系统地选择所述MIFARE应用之一的装置。因此,本发明提供了一种可由电子设备实现的选择方法,该电子设备适合于实现 至少两个MIFARE应用,该方法始终在执行MIFARE应用之一之后,选择所述MIFARE应用之一。也可以顺序地、循环地或随机地选择MIFARE应用。在该第二变型的特定实施例中,本发明的电子设备包括用于执行第一计算机 模块的装置,第一计算机模块适合于发起第二计算机模块的执行,第二模块适合于实现 MIFARE应用,由第一模块实现选择装置。在特定实施例中,在发起第二模块的执行之前,第一模块立即选择MIFARE应用。


参照示出了不具有限制特性的实施例的附图,根据以下给出的描述,本发明的其 它特征和优点将变得显而易见。附图中图1示出了根据本发明特定实施例的电子设备;图2示出了该设备的细节;以及
图3A至3D以及图4是示出了根据本发明不同实现方式的选择方法的流程图。
具体实施例方式图1示出了根据本发明特定实施例的选择设备1000。选择设备1000是移动电话。选择设备包括处理器1300,适合于实现移动电话的传统操作,即涉及电话技术, 发送和接收消息,以及管理人/机界面的操作。在这里描述的实施例中,设备1000具有用于与外部读取器100进行非接触式通信 的装置。这些非接触式通信装置主要由天线1100和符合近场通信(NFC)标准或ISO 14443 的微处理器1200构成。在这里描述的实施例中,移动电话1000包括经由电路L1由天线1100供电的智 能卡(用户识别模块(SIM)卡)1400。在这里描述的实施例中,微处理器1200执行模数转换器和调制器/解调器功能, 以经由天线1100进行通信。这样的微处理器通常被称作非接触式前端(CLF)。在这里描述的实施例中,SIM卡1400经由连接L2并符合单线协议(SWP)与微处 理器1200进行通信。图2详细示出了移动电话1000的SIM卡1400。优选地,SIM卡符合IS07816标准,包括输入/输出接口 1410,R0M1430、以及电可 擦除可编程ROM(EEPROM)类型的可重写非易失性存储器1440,这些元件通过总线连接至微 处理器1420。在这里描述的实施例中,可重写非易失性EEPR0M 1440包括 三个存储器M1、M2、M3,其中的每一个构成MIFARE技术意义上的应用;以及 指针PTR,在给定时刻指向Ml至M3中所选的一个。在这里描述的实施例中,R0M1430具有两个计算机程序,即 第一计算机程序PG1,该程序具体包括SIM卡1400的操作系统、实现 IS014443-1至14443-3协议的指令、以及使得能够选择MIFARE应用Ml至M3的模块;以及 计算机程序PG2,适合于实现应用,以及适合于在所述MIFARE应用Ml至M3的上 下文中,管理与外部实体100交换的消息的发送与接收。参照图3A,随后描述了根据本发明第一选择方法的主要步骤,该方法由上述参照 图1和图2描述的移动电话1000来实现。首先,假定用户将移动电话1000移至读取器100的几厘米范围内,使得移动电话 的天线1100进入由所述读取器所产生的电磁场中。因此,SIM卡1400由电路L1或电话的电池供电。在这里描述的实施例中,然后SIM 卡的微处理器1420执行第一计算机程序PG1。例如,假定在初步个性化阶段期间初始化指针PTR,以便指向MIFARE应用Ml。假定在步骤E8期间,读取器100发送由模块PG1接收的轮询消息REQA。该消息的接收构成了本发明意义上的事件。在这里描述的实施例中,程序PG1包括顺序地移动指针PTR的步骤E40,使得其随 后指向MIFARE应用M2。
然后在步骤E50期间,程序PG1发起第二计算机程序PG2,以在所述MIFARE应用 M2上下文中管理与外部实体100交换的消息的交换。参考图3B,描述了根据本发明第二选择方法的步骤。在该实施例中,第一计算机程序PG1适合于实现ISO 14443-1至ISO 14443-3标 准。在该实施例里,非易失EEPR0M 1440包括寄存器,该寄存器适合于存储初始被设 置为0的标记FLAG的值。在这里描述的实施例中,将指针PTR初始化为,指向MIFARE存储器Ml。在这里描述的实施例中,当第一计算机程序PG1接收到轮询消息REQA时,在步骤 E10期间第一计算机程序PG1验证存储在非易失性EEPR0M 1440内的标记包含预定值“ 1 ”, 还是其它值。如果确实包含值“ 1 ”,则在步骤E40期间移动指针PTR并且在步骤E14将标记设置 为“0”值。在这里所描述的示例中,用“0”值初始化标记,使得在轮询消息REQA的该第一次 接收时,不执行步骤E12和E14,这是由于在该阶段还没有检测到事件。根据ISO 14443-1至ISO 14443-3协议,根据本发明的设备1000在步骤E16期间 通过发送消息ATQA来响应请求REQA。然后,在步骤E18期间,根据本发明的读取器100和电子设备1000实现本领域技 术人员所公知的一般步骤E18作为“防冲突循环”,该循环使得读取器100实际能够从其他 智能卡或位于读取器100的电磁场内的设备之中,选择本发明的设备1000。在该冲突管理阶段结束时,设备1000在步骤E20期间开始向读取器100发送标示 符UID,该标识符以唯一的方式标识设备1000。根据ISO 14443-1至ISO 14443-3协议,在步骤E22期间读取器100通过发送消 息SEL(UID)来选择设备1000,同时电话1000通过发送选择肯定应答(SAK)消息来肯定应 答该选择。这些不同的消息(REQA, ATQA,防冲突循环,UID,SEL(UID),和SAK)是使用ISO 14443-4协议的应用和符合MIFARE技术的应用所共用的消息。现在假定在步骤E25期间,读取器100发送消息MSG。在测试E26期间,第一模块PG1验证消息是否符合ISO 14443-4协议。如果不符合,则测试E26的结果为肯定。在测试之后是,根据ISO 14443-4协议由读取器100和移动电话1000实现互认证 步骤E28,然后是一般步骤E36,在该一般步骤E36期间,电话1000根据ISO 14443-4协议 与读取器100进行通信。如果在步骤E26期间,第一模块PG1检测到在步骤E25中接收到的消息MSG不符 合ISO 14443-4协议,则测试E26的结果为否定。测试之后是步骤E44,在步骤E44期间第一计算机程序PG1将标记设置为“ 1 ”值。之后,在步骤E50期间,第一计算机程序PG1发起第二计算机程序PG2。然后可以在读取器100和移动电话1000的MIFARE应用Ml之间实现MIFARE交易。随后,当移动电话1000接收到新的轮询消息REQA时(在步骤E8中),关于标记值的测试E10的结果为肯定,使得执行步骤E12(移动指针PTR)和E14(将标记重新初始化为 “0”值)。电话1000随后选择MIFARE应用M2。在该第二实施例中,第一计算机程序PG1不能解释的消息的接收构成本发明意义 上的事件。在如图3C所示的第三实施例中,在执行MIFARE应用之后,第二计算机程序PG2将 控制返回到第一计算机程序PG1,并且在步骤E40,在以这种方式返回控制后移动指针。该实施例避免使用标记。在图3D所示的第四实施例中,在接收不可解释的消息之后并且紧邻发起第二模 块PG2的执行之前,第一模块PG1移动指针PTR (步骤E40)。在上文描述的实施例中,指针PTR顺序移动。在变型中,可以循环地移动或随机选择指针。图4示出了根据本发明的第二变型的选择方法。在该实施例中,第一计算机程序PG1适合于通过监控对存储器Ml至M3的访问,来 检测第二计算机程序PG2是否在执行MIFARE应用。在这里描述的实施例中,在步骤E100期间第一计算机程序PG1使用预定持续时间 来初始化定时器。只要发生了对存储器Ml至M3之一的访问(测试E120为肯定),就假定在读取器 100中进行MIFARE应用,并且用同样的持续时间重新初始化定时器。否则,如果在此持续时间没有发生对存储器Ml至M3中任何一个的访问(测试E40 为肯定),就假定没有进行MIFARE应用(或者从未有过一个MIFARE应用或该MIFARE应用 已终止),并选择MIFARE应用。在大多数情况下,以这种方式所选择的MIFARE应用与目前的MIFARE应用不同。然而,在本发明的一个实施例中,随机选择MIFARE应用,因此会出现同一 MIFARE 应用连续被选择若干次。在所有上述实施例中(图3A至3D及图4),可重写非易失性EEPR0M 1440具有三 个不同的存储器Ml,M2和M3。在变型中,可重写非易失性EEPR0M 1440仅具有一个存储器M,每次MIFARE应用变 化时,将MIFARE应用的内容拷贝到所述存储器M中。在该变型中,不需要使用指针PTR,这 是由于能够通过将存储器M的内容与没有MIFARE应用进行比较,来确定当前的MIFARE应用。在上述实施例中,本发明主要在移动电话1000的智能卡1400内实现。在变型中,能够在移动电话自身中实现本发明,同时由电话的处理器1300执行计 算机程序PG1和PG2。本发明也可在其他类型的电子设备中实现,尤其是在配备非接触通信装置(具体 地,天线)的智能卡中。
权利要求
一种电子设备(1000),包括用于接收由外部实体(100)发送的消息的装置(1100);用于实现至少两个应用(M1,M2,M3)的装置(1420),所述至少两个应用(M1,M2,M3)使用相同协议与所述外部实体进行通信;所述设备(1000)的特征在于,包括产生器装置(PG1),适合于在接收到从所述实体(100)接收的至少一个特定消息时,或在初始化与所述实体(100)的通信的情况下,产生预定事件;以及选择装置(PG2),适合于检测所述事件,并在所述应用(M1,M2,M3)之中选择一个应用,其中,与从所述外部实体(100)接收到的任何消息无关地,选择所选应用。
2.根据权利要求1所述的电子设备,其特征在于所述电子设备包括用于执行第一计算机模块(PG1)的装置,所述第一计算机模块 (PG1)适合于发起第二计算机模块(PG2)的执行,所述第二模块(PG2)适合于实现所述应用 (M1,M2,M3);以及所述事件产生装置由第一模块(PG1)实现。
3.根据权利要求2所述的电子设备,其特征在于,所述第一模块(PG1)在接收到由所述 第一模块(PG1)可解释的命令(REQA)时,产生所述预定事件。
4.根据权利要求2所述的电子设备,其特征在于,所述第一模块(PG1)在发起所述第二 模块(PG2)的执行之后,立即产生所述预定事件。
5.根据权利要求4所述的电子设备,其特征在于,所述第一模块(PG1)在接收到不可由 所述第一模块(PG1)解释的命令(REQA)时,产生所述预定事件。
6.根据权利要求2所述的电子设备,其中,在执行所述第二模块(PG2)之后,所述第一 模块(PG1)重新开始执行,所述设备的特征在于,在所述重新开始执行之后,所述第一模块 (PG1)产生所述预定事件。
7.根据权利要求2至5中任一项所述的电子设备,其特征在于所述第一模块(PG1)适合于在ISO 14443-1至ISO 14443-3标准的应用中与所述外部 实体(100)进行通信;所述应用(Ml,M2,M3)是MIFARE应用;以及所述第二模块(PG2)适合于,实现应用(1432),以在所述MIFARE应用(Ml,M2,M3)的 上下文中产生与所述外部实体(100)交换的消息的发送与接收。
8.根据权利要求1至6中任一项所述的电子设备,其特征在于,所述选择装置顺序地从 所述应用之中选择应用。
9.一种能够由电子设备(1000)实现的选择方法,所述电子设备适合于与外部实体进 行通信,并适合于实现至少两个应用(M1,M2,M3),所述至少两个应用(M1,M2,M3)使用相同 协议与所述外部实体进行通信,所述方法包括步骤在接收到从所述实体接收的至少一个特定消息时,或在初始化与所述实体的通信的情 况下,产生预定事件;检测所述事件;以及在所述应用之中选择一个应用,其中,与从所述外部实体接收到的任何消息无关地,选 择所选应用。
10.一种计算机程序,包括当所述程序由计算机执行时用于执行根据权利要求9所述 的选择方法的步骤的指令。
11.一种计算机可读并且其上记录有计算机程序的记录介质,所述程序包括用于执行 根据权利要求10所述的选择方法的步骤的指令。
12.一种电子设备(1000),包括用于实现至少两个MIFARE应用(M1,M2,M3)的装置(1420);以及用于在已执行所述MIFARE应用之一之后,系统地选择所述MIFARE应用之一的装置 (PG1)。
13.根据权利要求12所述的电子设备,其特征在于,包括用于执行第一计算机模块 (PG1)的装置,所述第一计算机模块(PG1)适合于发起第二计算机模块(PG2)的执行,所述 第二模块(PG2)适合于实现所述MIFARE应用(M1,M2,M3),所述选择装置由第一模块(PG1) 实现。
14.根据权利要求13所述的电子设备,其特征在于,所述第一模块(PG1)在紧邻发起所 述第二模块(PG2)的执行之前,选择所述MIFARE应用。
15.一种能够由电子设备(1000)实现的选择方法,所述电子设备适合于实现至少两个 MIFARE应用(Ml,M2,M3),所述方法的特征在于,在执行所述MIFARE应用之一之后,系统地 选择所述MIFARE应用(Ml,M2,M3)之一。
全文摘要
本发明提供了一种电子设备(1000),包括用于接收由外部实体(100)发送的消息的装置(1100);以及用于实现至少两个应用的装置,所述至少两个应用使用相同协议与所述外部实体进行通信;产生器装置,适合于在接收到从所述实体(100)接收的至少一个特定消息时,或在初始化与所述实体(100)的通信的情况下,产生预定事件;以及选择装置,适合于检测所述事件,并在所述应用(M1,M2,M3)之中选择一个应用,与从所述外部实体(100)接收到的任何消息无关地,选择所选应用。
文档编号G07F7/10GK101853351SQ20101019965
公开日2010年10月6日 申请日期2010年3月26日 优先权日2009年3月27日
发明者吉米·德布里托, 弗兰克·布里库, 索菲·迪亚洛 申请人:欧贝特科技公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1