专利名称:用于支持多个nfc执行环境nfcee的nfc控制器的应用路由配置的制作方法
技术领域:
本申请涉及近场通信(NFC)。具体地,本申请涉及包括多个NFC执行环境(NFCEE)的系统中的应用相关信息的路由。
背景技术:
近场通信(NFC)是能够实现短距离(例如,大约10厘米的距离)上的设备之间的数据交换的短距离无线通信技术。NFC主要(但非排它地)瞄准在移动通信设备(例如,移动电话、智能电话和其他便携式电子设备)中使用。NFC设备通常与现有的IS0/IEC14443智能卡和读卡器进行通信以及与其他NFC设备进行通信,并从而与已经在使用的现有无接触基础设施相兼容。无接触基础设施当前被部署用于公共交通、支付和其他服务。NFC启动设备通常能够将它们的操作模式改变为读卡器/写卡器模式、对等模式或卡仿真模式。不同的操作模式是基于IS0/IEC18092NFC IP-1和IS0/IEC14443非接触式智能卡标准。在读卡器/写卡器模式中,NFC设备能够读取NFC论坛强制标签类型(例如,在读取NFC智能海报标签的场景中)。RF接口上的读卡器/写卡器模式遵从IS014443和FeliCa方案。在对等模式 中,两个NFC设备可以交换数据。例如,在对等模式中,可以在设备之间交换蓝牙或WiFi链路设立参数或数据(例如,虚拟商务卡或数字相片)。此外,在IS0/IEC18092标准中对对等模式进行了标准化。在卡仿真模式中,NFC设备看起来像是与传统的非接触式智能卡几乎相同的读卡器或写卡器装置。此卡仿真功能使得NFC设备能够在不改变现有非接触式智能卡基础设施的情况下实现非接触式支付和售票,。为了使得移动通信设备能够实现NFC服务,移动通信设备可以配备一个或更多个NFCEE (即,具有一个或更多个执行环境)。这些NFCEE中可以驻留用于执行不同交易的不同应用。此外,移动通信设备配备NFC控制器(NFCC),NFC控制器经由无线空口控制在外部远程读卡器/写卡器与存储在不同NFCEE上的应用之间的通信。如果在NFCC和包括特定应用的NFCEE之间的专用通信信道被激活,则远程读卡器可以使用IS07816-4SELECT (选择)命令来选择或寻址特定应用。在单个NFCEE的情况下,NFCC事先激活通信信道,使得在远程读卡器与NFCEE之间的通信可以在不存在与激活通信信道相关的延迟或等待时间的情况下发生。然而,在多个NFCEE的情况下,NFCC不知道具体应用驻留在的NFCEE。这是由于缺少与哪个应用(与SELECT命令中指示的应用标识符AID相关联)驻留在哪个NFCEE中有关的信息。因此,NFCC不能够激活合适的通信信道,因而,在远程读卡器与特定应用之间不能进行通信。本申请通过描述在NFCC和多个NFCEE之间的示例路由机制以及在NFCC上注册NFCEE的示例方法来解决此问题。
发明内容
根据一个方案,描述了一种用于识别在包括多个NFC执行环境的NFC启动设备上的NFC应用的方法。该应用可以驻留在多个NFC执行环境之一中。通常,多个NFC执行环境(也称为安全单元(SE))中驻留了多个不同应用。NFC执行环境可以驻留若干不同应用。考虑到NFC启动设备的NFC控制器通常不知道哪个应用驻留在多个NFC执行环境中的哪一个(或者NFC启动设备的设备主机)中的事实,NFC控制器可以使用本申请中概述的方法。应当注意,作为多个NFC执行环境的备选或补充,NFC启动设备可以包括能够驻留一个或更多个应用的设备主机,所述应用可以使用本申请中概述的方法进行识别。NFC启动设备可以是包括附加NFC控制器的移动电话、智能电话或便携式设备。NFC控制器可以被配置为经由空口与外部设备(例如,远程读卡器和/或远程写卡器)进行通信。在一个实施例中,NFC控制器提供配置为与外部NFC设备通信的空口。应用可以是卡仿真应用,其允许远程读卡器和/或写卡器从NFC启动设备读取和/或向NFC启动设备写入,就像NFC启动设备是兼容IS014443的非接触式智能卡一样。NFC控制器经由其与外部读卡器和/或写卡器通信的空口可以与IS018000-3 (通过引用将其并入本文)兼容;和/或,可以操作在13.56MHz上;和/或可以具有小于20cm的范围。一种用于识别在NFC启动设备上的应用的示例方法可以包括以下操作:通过NFC启动设备的空口接收请求访问应用的外部请求。所述外部请求可以由所述远程读卡器和/或远程写卡器发出。具体地,请求访问应用的请求可以与IS07816-4SELECT(AID)消息相对应,所述AID是所述应用的标识符。
所述方法可以包括以下操作:为了检测请求访问应用的请求,嗅探来自空口的数据业务。换言之,NFC控制器可以观察来自所述空口的数据业务,以及从所述进入数据业务中识别请求访问应用的请求(例如,SELECT (AID)请求)。不是该请求的进入数据业务可被忽略或丢弃。备选地,其他进入业务可被直接转发给一个特定NFC执行环境(NFCEE)或设备主机(DH)。所述示例方法可以包括以下操作:当多个NFC执行环境被实例化时,向多个NFC执行环境转发与所述外部请求相关联的查询。在一个实施例中,所述查询与所述外部请求相对应。具体地,仅将与检测到的请求访问所述应用的请求相关的查询转发给所述多个NFC执行环境,而其他进入业务可以或者被忽略或丢弃,或者被转发给仅单个特定NFCEE或DH。向多个NFC执行环境转发查询的操作可以包括将所述查询广播给所述多个NFC执行环境全体,并且(有可能)广播给所述设备主机。因此,所有NFCEE和DH将接收到请求访问所述应用的请求,并可以验证所述应用是否驻留在特定NFCEE或DH中。备选地,转发可以包括向多个NFC执行环境顺序地单播所述查询。因此,NFC控制器将关于每个NFCEE或DH顺序地验证所请求的应用是否驻留在特定NFCEE或DH中。作为向多个NFC执行环境中的多于一个NFC执行环境转发所述查询的结果,所述NFC控制器会分别从多个NFC执行环境中的多于一个NFC执行环境接收多于一个对所述查询的响应。换言之,已经接收到所述查询的拷贝的每个NFCEE (和/或DH)会回发对所述查询的响应,所述响应将被所述NFC控制器接收。因此,NFC控制器会接收来自多个NFCEE (和/或DH)中的相应的多于一个NFC执行环境的多于一个响应。示例方法还可以包括:分析所述多于一个响应,以便识别指示所述应用是否驻留在多个NFC执行环境中的相应一个NFC执行环境中的肯定响应。换言之,所述NFC控制器可以分析从所述NFCEE(和/或DH)接收到的响应。所述响应可以是否定的,指示对应NFCEE (和/或DH)中没驻留所请求的NFC应用。另一方面,一个或更多个响应可以是肯定的,指示对应NFCEE(和/或DH)中没驻留所请求的应用,例如具有特定应用标识符(AID)的应用。肯定响应可以是特定消息类型(例如根据IS07816-4的“0K”响应消息(所述“0K”响应消息具有十六进制值“9000”))。否定响应可以是根据IS07816-4的“Not found(未找到)”响应消息(所述“未找到”响应消息具有十六进制值“6A82”)。因此,在对查询进行顺序单播的情况下,转发可以包括以下操作:向多个NFC执行环境中的多于一个NFC执行环境顺序地单播所述查询。接收多于一个响应可以包括从NFC执行环境接收对单播查询的响应,并且所述分析可以包括分析所接收的对所述单播查询的响应。换言之,顺序单播可以涉及以下迭代处理:向多个NFC执行环境中的所述多于一个NFC执行环境中的第一 NFC执行环境转发所述查询;从多个NFC执行环境中的所述多于一个NFC执行环境中的第一 NFC执行环境接收第一响应;以及,根据所述第一响应确定所述应用是否驻留在多个NFC执行环境中的所述多于一个NFC执行环境中的第一 NFC执行环境中。如果确定所述应用不驻留在第一 NFCEE中,则所述迭代处理可以包括询问多个NFC执行环境中的所述多于一个NFC执行环境中的第二 NFC执行环境。所述询问可以包括转发所述查询,从多个NFC执行环境中的所述多于一个NFC执行环境中的第二 NFC执行环境接收第二响应,并分析所述第二响应。取决于对所述第二响应的分析,所述方法可以或者进行由转发、接收和分析操作构成的另一次迭代(在否定响应的情况下),或者终止迭代处理(在肯定响应的情况下)。在后一情况下,分析所述第二响应将包括:确定所述应用驻留在多个NFC执行环境中的所述多于一个NFC执行环境中的第二 NFC执行环境中。向NFCEE和/或DH转发查询以及从NFCEE和/或DH接收响应可以涉及:激活在NFC控制器和相应的NFCEE和/或DH之间的通信信道。因此,示例方法可以包括:在向特定NFC执行环境转发所述查询之前,激活到特定NFC执行环境(和/或DH)的通信信道。以类似方式,示例方法可以包括:在从特定NFC执行环境接收到指示所述应用不驻留在所述特定NFC执行环境中 的响应的情况下(即,在接收到否定响应的情况下),去激活到该特定NFC执行环境(和/或DH)的通信信道。一般而言,并且为了节省资源(例如,功率消耗、用于维护未使用信道的处理器指令等),以下处理可能是有益的:一旦对应的NFCEE (和/或DH)已经用指示所请求的应用不驻留在该对应的NFCEE(和/或DH)中的否定响应进行了应答,则对通信信道进行去激活。作为备选或补充,在从NFCEE (或DH)接收到指示所请求的应用驻留在该NFCEE (或DH)中的肯定响应的情况下,可以去激活除与已经发出肯定响应的NFCEE (或DH)相对应的信道之外的一些或所有激活的通信信道。可能发生以下情况:所请求的应用不驻留在NFCEE(和/或DH)中的任意一个中。因此,示例方法可以包括:在进行所述分析操作的情况下,确定还未接收到肯定响应;以及,通过空口发送所述多于一个响应之一。作为示例,可以通过空口,向例如已经发送了请求访问应用的请求的远程读卡器/写卡器转发NCI控制器所接收的响应中的最后一个。以类似方式,在识别出单个肯定响应的情况下,可以通过空口发送该单个肯定响应。另一方面,在识别出来自由多个NFC执行环境和/或DH中的多于一个构成的对应集合的多个肯定响应,NFC控制器可被配置为:从所述集合中确定所选择的NFC执行环境和/或DH ;以及,通过空口发送来自所选择的NFC执行环境的肯定响应。可以根据预定优先级来确定所选择的NFCEE(和/或所选择的DH)。因此,可以解决多个应用使用相同应用标识符所造成的不明确性。示例方法可以包括:监视多于一个接收到的响应,以核实已经从多个NFC执行环境中的所述多于一个NFC执行环境中的每个NFC执行环境接收到响应。在监视时,可以通过空口发送等待超时消息,以避免与请求访问应用的请求的发送者的连接超时。等待超时消息可以是IS014443帧等待超时消息。因此,可以确保NFC控制器能够核实所请求的应用在所有NFCEE (和/或DH)上的存在性,而不需要招致请求超时的风险。一旦已经识别出所请求的应用所驻留在的NFCEE (和/或DH),NFC控制器可以向识别出的NFC执行环境(和/或DH)转发来自空口的其他数据业务。其他数据业务可以与在NFC启动设备外部的远程读卡器和/或写卡器与所请求的应用之间的交易数据相关。根据其他方案,描述了一种用于识别在包括多个NFC执行环境的NFC启动设备上的特定应用的示例方法。特定应用可以驻留在多个NFC执行环境(和/或NFC启动设备的DH)之一中。应当注意,本申请中描述的任意方案也可应用于此方法。示例方法可以包括向NFC启动设备的NFC控制器注册在多个NFC执行环境(和/或DH)中驻留的一些或所有应用。可以根据ESTI技术规范ETSI TS102622v7.5.0或此技术规范的扩展版本来执行该注册。通过引用方式将该ESTI技术规范并入本文。在进行了注册的情况下,示例方法可以包括在NFC控制器上确定或建立应用数据库,其中该数据库指示在注册应用和该注册应用所驻留在的NFCEE (和/或DH)之间的交叉引用或映射。此外,数据库可以包括与在NFC控制器和相应的NFCEE (和/或DH)之间的数据交换之前和之后要激活或去激活的、到NFCEE(和/或DH)的通信信道有关的信息。数据库可以用于在NFC启动设备内识别应用的位置。以与上述方法示例 类似的方式,本方法可以包括:在NFC控制器处通过NFC启动设备的空口接收请求访问特定应用的外部请求。为了确定特定应用所驻留在的特定NFC执行环境(和/或DH),NFC控制器可以查阅应用数据库,而不是广播或顺序单播与请求相关联的查询,并等待来自NFCEE的肯定响应。因此,NFC控制器可以直接识别正确的NFCEE (和/或DH),并继续进行对到特定NFC执行环境的通信信道进行激活;以及,向特定NFC执行环境转发与请求相关联的查询。在一个实施例中,所述查询与所述请求相对应。在进行了转发的情况下,NFC控制器可以从特定NFC执行环境接收与查询相关的响应;以及,通过空口(例如向远程读卡器/写卡器)发送响应。在从NFCEE (和/或DH)接收到指示特定响应驻留在特定NFCEE (和/或DH)中的肯定响应的情况下,该方法可以继续进行向特定NFC执行环境转发来自空口的其他数据业务。所述其他数据业务可以与针对特定应用的交易数据相关。根据另一方案,描述了 NFC控制器,该NFC控制器被配置为在包括多个NFC执行环境的NFC启动设备上识别应用。所述NFC控制器可以被配置为执行本申请中概述的任意方法操作。此外,NFC控制器可以包括NFC控制器接口(NCI),NFC控制器接口被配置为接收指示要如何向多个NFC执行环境(和/或DH)中的任意一个转发通过空口接收的针对应用的请求的初始化信息。根据又一方面,描述了一种电子设备(例如,智能电话或移动电话或便携式电子设备)。该电子设备可以包括根据本申请概述的方案中的任意一个的NFC控制器。NFC控制器可以被配置为:在接收到来自远程读卡器和/或远程写卡器的请求访问特定应用的请求的情况下,识别多个NFC执行环境(和/或DH)中的驻留了该特定应用的NFC执行环境(和/或DH)。此外,NFC控制器可以提供无线接口,所述无线接口被配置为与远程读卡器和/或远程写卡器通信。备选地,可以与NFC控制器分离地提供所述无线接口。此外,电子设备可以包括多个NFC执行环境,其中,多个NFC执行环境之一中驻留了所请求的NFC应用。此外,电子设备可以包括也可以驻留一个或更多个NFC应用的设备主机(DH)。根据又一方面,描述了一种软件程序。所述软件程序可以被存储在(可以是有形的或非易失性的)计算机可读介质上作为指令,所述指令适合于在处理器上执行,并且当在计算设备上执行时,适合于执行本申请中概述的方面和特征。根据另一方面,描述了一种包括软件程序的存储介质。所述存储介质可以是存储器(例如,RAM、ROM等)、光介质、磁介质等。所述软件程序可以适合于在处理器上执行,并且当在计算设备上执行时,适合于执行本申请中概述的方面和特征。根据其他方案,描述了一种计算机程序产品。所述计算机程序产品可以包括可执行指令,所述可执行指令当在计算机上执行时,用于执行本申请中概述的方面和特征。
应当注意,本申请中概述的各种示例实施例的方法和系统可以单独地使用,或者和本申请中公开的其他方法和系统结合使用。此外,本申请中概述的方法和系统的所有方面可以任意地组合。具体地,可以以任意方式将权利要求的特征相互组合。
下文参考附图,以示例性的方式解释本申请中概述的不同方案,在附图中:图1示出了 NFC启动的便携式电子设备的配置示例;图2示出了远程读卡器、NFCC和多个NFCEE之间的消息流程图示例;图3示出了远程读卡器、NFCC和多个NFCEE之间的另一消息流程图示例;图4示出了远程读卡器、NFCC和多个NFCEE之间的又一消息流程图示例;以及,图5示出了能够实现NFC服务的电子手持设备示例。
具体实施例方式图1示出了 NFC启动的便携式电子设备200的配置示例。设备200包括NFC控制器201,NFC控制器201被配置管理在外部/远程设备和多个NFC执行环境204、205、206和207之间的通信。此外,设备200的NFCC201被配置为实例化空口 202 (例如,在13.56MHz上的NFC兼容接口),外部/远程设备可以使用该空口 202来与NFC执行环境204、205、206和207进行通信。空口 202可以由NFC控制器201单独提供或者与NFC收发机合作来提供。此外,设备200包括:设备主机203,被配置为提供在便携式电子设备200的不同功能和NFCC201提供的NFC功能之间的接口。设备主机203可以与移动电话或智能电话的基带功能相对应。图1还示出了各种类型的NFCEE (也被称为安全单元(SE))。NFCEE204由设备200经由设备主机203直接提供,并可以经由通信信道214寻址进行寻址。NFCEE205是可以经由通信信道215寻址的嵌入式SE。NFCEE206与可以经由通信信道216访问的可移除SD卡(安全数字存储卡)相对应。NFCEE207是可以经由通信信道217访问的UICC(通用集成电路卡)。不同NFCEE204、205、206和207提供用于存储各种应用(例如,售票应用、卡仿真应用、支付应用等)的存储设备。此外,不同NFCEE204、205、206和207提供用于执行各种应用的处理能力。此外,不同NFCEE204、205、206和207可以提供安全功能,例如认证和授权。总之,可以说,不同NFCEE204、205、206和207可以通过提供存储、处理和/或安全功能来驻留(host)各种应用。NFC控制器201与设备主机203相连,并与可以是嵌入式的或可移除的一个或若干个安全单元(例如,UICC、Micro SD、SmartMx) 204、205、206和207相连。在卡仿真模式中,NFCC201充当RF (射频)前端,并向DH203、204或向SE205、206和207之一转发通过空口 202 (例如,从外部读卡器)接收的业务。在类型A和类型B智能卡技术的情况下,在RF空口 202上运行的协议是基于IS07816-4,并且外部读卡器使用此协议来与DH203、204或SE205、206和207 (类型F智能卡技术(即,FeliCa)不使用IS07816-4)上驻留的应用进行对话。如果应用驻留在不同位置(一些驻留在DH203、204上,一些驻留在多个SE205、206和207上),NFCC201不能确定正确目的地(即,DH203、204或向SE205、206和207),以建立正确的通信信道214、215、216和217,并因此对RF业务进行路由。因此,下文中描述的路由和/或注册方法允许在来自远程读卡器的请求和多个SE或DH之一中驻留的应用之间进行链接。应用一般是使用唯一应用标识符(AID)来标识的。然而,考虑到设备200可被配置有不同的可移除、可交换、可添加的NFCEE206和207的事实,NFCC201通常不知道设备200上可用的应用。此外,驻留在NFCEE上的应用还可以是可移除的(即,安装、卸载、激活、去激活)。此外,NFCC201不知特定应用驻留在NFCEE204、205、206和207中的哪个上。如果设备200靠近外部/远程读卡器,远程读卡器尝试使用IS07816-4中规定的SELECT (AID)命令来识别设备200上的合适应用。通过引用方式将IS07816-4并入本文。经由空口202向NFCC201传递SELECT (AID)命令。如上文所概述的,然而,NFCC201不知道驻留与SELECT (AID)命令中规定的AID相对应的应用的正确NFCEE204、205、206和207。因此,不能够在远程读卡器和设备200上的特定应用之间建立通信。用于克服此问题的可能方案是安装从DH203到NFCC201的路由表。此路由表包括在NFC启动设备200 的可用应用和驻留所述应用的NFCEE204、205、206和207之间的映射。一旦NFCC201从远程读卡器接收到SELECT (AID)请求,NFCC201查询路由表,激活合适的信道214、215、216和217,并能够实现远程读卡器和所请求的与AID相关的NFCEE204、205、206和207之间的通信。此方案的缺点是DH203必须知道所有NFCEE204、205、206和207中存在的所有应用。该信息可能由于不同交易对不同应用提供商感兴趣(或由于隐私和/或安全问题)是无法获得的。换言之,不同应用的不同服务提供商可能不想共享与设备200的NFCEE204、205、206和207上安装的应用相关的信息。因此,另一方案将是有用的,因为向NFCC201提供指示比在多个NFCEE204、205、206和207上存储的全部应用少的不完全路由表可能造成对请求寻址方面的困难。因此,需要不涉及来自不同NFCEE204、205、206和207的应用数据的共享的解决方案,即,不使用在DH203中确定联合路由表并随后向NFCC201传递该联合路由表的解决方案。图2示出了这样的解决方案,其基于由NFCC201将所接收的SELECT (AID)请求广播给多个NFCEE204、205、206和207中的一些或全体。在图2中示出的解决方案示例中,NFCC201嗅探来自远程读卡器的业务,并向所有SE204、205、206和207广播IS07816-4消息SELECT (AID)。出于此目的,在广播SELECT (AID)消息之前,可以激活所有信道214、215、216和217。NFCC201还嗅探从NFCEE204、205、206和207发送的业务,过滤一些或所有否定响应,并向远程读卡器发回肯定响应。在此过程之后,NFCC201通常将已经识别出包括与标识符AID相对应的应用的正确目的地NFCEE204、205、206和207 ;正确NFCEE204、205、206和207是肯定响应所来自的NFCEE。因此,NFCC201将向识别出的NFCEE转发来自远程读卡器的业务。另一方面,如果所有响应都是否定的,则NFCC201将向远程读卡器发回否定响应之一,以便向远程读卡器通知在设备200上不能获得与标识符AID相对应的应用。图3中示出了另一解决方案,其中,为了识别驻留所寻址的应用的NFCEE,NFCC201顺序地向多个NFCEE204、205、206和207单播SELECT (AID)命令。在图3中示出的解决方案示例中,NFCC201嗅探来自远程读卡器的业务。在接收到SELECT (AID)命令时,NFCC201激活多个通信信道214、215、216和217中的第一 NFC执行环境,向连接的NFCEE204、205、206和207转发SELECT (AID),并检查从特定NFCEE204、205、206和207接收的响应。如果响应是否定的,NFCC201处理多个通信信道214、215、216和217中的下一个,依此类推。如果在已经检查了来自多个NFCEE204、205、206和207全体的响应之后不存在肯定响应,则NFCC201将向远程读 卡器转发否定响应(例如,最后接收的否定响应)。应当注意,由于顺序单播SELECT (AID)命令,与上文所概述的广播解决方案相比,此解决方案对NFCC201的处理和存储能力的要求通常会降低。另一方面,单播解决方案中的验证时间可能比在广播解决方案的验证时间要长。然而,与针对身份卡一非接触式集成电路卡一靠近卡相关的IS014443-4规范允许NFCC201延长帧等待时间,使得NFCC201在向远程读卡器发回最终响应之前具有更多的时间从不同NFCEE204、205、206和207收集对SELECT (AID)命令的响应。通过引用方式将IS014443-4规范并入本文。图4示出了另一解决方案,其中,在可被远程读卡器寻址之前,不同NFCEE204、205、206和207(还可被称为SE)直接向NFCC201注册。在此解决方案示例中,与NFCC201相连的并且可以驻留应用的设备(即,DH203和不同SE204、205、206和207)可以注册它们希望可被远程读卡器选择的AID。此注册应当在任何交易开始之前执行。换言之,不同主机环境(DH或NFCEE)可以向NFCC201注册它们中驻留的一些或所有应用。基于此注册,NFCC201可以确定或建立路由表或AID注册数据库,其指示在特定AID、驻留该特定AID的NFCEE或DH、以及(可能的)可通过其到达NFCEE或DH的通信信道214、215、216和217之间的映射。当NFCC201从远程读卡器接收到SELECT (AID)请求时,NFCC201将检查AID注册数据库,并且如果在该数据库中找到了该AID,NFCC201激活到相对应的NFCEE或DH的通信信道,并向所注册的目的地转发SELECT (AID)请求。在从NFCEE或DH接收到肯定响应时,NFCC201向远程读卡器转发该肯定响应。然后,经由NFCC201,在远程读卡器和所选择的NFCEE或DH之间直接交换后续的交易数据。DH203和NFCC201之间的接口是NFC控制器接口(NCI),其已经提供用于路由配置(将在下文中概述)的接口。可以使用此接口来注册DH203支持的AID。如果SE207是UICC,SE207 和 NFCC201 之间的接口将基于 ETSI HCI 规范(即,ETSI TS102622v7.5.0)。通过引用方式将ETSI TS102622v7.5.0规范并入本文。此接口已经提供了通用注册功能,该通用注册功能可以通过与AID注册相关的一个或更多个附加参数进行扩展。特别地,可以指定针对门“类型A卡RF门”和“类型B卡RF门”的新注册,以向NFCC201注册来自UICC207的一组AID。应当注意,ETSI HCI接口是通用接口,除HCC SE207之外的其他SE204、205、206或由DH203也可以支持该ETSI HCI接口。因此,不同SE和/或DH可以使用ETSI HCI接口的扩展版本向NFCC201注册它们的AID。图4的上下文中概述的注册解决方案不一定需要向多个NFCEE或DH转发从远程读卡器接收的SELECT (AID)请求。作为向NFCC201注册不同NFCEE和DH的注册过程的结果,NFCC201可以建立AID注册数据库,并使用该数据库来将SELECT (AID)请求路由到驻留所寻址的应用的正确NFCEE或DH。考虑到向NFCC201直接注册AID的事实,与NFC启动设备200上可获得的不同AID相关的知识仍然是机密的或限定在NFCC201内,并且不在DH203和不同SE204、205、206和207之间共享。此外,注册处理可以是周期性的,使得当应用更新(例如,注册新应用和/或注册的应用被解注册)和/或NFCEE改变(例如,安装或移除)时,NFCC201可以维护AID注册数据库。此外,尽管未示出,应用或NFCEE可以向NFCC发送注销消息,使得NFCC可以动态地更新AID注册数据库。可以通过修改或适配DH203和NFCC201之间的NFC控制器接口(NCI)来在NFCC201上实现上述路由方案。可以对NCI进行导向,以在DH203和NFCC201之间提供通信,并从而能够在便携式电子设备200上实现NFC服务。具体地,对NCI进行导向,以从DH203向NFCC201传送与NFCC201相关的配置和/或初始化数据。当前,NCI是由FCT Forum规定,并且于2010年10月18日公布的技术规范NFCForum TS NCI 1.0_Draft6,通过引用方式将其并入本文中。上述技术规范的表11定义了如何在CORE INITCMD命令消息中向NFCC201传递可用的NCI特征。一个或更多 个保留比特可用于指示要由NFCC201使用的路由模式。通过示例方式,可以添加新比特来指示支持“支持基于广播的CE路由”。作为备选或补充,可以添加新比特来指示支持“支持基于单播的CE路由”。在一个实施例中,可以如表I所示(“X”指示任意比特值)修改NCI技术规范中的表11。作为备选或补充,可以使用表I中八位字节I的又一比特来指示NFCC支持对来自NFCEE和/或DH的AID的显式注册。出于此目的,八位字节I的b4可以例如设置为“I”。
权利要求
1.一种用于识别在包括多个NFC执行环境(204、205、206、207)在内的NFC启用设备(200)上的NFC应用的方法,其中,所述NFC应用驻留在所述多个NFC执行环境(204、205、206、207)之一中,所述方法包括: -通过空口(202)接收请求访问所述NFC应用的外部请求; -向所述多个NFC执行环境(204、205、206、207)中的多于一个NFC执行环境转发与所述外部请求相关联的查询; -分别从所述多个NFC执行环境(204、205、206、207)中的多于一个NFC执行环境接收对所述查询的多于一个响应;以及 -分析所述多于一个响应,以识别指示所述NFC应用驻留在所述多个NFC执行环境(204、205、206、207)中的对应NFC执行环境中的肯定响应。
2.根据权利要求1所述的方法,还包括: -在接收到所述外部请求之前,嗅探来自所述空口(202)的数据业务,以检测请求访问所述NFC应用的所述请求。
3.根据权利要求2所述的方法,其中, 向所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境仅转发与检测到的请求访问所述NFC应用的请求相关联的查询。
4.根据权利要求1至3中任意一项所述的方法,还包括: -在向特定NFC执行环 境(204、205、206、207)转发所述查询之前,激活到所述特定NFC执行环境(204、205、206、207)的通信信道(214、215、216、217)。
5.根据权利要求4所述的方法,还包括: -在从所述特定NFC执行环境(204、205、206、207)接收到指示所述NFC应用不驻留在所述特定NFC执行环境(204、205、206、207)中的响应的情况下,去激活到所述特定NFC执行环境(204、205、206、207)的通信信道(214、215、216、217)。
6.根据权利要求1至5中任意一项所述的方法,其中,转发包括: -向所述多个NFC执行环境(204、205、206、207)全体广播所述查询。
7.根据权利要求1至5中任意一项所述的方法,其中, -转发包括:向所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境顺序地单播所述查询; -接收多于一个响应包括:从NFC执行环境(204、205、206、207)接收对相应的单播查询的响应;以及 -分析包括:分析所接收的对所述单播查询的响应。
8.根据权利要求1至5中任意一项所述的方法,其中, -转发包括:向所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境中的第一 NFC执行环境转发所述查询; -接收多于一个响应包括:从所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境中的所述第一 NFC执行环境接收第一响应; -分析包括:根据所述第一响应确定所述NFC应用不驻留在所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境中的所述第一 NFC执行环境中; -转发还包括:向所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境中的第二 NFC执行环境转发所述查询; -接收多于一个响应还包括:从所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境中的所述第二 NFC执行环境接收第二响应;以及 -分析还包括:分析所述第二响应。
9.根据权利要求8所述的方法,其中,分析所述第二响应包括:确定所述NFC应用驻留在所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境中的所述第二 NFC执行环境中。
10.根据权利要求1至8中任意一项所述的方法,还包括: -在进行了所述分析的情况下,确定未接收到肯定响应;以及 -通过所述空口(202)发送所述多于一个响应之一。
11.根据上述权利要求中任意一项所述的方法,其中,请求访问所述NFC应用的所述请求与IS07816-4SELECT (AID)消息相对应,所述AID是所述NFC应用的标识符。
12.根据上述权利要求中任意一项所述的方法,还包括: -监视所述多于一个接收到的响应以核实已经从所述多个NFC执行环境(204、205、206,207)中的所述多于一个NFC执行环境中的每个NFC执行环境接收到响应;以及 -在监视时,通过所述空口(202)发送等待超时消息,以避免与请求访问所述NFC应用的所述请求的发送者的连接超时。
13.根据权利要求12所述的方法,其中,所述等待超时消息是IS014443帧等待超时消肩、O
14.根据上述权利要求中任意一项所述的方法,其中,所述NFC应用是卡仿真应用,所述卡仿真应用允许作为所述NFC启用设备(200)的远程的或外部的读卡器和/或写卡器从所述NFC启用设备(200)读取和/或向所述NFC启用设备(200)写入,就像所述NFC启用设备(200)是兼容IS014443的非接触式智能卡一样。
15.根据权利要求14所述的方法,其中,请求访问所述NFC应用的所述请求是从所述远程的读卡器和/或写卡器接收的。
16.根据上述权利要求中任意一项所述的方法,其中,所述空口(202) -与IS018000-3兼容;和/或 -操作在13.56MHz ;和/或 -具有小于20cm的范围。
17.根据上述权利要求中任意一项所述的方法,其中,所述NFC启用设备(200)是以下设备之一:移动电话、或智能电话、或便携式电子设备、或手持设备、或无线设备、或移动台。
18.根据上述权利要求中任意一项所述的方法,还包括: -在从所述多于一个响应中识别出单个肯定响应的情况下,通过所述空口(202)发送所述肯定响应。
19.根据权利要求18所述的方法,还包括: -向从其接收到所述肯定响应的NFC执行环境(204、205、206、207)转发来自所述空口(202)的其他数据业务。
20.根据权利要求1至17中任意一项所述的方法,还包括:在识别出来自所述多个NFC执行环境(204、205、206、207)中的所述多于一个NFC执行环境的对应集合的多个肯定响应的情况下: -从所述集合中确定所选择的NFC执行环境(204、205、206、207); -通过所述空口(202)发送来自所选择的NFC执行环境(204、205、206、207)的肯定响应;以及 -向所选择的NFC执行环境(204、205、206、207)转发来自所述空口(202)的其他数据业务。
21.根据权利要求20所述的方法,其中,确定所选择的NFC执行环境(204、205、206、207)包括: -根据预定优先级确定所选择的NFC执行环境(204、205、206、207)。
22.—种用于识别在包括多个NFC执行环境(204、205、206、207)在内的NFC启用设备(200)上的特定NFC应用的方法,其中,所述特定NFC应用驻留在所述多个NFC执行环境(204、205、206、207)之一中,所述方法包括: -向所述NFC启用设备(200)的NFC控制器(201)注册在所述多个NFC执行环境(204、205,206,207)中驻留的NFC应用的子集; -在进行了所述注册的情况下,在所述NFC控制器(201)上建立NFC应用数据库,所述NFC应用数据库指示注册NFC应用和所述注册NFC应用所驻留在的NFC执行环境(204、205、206、207)之间的映射; -在所述NFC控制器(201)处通过空口(202)接收请求访问所述特定NFC应用的外部请求;以及 -查阅所述NFC应用数据库以确定所述特定NFC应用所驻留在的特定NFC执行环境(204、205、206、207)。
23.根据权利要求22所述的方法,还包括: -激活到所述特定NFC执行环境(204、205、206、207)的通信信道(214、215、216、217); -向所述特定NFC执行环境(204、205、206、207)转发与所述外部请求相关联的查询; -在进行了所述转发的情况下,在所述NFC控制器(201)处接收来自所述特定NFC执行环境(204、205、206、207)的与所述查询相关的响应;以及 -通过所述空口(202)发送所述响应。
24.根据权利要求23所述的方法,还包括: -在接收到指示所述特定NFC应用驻留在所述特定NFC执行环境(204、205、206、207)中的肯定响应的情况下,向所述特定NFC执行环境(204、205、206、207)转发来自所述空口(202)的其他数据业务。
25.根据权利要求24所述的方法,其中,所述其他数据业务与在所述NFC启用设备(200)外部的远程读卡器和/或写卡器和所述特定NFC应用之间的交易数据相关,其中,所述远程读卡器和/或写卡器通过所述空口(202)与所述NFC启用设备(200)通信。
26.根据权利要求22至25中任意一项所述的方法,其中,所述注册是根据ESTI技术规范 ETSI TS102622v7.5.0 执行的。
27.—种NFC控制器(201),被配置为识别在包括多个NFC执行环境(204、205、206、207)在内的NFC启用设备(200)上的NFC应用,所述NFC控制器(201)使用权利要求1至26中任意一项所述的方法。
28.根据权利要求27所述的NFC控制器(201),包括: -NFC控制器接口,被配置为接收初始化信息,所述初始化信息指示通过空口(202)接收的请求访问所述NFC应用的请求要如何转发给所述多个NFC执行环境(204、205、206、207)。
29.—种电子设备(200),包括: -多个NFC执行环境(204、205、206、207),所述多个NFC执行环境(204、205、206、207)之一中驻留了 NFC应用;以及 -根据权利要求27至28中任意一项所述的NFC控制器(201),被配置为:在经由空口(202)从远程读卡器和/或远程写卡器接收了请求的情况下,识别所述多个NFC执行环境(204、205、206、207)中的驻留了所述NFC应用的NFC执行环境。
30.一种软件程序,适合于在处理器上执行,并且当在计算设备上执行时,适合于执行权利要求1至26中任意一项所述的方法。
31.一种包括软件程序的存储介质,所述软件程序被适配用于在处理器上执行,并且被适配用于当在计算设备上执行时,执行权利要求1至26中任意一项所述的方法。
32.—种包括可执行指令的计算机程序产品,所述可执行指令当在计算机上执行时,用于执行权利要求1至26中任意一项所述的方法。
全文摘要
本申请涉及近场通信(NFC)。具体地,本申请涉及在包括多个NFC执行环境(NFCEE)的系统中的应用相关信息的路由。描述了一种用于识别包括多个NFC执行环境(204、205、206、207)的NFC启动设备(200)上的应用的方法,其中,所述应用驻留在所述多个NFC执行环境(204、205、206、207)之一中。在一个方案中,一种示例方法包括通过NFC启动设备(200)的空口(202)接收请求访问所述应用的外部请求;向所述多个NFC执行环境(204、205、206、207)中的多于一个NFC执行环境转发所述请求;分别从所述多个NFC执行环境(204、205、206、207)中的多于一个NFC执行环境接收对所述请求的多于一个响应;以及,分析所述多于一个响应,以识别指示所述应用驻留在所述多个NFC执行环境(204、205、206、207)中的对应NFC执行环境中的肯定响应。
文档编号H04W12/08GK103222291SQ201080070222
公开日2013年7月24日 申请日期2010年11月17日 优先权日2010年11月17日
发明者迪卡·海·东·源 申请人:捷讯研究有限公司