安全元件和方法与流程

文档序号:30088582发布日期:2022-05-18 07:21阅读:66来源:国知局
安全元件和方法与流程
安全元件和方法
1.相关申请的交叉引用
2.本技术要求于2020年10月27日提交的法国专利申请第2010975号的权益,该申请在此通过引用的方式并入本文。
技术领域
3.本公开大体上涉及电子设备,并且更具体地涉及适用于处理秘密数据的电子设备。更具体地,本公开涉及安全元件与其他电子设备的通信。


背景技术:

4.存在适用于提供数字服务的越来越多的电子设备。在有必要保护具有高重要性的秘密数据时,这些数字信号使用密码机制。实际上,内容的完整性也是非常重要的,与密码(或签名)密钥相反,标识号不应能够修改而是可自由访问的。为此目的,保证数据的保密性和完整性由电子设备决定。
5.安全元件是适用于以安全方式处理秘密数据的自主或非自主电子设备,即,未例如通过侧通道攻击或穿透访问或推导这些秘密数据。安全元件可以被配置是例如加密数据。
6.期望的是能够至少部分地改善安全元件与其他电子设备之间的通信的某些方面。


技术实现要素:

7.需要适用于与其他电子设备高效通信的安全元件。
8.实施例克服已知安全元件的全部或部分缺点。
9.第一方面的实施例提供一种安全元件,包括:至少一个操作系统,包括至少一个应用,应用具有与该应用相关联的寄存器;缓冲存储器;以及路由器,具有软件层,软件层适用于:将使用第一协议并且意图用于应用的第一消息引导到缓冲存储器;并且将使用与第一协议不同的第二协议并且意图用于应用的第二消息引导到寄存器。
10.第一方面的实施例提供一种在电子设备与安全元件之间通信的方法,安全元件包括:至少一个操作系统,包括至少一个应用,应用具有与该应用相关联的寄存器、缓冲存储器、以及路由器,路由器实施软件层,包括:将使用第一协议并且意图用于应用的第一消息引导到缓冲存储器;并且将使用与第一协议不同的第二协议并且意图用于应用的第二消息引导到寄存器。
11.根据第一方面的实施例,第一协议由第二元件外部的设备实施。
12.根据第一方面的实施例,第一协议是根据全球平台技术-虚拟主平台-网络协议1.0.1或后续标准定义的vnp协议。
13.根据第一方面的实施例,第二协议选自由以下项组成的组:hci协议、swp协议、clt协议、由iso7816标准定义的分组通信协议、shdlc协议以及使用内部时序存储器的通信协议。
14.根据第一方面的实施例,第一消息和第二消息由分组通信方法的数据分组形成。
15.根据第一方面的实施例,软件层适用于修改第二消息的数据分组的标头。
16.根据第一方面的实施例,第二消息源自近场通信设备。
17.根据第一方面的实施例,第一消息和第二消息意图用于适用于由安全元件的高级操作系统实施的应用。
18.根据第一方面的实施例,元件适用于实施至少两个应用。
19.根据第一方面的实施例,元件或方法适用于将第二消息引导到至少两个应用当中的选定应用,第二消息意图用于至少两个应用中的该选定应用。
20.根据第一方面的实施例,软件层管理通过允许路由协议的应用提供的图案列表。
21.根据第一方面的实施例,安全元件嵌入于电子系统中。
22.根据第一方面的实施例,安全元件集成于电子系统中。
23.第二方面的实施例提供一种安全元件,该安全元件包括:路由器,管理在使用安全元件的应用与安全元件的外部之间的第一通信协议的第一消息;以及软件层,在路由器层级处执行处理并且适用于验证与第一通信协议不同的第二通信协议的兼容性,利用第二通信协议接收第二消息;在无兼容性的情况下,将第二消息转换为第一通信协议;并且将第二消息传输给路由器。
24.第二方面的实施例提供一种在安全元件与安全元件的外部之间通信的方法,该安全元件包括:路由器,管理在使用安全元件的应用与安全元件的外部之间的第一通信协议的第一消息,该方法包括由软件层在路由器层级处执行验证与第一通信协议不同的第二通信协议的兼容性,利用第二通信协议接收第二消息;在无兼容性的情况下,将第二消息转换为第一通信协议;并且将第二消息传输给路由器。
25.根据第二方面的实施例,软件层是用于应用的虚拟目的地主机。
26.根据第二方面的实施例,第一协议由安全元件外部的设备实施。
27.根据第二方面的实施例,第一协议是根据全球平台技术-虚拟主平台-网络协议1.0.1或后续标准定义的vnp协议。
28.根据第二方面的实施例,第二协议选自由以下项组成的组:hci协议、swp协议、clt协议、由iso7816标准定义的分组通信协议、shdlc协议以及使用内部时序存储器的通信协议。
29.根据第二方面的实施例,第一消息和第二消息由分组通信方法的数据分组形成。
30.根据第二方面的实施例,软件层适用于修改第二消息的数据分组的标头。
31.根据第二方面的实施例,第二消息源自近场通信设备。
32.根据第二方面的实施例,第一消息和第二消息意图用于适用于由第二元件的高级操作系统实施的应用。
33.根据第二方面的实施例,元件适用于实施至少两个应用。
34.根据第二方面的实施例,软件层还适用于将第二消息引导到至少两个应用当中的应用,第二消息意图用于至少两个应用中的该应用。
35.根据第二方面的实施例,软件层具有使得能够转换意图用于给定应用的消息的路由表。
36.根据第二方面的实施例,软件层使用使得能够转换意图用于给定应用的消息的内
射函数。
37.根据第二方面的实施例,软件层在朝向此相同软件层创建管道期间向与安全元件不同的设备告知额外应用的存在。
38.根据第二方面的实施例,安全元件嵌入于电子系统中。
39.根据第二方面的实施例,安全元件集成于电子系统中。
附图说明
40.前述特征和优势以及其他特征和优势将参考附图借助于说明而非限制性的方式在给定具体实施例的以下描述中详细描述,其中:
41.图1示意性地以框形式示出了所描述实施例所适用类型的电子设备的示例;
42.图2示意性地以框形式示出了所描述实施例所适用类型的电子设备的另一示例;
43.图3示意性地以框形式示出了所描述实施例所适用类型的电子设备的又另一示例;
44.图4示意性地以框形式示出了结合图1到图3描述的类型的电子设备的安全元件的软件架构的实施例;
45.图5非常示意性地以框形式示出了两个电子设备之间的通信的实施例;以及
46.图6非常示意性地以框形式示出了两个电子设备之间的通信的另一实施例。
具体实施方式
47.在各个图式中,相似特征已由相似附图标记指代。具体地,各种实施例中常见的结构和/或功能特征可以具有相同附图标记,并且可以安置相同结构、尺寸和材料特性。
48.为清楚起见,仅详细说明和描述有助于理解本文中描述的实施例的步骤和元件。
49.除非另有说明,否则当参考连接在一起的两个元件时,这表示直接连接而不具有除导体之外的中间元件,并且当参考耦接在一起的两个元件时,此表示这两个元件能够连接或其能够经由一个或多个其他元件耦接。
50.在以下公开内容中,除非另有规定,否则当参考诸如术语“前部”、“背部”、“顶部”、“底部”、“左边”、“右边”等绝对位置限定词或参考诸如术语“在

上方”、“在

下方”、“上部”、“下部”等相对位置限定词或参考诸如“水平”、“竖直”等定向限定词时,参考图式中所示的定向。
51.除非另有规定,否则表述“约”、“大致”、“基本上”和“大约”表示在10%内,并且优选地在5%内。
52.图1示意性地以框形式示出了所描述实施例所适用类型的电子设备100(soc)的示例。
53.设备100是形成于相同的一个芯片(片上系统-soc)上的电子设备。设备100包括安全元件110,该安全元件110在此示例中是集成的(ise-集成安全元件)。安全元件110是集成于设备100中的安全元件,即,其可以在设备100中具有自主操作。根据备选实施例,安全元件110使用设备100的某些硬件资源,诸如存储器、实施具体功能性的电路等来操作。
54.集成安全元件110是操控例如被加密的秘密数据的电子电路。安全元件110包括:至少一个处理器111(se cpu),适用于处理秘密数据;存储器管理功能112(mmf)和/或存储
器管理单元(mmu)(未示出),能够管理从存储器读取数据和将数据写入存储器中;一个或多个电路113(hw功能),适用于实施安全元件110的硬件功能性(例如密码加速器、通信单元等);至少一个易失性存储器114(se ram);至少一个非易失性存储器115(se nvm);通信电路116(comm),适用于管理数据和控制信号在安全元件110与设备100的其余部分之间的通信;以及通信总线117(se总线),耦接安全元件110的所有元件。
55.作为变型,集成安全元件110连接到一个或多个额外通信总线。例如,集成安全元件可以具有根据iso 7816标准与片上系统100的调制解调器连接的总线、连接到近场通信设备(nfc)的另一swp类型(单线协议)总线。
56.处理器111用于处理源自存储器114和115或包括于设备100内的其他存储器的控制信号和数据。处理器111使用存储器管理电路112作为中介来管理数据的存储器存储和控制信号的存储器存储,并且因此处理器永远不直接访问存储器114和115。作为示例,电路112可以例如用于将易失性存储器的存储器空间或非易失性存储器的存储器空间分配到由集成安全元件实施的某些应用。
57.电路113可以包括多种类型的电路和部件、使得能够将数据复制到外部存储器的功能、密码协处理器等。
58.通信电路116可以用作用于安全元件110的数据接收和传输链路。电路116可以包括数据接收电路、数据加密和/或解密电路、一个或多个路由器、数据转换电路。设备100可以仅包括安全元件110,但也还可以可选地包括:一个或多个处理器121(soc cpu),适用于处理数据;一个或多个电路122(功能),适用于实施设备100的不同功能性;一个或多个易失性存储器123(soc ram);一个或多个非易失性存储器124(soc nvm);以及通信总线125(soc总线),使得能够交换控制信号和数据并且将控制信号和数据传输给所有先前提及的元件。
59.出于体积和紧凑性原因,设备100还可以适用于将数据存储到一个或多个外部存储器中。更具体地,设备100可以适用于将数据存储到外部易失性存储器21(ext ram)中和/或存储到外部非易失性存储器22(ext nvm)中。在此情况下,设备100还包括适用于与外部存储器通信的接口电路。更具体地,在此情况下,设备100可以包括适用于与外部易失性存储器21通信的接口电路126(ram接口),和/或能够与非易失性存储器22通信的接口电路127(nvm接口)。
60.安全元件110可以访问待操作的设备100的硬件资源,诸如例如访问电路122,访问存储器123、124或甚至访问存储器21和22。
61.图2示意性地以框形式示出了所描述实施例所适用类型的电子电路100'的另一示例。
62.设备100'包括:各种电子电路或芯片,在该电子电路或芯片当中,嵌入式安全元件(ese)150形成夯板电阻元件(tre);主处理器161(主cpu);调制解调器型通信电路163(调制解调器);以及近场通信电路165(nfc控制器)。
63.嵌入式安全元件150由单个芯片形成并且集成例如安全元件151(安全cpu);硬件密码处理器152(hw加密cpu)或密码加速器;一个或多个易失性存储器153(ram);一个或多个非易失性存储器154(nvm);以及在元件150的不同部件之间通信的一个或多个总线155(总线)。
64.元件150还集成根据各种通信协议与外部通信的接口,例如与外部处理器161通信
的i2c或spi类型的接口156(i2c/spi hw);根据iso7816标准与调制解调器163的通信的接口157(iso7816);以及与nfc控制器165的通信的swp类型的接口158(swp)。
65.设备100'可以包括集成或非集成的其他电路。例如,嵌入式安全元件150可以使用一个或多个外部存储器(未示出),其直接地或经由主处理器与该一个或多个外部存储器通信。
66.与诸如图1的元件110等集成安全元件相反,嵌入式安全元件150未与设备100'的其他部件、尤其是应用的主处理器集成。
67.然而,嵌入式安全元件150可以与近场通信控制器(nfc)集成。
68.图3示意性地以框形式示出了所描述实施例所适用类型的电子电路100"的又另一示例。
69.在此示例中,假设嵌入式安全元件与相同芯片180上的近场通信控制器集成。因此,集成电路或芯片180包括:嵌入式安全元件150'(tre),包括除接口158外与图2的元件150相同的元件,即安全元件151(安全cpu);硬件密码处理器152(hw加密cpu);一个或多个易失性存储器153(ram);一个或多个非易失性存储器154(nvm);元件150的不同部件之间的通信的一个或多个总线155(总线);与外部处理器161(主cpu)通信的i2c或spi类型的接口156(i2c/spi hw);以及根据iso7816标准与调制解调器163(调制解调器)通信的接口157(iso7816);以及nfc控制器170(nfc控制器),包括例如处理器171(cpu);射频发射/接收电路172(rf模拟hw)或rf模拟标头;一个或多个易失性存储器173(ram);一个或多个非易失性存储器174(nvm);在nfc控制器的不同部件之间通信的一个或多个总线175(总线);以及与设备100"的主处理器161通信的接口176(i2c/spi hw)。
70.安全元件150'与控制器170之间的交换直接传输通过总线155和175,总线155和175根据情况耦接在一起并且形成一个相同总线,其中元件150'和控制器170可以模拟swp协议。
71.安全元件150'和控制器还可以经由其ram 153和173经由共享存储器159通信,从而实现进程之间的通信(ipc

进程间通信)。
72.作为变型,安全元件150'和控制器可以经由其内部swp通信单元(未示出)通信。此使得能够保持swp交换的格式(以及在其上实施的协议的格式)而不具有约束(诸如噪声、总线速度限制等)。
73.由于电子设备中的这些功能性的大力发展,对安全元件(集成或嵌入式)之间的近场通信的应用是优选应用。
74.图4示意性地以框形式示出了结合图1到图3描述的类型的电子设备的安全元件的软件架构200的实施例。
75.除非另有规定,否则表述“安全元件”在本文中以不同方式表示嵌入式安全元件或集成安全元件。因此,安全元件se的软件架构200可以在先前图式的元件110、150或150'中的任一元件中实施。
76.架构200包括主平台210(vpp),通常称为虚拟主平台(vpp),包括对安全元件se的电子部件211(hw)的访问并且包括一个或多个低级操作系统213(llos)。根据实施例,主平台210还包括能够实施通信管理软件或进程215(comm mgt)的电路,关于图5描述其操作。
77.部件211是安全元件se(110,图1;150,图2;150',图3)的硬件资源。安全元件110的
部件211是例如:一个或多个处理器,例如处理器111(图1)或151(图2和图3);一个或多个存储器,例如存储器114和115(图1)或153和154(图2和图3);一个或多个通信设备,诸如使得能够与近场通信设备(nfc)直接通信的通信设备;使用例如蓝牙标准、生物辨识传感器等的短程通信设备。
78.低级操作系统213是软件,其适用于实施部件211以执行从由安全元件实施的应用中的大部分应用接收的控制信号。作为示例,低级操作系统213包括部件211的驱动软件的全部或部分。
79.低级操作系统213由执行码(或可执行码)形成以及执行数据形成。执行码包含使得能够执行程序的功能的指令。通过定义,指令针对给定程序是不变的,除了针对程序的更新,其接着修改指令。执行数据由执行码使用以脉络化执行、并且执行所需功能。执行数据可以分为两个类别。所谓的“临时”执行数据和所谓的“永久”或“固定”执行数据。例如,如果功能包括pin码的验证,那么此功能分解为三个部分,执行码包含pin码的验证的指令,而永久执行数据包含参考pin码,并且剩余的多个测试和临时执行数据包含递交给验证的pin码。
80.主平台210与由安全元件110执行的应用通信,该安全元件110具有由主平台执行的接口或工具220(工具)。这些接口或工具200除其他特征之外可以包括应用二进制接口(abi);寄存器(vre,虚拟寄存器);以及存储缓冲存储器或缓冲存储器,或还包括实现经由进程间通信(ipc)的进程之间的数据交换的共享存储器。
81.应用二进制接口是在安全元件的应用与其操作系统之间的低级接口、或在应用的不同部分之间的低级接口。
82.寄存器是例如当控制信号发送给安全元件的主平台210时、或在由主平台执行的过程之间的交换期间链接到安全元件的硬件功能并且用于临时存储数据的存储器空间。
83.缓冲存储器(或共享存储器)用于在其由平台210或由安全元件的应用231、232、233使用之前存储消息。实际上,缓冲存储器是在元件110的存储器(例如元件110已访问的易失性存储器,诸如存储器114)中分配的存储器空间。
84.作为示例,软件架构200包括适用于使用接口或工具220来实施主平台210的至少三个应用231、232、233。应用231、232、233是使用主平台的资源的软件。当然,安全元件实施在其计算能力限制内的大量应用。
85.集成安全元件110(图1)可以在其内部存储器中同时执行单个应用并且在外部存储器中记录其他应用,这将使得能够具有仅被外部存储器限制的大量应用。应用必须在被执行(或恢复执行)之前预先加载到内部存储器中,并且应用在能够使用其之前必须卸载先前的应用。相反,嵌入式安全元件150(图2)或150'(图3)将优先使用其内部存储器来存储并且执行应用,这暗示应用的更限制但更快执行的概念,这是由于将提到的“原位”执行不需要替换应用。然而,组合嵌入式安全元件与外部存储器及因此组合内部存储器与外部存储器的益处仍然是可能的。应用231、232、233可以适用于实施任何类型的功能性。其通常实施服务提供方的数字服务,例如emv或运输票务类型的支付服务。这些应用可以组合位于主处理器121(图1)或161(图2和3)中或另一安全环境(可信执行环境)中的另一应用。处理器和安全环境更能够经由可信用户接口与用户交互。应用231、232、233例如适用于处理源自通信接口的控制信号,诸如例如使用近场通信设备的银行交易。应用可以是不同类型,例如
sim(用户标识模框)应用、支付应用、使得能够验证公共运输票务的应用等。
86.根据应用类型的示例,应用231(app1)能够借助于接口或工具220直接由主平台210(vpp)实施。应用231是例如使得能够通过与近场通信(nfc)设备进行支付的应用。
87.根据应用类型的另一示例,应用232是适用于通过使用高级操作系统232h(hlos1)执行的一组指令232a(app2)。高级操作系统是适用于通过提供一组公共软件功能来实施不同应用的软件。操作系统232h是借助于接口或工具220与主平台210通信的应用232的仅有部分。作为变型,其还能够考虑的是高级操作系统以及与其附接的所有应用是适用于借助于接口或工具220由主平台210实施的单个应用。
88.根据应用类型的另一示例,另一应用233是使用执行环境233e(env)的一组指令233a(app3),其本身使用高级操作系统233h(hlos2)。执行环境是例如java或javacard类型。操作系统233h和执行环境233e是借助于接口或工具220与主平台210通信的应用233的仅有部分。作为变型,其还能够考虑高级操作系统以及与其附接的所有应用是能够由主平台210实施的应用。
89.如果不存在高级操作系统,那么高级操作系统232h和233h或应用232和233本身使用可用于执行码的管理和执行数据的管理的存储器的虚拟图像。由于此技术,高级操作系统(或应用)不具有对易失性或非易失性的物理存储器的管理的直接访问。换句话说,在所描述实施例中,高级操作系统管理存储器的虚拟图像。易失性和非易失性存储器中的物理分布的对应性由(一个或多个)低级操作系统213组合某些hw模框211来确保。更一般来说,考虑使模框210与虚拟和物理存储器对应。
90.此外,考虑应用可以处于至少三种不同状态中:激活状态或由主平台110运行的状态;待机状态,即其执行被中断但其可以在任何时刻恢复;以及去激活或去激活状态,即其执行在没有一个或多个预先操作的情况下不能够重新启动。
91.当应用使待机状态再次执行时,其在被停止处的恢复其执行。不需要使用具体例程来继续其处理。从应用的视角,所有都表现为好像应用尚未中断。
92.当应用去激活时,其所有数据以与针对待用应用相同的方式存储在存储器中。
93.应用231、232或233的实施方式如下。当应用期望使用安全元件的硬件资源(即主平台210的一个或多个部件211)时,这意味着在固定数据上执行的当前操作被视为结束。应用然后可以执行不同控制信号,例如迫使写入非易失性存储器中。为此目的,应用经由接口或工具220将控制信号和/或数据发送给主平台210。控制信号在被发送给低级操作系统213之前由一个或多个应用二进制接口负责,即控制信号分为多个操作,每个操作由应用二进制接口或虚拟寄存器或缓冲存储器/共享存储器表示。数据存储在寄存器中或经由进程间通信(ipc)传输。低级操作系统213通过将由应用二进制接口请求的操作应用于存储在寄存器中的数据而对应用二进制接口的请求作出反应。低级操作系统213接着驱动部件211以执行由应用所请求的。
94.应用231、232、233不能够在安全元件内一起通信。每个应用23x(x从1到很可能被执行的应用的数目变化)不知晓其他应用23x的存在。具体地,应用的每个操作系统“相信”其是与外部通信的唯一一个。因此,如果应用必须一起通信,那么其应如讨论的朝向具有应用23x的另一元件的执行应用23x的安全元件来完成。然而,相同集合的两个子应用或应用233(应用可以包含多个子应用)使用分组通信方法以通过使用ipc进程间通信工具来一起
通信。每个应用231、232、233可以与外部电子设备通信。分组通信是数据传输方法,其中所发送的消息由一个或多个数据分组形成。每个数据分组包括标头,该标头包括与所使用通信协议的类型相关、与消息的传输器相关、与消息接收器相关、与消息大小相关等的数据。在不同已知分组通信协议当中,安全元件可能使用不同协议(与不同协议兼容),该不同协议可以根据协议的性质依据交换的数据协议、应用协议、通信协议、物理链路分类。例如,这些协议包括:vnp协议(虚拟网络协议),由“全球平台技术虚拟主平台

网络协议1.0.1”标准(或任何后续版本)定义,对应于交换数据的协议;swp协议(单线协议),由etsi ts 102613uicc-非接触式前端(clf)接口-物理和数据链路层特性标准定义,对应于物理链路;通信协议,由iso7816标准定义,覆盖数据交换、应用协议、通信以及物理链路(无线)的性质;hci(主机控制器接口)协议,由etsi ts 102 612 v12.0标准(或任何后续版本)定义,对应于应用协议;clt协议,由etsi ts 102 613 uicc-非接触式前端(clf)接口-物理和数据链路层特性11.0标准(或任何后续版本)定义,对应于通信协议;shdlc协议(简化的高级数据链路控制),由etsi ts 102 613(uicc-非接触式前端(clf)接口-物理和数据链路层特性)标准定义;以及i2c或spi协议,对应于物理链路。
95.消息还可以经由起通信总线作用的存储器传输。换句话说,通信总线可以用存储器替换,该存储器使待由传输设备传输的数据写入其中并且由接收设备读取。
96.vnp协议是适用于针对安全元件的通信操作的通信协议。协议能够管理在架构200内并且还朝向外部设备的消息的路由。此是安全元件中的优选通信协议。根据实施例,部件211(组合低级操作系统213)内包括的路由器是被配置为使用vnp协议来处理消息的路由器。
97.hci、shdlc和clt协议是与vnp协议冲突的协议,这是因为这些协议不兼容,标准不定义两者之间的相互作用。此冲突的结果显示hci、shdlc和clt协议不适用于管理架构200内的消息的路由。因此,部件211中包括的路由器不能够使用shdlc、clt和hci协议来支持消息,这是因为不存在用于适当地路由架构200内的消息的数据。
98.clt、shdlc和hci协议以及由iso7816标准定义的协议是与vnp协议的使用不兼容的协议。部件211(组合213)中包括的路由器不能够使用clt、shdlc、hci以及iso7816协议来支持消息。
99.在下文中描述的实施例中,期望确证安全元件(集成或嵌入式)管理应用之间的可能冲突,同时使应用彼此隔离。换句话说,应用(或不具有操作系统的每个应用)的每个操作系统相信其是访问安全元件的唯一一个应用。
100.图5示意性地以框形式示出了两个电子设备之间的通信的实施例。
101.图5例如说明在关于先前图式描述的类型的安全元件300(se)与同vnp协议兼容的电子设备401(vnp)之间的通信的实施例,例如主处理器121(图1)或161(图2和3)以及与同vnp协议不兼容且使用不同分组通信协议的设备402(其他)。例如调制解调器163(图2和3),该调制解调器163常规地经由iso7816协议与安全元件(例如用户标识模框

sim)交换数据。设备401、402可以是其中包括安全元件300的设备(集成安全模框的情况)或单独电子设备(嵌入式安全模框的情况)。
102.设备401适用于通过使用vnp协议发送消息来与安全元件300通信。
103.设备402适用于通过使用除vnp协议外的其他协议发送消息来与安全元件300通
信,该其他协议诸如是hci协议、swp协议、clt协议、iso7816协议、shdlc协议。设备402还可以例如使用内部时序存储器,诸如输送相关协议的物理链路。设备402是例如近场通信设备,例如nfc设备。此类型的设备必须实施具体标准来实现互操作性(在其与不同设备的使用期间)。更具体地,nfc设备将使用nfc控制器(近场通信控制器

nfcc)或非接触式前端(clf),其具有用于与nfcc和主处理器接口的nci协议以及用于在nfcc或clf与安全元件之间接口的hci/clt/shdlc协议。
104.在关于图3所说明的示例中,安全元件300实施两个应用301(app1)和302(app2)。由安全元件300接收消息的链路在图3中示出。此接收链路包括:电路303(vh),适用于实施虚拟主机软件;路由器304(router),适用于处理所接收消息;安全元件的虚拟主平台305(vpp);以及两个缓冲存储器306(mem1)和307(mem2),分别与应用301、302相关联。
105.当设备401使用vnp协议将消息发送给安全元件300时,此消息由路由器304接收。由于消息的数据分组的标头,路由器304能够确定由于vnp协议中存在的数据,哪个应用应接收消息。消息接着通过虚拟专用平台以存储在与应用相关联的缓冲存储器中,该应用意图接收消息、处理消息并且对其作出应答。应用将从缓冲存储器提取消息以使用该消息。
106.当设备402发送不使用vnp协议的消息给安全元件300时,此消息首先由适用于实施虚拟主机软件或过程的电路303接收。软件或过程具有若干功能性。首先使得能够修改由消息使用的通信协议以使得其可由路由器304使用,前提是此协议与vnp协议不兼容。虚拟主机还使得能够将消息引导到合乎需要的应用。
107.假设使用与如etsi ts 102 622和ts 102 613标准中定义的shdlc和clt协议组合的hci协议的,nfc控制器示例。还假设安全元件300的应用app1和app2仅与vpp层(和路由器)接口。vpp层和相关联的路由器接着仅使用vnp协议。首先,虚拟主机软件将在vnp路由器上注册,由应用app1和app2见证为实施hci门的nfc主机。当应用app1或app2将创建朝向此虚拟主机软件的vnp管道时,虚拟主机软件将接受管道的创建并且通过使用nfc控制器包括的定义的协议开始其本身与nfc控制器之间的通信。接着,当应用app1或app2将发送hci控制信号以经由vnp分组在nfcc上执行指令时,虚拟主机软件将拦截/接收包含hci控制信号的vnp分组,并且将去除vnp包封以将消息包封在一个或多个shdlc框架中。在作为交换从nfc控制器到应用app1或app2的消息传入期间,虚拟主机软件将在反方向上、即通过抑制shdlc数据且通过将其添加到vnp数据(同时保持hci内容)来执行操作。该第一类型的实施使得此转译的使用为排他的。换句话说,两个不同低级操作系统(llso)的两个应用可能不会适当地管理nfcc控制器。实际上,其将快速地变为冲突的。由于每个低级操作系统llos不知晓另一低级操作系统,其相应应用可能另外在nfc控制器上引入不兼容参数,从而使得其他应用中的应用不可用。此外,如果非接触式消息经由nfc控制器的天线到达,那么将不会标识意图处理控制信号的应用。例如,如果链路已存在于应用app1和nfc控制器之间,那么虚拟主机软件否认应用app2与nfc控制器之间链路的创建。一旦已抑制具有应用app1的链路(例如完成任务或抑制/关闭应用1与虚拟主机软件之间的管道),那么虚拟主机软件授权应用app2与nfc控制器之间链路的创建。在下文中,如果应用app1希望访问nfc控制器,那么一旦应用app2与nfc控制器之间的链路结束,其应重新创建到nfc控制器的链路。
108.作为变型,虚拟主机软件可以向nfc控制器告知多个低级操作系统llos(和因此多个应用app1、app2)的存在,其使得能够在nfc控制器与应用之间具有多个链路。根据此变
型,虚拟主机软件向nfc控制器告知当创建此新操作系统的应用与虚拟主机软件之间的管道时,新的低级操作系统是可用的。在nfc控制器与虚拟主机设备之间的交换期间,两个设备添加数据以标识被控制信号当作目标的低级操作系统的应用。为了在两个协议之间形成桥(主要当存在多个应用时),虚拟主机软件具有允许转译数据的内部路由表。作为变型,其使用nfc控制器的标识符与目标应用的标识符之间的内射函数(两个不同标识符不能够涉及相同应用)。
109.可选地,软件还可以使得能够修改应用的状态,例如将其从去激活或待机状态切换为激活状态,以使得能够提醒接收消息。一旦已由虚拟主机软件处理消息,即遵循与由设备401发送的消息相同的路径。换句话说,路由器304接收消息并且将其引导到正确应用。消息接着通过虚拟专用平台以存储在与应用相关联的缓冲存储器中,该应用意图接收消息。应用将从缓冲存储器提取消息以使用该消息。
110.可选地,软件可以使得能够管理访问授权以及不同应用、不同环境和/或不同操作系统之间的数据交换的列表,以授权或不授权通信。
111.此实施例的优势为其使得能够使用除vnp协议外的通信协议的消息可由安全元件使用。
112.图6非常示意性地以框形式示出了两个电子设备之间的通信的另一实施例。
113.图5示意性地以框形式说明在关于先前图式描述的类型的安全元件500(se)与电子设备600(device)之间的通信的方法的另一实施例。
114.设备600使用关于图2描述的任何分组通信协议以与安全元件通信。设备600可以是其中包括安全元件500或外部电子设备的设备。设备600是例如近场通信设备。
115.在关于图4所说明的示例中,安全元件500实施应用501(app1)。由安全元件300接收消息的链路在图5中示出。此接收链路包括:路由器502(router);安全元件的虚拟主平台503(vpp);与应用501相关联的缓冲存储器504(mem);以及寄存器505(vre)。
116.路由器502适用于使用vnp协议来处理所接收消息并将所接收消息引导到应用501。当设备600使用vnp协议发送消息时,路由器502将消息引导到应用501。为此目的,消息通过主平台503并且接着存储在缓冲存储器504中。应用501接着从缓冲存储器504提取消息以使用该消息。
117.根据实施例,路由器502(作为变型,平台503)还适用于将不使用vnp协议的消息引导到寄存器505中而非引导到缓冲存储器504。寄存器505链接到应用501。在使用之前,执行将寄存器链接到应用的操作。实际上,应用app1可能在具有主虚拟主平台503的虚拟寄存器vre(或其他构件)上寄存以向其指示其可以根据定义的协议(shdlc、clt等)和/或物理线(swp、i2c、spi、iso7816等)来接收控制信号/指令/信息。在此实施方式中,单个应用可以在具体寄存器上寄存。当数据到达此管道(逻辑的或物理的)上时,路由器或vpp平台将数据传输到已寄存的应用(而不改变所使用的通信协议)。
118.根据替代实施例,元件500可以被适用于实施超过一个应用。在此情况下,每个应用通过链接操作链接到具体寄存器。
119.在此情况下,控制信号发送给“默认”应用或发送给当前作用的应用。此暗示被控制信号当作目标的应用已由其他构件(例如由已使用vnp协议的通道)选择。在由另一通道选择的情况下,应用可以请求/强加给定时间(例如500ms、1sec等)的其非取消选择,以能够
接收并处理下一控制信号。如果操作的完整处理需要多个控制信号,那么应用可以通过向vpp层询问来延长非取消选择时间。
120.根据元件500适用于实施超过一个应用的另一替代实施例,寄存器可以链接到正由安全元件110执行的应用。
121.在此变型中,应用指示其特定的图案。优势为,如果多个应用在相同虚拟寄存器上寄存,那么路由器304或平台305可以根据记录的图案选择应用。如果所接收控制信号不对应于图案,那么默认应用可以保持执行其处理。当然,遵循应用的选择的控制信号保持由其发送和处理。
122.此实施例的优势为其使得能够使用除vnp协议外的通信协议的消息为可用的。
123.根据又另一实施例,为此主机虚拟(虚拟主机)或呈硬件形式(设备主机)的安全元件外部的主机设备实施(第一)通信协议,如果安全元件与此第二协议不兼容,那么根据另一(第二)协议将消息转换为该通信协议。
124.已描述各种实施例和变型。所属领域的技术人员将理解,可组合这些各种实施例和变型的某些特征,并且所属领域的技术人员将想到其他变型。
125.最终,基于上文中给定的功能指示,所描述实施例和变化的实际实施方式在所属领域的技术人员的能力范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1