用于减少用于支持nfc控制器中的应用标识符路由的非易失性存储器的方法和装置制造方法

文档序号:7791690阅读:214来源:国知局
用于减少用于支持nfc控制器中的应用标识符路由的非易失性存储器的方法和装置制造方法
【专利摘要】本申请给出了用于减少存储与近场通信设备相关联的安全元件应用位置所需的非易失性存储器的量的示例数据路由方法和装置。例如,本公开内容给出了近场通信设备中通信路由的方法,其可以包括在近场通信控制器(NFCC)处接收路由请求消息(例如来自请求设备),其中,路由请求消息包括与应用相关联的初始应用标识符(AID)。该示例方法还可以包括通过对初始AID应用哈希函数来生成压缩AID;在路由数据结构中读取与所述压缩AID相对应的条目,其中,所述条目包含与一个或多个安全元件相关联的一个或多个安全元件指针;以及查询安全元件中的至少一个,以确定是否每个安全元件都包含应用。
【专利说明】用于减少用于支持NFC控制器中的应用标识符路由的非易失性存储器的方法和装置
[0001 ] 依据35U.S.C.§ 119要求优先权
[0002]本专利申请要求享有于2012年2月28日提交的、题目为“Methods andApparatuses for Reducing the Nonvolatile Memory Used to Support Applicat1nIdentifier Routing in an NFC Controller”的临时申请N0.61/604,119 的优先权,该临时申请已转让给本申请的受让人,故明确地以引用方式并入本申请。

【技术领域】
[0003]本公开的方面一般涉及设备之间和/或设备内部的通信,具体而言,涉及用于改进近场通信(NFC)路由信息存储的方法和系统。

【背景技术】
[0004]技术的增长已经使得个人计算设备更小和更强大。例如,当前存在多种便携式个人计算设备,包括诸如便携式无线电话、个人数字助理(PDA)和寻呼设备(每种都尺寸小、重量轻并可以轻易地由用户携带)的无线计算设备。更具体地,便携式无线电话例如还包括在无线网络上传送语音和数据分组的蜂窝电话。制造了很多这样的蜂窝电话,这些蜂窝电话在计算能力方面有相对大的提高,因此,其变成相当于小的个人计算机和手持式PDA。此外,制造这样的设备以使得能够使用多种频率和可用覆盖范围进行通信,例如蜂窝通信、无线局域网(WLAN)通信、近场通信(NFC)等。
[0005]在典型的NFC系统中,可以存在包括以下部件的通信设备:设备主机(DH)、近场通信控制器(NFCC)和一个或多个安全元件(SE),其中NFCC可以在非易失性存储器中存储一个或多个路由表。通常,这些路由表管理从外部设备和/或内部NFC设备的部件路由到一个或多个SE的消息和数据,和来自一个或多个SE的消息和数据。由于NFC设备中的SE和其相关联的应用标示符(AID)的数目在增长,因此必须存储在数据表中以将应用请求从外部设备路由到核心(Cored)SE的路由信息量也在增长。然而,在其上存储这样的路由信息的非易失性存储器是昂贵的。因此,可以理解,通过额外的非易失性存储器来支持针对SE的路由信息,在NFC设备中添加SE将使制造商和/或消费者的成本上升。
[0006]因此,用于改善NFC路由信息存储的改进的方法和装置是需要的。


【发明内容】

[0007]以下给出了对一个或多个方面的概括以提供对于这些方面的基本理解。这一概括不是对所有预期的方面的泛泛评述,并且既不是要标识所有方面的关键或重要元素,也不是要划定任意或所有方面的范围。其目的是给出一个或多个方面的一些概念,以此作为后面给出的更详细描述的前序。
[0008]根据一个或多个方面以及与其相对应的公开内容,结合改进与近场通信设备中的应用请求相关联的路由操作描述了各个方面。例如,在根据本公开内容的一些例子中,用于改进的路由的方法可以包括:在近场通信控制器处接收来自请求设备的路由请求消息。在一方面,路由请求消息可以包括与应用相关联的初始应用标识符(AID)。此外,示例方法可以包括通过对初始AID应用哈希函数来生成压缩AID,以及在路由数据结构中读取与该压缩AID相对应的条目(entry)。在一方面,该条目可以包含与一个或多个安全元件相关联的一个或多个安全元件指针。此外,该方法可能涉及查询一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含应用。
[0009]此外,本公开内容给出了用于这样的改进的路由操作的示例装置,其可以包括用于在NFCC处接收来自请求设备的路由请求消息的单元。在一方面,路由请求消息可以包括与应用相关联的初始AID。此外,这样的示例装置可以包括用于通过对初始AID应用哈希函数来生成压缩AID的单元,以及用于在路由数据结构中读取与该压缩AID相对应的条目的单元。在一方面,该条目可以包含与一个或多个安全元件相关联的一个或多个安全元件指针。此外,这些示例装置可以包括用于查询一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含应用的单元。
[0010]此外,本公开内容给出了存储可执行代码的计算机可读介质,其中可执行代码用于在NFCC处接收来自请求设备的路由请求消息。在一方面,路由请求消息可以包括与应用相关联的初始AID,以及用于通过对初始AID应用哈希函数来生成压缩AID的代码。这样的示例计算机可读介质可以包括用于在路由数据结构中读取与该压缩AID相对应的条目的代码。在一方面,该条目可以包含与一个或多个安全元件相关联的一个或多个安全元件指针,以及用于查询一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含应用的代码。
[0011]此外,本公开内容描述了用于NFCC设备中的通信路由的装置,其可以包括被配置为在NFCC处接收来自请求设备的路由请求消息的接收机。在一方面,路由请求消息可以包括与应用相关联的初始AID,被配置为通过对初始AID应用哈希函数来生成压缩AID的压缩部件,被配置为在路由数据结构中读取与该压缩AID相对应的条目的数据路由部件。在一方面,该条目可以包含与一个或多个安全元件相关联的一个或多个安全元件指针,以及被配置为查询一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含应用的安全元件查询部件。
[0012]为了实现上述和相关的目的,一个或多个方面包括了在下文中充分描述并在权利要求书中特别指出的特征。以下描述和附图详细阐述了一个或多个方面的某些说明性特征。然而,这些特征仅表明了可以在其中采用各个方面的原理的各种方式中的一些,本说明书旨在包括所有这样的方面以及它们的等价项。

【专利附图】

【附图说明】
[0013]以下将结合附图描述所公开的方面,提供附图以示出且不限制所公开的方面,其中相同的表示代表相同元素,并且其中:
[0014]图1是根据一方面的近场无线通信系统的简化框图;
[0015]图2是根据一方面的近场通信传输系统的简化原理图;
[0016]图3是根据一方面的NFC环境的框图;
[0017]图4是根据一方面来描述用于改进近场通信路由信息存储的示例方法的流程图;
[0018]图5是根据本公开内容的通信设备的多个方面的框图;
[0019]图6是被配置为用于NFC设备中应用请求的改进的路由的电子部件的示例逻辑组。

【具体实施方式】
[0020]现在参考附图描述各个方面。在以下描述中,出于解释的目的,阐述了大量具体细节,以便提供对一个或多个方面的透彻理解。然而,很明显,也可以不用这些具体细节来实现这样的一个或多个方面。
[0021]通常,近场通信(NFC)设备维护位于NFC设备处的NFC控制器(NFCC)中的一个或多个路由数据结构中的数据路由信息。这些路由数据结构可以在NFC环境中控制外部设备和NFC设备之间和/或NFC环境的内部模块之间的数据流。例如,外部设备可以尝试访问位于NFC设备的SE中的应用数据。通过在NFCC的非易失性存储器中存储应用标识符(AID)可以将这样的应用数据的位置与其主SE联系起来。在本公开内容的方面中,NFC设备可以根据哈希函数在路由数据结构中存储一个或多个AID,从而压缩数据。此后,当外部设备或内部模块请求存储在SE中的应用数据时,NFCC可以对位于请求消息中的AID执行散列(hash),并在与经过散列的AID值相对应的路由数据结构中读取一个或多个条目位置。以这种方式,可以减少储藏路由数据结构的昂贵的非易失性存储器上的数据存储使用。
[0022]图1示出了依据本发明的各个示例性实施例的无线通信系统100。向发射机104提供输入功率102以生成用于提供能量转移的辐射场106。接收机108与辐射场106相耦合,并生成用于由与输出功率110相耦合的设备(未示出)存储或消耗的输出功率110。发射机104和接收机108均由距离112隔开。在一个示例性实施例中,根据相互共振的关系对发射机104和接收机108进行配置,当接收机108的共振频率和发射机104的共振频率非常接近时,发射机104和接收机108之间的传输损耗在接收机108位于辐射场106的“近场”时达到最小。
[0023]发射机104还包括用于提供能量发送方式的发射天线114,接收机108还包括用于提供能量接收方式的接收天线118。根据与之相关联的应用和设备来确定发射天线和接收天线的尺寸。如上所述,通过将发射天线近场中的大部分能量与接收天线相耦合,而不是在电磁波中将大部分能量传输到远场,将出现高效的能量转移。当在这一近场中时,可以开发发射天线114和接收天线118之间的耦合模式。在本文中,将发射天线114和接收天线118周围的、可能发生这一近场耦合的区域称为耦合模式区。
[0024]图2示出了近场无线通信系统的简化原理图。发射机204包括:振荡器222、功率放大器224和滤波及匹配电路226。振荡器被配置为生成所需频率的信号,其中,可以响应于调整信号223来调整所需的频率。可以由功率放大器224以响应于控制信号225的放大量来放大振荡器信号。可以包括滤波及匹配电路226以滤除谐波或其它不需要的频率,并将发射机204的阻抗与发射天线214进行匹配。
[0025]接收机208可以包括匹配电路232和整流器及开关电路234,以生成DC功率输出,从而为图2中所示的电池236充电或对与接收机(未示出)相耦合的设备供以动力。可以包括匹配电路232以将接收机208的阻抗与接收天线218进行匹配。接收机208和发射机204可以在单独的通信信道219上通信(例如,蓝牙(Bluetooth)、紫蜂(Zigbee)、蜂窝等)。
[0026]参考图3,示出了根据一方面的通信网络300的方框图。通信网络300可以包括通信设备302,其通过天线304,可以使用一种或多种NFC技术308 (例如,NFC-A、NFC-B、NFC-F等)与远程NFC设备306通信。在一方面,远程NFC设备306和/或通信设备302可操作为通过一个或多个RF接口 312使用一个或多个RF协议314通过NFC模块310以主动或被动的通信模式进行通信。在另一方面,通信设备302可操作为与接入网络和/或核心网(例如,CDMA网络、GPRS网络、UMTS网络,以及其它类型的有线和无线通信网络)相连接。在一方面,远程NFC设备306可以包括但不限于:远程NFC标签、读取器/写入器设备、对等端启动器设备、远程对等端目标设备等。
[0027]在另一方面,远程NFC设备306 (例如,通过NFC模块310)可以生成并发送一个或多个路由请求消息316,其可以在非限制的方面向通信设备302查询或者请求路由信息或与一个或多个应用的位置相对应的其它信息。此外,在一方面,为其请求路由或位置信息的一个或多个应用中的每一个应用都可以包含相关联的应用标识符(AID),其中,相关联的AID可以与路由请求消息316 —起发送(例如,以串行或并行方式)。因此,在本申请给出的一些非限制的例子中,远程NFC设备306可以被称为请求设备。
[0028]在另一方面,通信设备302可以包括一个或多个安全元件,例如,但不限于,第一安全元件318和可选的第二安全元件320。此外,第一安全元件318可以包括第一应用信息322,可选的第二安全元件320可以包括第二应用信息324。尽管在图3中描绘了两个安全元件,但本领域技术人员应该意识到的是,通信设备302可以包括任意数目的附加安全元件(未示出),其中的每一个都可以同样地存储应用数据。在一方面,第一安全元件318和/或第二安全元件320可操作为与NFC控制器326通信。此外,第一安全元件318和/或第二安全元件320可以包括一个或多个应用,其中,上述应用可操作为请求通过NFC控制器326来访问各个功能可用性。在一方面,第一安全元件318和/或第二安全元件320可以是近场通信执行环境(NFCEE)、虚拟安全元件等。在一方面,第一安全元件318和/或第二安全元件320可以包括通用集成电路卡(ΠCC),其具有各种模块,例如但不限于:用户信息模块(SM)、CDMA用户身份模块(CSM)或本领域已知的任意其它安全计算环境或安全元件。在另一方面,可以由NFC控制器326使用安全元件标识符来辨别每个安全元件,以在RF发现过程期间使用。
[0029]通信设备302可以包括NFC控制器(NFCC) 326,其可以被配置为促进通信设备302的NFC操作。在一方面,NFCC 326可以包括数据路由部件328,其可以控制通信设备302中的部件和/或通信网络300中的外部设备之间的数据路由。此外,数据路由部件328可以利用一个或多个路由数据结构330,其可以管理数据路由部件328的数据路由操作。例如,路由数据结构330可以包括一个或多个条目,所述条目可以保存与存储在一个或多个安全元件(例如,但不限于,第一安全元件318和/或可选的第二安全元件320)中的应用信息相对应的应用标识符(AID)。在一个例子中,第一安全元件318可以包括第一应用信息322,第二安全元件320可以包括第二应用信息324。在另一方面,可以将路由数据结构330、第一应用信息322和/或第二应用信息324存储在非易失性存储器中。可替代地,可以将路由数据结构330、第一应用信息322和/或第二应用信息324存储在易失性存储器中。
[0030]此外,数据路由部件328可以包括压缩部件332,其可以被配置为压缩应用标识符(AID),并将压缩AID 335的值放入路由数据结构330的条目中。此外,压缩部件332可以利用哈希函数333,其可以根据一个或多个程序函数来管理对非压缩的初始AID (例如在路由请求消息316中接收的AID 317)的压缩,其中,上述的程序函数可操作为将输入的AID基本上均匀地分布在路由数据结构330的全部条目中。此外,压缩部件332可操作为从路由请求信息中提取一个或多个AID 317,并从由哈希函数333定义的相对应的路由表条目中读取一个或多个AID。在一方面,哈希函数333可以包括可以将AID作为输入并可以输出相对应的条目位置或位置标识符的任意函数(例如,处理器可执行的)。在一些非限制的例子中,哈希函数333可以是完美哈希函数。这样的完美哈希函数被配置为完全避免冲突一可以将其定义为其中超过一个的数据项(例如,AID)被写入单个数据结构条目中的实例。
[0031]此外,NFC控制器326可以包括安全元件查询部件,其可以被配置为查询一个或多个安全元件(例如,第一安全元件318和第二安全元件320),以发现与所请求的AID相关联的应用的存在。在一方面,安全元件查询部件331可以查询单个安全元件,例如当与所请求的AID相对应的条目包含单个安全元件位置条目时。在另外一些非限制性的例子中,安全元件查询部件331可以查询多个安全元件,例如当与所请求的AID相对应的条目包含一个以上的安全元件位置条目时。在这样的例子中,安全元件查询部件331可以基本同时地(例如以并行方式)查询安全元件。此外,因为针对每个所请求的应用存在一个正确的安全元件位置,因此NFC控制器326仅可以接收单个元件响应,其指示安全元件包含所请求的AID。因此,这样的同时查询不会包括草率地且错误地选择与所请求的应用相关联的安全元件的风险,其可能在存在一个以上的正确安全元件位置的实例中发生。
[0032]通信设备302可以包括NFC控制器接口(NCI)336。在一方面,NCI336可操作为能够进行NFC使能的天线和NFC控制器326之间的通信。此外,NCI 336可操作为在收听模式和/或轮询模式下工作。此外,NCI 336可以使得在NFC控制器326和一个或多个DH334、诸如第一安全元件318和第二安全元件320的安全元件和/或通信设备302或通信网络300的任意其它部件之间能够通信。
[0033]在又一方面,通信设备302可以包括设备主机(DH) 334,其可以作为通信网络300的主控制器。此外,DH 334可以负责NFCC 326的配置,并可以与天线304通信。
[0034]此外,通信网络300可以包括远程安全元件服务器340。远程安全元件服务器340可以与通信设备302通信,和/或向通信设备302中的一个或多个部件提供服务器应用信息342。以示例而非限制的方式,远程安全元件服务器340可以向通信设备302上的一个或多个安全元件(例如,但不限于第一安全元件318和/或第二安全元件320)提供安全应用信息342。在一方面,远程安全元件服务器340和/或通信设备302可操作为通过NCI 336和/或RF接口(未示出)进行通信。在另一方面,远程安全元件服务器340可操作为使用接入网络和/或核心网(例如,CDMA网络、GPRS网络、UMTS网络以及其它类型的有线和无线通信网络)与通信设备302通信。
[0035]因此,通信网络300和通信设备302提供了用于在NFC设备中节省存储器的、成本和空间高效的、优化且简化的系统。
[0036]图4示出了根据本保护主题的各个方面的各种方法。尽管出于简化解释的目的,将方法作为一系列动作或顺序步骤来示出和描述,但是应该理解和意识到的是,所要求保护的主题不受动作顺序的限制,因为一些动作可以按照与本文所示出和描述的其它动作不同的顺序发生和/或与其它动作同时发生。例如,本领域的技术人员将理解和意识到的是,例如在状态图中,可以将方法替代地表示为一系列相互关联的状态或事件。此外,并非所有示出的动作都需要用于实现根据所要求保护的主题的方法。此外,还应该意识到的是,在下文中和整个本说明书所公开的方法能够被存储在制品中,以促进向计算机传输和转移这样的方法。如本文所使用的,术语制品旨在涵盖可从任何计算机可读设备、载体或介质访问的计算机程序。
[0037]现在参考图4,示出了描述用于优化NFC设备存储器使用情况的方法400的示例流程图。在一个例子中,当向NFC设备或环境添加安全元件(SE)时,NFC控制器(NFCC)可以将SE上的任意应用信息的位置添加到NFCC中的路由数据结构。此外,每个应用及其应用信息都可以包括标识符,其有时被称为应用ID,即AID。在一些方面,可以根据AID的压缩版本将与特定AID相对应的应用信息的位置存储在路由数据结构中。这一压缩可以通过在AID上实施哈希函数,以及根据其哈希函数的输出将AID位置以条目形式存储在路由数据结构中来实现。然而,由其本质决定的,使用散列的压缩可能会导致在路由数据结构的给定条目中有不止一个AID,该现象可以被称为“冲突”。
[0038]因为哈希函数的每个输入都具有时间恒定的输出,当外部设备或NFC设备上的部件稍后请求访问SE上的应用信息时,NFC设备可以对请求消息中的完整AID执行散列,以在哈希表中找到应用的对应条目。使用哈希表条目中的一个或多个SE的位置指示,NFC设备可以解读出所请求的应用的位置,并允许请求设备或部件访问正确的SE和应用数据。此夕卜,在当采样条目时发现冲突的情况下,NFC设备可以确定与条目中的多个SE指针相对应的多个SE中的哪一个包含正确的应用数据。
[0039]更具体地,参见方框402,NFC设备可以接收(例如在NFCC处)路由请求消息(例如,但不限于来自外部设备或NFC设备中的部件)。在又一方面,路由请求消息可以包含外部设备尝试访问的目的应用的初始AID,其可以是非压缩的AID。此外,在方框404处,通过对初始AID应用哈希函数,并得到产生的作为输出的压缩AID,NFCC可以生成压缩AID。一旦生成了压缩AID,在方框406处,NFCC可以读取路由表条目,其可以包含一个或多个安全元件(SE)指针,或者可能不包含SE指针。在方框408处,NFCC可以确定条目是否包含SE指针。在条目不包含SE指针的情况下,在方框410处,应用请求失败,并且NFC设备可以向请求设备或部件通知NULL结果和/或未定义的路径。
[0040]可替代地,如果条目包含SE指针,则NFCC可以在方框412处确定条目是否包含一个以上的SE指针。在条目不包含一个以上的SE指针的情况下,或者换言之,仅包含一个SE指针,在方框414处,NFCC可以查询与SE指针相对应的SE,以确定该SE是否包含目的应用数据。此外,在方框416处,NFCC可以接收来自SE的查询响应,其指示SE包含应用数据。在查询响应指示SE包含应用数据的情况下,在方框418处,NFC设备可以向请求设备或部件发送针对安全元件的路由信息,以允许SE和请求设备或部件形成通信连接。可替代地,在查询响应指示SE不包含目的应用数据的情况下,NFC设备可以向请求设备或部件通知NULL结果和/或未定义的路径。
[0041]在可替换的方面,在方框412处,在NFCC确定路由表条目包含一个以上的SE指针的情况下,NFCC可以通过向各个安全元件发送查询消息来查询第一安全元件和第二安全元件,以在方框420处确定安全元件中的每一个是否都包含目的应用数据。在一方面,NFCC可以顺序发送查询消息,或者替代地,可以并行发送查询消息。
[0042]此外,在方框422处,NFCC可以接收响应于对第一安全元件和第二安全元件的查询的第一和第二查询响应。在一方面,在方框422处,第一查询响应可以指示第一安全元件不包含目的应用数据,第二查询响应可以指示第二安全元件包含目的应用数据,反之亦然。此外,应该意识到的是,本公开内容所设想的安全元件数目不限于两个。作为替代,任意数目的安全元件以及因此任意数目的查询消息和/或查询响应可以被发送或接收。
[0043]因此,在方框424处,指示其包含目的应用数据的安全元件可以进行响应,并且NFC设备可以向请求设备发送针对响应的安全元件的路由信息,以允许响应的安全元件和请求设备形成通信连接。因此,方法400提供了用于通过AID压缩来优化NFC设备存储器使用情况的方法。
[0044]现在,参考图3的同时也转到图5,示出了通信设备500的示例架构。如图5中描绘的,通信设备500包括接收机502,其接收诸如来自接收天线(未示出)的信号,对接收的信号执行典型动作(例如,滤波、放大、下变频等),以及将经调节的信号数字化以得到抽样。接收机502可以包括解调器504,其可以解调接收的符号并将它们提供给处理器506以用于信道估计。处理器506可以是专门用于分析由接收机502接收的信息和/或生成由发射机520发送的信息的处理器、用于控制设备500的一个或多个部件的处理器和/或用于既分析由接收机502接收的信息、生成由发射机520发送的信息又控制通信设备500的一个或多个部件的处理器。此外,可以通过调制器518 (其可以调制由处理器506处理的信号)来准备由发射机520发送的信号。
[0045]通信设备500可以额外包括存储器508,其操作地与处理器506相耦合,并可以存储要发送的数据、接收的数据、与可用信道、TCP流、和分析的信号相关联的数据和/或干扰强度有关的信息、与所分配的信道、功率、速率等有关的信息以及用于估计信道和经由信道通信的任意其它适合的信息。此外,处理器506和/或设备主机534可以提供用于控制NFC系统的单元。
[0046]将要意识到的是,本文所描述的数据存储(例如,存储器508)可以是易失性存储器或非易失性存储器,或者可以包括易失性和非易失性存储器二者。以说明而非限制的方式,非易失性存储器可以包括:只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除PROM(EEPROM)或者闪存。易失性存储器可以包括作为外部高速缓冲存储器的随机存取存储器(RAM)。通过说明而不是限制的方式,RAM能以多种形式可用,例如同步 RAM (SRAM)、动态 RAM (DRAM)、同步 DRAM (SDRAM)、双倍数据速率 SDRAM (DDR SDRAM)、增强型SDRAM (ESDRAM)、同步链接DRAM (SLDRAM)和直接型Rambus RAM(DRRAM)。本主题的系统和方法的存储器508可以包括但不限于这些和任何其它适当类型的存储器。
[0047]在另一方面,通信设备500可以包括NFC控制器接口(NCI)550。在一方面,NCI550可操作为能够进行在NFC使能的天线(例如502、520)和NFC控制器530之间的通信。NCI 550可配置为在收听模式和/或轮询模式下工作。
[0048]在另一方面,通信设备500可以包括一个或多个安全元件560。在一方面,可以将一个或多个安全元件560与NFC控制器530相耦合。此外,一个或多个安全元件560可以包括一个或多个应用,其中,上述应用可操作为请求通过NFC控制器530访问各种功能可用性。在一方面,一个或多个安全元件560可以是安全元件或近场控制器执行环境(NFCEE)。在一方面,一个或多个安全兀件560可以包括具有各种模块(例如但不限于,SIM、CSIM等)的ncc。在另一个方面,可以向一个或多个安全元件560分配作为安全元件标识符的索引,且一个或多个安全元件560可操作为使用通过配置参数表示的设置,其中配置参数可以在针对图4和图5描述的安全数据路由信息加载和使用过程期间使用。
[0049]通信设备500可以包括NFC控制器530。在一方面,NFCC 530可以包括数据路由部件532。这一数据路由部件532可以被配置为压缩应用请求消息中的一个或多个应用标识符,并在路由数据结构中存储和/或从路由数据结构中检索AID。在一方面,通信设备500可以包括一个或多个安全元件560,所述安全元件可以存储与由请求设备(例如图3的请求设备306)所请求的和/或在请求设备上可执行的应用相关联的应用信息。在另一方面,NFC控制器530 (例如通过数据路由部件532)可以向一个或多个安全元件560发送一个或多个查询(例如第一查询572和/或第二查询573,不过不限于两个)。这些一个或多个查询可以查询一个或多个安全元件560,关于其是否正在存储与压缩AID (可以包括在查询中)相关联的应用。在另一方面,每个所查询的安全元件560都可以生成和/或向NFC控制器530发送一个或多个查询响应(例如第一查询响应574和/或第二查询响应575,不过不限于两个),其中查询响应可以指示发送安全元件是否存储了与压缩AID相关联的应用。
[0050]此外,通信设备500可以包括用户接口 540。用户接口 540可以包括输入机构542,其用于生成到通信设备500的输入;输出机构544,其用于生成由通信设备500的用户消费的信息。例如,输入机构542可以包括诸如键或键盘、鼠标、触摸屏、麦克风等的装置。此夕卜,例如,输出机构544可以包括显示器、音频扬声器、触觉反馈装置、个域网(PAN)收发器等。在所示出的方面,输出机构544可以包括显示器或音频扬声器,所述显示器可操作为用图像或视频的形式呈现媒体内容,所述音频扬声器用音频形式呈现媒体内容。
[0051]参考图6,展示了针对NFC设备中改进的应用请求路由的示例系统600。例如,系统600可以至少部分位于一个或多个NFC设备内。应该意识到的是,将系统600表示为包括功能块,其可以是表示由处理器、软件或其组合(例如固件)实现的功能的功能块。系统600包括可以协同工作的电子部件的逻辑组602。例如,逻辑组602可以包括用于接收包括AID的路由请求消息和/或来自安全元件的查询响应的单元(方框604)。例如,在一方面,单元604可以包括接收机208 (图2)、接收机502 (图5),和/或安全元件查询部件331 (图3)。此外,逻辑组602可以包括用于使用哈希函数来生成压缩AID的单元(方框606)。例如,在一方面,单元606可以包括压缩部件332 (图3)。在另一方面,逻辑组602可以包括用于读取包含安全元件指针的条目的单元(方框608)。在一方面,单元608可以包括数据路由部件328(图3)。此外,逻辑组602可以包括用于查询一个或多个安全元件中的至少一个以确定是否每个安全元件都包含应用的单元(方框610)。在一方面,单元610可以包括安全元件查询部件331 (图3)。此外,在任选的方面,逻辑组602可以包括用于向请求设备发送针对一个或多个安全兀件的路由信息的单兀(方框612)。在一方面,单兀612可以包括发射机204 (图2)和/或发射机520 (图5)。
[0052]此外,系统600可以包括存储器614,其保存用于执行与电子部件604、606、608、610和612相关联的函数的指令,存储由电子部件604、606、608、610和612使用或获得的数据等等。尽管示出为在存储器614的外部,但是应该理解的是,电子部件604、606、608、610和612中的一个或多个可以存在于存储器614内。在另一方面,例如,存储器614可以与存储器508 (图5)相同或相似。在另一方面,存储器614可以与设备主机534和/或NFCC530(图5)相关联。
[0053]在一个例子中,电子部件604、606、608、610和612可以包括至少一个处理器,或者每个电子部件604、606、608、610和612都可以是至少一个处理器的相应模块。此外,在附加的或替代的例子中,电子部件604、606、608、610和612可以是包括计算机可读介质的计算机程序产品,其中每个电子部件604、606、608、610和612都可以是相应的代码。
[0054]在本申请中所用的术语“部件”、“模块”、“系统”以及类似的术语旨在包括与计算机相关的实体,例如但不限于硬件、固件、软硬件结合、软件或者执行中的软件。例如,部件可以是、但并不仅限于:处理器上运行的进程、处理器、对象、可执行程序、执行的线程、程序和/或计算机。作为说明,计算设备上运行的应用和计算设备本身都可以是部件。一个或多个部件可以位于执行中的进程和/或线程内,并且,一个部件可以位于一台计算机上和/或分布于两台或更多台计算机之间。另外,可以从存储了各种数据结构的各种计算机可读介质执行这些部件。部件可以通过本地和/或远程进程(例如,根据具有一个或多个数据分组的信号)的方式进行通信,例如,来自一个部件的数据在本地系统中、分布式系统中和/或跨越诸如具有其它系统的互联网的网络通过信号方式与另一个部件进行交互。
[0055]此外,本文结合终端描述了各个方面,其中终端可以是有线终端或无线终端。终端还可以称为系统、设备、用户单元、用户站、移动站、移动台、移动设备、远程站、移动设备(ME)、远程终端、接入终端、用户终端、终端、通信设备、用户代理、用户装置或用户设备(UE)。无线终端可以是蜂窝电话、卫星电话、无绳电话、会话发起协议(SIP)电话、无线本地环路(WLL)站、个人数字助理(PDA)、具有无线连接能力的手持设备、计算设备或连接到无线调制解调器的其它处理设备。此外,本文结合基站描述了各个方面。基站可以被用于与无线终端通信,也可以被称为接入点、Node B或一些其它术语。
[0056]此外,术语“或者”意味着包括性的“或者”而不是排他性的“或者”。也就是说,除非另外指定,或者从上下文能清楚得知,否则“X使用A或者B”的说法的意指任何自然的包括性置换。也就是说,短语“X使用A或者B”满足下列任何一个例子:X使用A,X使用B,或者X使用A和B 二者。另外,除非另外指定或从上下文能清楚得知是单一形式,否则通常应该将本申请和所附的权利要求书中使用的冠词“一”和“一个”解释为表示“一个或多个”的意思。
[0057]本文所描述的技术可以用于各种无线通信系统,例如码分多址(CDMA)系统、时分多址(TDMA)系统、频分多址(FDMA)系统、正交频分多址(OFDMA)系统、单载波FDMA(SD-FDMA)系统以及其它系统。通常将术语“系统”和“网络”交互使用。CDMA系统可以实现无线电技术,例如,通用陆地无线接入(UTRA)、cdma2000等。UTRA包括宽带CDMA (W-CDMA)和 CDMA 的其它变形。此外,cdma2000 涵盖 IS-2000、IS-95 和 IS-856 标准。TDMA系统可以实现诸如全球移动通信系统(GSM)的无线电技术。OFDMA网络可以实现诸如演进的 UTRA(E-UTRA)、超移动宽带(UMB)、IEEE 802.11 (W1-Fi)、IEEE 802.16 (WiMAX)、IEEE 802.20、Flash-0FDMA等的无线电技术。UTRA和E-UTRA是通用移动电信系统(UMTS)的一部分。3GPP长期演进(LTE)是使用E-UTRA的UMTS的一个版本,其在下行链路上采用0FDMA,在上行链路上采用SC-FDMA。在来自名为“第三代合作伙伴计划”(3GPP)的组织的文档中,对UTRA、E-UTRA, UMTS, LTE和GSM进行了描述。另外,在来自名为“第三代合作伙伴计划2 (3GPP2) ”的组织的文档中对cdma2000和UMB进行了描述。此外,这样的无线通信系统还可以额外地包括经常使用未授权的非成对频谱的点对点(例如,手机对手机)自组织网络系统、802.XX无线LAN、BLUETOOTH、近场通信(NFC-A、NFC-B、NFC-F等),以及任意其它短距离或长距离无线通信技术。
[0058]围绕系统(可以包括多个设备、部件、模块等)给出了各个方面或特征。应该理解并意识到的是,各个系统可以包括额外的设备、部件、模块等,和/或可以不包括结合附图所讨论的所有设备、部件、模块等。也可以使用这些方案的组合。
[0059]可以利用以下设备来实现或执行结合本文公开的方面所描述的各种说明性的逻辑、逻辑框、模块和电路:被设计为执行本文所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或者晶体管逻辑、分立硬件部件或者其任意组合。通用处理器可以是微处理器,但在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器也可以实施为计算设备的组合,例如DSP与微处理器的组合、多个微处理器、一个或多个微处理器结合DSP内核、或任何其它这种配置。此外,至少一个处理器可以包括一个或多个模块,所述模块可操作为执行上文描述的步骤和/或行为中的一个或多个。
[0060]此外,结合本文公开的方面所描述的方法或算法的步骤和/或行为可以直接体现在硬件中、由处理器执行的软件模块中,或两者的组合中。软件模块可以位于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、⑶-ROM、或本领域公知的任何其它形式的存储介质中。可以将示例性存储介质耦接到处理器,使得处理器可以从存储介质读取信息并且向存储介质写入信息。可替代地,存储介质可以集成到处理器。此外,在一些方面,处理器和存储介质可以位于ASIC中。另外,ASIC可以位于用户终端中。可替代地,处理器和存储介质可以作为分立部件位于用户终端中。另外,在一些方面,方法或算法的步骤和/或行为可以作为代码和/或指令的一个或任意组合或集合位于机器可读介质和/或计算机可读介质(可以被并入计算机程序产品中)上。
[0061]在一个或多个方面,本申请所述的功能可以用硬件、软件、固件或其任意组合的方式来实现。如果在软件中实现,则可以将这些功能作为一个或多个指令或代码存储在计算机可读介质上或者在计算机可读介质上进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。举例而言,但非做出限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备、或者能够用于承载或存储具有指令或数据结构形式的期望的程序代码并能够由计算机进行存取的任何其它介质。此外,可以将任何连接适当地称作计算机可读介质。例如,如果软件是使用同轴电缆、光纤电缆、双绞线、数字用户线路(DSL)或者诸如红外线、无线和微波之类的无线技术从网站、服务器或其它远程源传输的,那么所述同轴电缆、光纤电缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所述介质的定义中。如本申请所使用的,磁盘和光盘包括压缩光盘(CD)、激光光盘、光盘、数字多用途光盘(DVD)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。上述的组合也应当包括在计算机可读介质的保护范围之内。
[0062]尽管以上公开内容讨论了说明性的方面和/或方面,但是应该注意到的是,在不脱离由所附的权利要求书限定的所描述的方面和/或方面的范围的情况下,可以对本文实施各种改变和修改。此外,尽管可能以单数形式描述或要求了所描述的方面和/或方面的元素,但是除非明确说明限制为单数,否则复数也是预期的。此外,除非另有说明,可以将任意方面和/或方面的全部或部分与任意其他方面和/或方面的全部或部分一起使用。
【权利要求】
1.一种近场通信设备中的通信路由的方法,包括: 在近场通信控制器(NFCC)处接收路由请求消息,其中,所述路由请求消息包括与应用相关联的初始应用标识符(AID); 通过对所述初始AID应用哈希函数来生成压缩AID ; 读取与所述压缩AID相对应的条目,所述条目在路由数据结构中,其中,所述条目包含与一个或多个安全元件相关联的一个或多个安全元件指针;以及 查询所述一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含所述应用。
2.如权利要求1所述的方法,其中,所述条目包含一个安全元件指针,所述方法还包括: 接收指示安全元件包含所述应用的查询响应;以及 发送针对所述安全元件的路由信息。
3.如权利要求1所述的方法,其中,所述条目包含一个以上的安全元件指针,所述方法还包括: 接收指示第一安全元件不包含所述应用的第一查询响应,和指示第二安全元件包含所述应用的第二查询响应;以及 发送针对所述第二安全元件的路由信息。
4.如权利要求3所述的方法,其中,所述查询包括同时向第一安全元件发送第一查询和向第二安全元件发送第二查询。
5.如权利要求4所述的方法,其中,所述一个或多个安全元件包括三个或更多安全元件。
6.如权利要求3所述的方法,其中,所述查询包括顺序地发送第一查询和第二查询。
7.一种用于近场通信设备中的通信路由的装置,包括: 用于在近场通信控制器(NFCC)处接收路由请求消息的单元,其中,所述路由请求消息包括与应用相关联的初始应用标识符(AID); 用于通过对所述初始AID应用哈希函数来生成压缩AID的单元; 用于读取与所述压缩AID相对应的条目的单元,所述条目在路由数据结构中,其中,所述条目包含与一个或多个安全元件相关联的一个或多个安全元件指针;以及 用于查询所述一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含所述应用的单元。
8.如权利要求7所述的装置,其中,所述条目包含一个安全元件指针,并且其中,所述用于接收的单元还被配置为接收指示安全元件包含所述应用的查询响应;以及 还包括用于发送针对所述安全元件的路由信息的单元。
9.如权利要求7所述的装置,其中,所述条目包含一个以上的安全元件指针,并且其中,所述用于接收的单元还被配置为接收指示第一安全元件不包含所述应用的第一查询响应,和指示第二安全元件包含所述应用的第二查询响应;以及 还包括用于发送针对所述第二安全元件的路由信息的单元。
10.如权利要求9所述的装置,其中,所述用于查询的单元还被配置为同时向所述第一安全元件发送第一查询和向所述第二安全元件发送第二查询。
11.如权利要求10所述的装置,其中,所述一个或多个安全元件包括三个或更多安全元件。
12.如权利要求9所述的装置,其中,所述用于查询的单元还被配置为顺序地向所述第一安全元件发送第一查询和向所述第二安全元件发送第二查询。
13.一种存储可执行代码的计算机可读介质,用于: 在近场通信控制器(NFCC)处接收路由请求消息,其中,所述路由请求消息包括与应用相关联的初始应用标识符(AID); 通过对所述初始AID应用哈希函数来生成压缩AID ; 读取与所述压缩AID相对应的条目,所述条目在路由数据结构中,其中,所述条目包含与一个或多个安全元件相关联的一个或多个安全元件指针;以及 查询所述一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含所述应用。
14.如权利要求13所述的计算机可读介质,其中,所述条目包含一个安全元件指针,所述计算机可读介质还包括用于以下操作的可执行代码: 接收指示安全元件包含所述应用的查询响应;以及 发送针对所述安全元件的路由信息。
15.如权利要求13所述的计算机可读介质,其中,所述条目包含一个以上的安全元件指针,所述计算机可读介质还包括用于以下操作的可执行代码: 接收指示第一安全元件不包含所述应用的第一查询响应,和指示第二安全元件包含所述应用的第二查询响应;以及 发送针对所述第二安全元件的路由信息。
16.如权利要求15所述的计算机可读介质,其中,所述查询包括同时向所述第一安全元件发送第一查询和向所述第二安全元件发送第二查询。
17.如权利要求16所述的计算机可读介质,其中,所述一个或多个安全元件包括三个或更多安全元件。
18.如权利要求15所述的计算机可读介质,其中,所述查询包括顺序地向所述第一安全元件发送第一查询和向所述第二安全元件发送第二查询。
19.一种用于通信路由的装置,包括: 接收机,其被配置为在近场通信控制器(NFCC)处接收路由请求消息,其中,所述路由请求消息包括与应用相关联的初始应用标识符(AID); 压缩部件,其被配置为通过对所述初始AID应用哈希函数来生成压缩AID ; 数据路由部件,其被配置为读取与所述压缩AID相对应的条目,所述条目在路由数据结构中,其中,所述条目包含与一个或多个安全元件相关联的一个或多个安全元件指针;以及 安全元件查询部件,其被配置为查询所述一个或多个安全元件中的至少一个,以确定是否每个安全元件都包含所述应用。
20.如权利要求19所述的装置,其中,所述条目包含一个安全元件指针,并且其中,所述安全元件查询部件还被配置为接收指示安全元件包含所述应用的查询响应;以及 还包括发射机,其用于发送针对所述安全元件的路由信息。
21.如权利要求19所述的装置,其中,所述条目包含一个以上的安全元件指针,并且其中,所述安全元件查询部件还被配置为接收指示第一安全元件不包含所述应用的第一查询响应,和指示第二安全元件包含所述应用的第二查询响应;以及 还包括发射机,其被配置为发送针对所述第二安全元件的路由信息。
22.如权利要求21所述的装置,其中,所述安全元件查询部件还被配置为同时向所述第一安全元件发送第一查询和向所述第二安全元件发送第二查询。
23.如权利要求21所述的装置,其中,所述一个或多个安全元件包括三个或更多安全元件。
24.如权利要求21所述的装置,其中,所述安全元件查询部件还被配置为顺序地向所述第一安全元件发送第一查询和向所述第二安全元件发送第二查询。
【文档编号】H04W4/00GK104137576SQ201380011019
【公开日】2014年11月5日 申请日期:2013年2月28日 优先权日:2012年2月28日
【发明者】J·R·奥多诺霍, J·伊利安, N·巴蒂亚, A·吉莱斯皮, A·K·哈韦里宁 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1