安全地交换车辆传感器信息的制作方法

文档序号:11635440阅读:326来源:国知局
安全地交换车辆传感器信息的制造方法与工艺



背景技术:

车辆信息娱乐、导航和其他车载计算系统在豪华车辆和低端车辆中都已经变得很普遍并且可以向车辆操作者提供各种驾驶辅助。例如,车载摄像头系统可以用于改善视野、自动平行停车和/或其他目的。此外,倒车雷达和/或自动刹车系统可以用于帮助防止驾驶员追尾行人或其他车辆。

车辆通信系统长期以来使驾驶员和/或车辆自身与支援人员通信,以用于紧急和安全响应。例如,一些车辆能够在车辆牵涉到事故中时自己向紧急支援人员(即,在远程位置处)发送报告。进一步地,一些车辆通信系统使车辆所有者能够在所有者偶然将钥匙锁在她的车里的情况下联系安全支援人员以便例如解锁车辆。车辆制造业最近已经开始将重点放在车辆通信系统以及如自动驾驶汽车和自动化公路等概念上。这样做时,已经开发了各种解决方案用于使得能够进行具有非常受限的数据安全性的自组织车辆到车辆通信。

附图说明

在附图中,以示例的方式而非限制的方式来展示在本文中所描述的概念。为了说明的简单和清晰起见,在附图中所展示的元件不一定按比例绘制。在认为适当的情况下,在附图当中重复参考标号以表示相应或相似的元件。

图1是一种用于在车辆之间交换传感器信息的系统的至少一个实施例的简化框图;

图2是图1的系统的车载计算系统的环境的至少一个实施例的简化框图;

图3是图1的系统的协调服务器的环境的至少一个实施例的简化框图;

图4至图5是一种使用图1的系统的车载计算系统来交换传感器信息的方法的至少一个实施例的简化流程图;以及

图6至图7是一种使用图1的系统的协调服务器来在车载计算系统之间协调对传感器信息的交换的方法的至少一个实施例的简化流程图。

具体实施方式

虽然本公开的概念易于经历各种修改和替代形式,但是在附图中已经通过示例的方式来示出了其特定实施例并且将在本文中详细地对其进行描述。然而,应当理解的是,不意在将本公开的概念限制于所公开的特定形式,而相反,意图是覆盖与本公开和所附权利要求书一致的所有修改型式、等效型式和替代型式。

在说明书中提到的“一个实施例”、“实施例”、“说明性施例”等指示所描述的实施例可以包括特定特征、结构或特性,但每一个实施例可能或者可能不一定包括该特定特征、结构或特性。此外,这种短语不一定指相同的实施例。此外,当关于实施例而描述了特定特征、结构或特性时,应当认为的是,无论是否进行了明确描述,结合其他实施例来实现这种特征、结构或特性都在本领域的技术人员的知识内。另外,应当理解的是,包括在采用“至少一个a、b和c”的形式的列表中的项目可以指(a)、(b)、(c)、(a和b)、(b和c)、(a和c)或(a、b和c)。类似地,采用“a、b和c中的至少一者”的形式来列出的项目可以指(a);(b);(c);(a和b);(b和c);(a和c);或(a、b和c)。

在一些情况下,可以在硬件、固件、软件或其任何组合中实施所公开的实施例。所公开的实施例还可以被实施为由一种或多种瞬态或非瞬态机器可读(例如,计算机可读)存储介质所携带或存储在其上的指令,所述指令可以由一个或多个处理器读取和执行。机器可读存储介质可以被具体化为任何存储设备、机制、或用于存储或传输采用机器可读形式的信息的其他物理结构(例如,易失性或非易失性存储器、介质盘或其他介质设备)。

在附图中,可以采用特定安排和/或排序来示出一些结构特征或方法特征。然而,应当理解的是,可能不需要这种特定的安排和/或排序。相反,在一些实施例中,可以采用与在说明性附图中所示出的方式和/或顺序不同的方式和/或顺序来安排这种特征。另外,在具体的图中包括结构特征或方法特征并不意味着暗示在所有实施例中都需要这种特征,并且在一些实施例中,可以不包括这种特征或者这种特征可以与其他特征组合。

现在参照图1,用于在车辆之间交换传感器信息的系统100包括车载计算系统102、一个或多个网络104、一个或多个远程车载计算系统106、协调服务器108、证明服务器110、和制造商服务器112。如在图1中所示出的,车载计算系统102包括在车辆120中,并且远程车载计算系统106中的每一个远程车载计算系统包括在相应远程车辆122中。在说明性实施例中,车辆120、122中的每一台车辆被具体化为轮式客运车辆(例如,汽车、卡车、卡车牵引车、公共汽车等)。然而,应当理解的是,在其他实施例中,车辆120、122中的一台或多台车辆可以被具体化为另一种类型的车辆(例如,被具体化为轨道驱动车辆、飞行器、海上船舶、无人驾驶车辆、无人机、或者适合于对所描述的技术和机制的应用的另一种车辆)或者其他可移动装置。

车载计算系统102、106中的每一个车载计算系统可以被具体化为能够执行本文中所描述的功能的任何类型的计算系统。尽管在图1中仅说明性地示出了一个协调服务器108、一个证明服务器110、以及一个制造商服务器112,但是在其他实施例中,系统100可以包括任何数量的网络104、协调服务器108、证明服务器110和/或制造商服务器112。例如,对于包括在系统100中的车辆120、122的每一个制造商,系统100可以包括不同的制造商服务器112。进一步地,在一些实施例中,系统100的设备中的一个或多个设备可以形成系统100的另一个设备的一部分(例如,制造商服务器112可以被具体化为协调服务器108的一部分)。

如以上所指示的,车辆120、122可以使用当前车载计算系统、采用通常不安全的特别方式来彼此通信。然而,可能已经通过不可信网络和/或从潜在恶意节点处潜在地传输了这种系统中的车辆所接收的传感器数据。例如,在简单的防撞系统中,可以将两台车辆的惯性特性和空间特性(例如、速度、坐标等)传达至彼此,以便允许车辆响应于基于所接收的传感器数据检测到可能的碰撞而采取保护动作(例如,停止车辆)。在以上所描述的不安全系统中,不法之徒可能向所有附近车辆广播虚假数据或欺骗数据,强迫他们识别伪造的即将到来的碰撞并停止他们的行程。系统100允许在车辆之间采用防范这种恶意行为的方式来进行对传感器信息的安全交换。

如以下详细地描述的,协调服务器108在车辆120与(多台)远程车辆106之间协调对传感器信息的安全交换。具体地,协调服务器108与车载计算系统102、106中的一个或多个车载计算系统建立安全通信信道。在说明性实施例中,协调服务器108和车载计算系统102证明彼此的安全性(例如,通过证明服务器110),从而验证协调服务器108和车载计算系统102中的每一者正在可信执行环境中执行与传感器信息的转移相关的指令。在已经验证协调服务器108的安全性之后,车载计算系统102可以将传感器数据转移到协调服务器108中。这样做时,车载计算系统102将相关传感器数据、证明引用(attestationquote)和可信执行环境密钥签名(例如,传感器数据和/或证明引用的)传输至协调服务器108。如以下所描述的,证明引用可以基于车载计算系统102的可信执行环境(例如,以供协调服务器108进行验证),并且可信执行环境密钥签名可以是例如使用绑定至车载计算系统102的可信执行环境的私有增强隐私标识(epid)密钥来生成的epid密钥签名。当然,如以下所描述的,在其他实施例中可以采用其他一对多(one-to-many)密码签名和/或直接匿名证明方案。

在说明性实施例中,协调服务器108验证可信执行环境密钥签名、确定密钥签名的撤销状态(例如,经由制造商服务器112)、并验证从车载计算系统102处接收的证明引用。如果成功,则协调服务器108可以假设已经从车载计算系统102处安全地转移了传感器数据(例如,尚未损害传感器数据的完整性),并且协调服务器108可以进一步处理传感器数据。例如,协调服务器108可以将传感器数据传输至适当远程车辆122(例如,车辆120附近的远程车辆122)的相应车载计算系统106。应当理解的是,协调服务器108可以采用类似的方式来从远程车辆122中安全地检索传感器数据。换言之,车载计算系统102、106通过协调服务器108来将传感器数据传输至彼此,而不是采用特别的不安全方式来直接传达至彼此。根据特定实施例,车载计算系统102、106和/或协调服务器108可以判定应当将相应传感器数据传输至其他哪个(哪些)车载计算系统102、106。进一步地,在一些实施例中,还可以采用类似的安全方式来将传感器数据从协调服务器108传输至车载计算系统102、106。

在一些实施例中,车载计算系统102、106中的一个或多个车载计算系统可以被具体化为车载信息娱乐系统、导航系统和/或其他基于车辆的计算系统,或者可以形成其一部分。在其他实施例中,车载计算系统102、106反而可以被具体化为独立的计算设备或计算系统。例如,在一些实施例中,车载计算系统102、106反而可以被具体化为与车辆不相关的计算设备。在这种实施例中,计算系统102、106中的每一个计算系统可以被具体化为能够执行本文中所描述的功能的任何类型的计算设备(例如,服务器、台式计算机、膝上型计算机、平板计算机、笔记本、上网本、超极笔记本tm、蜂窝电话、智能电话、个人数字助理、移动互联网设备、可穿戴式计算设备、混合设备和/或任何其他计算/通信设备)。

在这种实施例中,协调服务器108可以在其他实施例中在计算设备与另一个计算设备之间协调对传感器信息的安全交换。这样做时,协调服务器108和计算设备可以执行与本文中关于在车辆之间交换传感器信息而描述的功能类似的功能。具体地,协调服务器108可以与计算设备建立安全通信信道,并且协调服务器108和计算设备可以证明彼此的安全性(即,相应可信执行环境的安全性)。如以上所描述的,为了转移传感器数据,计算设备之一可以将相关传感器数据、证明引用和可信执行环境密钥签名传输至协调服务器108。协调服务器108验证证明引用和密钥签名并且相应地处理传感器数据(例如,将其转发至(多个)适当的远程计算设备)。应当理解的是,本文中所描述的方法同样很好地适用于车载计算系统102、106被具体化为非车辆计算系统的实施例。

如在图1中所示出的,说明性车载计算系统102包括处理器150、输入/输出(“i/o”)子系统152、存储器154、一个或多个传感器156、安全协处理器158、数据存储设备160、通信电路162、和一个或多个外围设备164。此外,在一些实施例中,i/o子系统152可以包括硬件保护的i/o路径。当然,在其他实施例中,车载计算系统102可以包括其他或附加部件,比如,典型计算设备中常见的部件(例如,各种输入/输出设备和/或其他部件)。此外,在一些实施例中,说明性部件中的一个或多个说明性部件可以结合在另一个部件中、或可以其他方式来自其一部分。例如,在一些实施例中,存储器114或其部分可以结合在处理器150中。在又其他实施例中,可以省略在图1的说明性实施例中所示出的部件中的一个或多个部件(例如,安全协处理器158)。

处理器150可以被具体化为能够执行本文中所描述的功能的任何类型的处理器。例如,处理器150可以被具体化为(多个)单核或多核处理器、数字信号处理器、微控制器、或者其他处理器或处理/控制电路。类似地,存储器154可以被具体化为能够执行本文中所描述的功能的任何类型的易失性或非易失性存储器或数据储存设备。在操作中,存储器154可以存储在对车载计算系统102的操作期间所使用的各种数据和软件,比如,操作系统、应用、程序、库和驱动程序。存储器154经由i/o子系统152通信地耦合至处理器150,所述i/o子系统可以被具体化为用于促进与车载计算系统102的处理器150、存储器154、以及其他部件的输入/输出操作的电路和/或部件。例如,i/o子系统152可以被具体化为或以其他方式包括用于促进输入/输出操作的存储器控制器中枢、输入/输出控制中枢、固件设备、通信链路(即,点到点链路、总线链路、线、电缆、光导、印刷电路板迹线等)和/或其他部件和子系统。在一些实施例中,i/o子系统152可以形成片上系统(soc)的一部分并且可以与车载计算系统102的处理器150、存储器154以及其他部件一起被结合在单个集成电路芯片上。

在说明性实施例中,传感器156基于车载计算系统102的物理环境和/或情境来收集数据。在各种实施例中,传感器156可以被具体化为或者以其他方式包括例如惯性传感器、接近传感器、光学传感器、光传感器、音频传感器、温度传感器、运动传感器、压电传感器、压力传感器、图像传感器、和/或生成对车载计算系统102有用的数据的其他类型的传感器,所述传感器可能根据车载计算系统102的特定用途而变化。当然,车载计算系统102还可以包括被配置成用于帮助传感器156的用户的部件和/或设备。

应当理解的是,在一些实施例中,车载计算系统102的可信执行环境(例如,在安全协处理器158中建立的)可以通过硬件保护的i/o路径166来访问由传感器156生成的传感器数据(即,从而提供可信且抗篡改的感测读数)。换言之,在一些实施例中,硬件保护的i/o路径166可以充当传感器数据的硬件增强安全性。进一步地,在一些实施例中,传感器156所生成的传感器数据不可由处理器150访问。

安全协处理器158可以被具体化为能够建立可信执行环境的任何(多个)硬件部件或电路。例如,安全协处理器158可以被具体化为可信平台模块(tpm)、管理引擎(me)、或者带外处理器。在一些实施例中,一个或多个可信执行环境(tee)密钥168被存储或配设到安全协处理器158中。例如,可以在安全协处理器158的或车载计算系统102的制造过程期间或借助于“加入”协议来将私有增强隐私标识(epid)密钥和/或另一个私有tee密钥配设到安全协处理器158中。在其他实施例中,可以将epid密钥或其他tee密钥配设到车载计算系统102的一个或多个其他部件中。此外,在一些实施例中,tee密钥证书(例如,epid证书)也被存储或配设到安全协处理器158中。tee密钥证书可以包括与配设到安全协处理器158中的私有tee密钥相对应的公共tee密钥,并且可由安全协处理器158的制造商(例如,由制造商服务器112)签名。还应当理解的是,在一些实施例中,安全协处理器158可以与协调服务器108的相应安全协处理器直接通信。此外,在一些实施例中,安全协处理器158可以与远程设备和/或部件(例如,协调服务器108)建立安全的带外通信链路。

如以下详细地讨论的,应当理解的是,epid密钥与具有单个公共epid密钥和特定组标识(组id或gid)的组相关联。属于该组的任何私有epid密钥(可能存在许多私有epid密钥)可以与相应公共epid密钥配对成有效的公共-私有密码对。例如,车载计算系统102的安全协处理器158(或可信执行环境)可以具有一个私有epid密钥,并且远程车载计算设备106的安全协处理器(或可信执行环境)可以具有不同的私有epid密钥。如果车载计算系统102的安全协处理器158和车载计算系统106的安全协处理器是相同组(例如,相同制造批号)的成员,则他们的私有epid密钥为具有相同公共epid密钥的有效非对称密钥对。例如,在说明性实施例中,针对每一个车辆品牌/型号而存在不同的组。此外,epid密钥允许所述成员的匿名性和不可链接性并且还允许密钥撤销。在其他实施例中,可以使用另一个一对多密码方案。进一步地,在一些实施例中,可信应用被用作可信根而不是硬件(例如,安全协处理器158)。在这种实施例中,可以将tee密钥配设到运行所述应用的平台中。应当理解的是,在说明性实施例中,协调服务器108可访问公共tee密钥(例如,公共epid密钥)和撤销列表,以便判定车载计算系统102的私钥签名是否有效和未被撤销(例如,借助于制造商服务器112)。应当理解的是,在一些实施例中,可以在车载计算系统102上建立可信执行环境,而无需使用安全协处理器158。例如,在这种实施例中,处理器150可以建立用于安全执行的tee情境(例如,因特尔软件防护扩展(sgx)安全飞地)。可信执行环境可以“可见”为加密的存储器区域和执行空间并且可能能够被解密,并且因此可以仅由执行处理器150访问(即,在处理器总线中的任何处理器总线上以非解密的形式不可用)。相应地,在车载计算系统102不包括安全协处理器158或没有使用安全协处理器158的实施例中,车载计算设备102可以以其他方式建立可信执行环境(例如,与处理器150)并执行本文中所描述的功能。

数据存储设备160可以被具体化为被配置成用于对数据进行短期或长期存储的任何类型的一种或多种设备,如例如,存储器设备和电路、存储器卡、硬盘驱动器、固态驱动器或其他数据存储设备。数据存储设备160和/或存储器154可以在对车载计算系统102的操作期间存储各种数据,如例如,密钥、密钥证书、和/或在如下所讨论的在对车载计算系统102的操作中有用的其他数据。

车载计算系统102的通信电路162可以被具体化为能够使车载计算系统102与其他远程设备(例如,协调服务器108)之间的通信成为可能的任何通信电路、设备或其集合。通信电路162可以被配置成用于使用任何一种或多种通信技术(例如,无线或有线通信)和相关联的协议(例如,以太网、蓝牙wimax等)来实现这种通信。

在一些实施例中,车载计算系统102还可以包括一个或多个外围设备164。外围设备164可以包括任何数量的附加外围设备或接口设备,比如,扬声器、麦克风、附加存储设备等等。包括在外围设备164中的具体设备可以取决于例如车载计算系统102的类型和/或预期用途(例如,车载计算系统102是否为独立的系统或是否并入到更大的车载信息娱乐系统中)。

(多个)网络104中的每一个网络可以被具体化为能够促进系统100的各种设备之间的通信的任何类型的通信网络。例如,网络104可以被配置成用于促进车载计算系统102与协调服务器108之间的(例如,不受阻碍地和/或经由安全通信信道)通信,并且另一个网络104可以被配置成用于促进协调服务器108与远程车载计算系统106之一之间的通信。在一些实施例中,假设到协调服务器108的上行链路是持久的(即,具有泛在网连接性)。如此,网络104中的每一个网络可以包括一个或多个网络、路由器、交换机、计算机和/或其它中间设备。例如,网络104可以被具体化为或以其他方式包括一个或多个蜂窝网络、电话网络、局域网或广域网、公共可用的全球网络(例如,互联网)、自组织网络、或其任何组合。

协调服务器108、证明服务器110和制造商服务器112中的每一者都可以被具体化为能够执行本文中所描述的功能的任何服务器或计算设备。进一步地,协调服务器108、证明服务器110和制造商服务器112中的每一者都可以包括与以上所描述的车载计算系统102的部件类似的部件和/或服务器中常见的部件(比如,处理器、存储器、i/o子系统、数据存储设备、外围设备等),为了描述的清晰起见,在图1中未展示所述部件。

如本文中所描述的,协调服务器108在车辆120、122之间协调对传感器信息的安全交换。在说明性实施例中,证明服务器110被具体化为系统100的设备/系统中的每一个设备/系统所信任的设备或系统,并且被配置成用于评估证明引用(例如,车载计算系统102、106和协调服务器108的证明引用)。也就是说,如以下所描述的,车载计算系统102、106或协调服务器108可以基于其相应的可信执行环境来生成证明引用,以便例如证明其正在实际可信执行环境或特定类型的可信执行环境中执行代码。如以下所讨论的,在说明性实施例中,可信执行环境被建立为因特尔软件防护扩展(sgx)安全飞地。换言之,在说明性实施例中,车载计算系统102(例如,安全协处理器158)分配存储器154的(或者不可由处理器150访问的安全存储器的)线性地址空间的被保护防止非飞地存储器访问(即,源自连续存储器区域之外的存储器访问)的连续区域用于执行与传感器数据的交换相关的指令。相应地,在这种实施例中,可以为了证明目的而生成sgx飞地引用。在其他实施例中,可以生成可信平台模块(tpm)引用或其他类型的信任引用,以供由证明服务器110进行评估。在评估证明引用时,证明服务器110可以利用例如历史安全信息、配额、阈值、安全参数、安全代码执行的测量结果、和/或相应可信执行环境的其他测量的特性。

如以上所讨论的,可以撤销配设给或以其他方式绑定至相应可信执行环境的tee密钥。在说明性实施例中,制造商服务器112对指示了已经撤销了哪些tee密钥的一个或多个撤销列表进行维护(例如,基于tee密钥的组标识)。应当理解的是,在一些实施例中,撤销列表允许制造商服务器112确定例如私钥撤销、基于签名的撤销和/或组公钥撤销。制造商服务器112可以周期性地更新撤销列表(例如,在初始tee密钥配设期间、基于对特定组中的成员的添加或移除、基于特定撤销等)。在一些实施例中,制造商服务器112可以充当用于提供各种密钥和/或证书(例如,epid密钥和证书)的撤销状态的在线证书状态协议(ocsp)应答器。例如,可以确定(多个)撤销列表(例如,私有撤销列表(priv-rl)、签名撤销列表(sig-rl)、组撤销列表(group-rl)、和/或其他撤销列表)上的密钥、签名和/或组的存在。进一步地,在一些实施例中,可以为了交互式证书/密钥存续检查而查询ocsp应答器。在一些实施例中,制造商服务器112和协调服务器108彼此通信,以便保持彼此被告知与tee密钥相关的变化。例如,如以上所指示的,协调服务器108可以确认从车辆120、122处接收的密钥签名仍有效(即,未被撤销)。在其他实施例中,制造商服务器112可以形成协调服务器108的一部分。

现在参照图2,在使用中,车载计算系统102建立用于交换车辆120的传感器信息的环境200。说明性环境200包括可信执行环境模块202和通信模块204。此外,可信执行环境模块202包括证明模块206和密码模块208。可信执行环境模块202、通信模块204、证明模块206、和密码模块208中的每一者都可以被具体化为硬件、软件、固件或其组合。例如,环境200的模块、逻辑和其他部件中的每一者都可以形成车载计算设备102的处理器150的一部分或以其他方式由其建立。

可信执行环境模块202在车载计算系统102上建立安全且可信的执行环境(例如,用于执行与传感器数据的交换相关的指令)。具体地,在说明性实施例中,可信执行环境模块202建立因特尔软件防护扩展(sgx)安全飞地。进一步地,在一些实施例中,安全协处理器158包括可信执行环境模块202。也就是说,可信执行环境模块202可以并入到安全协处理器158中或者以其他方式由其执行。在其他实施例中,可信执行环境模块202可以独立于安全协处理器158,并且/或者如以上所讨论的,可以其他方式建立可信执行环境。进一步地,在一些实施例中,tee密钥168可以存储在安全协处理器158中,并且可以仅由可信执行环境模块202访问。如以上所讨论的,可信执行环境模块202接收由传感器156生成的传感器数据(例如,通过硬件保护的i/o路径166),以供传输至协调服务器108,以便维持传感器数据的完整性。此外,可信执行环境模块202可以基于由传感器156生成的传感器数据和/或从协调服务器108处接收的传感器数据(即,远程车辆122生成的传感器数据)来执行某个动作。例如,如以上所讨论的,车载计算系统102可以执行某个躲避动作(例如,停止车辆120或减速)。

在说明性实施例中,可信执行环境模块202包括证明模块206和密码模块208。相应地,在一些实施例中,可以在车载计算系统102的可信执行环境中执行证明模块206和密码模块208的功能。证明模块206被配置成用于基于车载计算系统102的可信执行环境和/或安全协处理器158来生成证明引用。例如,证明模块206可以根据特定实施例来生成sgx安全飞地引用、tpm引用、和/或另一种类型的信任引用。应当理解的是,在一些实施例中,证明模块206对在可信执行环境(例如,安全飞地)中执行(或用于执行)的代码进行测量(例如,求哈希),以证明例如在可信执行环境中执行的代码的完整性。此外,在一些实施例中,证明模块206可以从协调服务器108处接收证明引用,并基于证明引用来确认协调服务器108和/或协调服务器108的相应可信执行环境的真实性。例如,证明模块206可以验证尚未对在可信执行环境中执行的代码进行变更。当然,如本文中所描述的,在一些实施例中,车载计算系统102可以与证明服务器110通信(例如,经由通信模块204),以便验证协调服务器108的证明引用。协调服务器108可以类似地利用证明服务器110来验证车载计算系统102的证明引用。

密码模块208对车载计算系统102执行各种密码功能。在一些实施例中,密码模块208可以被具体化为密码引擎、车载计算系统102的独立安全协处理器、并入处理器150中的密码加速器、或者独立的密码软件/固件。在一些实施例中,密码模块208可以与通信模块204协作,以便通过网络104来与远程设备(例如,协调服务器108)建立安全连接。例如,密码模块208可以对车载计算系统102与协调服务器108之间的通信进行加密和解密。在一些实施例中,密码模块208可以与协调服务器108或协调服务器108的部件(例如,相应安全协处理器)执行密钥交换。例如,密码模块208可以与协调服务器108执行迪菲-赫尔曼(diffie-hellman)密钥交换、和椭圆曲线迪菲-赫尔曼密钥交换、或另一种适当的密钥交换协议(例如,以便生成会话密钥)。

此外,密码模块208可以对外发通信进行密码签名。例如,密码模块208可以使用车载计算系统102的私有tee密钥168(例如,私有epid密钥)来对消息进行签名。在一些实施例中,密钥模块208还可以被配置成用于使用一个或多个适当的算法、函数或机制来生成哈希(例如,带密钥的哈希)。例如,如以下所讨论的,密码模块208可以基于例如在车载计算系统102与协调服务器108之间共享的会话密钥来生成消息的消息认证码(mac)。具体地,在一些实施例中,车载计算系统102可以执行如签名和mac(sign-and-mac,sigma)协议。换言之,在一些实施例中,车载计算系统102可以与协调服务器108建立sigma会话。进一步地,在一些实施例中,密码模块208可以生成证书(例如,epid证书),以供与经密码签名的通信一起传输。此外,在一些实施例中,密码模块208还可以验证传入消息的密码签名(例如,基于从如制造商服务器112和/或证书机构等相关方处接收的公共密钥)。

通信模块204通过(多个)网络104来处理车载计算系统102与远程计算设备(例如,协调服务器108)之间的通信。如本文中详细地讨论的,通信模块204被配置成用于在车载计算系统102的可信执行环境与协调服务器108的相应可信执行环境之间建立安全通信信道。具体地,在说明性实施例中,通信模块204在可信执行环境之间建立安全套接层(ssl)通信信道。此外,如以下所讨论的,通信模块204可以将传感器数据、证明引用、和/或tee密钥签名传输至协调服务器108。类似地,通信模块204可以从协调服务器108处接收由(多台)远程车辆122的传感器生成的传感器数据(例如,在协调服务器108验证传感器数据的完整性之后)。应当理解的是,车辆122中的每一台车辆的车载计算系统106可以包括模块并且可以执行与以上所描述的车辆120的车载计算系统102的动作类似的动作。

现在参照图3,在使用中,协调服务器108建立用于在车辆120、122之间或更具体地在车载计算系统102、106之间协调对传感器信息的交换的环境300。说明性环境300包括可信执行环境模块302、通信模块304、和传感器数据处理模块306。此外,可信执行环境模块302包括证明模块308和密码模块310。可信执行环境模块302、通信模块304、传感器数据处理模块306、证明模块308、和密码模块310中的每一者都可以被具体化为硬件、软件、固件或其组合。例如,环境300的模块、逻辑和其他部件中的每一者都可以形成协调服务器108的处理器的一部分或以其他方式由其建立。

在说明性实施例中,协调服务器108的环境300的可信执行环境模块302、通信模块304、证明模块308、和密码模块310与以上所讨论的车载计算系统102的环境200的相应模块类似。对环境200的那些部件的描述同样适用于对环境300的部件的描述,并且为了描述的清晰起见,本文中未对其全部内容进行重复。例如,可信执行环境模块302在协调服务器108上建立可信执行环境(例如,以便从车载计算系统102、106处安全地接收传感器数据)。进一步地,证明模块308被配置成用于基于协调服务器108的可信执行环境来生成证明引用,以供传输至车载计算系统102。此外,证明模块308可以从车载计算系统102处接收证明引用(即,车载计算系统102的可信执行环境的证明引用)并基于该证明引用来确认车载计算系统102或其相应可信执行环境的真实性。类似于车载计算系统102,在一些实施例中,协调服务器108可以与证明服务器110通信,以便验证证明引用。

密码模块310执行车载计算系统102的如以上关于密码模块208而讨论的密码功能等各种密码功能。进一步地,密码模块310可以验证从车载计算系统102处接收的tee密钥168签名。例如,如以上所讨论的,在一些实施例中,tee密钥168可以被具体化为epid密钥。相应地,在这种实施例中,密码模块310可以通过将公共epid密钥应用到经密码签名的通信上从而验证epid密钥签名。进一步地,在一些实施例中,协调服务器108可以从车载计算系统102处接收epid密钥证书(或其他适当的密钥证书),所述epid密钥证书可以用于验证epid密钥签名。此外,如以上所讨论的,密码模块310模块可以与制造商服务器112通信(即,经由通信模块304),以便验证尚未撤销车载计算系统102的tee密钥168签名(例如,epid密钥签名)。

传感器数据处理模块306被配置成用于处理从车载计算系统102、106处接收的传感器数据(例如,在已经验证传感器数据的安全性之后)。在一些实施例中,传感器数据处理模块306响应于验证从车载计算系统102处接收的证明引用和密钥签名以及验证密钥签名尚未被撤销而处理传感器数据。例如,传感器数据处理模块306可以判定将从车载计算系统102处接收的传感器数据传输到哪里(即,到其他哪些车载计算系统106)。这样做时,传感器数据处理模块306可以考虑例如从车载计算系统102处接收的任何指令、远程车载计算系统106的绝对和/或相对位置、和/或其他相关数据。

现在参照图4至图5,在使用中,车载计算系统102可以执行用于交换车辆120的传感器信息的方法400。具体地,车载计算系统102将由传感器156生成的传感器数据安全地传输至协调服务器108,所述传感器数据可以安全地转发至相关远程车辆122(例如,在车辆122附近)的车载计算系统106。如以上所讨论的,在一些实施例中,车载计算系统106可以执行与用于交换传感器信息(例如,用于将传感器数据传输至车载计算系统102)的方法400类似的方法。说明性方法400开始于框402,在所述框中,车载计算系统102判定可信执行环境(tee)密钥168是否已经被配设给车载计算系统102。在说明性实施例中,可信执行环境被绑定至车载计算系统102的可信执行环境或更一般地绑定至车辆120或车载计算系统102。如以上所讨论的,在车辆120的制造阶段期间,可以将tee密钥168(例如,私有epid密钥)配设给车载计算系统102或者车载计算系统102的特定部件(例如,安全协处理器158)。可替代地,稍后可以将tee密钥168配设给车载计算系统102。如此,如果车载计算系统102确定还未配设tee密钥,则在框404中,车载计算系统102将tee密钥168配设给车辆120。例如,车载计算系统102可以利用“加入”协议来使私有一到多密钥(例如,私有epid密钥)能够被配设给车辆120,从而使得私有密钥与关联于特定组(例如,车辆品牌/型号)的公共一到多密钥相对应。在一些实施例中,车载计算系统102可以利用英特尔可信连接服务和/或另一种适当的机制来例如将epid密钥配设给车辆120。

在框406中,车载计算系统102建立可信执行环境。如以上所指示的,在说明性实施例中,车载计算系统102建立要在其中执行与传感器数据的交换相关的指令的sgx保护的安全飞地。应当理解的是,车载计算系统102可以在任何适当的时间点(即,在将传感器数据转移到协调服务器108之前)建立可信执行环境。例如,在一些实施例中,车载计算系统102在车辆120点火时或者在车载计算系统102通电时建立可信执行环境。

在框408中,车载计算系统102建立与协调服务器108的安全通信信道。具体地,在说明性实施例中,车载计算系统102在车载计算系统102的可信执行环境与协调服务器108的相应可信执行环境之间建立安全通信信道。在一些实施例中,安全通信信道是ssl保护的通信信道;然而,可以在其他实施例中建立其他安全通信信道(例如,带外通信信道)。

在框410中,车载计算系统102确认协调服务器108的真实性。例如,在一些实施例中,车载计算系统102确认其正与真实的协调服务器108通信并验证其身份以及在协调服务器108上(例如,在可信执行环境中)运行的代码的完整性。具体地,在框412中,车载计算系统102从协调服务器108处接收证明引用。如以上所讨论的,在说明性实施例中,证明引用是协调服务器108的可信执行环境的测量结果。在一些实施例中,车载计算系统102响应于来自车载计算系统102的对协调服务器108是可信实体或更具体地协调服务器108正在可信执行环境(例如,sgx保护的飞地)中执行代码的证明的请求而从协调服务器108处接收证明引用。在框414中,车载计算系统102验证从协调服务器108处接收的证明引用。例如,可以将证明引用与参考数据进行比较,以便确定生成证明引用的设备/部件的安全性和/或真实性。这样做时,在框416中,车载计算系统102可以将证明引用传输至证明服务器110,所述证明服务器对证明引用进行分析。如以上所指示的,证明服务器110可以是能够对车载计算系统102和/或协调服务器108提供的证明引用进行评估的任何可信第三方服务器。当然,在一些实施例中,车载计算系统102可以利用不同的证明服务器110来验证证明引用。进一步地,在一些实施例中,车载计算系统102可能能够评估证明引用自身。在框418中,车载计算系统102从证明服务器110处接收指示协调服务器108,或更具体地,协调服务器108的可信执行环境是否安全的证明结果。

在框420中,车载计算系统102基于证明结果来判定协调服务器108是否真实和/或安全。若否,则在框422中,车载计算系统102执行错误处理程序。在一些实施例中,车载计算系统102可以确定错误是可纠正的并再次尝试确认协调服务器108的真实性、与协调服务器108建立新的安全通信信道、和/或以其他方式纠正错误。当然,在其他实施例中,错误可能是不可纠正的,在这种情况下,车载计算系统102可以终止方法400。

如果车载计算系统102确定协调服务器108是安全且真实的,则方法400前进到图5的框424,在所述框中,车载计算系统102判定是否从协调服务器108处接收数据。若是,则在框426中,车载计算系统102可以从协调服务器108处接收由其他远程车辆122的传感器生成的传感器数据。在一些实施例中,可以对传感器数据进行签名、加密和/或以其他方式通过安全通信信道来将其安全地传输至车载计算系统102。此外,在一些实施例中,车载计算系统102可以从协调服务器108处接收关于如何处理传感器数据的指令和/或要基于对远程车辆122传感器数据的分析来执行的动作。应当理解的是,在一些实施例中,协调服务器108判定何时以及在什么程度上将数据传输至车载计算系统102。

在框428中,车载计算系统102判定是否将传感器数据传输至协调服务器108。如以上所指示的,在说明性实施例中,如果车载计算系统102想要将传感器数据传输至另一个车载计算系统106,则协调服务器108充当用于保护数据的安全性的安全中介。如果车载计算系统102决定将传感器数据传输至协调服务器108,则在框430中,车载计算系统102从传感器156处接收传感器数据。在一些实施例中,在框432中,车载计算系统102可以通过硬件保护的i/o路径166来接收传感器数据。也就是说,在一些实施例中,在传感器156与可信执行环境(或安全协处理器158)之间建立硬件保护的i/o路径166,从而使得在传感器数据“到达”如以上所讨论的可信执行环境之前不能对其进行修改(例如,由病毒)。

在框434中,车载计算系统102生成车载计算系统102建立的可信执行环境的证明引用。例如,在一些实施例中,车载计算系统102可以生成安全飞地引用。进一步地,在框436中,车载计算系统102将传感器数据连同所生成的证明引用和tee密钥168签名传输至协调服务器108。应当理解的是,在一些实施例中,车载计算系统102与协调服务器108建立用于安全通信的sigma会话(例如,基于epid的sigma会话)。进一步地,车载计算系统102可以采用任何适当的方式来准备tee密钥168签名(例如,epid密钥签名)。例如,在一些实施例中,车载计算系统102使用tee密钥168来对证明引用和/或传感器数据进行密码签名,以便传输至协调服务器108。在其他实施例中,车载计算系统102可以对要连同证明引用和传感器数据一起传输的另一条信息进行密码签名。进一步地,在一些实施例中,车载计算系统102还可以将tee密钥168证书(例如,epid证书)传输至协调服务器108(例如,以便对tee密钥168签名进行验证)。如本文中所讨论的,协调服务器108验证密钥签名和证明引用,并且在成功验证后处理传感器数据。

不论车载计算系统102是否判定是否将传感器数据传输至协调服务器108,在框438中,车载计算系统102都可以基于(多台)车辆122的从协调服务器108处接收的传感器数据来执行某个动作。在一些实施例中,车载计算系统102可以结合由传感器156生成的数据而分析该传感器数据,以便判定例如车载计算系统102是否应当采取某个安全或防碰撞动作(例如,停止车辆120)。应当理解的是,根据特定实施例,车载计算系统102可以采用任何适当的顺序来将数据传输至协调服务器108或从协调服务器处接收数据。

现在参照图6至图7,在使用中,协调服务器108可以执行用于在车辆120、122之间交换传感器信息的方法600。尽管主要参照协调服务器108与车载计算系统102之间的通信来描述方法600,但是应当理解的是,协调服务器108可以采用类似的方式来与其他车载计算系统106通信。进一步地,尽管可以参照车辆120来讨论通信,但是协调服务器108可以更具体地与车辆120的车载计算系统102通信。说明性方法600开始于框602,在所述框中,如果协调服务器108尚未建立可信执行环境,则其可以这样做。在一些实施例中,协调服务器108在可信执行环境中执行一些或所有与传感器数据交换相关的指令。在框604中,协调服务器108建立与车辆120或更具体地如以上所描述的车载计算系统102的安全通信信道(例如,ssl通信信道)。

在框608中,协调服务器108向车辆120或车载计算系统102认证自己。如以上所讨论的,在一些实施例中,协调服务器108可以响应于来自车辆120的用于证明协调服务器108是可信/安全的实体和/或在可信执行环境(例如,sgx保护的飞地)中执行与传感器数据交换相关的指令的请求而这样做。这样做时,协调服务器108可以在框610中生成其可信执行环境的证明引用并在框612中将证明引用传输至车辆120。如以上所讨论的,车载计算系统102可以评估证明引用本身或将证明引用传输至证明服务器110,以供根据特定实施例来进行评估。

在框614中,协调服务器108判定是否将传感器数据传输至车辆120。若是,则在框616中,协调服务器108将从远程车辆122中的一台或多台远程车辆处接收的传感器数据传输至车辆120。应当理解的是,协调服务器108可以对各种特性(例如,相对位置数据、基于车辆的请求/指令等)进行分析,以便判定要向车辆120提供哪个传感器数据。例如,在一些实施例中,协调服务器108在车辆120的阈值距离内传输从车辆122处接收的所有传感器数据。进一步地,协调服务器108还可以向车辆120提供关于如何处理所传输的数据的指令、生成传感器数据的车辆122的身份、车辆122的相对位置、与传感器数据相关联的元数据、和/或其他相关信息。

在框618中,协调服务器108判定是否从车辆120处接收传感器数据。如以上所讨论的,若是,则方法600前进到图7的框620,在所述框中,协调服务器108从车辆120处接收传感器数据连同车辆120的可信执行环境的证明引用以及tee密钥168签名(例如,epid密钥签名)。进一步地,在一些实施例中,协调服务器108还可以从车辆120处接收密钥证书。在框622中,协调服务器108验证tee密钥168签名以及所述密钥/签名的撤销状态。这样做时,在框624中,协调服务器108可以检查制造商服务器112的(多个)撤销列表。如以上所讨论的,在一些实施例中,撤销列表允许制造商服务器112确定例如私钥撤销、基于签名的撤销和/或组公钥撤销。相应地,在说明性实施例中,协调服务器108判定用于对从车辆120处接收的密码签名消息进行签名的tee密钥168(例如,epid密钥)是否已经以任何方式被撤销。

在框626中,协调服务器108验证从车辆120处接收的证明引用。如以上所讨论的,这样做时,协调服务器108可以在框628中将证明引用传输至证明服务器110以供评估并且在框630中从证明服务器110处接收证明结果。在框632中,协调服务器108判定是否成功地进行了对tee密钥168签名和证明引用的验证,并确保签名尚未被撤销。如果未成功地进行所述验证之一或者tee密钥168签名不再有效(例如,由于撤销),则在框634中,协调服务器108执行错误处理程序。如果错误是不可纠正的,则协调服务器108可以终止方法600。然而,如果可以纠正错误,则方法600可以返回到例如图6的框614,在所述框中,协调服务器108判定是否将传感器数据传输至车辆120。

如果在框632中验证成功或者协调服务器108在框618中决定不接收传感器数据,则在框636中,协调服务器108处理所接收的传感器数据。例如,协调服务器108可以处理在框620中从车辆120处接收的传感器数据和/或之前从车辆120或其他车辆122处接收的传感器数据。这样做时,在框638中,协调服务器108在框636中可以将从车辆120处接收的传感器数据传输远程车辆122。应当理解的是,协调服务器108可以采用与确定向车辆120提供哪个传感器数据的方式类似的方式来确定将传感器数据传输至哪些车辆122(例如,基于地理位置等)。方法600返回到图6的框614,在所述框中,协调服务器108判定是否将传感器数据传输至车辆120。)。应当理解的是,根据特定实施例,协调服务器108可以采用任何适当的顺序来将数据传输至车辆120、122或从所述车辆处接收数据。

示例

以下提供了在本文中所公开的技术的说明性示例。所述技术的实施例可以包括以下所描述的示例中的任何一个或多个示例或者其任何组合。

示例1包括一种车辆的车载计算系统,用于安全地交换传感器信息,所述车载计算系统包括:传感器,所述传感器用于生成传感器数据;可信执行环境模块,所述可信执行环境模块用于在所述车载计算系统上建立可信执行环境,其中,私钥被绑定至所述可信执行环境;以及通信模块,所述通信模块用于在所述可信执行环境与协调服务器的相应的可信执行环境之间建立安全通信信道;其中,所述可信执行环境模块进一步用于:(i)确认所述协调服务器的真实性;(ii)从所述传感器处接收所述传感器数据;(iii)基于所述车载计算系统的所述可信执行环境来生成证明引用;以及(iv)通过所述安全通信信道并由所述通信模块向所述协调服务器传输所述传感器数据、所述证明引用以及用所述私钥签名的经密码签名的通信。

示例2包括如示例1所述的主题,并且其中,建立所述可信执行环境包括:分配所述车载计算系统的存储器的线性地址空间的连续区域用于执行多条指令,所述连续区域受保护而免受源自所述连续区域之外的存储器访问。

示例3包括如示例1和2中任一项所述的主题,并且其中,建立所述安全通信信道包括:在所述车载计算系统的所述可信执行环境与所述协调服务器的所述相应的可信执行环境之间建立安全套接层信道。

示例4包括如示例1至3中任一项所述的主题,并且其中,确认所述协调服务器的真实性包括:基于所述协调服务器的所述相应的可信执行环境,从所述协调服务器处接收证明引用;以及验证所述证明引用。

示例5包括如示例1至4中任一项所述的主题,并且其中,验证所述证明引用包括:将所述证明引用传输至证明服务器;以及响应于传输所述证明引用而从所述证明服务器处接收指示所述协调服务器的所述可信执行环境是否安全的证明结果。

示例6包括如示例1至5中任一项所述的主题,并且其中,确认所述协调服务器的真实性包括:验证在所述协调服务器的所述相应的可信执行环境中执行的代码的完整性。

示例7包括如示例1至6中任一项所述的主题,并且进一步包括主处理器以及不同于所述主处理器的安全协处理器,其中,建立所述可信执行环境包括:在所述车载计算系统的所述安全协处理器上建立可信执行环境;其中,接收所述传感器数据包括:由所述车载计算系统的所述可信执行环境通过在所述安全协处理器与所述传感器之间的硬件保护的输入输出路径来接收所述传感器数据;并且其中,所述私钥被绑定至所述安全协处理器。

示例8包括如示例1至7中任一项所述的主题,并且其中,所述经密码签名的通信包括所述传感器数据或所述证明引用中的至少一项。

示例9包括如示例1至8中任一项所述的主题,并且其中,所述通信模块进一步用于:从所述协调服务器处并通过所述安全通信信道来接收由远程车辆生成的传感器数据。

示例10包括如示例1至9中任一项所述的主题,并且其中,所述可信执行环境模块进一步用于:基于由所述车辆的所述传感器生成的传感器数据以及由所述远程车辆生成的传感器数据来执行动作。

示例11包括如示例1至10中任一项所述的主题,并且其中,所述私钥被配设给所述可信执行环境。

示例12包括如示例1至11中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥。

示例13包括一种由车载计算系统安全地交换传感器信息的方法,所述方法包括:由所述车载计算系统在所述车载计算系统上建立可信执行环境;由所述车载计算系统在所述可信执行环境与协调服务器的相应的可信执行环境之间建立安全通信信道;由所述可信执行环境确认所述协调服务器的真实性;由所述可信执行环境接收所述车辆的传感器所生成的传感器数据;由所述可信执行环境基于所述车载计算系统的所述可信执行环境来生成证明引用;以及通过所述安全通信信道并且响应于确认所述协调服务器的真实性而从所述车载计算系统向所述协调服务器传输:(i)所述传感器数据;(ii)所述证明引用;以及(iii)用绑定至所述车载计算系统的所述可信执行环境的私钥签名的经密码签名的通信。

示例14包括如示例13所述的主题,并且其中,建立所述可信执行环境包括:分配所述车载计算系统的存储器的线性地址空间的连续区域用于执行多条指令,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例15包括如示例13和14中任一项所述的主题,并且其中,建立所述安全通信信道包括:在所述车载计算系统的所述可信执行环境与所述协调服务器的所述相应的可信执行环境之间建立安全套接层信道。

示例16包括如示例13至15中任一项所述的主题,并且其中,确认所述协调服务器的真实性包括:基于所述协调服务器的所述相应的可信执行环境,从所述协调服务器处接收证明引用;以及验证所述证明引用。

示例17包括如示例13至16中任一项所述的主题,并且其中,验证所述证明引用包括:将所述证明引用传输至证明服务器;以及响应于传输所述证明引用而从所述证明服务器处接收指示所述协调服务器的所述可信执行环境是否安全的证明结果。

示例18包括如示例13至17中任一项所述的主题,并且其中,确认所述协调服务器的真实性包括:验证在所述协调服务器的所述相应可信执行环境中执行的代码的完整性。

示例19包括如示例13至18中任一项所述的主题,并且其中,建立所述可信执行环境包括:在所述车载计算系统的安全协处理器上建立可信执行环境;接收所述传感器数据包括:由所述车载计算系统的所述可信执行环境通过在所述安全协处理器与所述传感器之间的硬件保护的输入输出路径来接收所述传感器数据;并且所述私钥被绑定至所述安全协处理器。

示例20包括如示例13至19中任一项所述的主题,并且其中,所述经密码签名的通信包括所述传感器数据或所述证明引用中的至少一项。

示例21包括如示例13至20中任一项所述的主题,并且进一步包括:由所述车载计算系统并通过所述安全通信信道从所述协调服务器处接收由远程车辆生成的传感器数据。

示例22包括如示例13至21中任一项所述的主题,并且进一步包括:由所述车载计算系统基于由所述车辆的所述传感器生成的传感器数据以及由所述远程车辆生成的传感器数据来执行动作。

示例23包括如示例13至22中任一项所述的主题,并且进一步包括将所述私钥配设给所述可信执行环境。

示例24包括如示例13至23中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥。

示例25包括一种计算设备,所述计算设备包括:处理器;以及存储器,所述存储器具有存储于其中的多条指令,所述指令当由所述处理器执行时使所述计算设备执行如示例13至24中任一项所述的方法。

示例26包括一种或多种机器可读存储介质,包括存储于其上的多条指令,所述指令响应于由计算设备执行而使所述计算设备执行如示例13至24中任一项所述的方法。

示例27包括一种车辆的车载计算系统,用于安全地交换传感器信息,所述车载计算系统包括:用于在所述车载计算系统上建立可信执行环境的装置;用于在所述可信执行环境与协调服务器的相应的可信执行环境之间建立安全通信信道的装置;用于由所述可信执行环境确认所述协调服务器的真实性的装置;用于由所述可信执行环境接收由所述车辆的传感器生成的传感器数据的装置;用于由所述可信执行环境基于所述车载计算系统的所述可信执行环境来生成证明引用的装置;以及用于通过所述安全通信信道并且响应于确认所述协调服务器的真实性而将以下各项传输至所述协调服务器的装置:(i)所述传感器数据;(ii)所述证明引用;以及(iii)用绑定至所述车载计算系统的所述可信执行环境的私钥签名的经密码签名的通信。

示例28包括如示例27所述的主题,并且其中,用于建立所述可信执行环境的所述装置包括:用于分配所述车载计算系统的存储器的线性地址空间的连续区域用于执行多条指令的装置,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例29包括如示例27和28中任一项所述的主题,并且其中,用于建立所述安全通信信道的所述装置包括:用于在所述车载计算系统的所述可信执行环境与所述协调服务器的所述相应的可信执行环境之间建立安全套接层信道的装置。

示例30包括如示例27至29中任一项所述的主题,并且其中,用于确认所述协调服务器的真实性的所述装置包括:用于基于所述协调服务器的所述相应的可信执行环境从所述协调服务器处接收证明引用的装置;以及用于验证所述证明引用的装置。

示例31包括如示例27至30中任一项所述的主题,并且其中,用于验证所述证明引用的所述装置包括:用于将所述证明引用传输至证明服务器的装置;以及用于响应于传输所述证明引用而从所述证明服务器处接收指示所述协调服务器的所述可信执行环境是否安全的证明结果的装置。

示例32包括如示例27至31中任一项所述的主题,并且其中,用于确认所述协调服务器的真实性的所述装置包括:用于验证在所述协调服务器的所述相应可信执行环境中执行的代码的完整性的装置。

示例33包括如示例27至32中任一项所述的主题,并且其中,用于建立所述可信执行环境的所述装置包括:用于在所述车载计算系统的安全协处理器上建立可信执行环境的装置;用于接收所述传感器数据的所述装置包括:用于由所述车载计算系统的所述可信执行环境通过在所述安全协处理器与所述传感器之间的硬件保护的输入-输出路径来接收所述传感器数据的装置;并且所述私钥被绑定至所述安全协处理器。

示例34包括如示例27至33中任一项所述的主题,并且其中,所述经密码签名的通信包括所述传感器数据或所述证明引用中的至少一项。

示例35包括如示例27至34中任一项所述的主题,并且进一步包括:用于通过所述安全通信信道从所述协调服务器处接收由远程车辆生成的传感器数据的装置。

示例36包括如示例27至35中任一项所述的主题,并且进一步包括:用于基于由所述车辆的所述传感器生成的传感器数据以及由所述远程车辆生成的传感器数据来执行动作的装置。

示例37包括如示例27至36中任一项所述的主题,并且进一步包括:用于将所述私钥配设给所述可信执行环境的装置。

示例38包括如示例27至37中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥。

示例39包括一种用于安全地交换传感器信息的本地计算设备,所述本地计算设备包括:传感器,所述传感器用于生成传感器数据;可信执行环境模块,所述可信执行环境模块用于在本地计算设备上建立可信执行环境,其中,私钥被绑定至所述可信执行环境;以及通信模块,所述通信模块用于在所述可信执行环境与协调服务器的相应可信执行环境之间建立安全通信信道;其中,所述可信执行环境模块进一步用于:(i)确认所述协调服务器的真实性;(ii)从所述传感器处接收所述传感器数据;(iii)基于所述本地计算设备的所述可信执行环境来生成证明引用;以及(iv)通过所述安全通信信道并由所述通信模块向所述协调服务器传输所述传感器数据、所述证明引用、以及用所述私钥签名的密码签名通信。

示例40包括如示例39所述的主题,并且其中,建立所述可信执行环境包括:分配所述本地计算设备的存储器的线性地址空间的连续区域用于执行多条指令,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例41包括如示例39和40中任一项所述的主题,并且其中,确认所述协调服务器的真实性包括:基于所述协调服务器的所述相应的可信执行环境,从所述协调服务器处接收证明引用;以及验证所述证明引用。

示例42包括如示例39至41中任一项所述的主题,并且其中,所述通信模块进一步用于:从所述协调服务器处接收由远程车辆生成的传感器数据;并且所述可信执行环境模块进一步用于:基于由所述本地计算设备的所述传感器生成的传感器数据以及由所述远程计算设备生成的传感器数据来执行动作。

示例43包括如示例39至42中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥。

示例44包括一种由本地计算设备安全地交换传感器信息的方法,所述方法包括:由所述本地计算设备在所述本地计算设备上建立可信执行环境;由所述本地计算设备在所述可信执行环境与协调服务器的相应的可信执行环境之间建立安全通信信道;由所述可信执行环境确认所述协调服务器的真实性;由所述可信执行环境接收所述本地计算设备的传感器生成的传感器数据;由所述可信执行环境基于所述本地计算设备的所述可信执行环境来生成证明引用;以及通过所述安全通信信道并且响应于确认所述协调服务器的真实性而从所述本地计算设备向所述协调服务器传输:(i)所述传感器数据;(ii)所述证明引用;以及(iii)用绑定至所述本地计算设备的所述可信执行环境的私钥签名的经密码签名的通信。

示例45包括如示例44所述的主题,并且其中,建立所述可信执行环境包括:分配所述车载计算系统的存储器的线性地址空间的连续区域用于执行多条指令,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例46包括如示例44和45中任一项所述的主题,并且其中,确认所述协调服务器的真实性包括:基于所述协调服务器的所述相应可信执行环境,从所述协调服务器处接收证明引用;以及验证所述证明引用。

示例47包括如示例44至46中任一项所述的主题,并且进一步包括:由所述本地计算设备并从所述协调服务器处接收由远程计算设备生成的传感器数据;以及由所述本地计算设备基于由所述本地计算设备的所述传感器生成的传感器数据以及由所述远程计算设备生成的传感器数据来执行动作。

示例48包括如示例44至47中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥。

示例49包括一种计算设备,所述计算设备包括:处理器;以及存储器,所述存储器具有存储于其中的多条指令,所述指令当由所述处理器执行时使所述计算设备执行如示例44至48中任一项所述的方法。

示例50包括一种或多种机器可读存储介质,包括存储于其上的多条指令,所述指令响应于由计算设备执行而使所述计算设备执行如示例44至48中任一项所述的方法。

示例51包括一种用于安全地交换传感器信息的本地计算设备,所述本地计算设备包括:用于在所述本地计算设备上建立可信执行环境的装置;用于在所述可信执行环境与协调服务器的相应的可信执行环境之间建立安全通信信道的装置;用于由所述可信执行环境确认所述协调服务器的真实性的装置;用于由所述可信执行环境接收由所述本地计算设备的传感器生成的传感器数据的装置;用于由所述可信执行环境基于所述本地计算设备的所述可信执行环境来生成证明引用的装置;以及用于通过所述安全通信信道并且响应于确认所述协调服务器的真实性而向所述协调服务器传输以下各项的装置:(i)所述传感器数据;(ii)所述证明引用;以及(iii)使用绑定至所述本地计算设备的所述可信执行环境的私钥来签名的经密码签名的通信。

示例52包括如示例51所述的主题,并且其中,用于建立所述可信执行环境的所述装置包括:用于分配所述车载计算系统的存储器的线性地址空间的连续区域用于执行多条指令的装置,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例53包括如示例51和52中任一项所述的主题,并且其中,用于确认所述协调服务器的真实性的所述装置包括:用于基于所述协调服务器的所述相应的可信执行环境从所述协调服务器处接收证明引用的装置;以及用于验证所述证明引用的装置。

示例54包括如示例51至53中任一项所述的主题,并且进一步包括:用于从所述协调服务器处接收由远程计算设备生成的传感器数据的装置;以及用于基于由所述本地计算设备的所述传感器生成的传感器数据以及由所述远程计算设备生成的传感器数据来执行动作的装置。

示例55包括如示例51至54中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥。

示例56包括一种用于在车辆之间协调对传感器信息的安全交换的协调服务器,所述协调服务器包括:可信执行环境模块,所述可信执行环境模块用于:(i)在所述协调服务器上建立可信执行环境以及(ii)基于所述协调服务器的所述可信执行环境生成服务器证明引用;通信模块,所述通信模块用于:(i)在所述可信执行环境与车辆的车载计算系统的相应的可信执行环境之间建立安全通信信道;(ii)通过所述安全通信信道将所述服务器证明引用传输至所述车载计算系统;以及(iii)通过所述安全通信信道从所述车载计算系统处接收由所述车辆的传感器生成的传感器数据、基于所述车载计算系统的所述相应的可信执行环境的车辆证明引用、以及用绑定至所述车载计算系统的所述可信执行环境的私钥签名的经密码签名的通信;其中,所述可信执行环境模块进一步用于验证:(i)所述车辆证明引用;(ii)与所述经密码签名的通信相关联的所述私钥;以及(iii)所述私钥的撤销状态;以及传感器数据处理模块,所述传感器数据处理模块用于:响应于验证了所述车辆证明引用和所述私钥以及确定了所述私钥尚未被撤销而处理所述传感器数据。

示例57包括如示例56所述的主题,并且其中,处理所述传感器数据包括:将所述传感器数据传输至远程车辆的第二车载计算系统。

示例58包括如示例56和57中任一项所述的主题,并且其中,验证所述车辆证明引用包括:将所述车辆证明引用传输至证明服务器;以及响应于传输所述车辆证明引用而从所述证明服务器处接收指示所述车载计算系统的所述可信执行环境是否安全的证明结果。

示例59包括如示例56至58中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥;并且其中,验证所述私钥包括:将所述公共增强隐私标识密钥应用于所述经密码签名的通信。

示例60包括如示例56至59中任一项所述的主题,并且其中,验证所述私钥的所述撤销状态包括:将所述私钥与制造商服务器的撤销列表进行比较。

示例61包括如示例56至60中任一项所述的主题,并且其中,建立所述可信执行环境包括:分配所述协调服务器的存储器的线性地址空间的连续区域用于执行多条指令,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例62包括一种用于由协调服务器在车辆之间协调对传感器信息的安全交换的方法,所述方法包括:由所述协调服务器在所述协调服务器上建立可信执行环境;由所述协调服务器在所述可信执行环境与车辆的车载计算系统的相应的可信执行环境之间建立安全通信信道;由所述协调服务器基于所述协调服务器的所述可信执行环境生成服务器证明引用;由所述协调服务器并通过所述安全通信信道将所述服务器证明引用传输至所述车载计算系统;由所述协调服务器并从所述车载计算系统处通过所述安全通信信道接收:(i)所述车辆的传感器生成的传感器数据;(ii)基于所述车载计算系统的所述相应的可信执行环境的车辆证明引用;以及(iii)用绑定至所述车载计算系统的所述可信执行环境的私钥签名的经密码签名的通信;由所述协调服务器验证:(i)所述车辆证明引用;(ii)与所述经密码签名的通信相关联的所述私钥;以及(iii)所述私钥的撤销状态;以及由所述协调服务器响应于验证了所述车辆证明引用和所述私钥以及确定了所述私钥尚未被撤销而处理所述传感器数据。

示例63包括如示例62所述的主题,并且其中,处理所述传感器数据包括:将所述传感器数据传输至远程车辆的第二车载计算系统。

示例64包括如示例62和63中任一项所述的主题,并且其中,验证所述车辆证明引用包括:将所述车辆证明引用传输至证明服务器;以及响应于传输所述车辆证明引用而从所述证明服务器处接收指示所述车载计算系统的所述可信执行环境是否安全的证明结果。

示例65包括如示例62至64中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥;并且其中,验证所述私钥包括:将所述公共增强隐私标识密钥应用到所述经密码签名的通信上。

示例66包括如示例62至65中任一项所述的主题,并且其中,验证所述私钥的所述撤销状态包括:将所述私钥与制造商服务器的撤销列表进行比较。

示例67包括如示例62至66中任一项所述的主题,并且其中,建立所述可信执行环境包括:分配所述协调服务器的存储器的线性地址空间的连续区域用于执行多条指令,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

示例68包括一种计算设备,所述计算设备包括:处理器;以及存储器,所述存储器具有存储于其中的多条指令,所述指令当由所述处理器执行时使所述计算设备执行如示例62至67中任一项所述的方法。

示例69包括一种或多种机器可读存储介质,包括存储于其上的多条指令,所述指令响应于由计算设备执行而使所述计算设备执行如示例62至67中任一项所述的方法。

示例70包括一种用于在车辆之间协调对传感器信息的安全交换的协调服务器,所述协调服务器包括:用于在所述协调服务器上建立可信执行环境的装置;用于在所述可信执行环境与车辆的车载计算系统的相应的可信执行环境之间建立安全通信信道的装置;用于基于所述协调服务器的所述可信执行环境生成服务器证明引用的装置;用于通过所述安全通信信道将所述服务器证明引用传输至所述车载计算系统的装置;用于通过所述安全通信信道从所述车载计算系统处接收以下各项的装置:(i)所述车辆的传感器生成的传感器数据;(ii)基于所述车载计算系统的所述相应可信执行环境的车辆证明引用;以及(iii)用绑定至所述车载计算系统的所述可信执行环境的私钥签名的经密码签名的通信;用于验证以下各项的装置:(i)所述车辆证明引用;(ii)与所述经密码签名的通信相关联的所述私钥;以及(iii)所述私钥的撤销状态;以及用于响应于验证了所述车辆证明引用和所述私钥以及确定了所述私钥尚未被撤销而处理所述传感器数据的装置。

示例71包括如示例70所述的主题,并且其中,用于处理所述传感器数据的所述装置包括:用于将所述传感器数据传输至远程车辆的第二车载计算系统的装置。

示例72包括如示例70和71中任一项所述的主题,并且其中,用于验证所述车辆证明引用的所述装置包括:用于将所述车辆证明引用传输至证明服务器的装置;以及用于响应于传输所述车辆证明引用而从所述证明服务器处接收指示所述车载计算系统的所述可信执行环境是否安全的证明结果的装置。

示例73包括如示例70至72中任一项所述的主题,并且其中,所述私钥是与可由所述协调服务器访问的公共增强隐私标识密钥相对应的私有增强隐私标识密钥;并且其中,用于验证所述私钥的装置包括:用于将所述公共增强隐私标识密钥应用到所述经密码签名的通信上的装置。

示例74包括如示例70至73中任一项所述的主题,并且其中,用于验证所述私钥的所述撤销状态的所述装置包括:用于将所述私钥与制造商服务器的撤销列表进行比较的装置。

示例75包括如示例70至74中任一项所述的主题,并且其中,用于建立所述可信执行环境的所述装置包括:用于分配所述协调服务器的存储器的线性地址空间的连续区域用于执行多条指令的装置,所述连续区域受保护而免受源自所述连续区域外部的存储器访问。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1