CN107145324A - 用于连接的应用安全的安全隧道 - Google Patents
用于连接的应用安全的安全隧道 Download PDFInfo
- Publication number
- CN107145324A CN107145324A CN201710118072.XA CN201710118072A CN107145324A CN 107145324 A CN107145324 A CN 107145324A CN 201710118072 A CN201710118072 A CN 201710118072A CN 107145324 A CN107145324 A CN 107145324A
- Authority
- CN
- China
- Prior art keywords
- application
- calculating platform
- certificate
- vehicle
- mobile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000006870 function Effects 0.000 claims abstract description 66
- 230000004044 response Effects 0.000 claims abstract description 23
- 238000000034 method Methods 0.000 claims description 21
- 238000003860 storage Methods 0.000 claims description 8
- 238000012790 confirmation Methods 0.000 claims 1
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000004891 communication Methods 0.000 description 40
- 238000012545 processing Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 11
- 230000006855 networking Effects 0.000 description 10
- 230000033001 locomotion Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000003442 weekly effect Effects 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000001172 regenerating effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 206010022000 influenza Diseases 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
- G06F3/167—Audio in a user interface, e.g. using voice commands for navigating, audio feedback
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/029—Firewall traversal, e.g. tunnelling or, creating pinholes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/06—Authentication
- H04W12/069—Authentication using certificates or pre-shared keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/08—Access security
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/84—Vehicles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/44—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
- H04W4/48—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
Abstract
本公开提供了一种用于连接的应用安全的安全隧道。车辆的技术平台可从访问安全车辆功能的移动应用接收用于创建计算平台与移动装置之间的安全隧道的请求;从移动应用获得应用证书;使用应用证书和来自计算平台的本地策略表的模块证书来验证安全隧道的创建。连接到车辆的计算平台的移动装置可执行请求安全车辆功能的移动应用;响应于移动应用对安全车辆功能的访问,发送用于创建与计算平台的安全隧道的请求;将与移动应用相应的应用证书发送到计算平台以验证安全隧道的创建。
Description
技术领域
本公开的各方面总体上涉及使用用于连接的应用安全的安全隧道(securetunnel)。
背景技术
车辆可允许第三方移动应用将语音命令集成到车辆的人机界面(HMI)中。通过这样做,第三方应用可经由车辆的HMI来控制。然而,一些第三方应用可能不适合在车辆运动时使用,或者可能根据政府规定而被限制。
发明内容
在第一说明性实施例中,一种系统包括:车辆的计算平台,被配置为从执行访问安全功能的移动应用的移动装置接收用于创建计算平台与移动装置之间的安全隧道的请求;从移动应用获得应用证书;使用应用证书和存储在计算平台的本地策略表中的模块证书来验证(validate)安全隧道的创建。
在第二说明性实施例中,一种系统包括:移动装置,连接到车辆的计算平台,并且被配置为:执行请求安全功能的移动应用;响应于移动应用对安全功能的访问,发送用于创建与计算平台的安全隧道的请求;将与移动应用相应的应用证书发送到计算平台以验证安全隧道的创建。
在第三说明性实施例中,一种方法包括:由连接到计算平台的移动装置发送用于创建与计算平台的安全隧道的请求以执行请求安全功能的移动应用;接收使用存储在移动装置中的应用证书和存储在计算平台的本地策略表中的模块证书执行的对与计算平台的安全隧道的验证。
根据本发明的一个实施例,应用证书与移动应用的应用标识符对应,并且所述方法还包括:将应用证书发送到计算平台以验证所述应用标识符以及所述应用标识符尚未过期。
根据本发明的一个实施例,所述方法还包括:将针对应用证书的证书请求发送到远程服务器,其中,所述请求包括移动应用的应用标识符和移动应用的名称;从远程服务器接收证书响应,其中,所述证书响应包括包含了应用证书的加密的块;利用移动装置的解密库来使用密钥对应用证书解密。
根据本发明的一个实施例,所述方法还包括:以加密的形式将应用证书保存在移动装置的存储器中。
附图说明
图1示出被配置为将远程信息处理服务提供给车辆的系统的示例图;
图2示出应用策略架构的示例图;
图3示出由移动装置执行的移动应用利用与车辆的计算平台的安全隧道的示例图;
图4示出移动应用请求应用证书的示例图;
图5示出用于更新主策略表的示例处理;
图6示出用于由应用远程管理系统产生证书的示例处理;
图7示出用于更新车辆的本地策略表的示例处理;
图8示出用于移动装置请求移动应用的应用证书的示例处理;
图9示出用于使用本地策略表和移动应用的许可控制的证书的示例处理。
具体实施方式
根据需要,这里公开了本发明的具体实施例。然而,将理解的是,公开的实施例仅是本发明的示例,其中,本发明可以以各种替代形式来实现。附图不必按比例绘制;一些特征可被放大或最小化以示出特定组件的细节。因此,这里公开的特定结构和功能细节不应被解释为具有限制性,而仅仅作为用于教导本领域技术人员以多种方式利用本发明的代表性基础。
由连接到车辆的移动装置执行的移动应用可使用车辆的功能。在示例中,用户可执行移动电话上的导航应用,其中,在车辆HMI中将该应用显示给用户。当移动应用访问车辆功能时,车辆可使用一个或更多个安全机制来认证应用。例如,每个应用可与应用标识符相关联,并且车辆可验证应用标识符被包括在允许与车辆通信的应用的标识符的列表上。作为另一可能的情况,每个应用可与该应用被授权的特定应用编程接口(API)调用相关联,并且车辆可验证该应用发送给车辆的命令,以确保该应用正在进行被指示为可允许的API调用。
当应用在车辆中向车辆计算系统注册时,该应用将应用标识符提供给车辆。车辆计算系统随后可检查从服务器下载到车辆计算平台的策略表以识别与提供的应用标识符相关联的应用策略。应用策略可指示该应用是否被允许使用车辆HMI而运行,如果允许,则车辆计算系统向应用授权相应的API许可。如果策略表文件不包含针对应用标识符的策略许可,则车辆计算系统可向服务器请求策略表文件更新。由服务器提供的更新的策略表文件可包括更新的策略许可以及其它应用信息。
在一些情况下,移动应用可请求对一个或更多个安全车辆功能的访问。安全车辆功能的示例可包括访问车辆的音频或视频的功能,诸如将信息显示到车辆屏幕、通过车辆音频系统提供音频、使用来自车载麦克风的数据或计算平台的其它媒体功能。作为一些其它示例,安全车辆功能可包括对车辆诊断(诸如发动机数据)的访问、将信息写入车辆或对包括个人可识别信息(诸如车辆位置)的数据的访问。作为更进一步的示例,安全车辆功能可包括对于移动支付、自主驾驶、车辆解锁、车辆启动、驾乘共享(riding sharing)、微出租(micro-rental)以及移动装置的用户的个性化设置的访问中的一个或更多个的认证。
车辆计算平台还可通过提供双向传输层安全以使用移动应用认证车辆计算平台来保护安全车辆功能的使用。传输层安全可包括与由移动装置执行的应用对应的应用证书以及与车辆计算平台的计算模块对应的模块证书。
应用可向远程服务器请求应用证书。在示例中,应用可在对证书或令牌的请求中将其应用标识符和名称发送到服务器。响应于所述请求,服务器可发送应用证书并且应用可接收应用证书。为了保护应用证书的安全,服务器可使用存储到移动应用和服务器的对称密钥来对应用证书进行编码,并且应用可使用该密钥对应用证书进行解密。可按预定义的时限时间(例如,每日、每月、每周等)产生应用证书,在该时限时间之后,证书过期,应用可被要求向服务器请求新的证书。在一些情况下,服务器可预先产生更新的证书,以允许在当前应用证书过期之前更新的证书可用于下载。
在策略表中,策略服务器还可包括与车辆计算系统的标识符相关联的模块证书。在示例中,策略表可包括与计算模块或远程信息处理控制单元的模块序列号对应的模块证书。还可用预定义的时限时间(例如,每月、每周等)产生模块证书,在该时限时间之后,车辆可被要求向服务器请求新的模块证书。
当应用被执行时,应用可请求使用安全车辆功能。例如,应用可请求使用车辆的音频或视频服务。如果是这样,应用请求创建车辆与移动装置之间的安全隧道。当应用证书和模块证书两者都有效并且未过期时,安全隧道可由计算平台来验证。一旦验证,则安全隧道可被用于以安全、加密的方式在移动装置和车辆之间传输数据。安全隧道可相应地向应用与车辆之间的通信提供附加移动应用认证和安全。以下将详细讨论本公开的其它方面。
图1示出被配置为向车辆102提供远程信息处理服务的系统100的示例图。车辆102可包括各种类型的载客车辆,诸如跨界多功能车(CUV)、运动多功能车(SUV)、卡车、休旅车(RV)、船、飞机或用于运送人或货物的其它移动机器。作为一些非限制性可行方式,远程信息处理服务可包括导航、逐向导航、车辆健康报告、本地商务搜索、事故报告和免提通话。在示例中,系统100可包括由密歇根州的迪尔伯恩市的福特汽车公司制造的SYNC系统。应当注意,示出的系统100仅是示例,并且可使用更多、更少和/或不同位置的元件。
计算平台104可包括被配置为执行支持这里所描述的处理的指令、命令和其它例程的一个或更多个处理器106。例如,计算平台104可被配置为执行车辆应用110的指令以提供诸如导航、事故报告、卫星无线电解码和免提通话的功能。可使用各种类型的计算机可读存储介质112以非易失性方式来保存这样的指令和其它数据。计算机可读介质112(也被称为处理器可读介质或存储器)包括参与提供可由计算平台104的处理器106读取的指令或其它数据的任何非暂时性介质(例如,有形介质)。计算机可执行指令可从计算机程序被编译或解释,其中,计算机程序是使用各种编程语言和/或技术(包括但不限于Java、C、C++、C#、Objective C、Fortran、Pascal、Java Script、Python、Perl和PL/SQL中的一种或它们的组合)而创建的。
计算平台104可设置有允许车辆乘员与计算平台104交互的各种功能。例如,计算平台104可包括被配置为通过连接的麦克风116从车辆乘员接收语音命令的音频输入114以及被配置为从连接的装置接收音频信号的辅助音频输入118。辅助音频输入118可以是物理连接(诸如电线或光纤线缆)或无线输入(诸如蓝牙音频连接)。在一些示例中,音频输入114可被配置为提供音频处理能力(诸如低电平信号的前置放大)以及模拟输入到数字数据的转换以供处理器106处理。
计算平台104还可将一个或更多个音频输出120提供给具有音频回放功能的音频输块122的输入。在其它示例中,计算平台104可通过使用一个或更多个专用扬声器(未示出)将音频输出提供给乘员。音频模块122可包括被配置为将音频内容从选择的音频源126提供给音频放大器128以通过车辆扬声器130或耳机(未示出)回放的输入选择器124。作为一些示例,音频源126可包括解码的调幅(AM)或调频(FM)无线电信号以及来自致密盘(CD)或数字通用盘(DVD)音频回放的音频信号。音频源126还可包括从计算平台104接收到的音频,诸如由计算平台104产生的音频内容、从与计算平台104的通用串行总线(USB)子系统132连接的闪存驱动器解码的音频内容以及来自辅助音频输入118的通过计算平台104的音频内容。
计算平台104可利用语音接口134将免提接口提供给计算平台104。语音接口134可支持根据与可用命令相关的语法对经由麦克风116接收到的音频进行语音识别以及经由音频模块122输出的语音提示产生。相比于输入的语音,语音接口134可利用使用该语法的概率语音识别技术。在许多情况下,语音接口134可包括供语音识别功能使用的标准用户配置文件调整以使语音识别被调整为平均提供良好的结果,从而为最大数量的初始用户产生积极的体验。在一些情况下,系统可被配置为在准备好由计算平台提供音频提示并且另一音频源126被选择用于回放时暂时静音或以其它方式超驰由输入选择器124指定的音频源。
计算平台104还可从被配置为提供与车辆102的乘员交互的人机界面(HMI)控制件136接收输入。例如,计算平台104可与被配置为调用计算平台104上的功能的一个或更多个按钮或其它HMI控制件(例如,方向盘音频按钮、即按即说按钮、仪表板控制件)交互。计算平台104还可通过视频控制器140驱动一个或更多个显示器138或与一个或更多个显示器138通信,其中,一个或更多个显示器138被配置为将可视输出提供给车辆乘员。在一些情况下,显示器138可以是进一步被配置为经由视频控制器140接收用户触摸输入的触摸屏,而在其它情况下,显示器138可以仅是不具有触摸输入能力的显示器。
计算平台104还可被配置为经由一个或更多个车载网络142与车辆102的其它组件通信。作为一些示例,车载网络142可包括车辆控制器局域网(CAN)、以太网和媒体导向系统传输(MOST)中的一个或更多个。车载网络142可允许计算平台104与其它车辆102系统(诸如车辆调制解调器144(其在一些配置中可能不存在)、被配置为提供当前车辆102位置和方向信息的全球定位系统(GPS)模块146以及被配置为与计算平台104协作的各种车辆电子控制单元(ECU)148)通信。作为一些非限制性的可能的情况,车辆ECU 148可包括:被配置为提供对发动机操作组件(例如,怠速控制组件、燃料输送组件、排放控制组件等)的控制和对发动机操作组件的监控(例如,发动机诊断代码的状态)的动力传动系统控制模块、被配置为管理各种电力控制功能(诸如外部照明、内部照明、无钥匙进入、远程启动和进入状态点验证(例如,车辆102的发动机盖、车门和/或行李厢的关闭状态)的车身控制模块、被配置为与遥控钥匙或其它本地车辆102装置通信的无线电收发器模块、被配置为提供对制热和制冷系统组件(例如,压缩机离合器和鼓风机控制、温度传感器信息等)的控制和监控的气候控制管理模块。
如示出的,音频模块122和HMI控制件136可通过第一车载网络142A与计算平台104通信,车辆调制解调器144、GPS模块146和车辆ECU 148可通过第二车载网络142B来与计算平台104通信。在其它示例中,计算平台104可与更多或更少的车载网络142连接。另外地或可选地,一个或更多个HMI控制件136或其它组件可经由与示出的车载网络不同的车载网络与计算平台104连接,或者在不与车载网络142连接的情况下直接与计算平台104连接。
计算平台104还可被配置为与车辆乘员的移动装置152通信。移动装置152可以是各种类型的便携式计算装置(诸如蜂窝电话、平板计算机、智能手表、膝上型计算机、便携式音乐播放器)或能够与计算平台104通信的其它装置中的任何装置。在许多示例中,计算平台104可包括被配置为与移动装置152的可兼容无线收发器154通信的无线收器150(例如,蓝牙模块、ZIGBEE收发器、Wi-Fi收发器、IrDA收发器、RFID收发器等)。另外地或可选地,计算平台104可通过有线连接(诸如经由移动装置152和USB子系统132之间的USB连接)来与移动装置152通信。在一些示例中,移动装置152可由电池供电,而在其它情况下,移动装置152可经由有线连接从车辆102接收电池电力的至少一部分。
通信网络156可将通信服务(诸如分组交换网络服务(例如,互联网接入、VoIP通信服务))提供给与通信网络156连接的装置。通信网络156的示例可包括蜂窝式电话网络。移动装置152可经由移动装置152的装置调制解调器158来将网络连接提供给通信网络156。为了便于通过通信网络156进行通信,移动装置152可与唯一装置标识符(例如,移动装置码(MDN)、互联网协议(IP)地址等)关联以标识移动装置152通过通信网络156的通信。在一些情况下,计算平台104可根据保存在存储介质112中的配对的装置数据160来识别车辆102的乘员或具有连接到计算平台104的许可的装置。配对的装置数据160可指示:例如,先前与车辆102的计算平台104配对的移动装置152的唯一装置标识符、在配对的装置和计算平台104之间共享的秘密信息(诸如链路密钥)、和/或个人识别码(PIN)以及最近使用的或装置优先级信息,使得计算平台104可在没有用户介入的情况下自动地重新连接到与配对的装置数据160中的数据匹配的移动装置152。
当支持网络连接的移动装置152与计算平台104配对时,移动装置152可允许计算平台104使用装置调制解调器158的网络连接,以通过通信网络156与远程信息处理服务器162或其它远程计算装置通信。在一个示例中,计算平台104可利用移动装置152的话上数据计划或数据计划在计算平台104和通信网络156之间传输信息。另外地或可选地,计算平台104可在不使用移动装置152的通信设施的情况下,利用车辆调制解调器144在计算平台104和通信网络156之间传输信息。
与计算平台104相似,移动装置152可包括被配置为执行从移动装置152的存储介质168加载到移动装置152的内存166的移动应用的指令的一个或更多个处理器164。在一些示例中,移动应用可被配置为经由无线收发器154与计算平台104通信并经由装置调制解调器158与远程信息处理服务器162或其它网络服务通信。计算平台104还可包括用于便于将移动应用的功能经由语音接口134集成到可用的命令语法中的装置链路接口172。装置链路接口172还可经由车载网络142向移动应用提供对车辆功能和可用于计算平台104的信息的访问。装置链路接口172的示例可以是由密歇根州的迪尔伯恩市的福特汽车公司提供的SYNC系统的SYNC APPLINK组件。
图2示出应用策略架构200的示例图。如示出的,架构200包括具有经由通信网络156与后端服务器218通信的策略管理器210的车辆102。策略管理器210可被配置为保存本地策略表206和记录的应用使用208。移动装置152可执行与应用标识符204关联的并包括便于通过通信网络156与后端服务器218通信的应用代理212的移动应用202。后端服务器218可被配置为提供对密钥管理系统220和保存主策略表224的应用远程管理系统222的访问。如下面详细解释的,远程管理系统222可被配置为经由移动装置152的应用代理212将策略表更新214提供给车辆102。
移动应用202可以是安装到移动装置152以与车辆102的计算平台104一起使用的应用。在示例中,移动应用202可通过将控制移动应用202的功能的语音命令与计算平台104的语音接口134集成来将功能添加到计算平台104。移动应用202还可被配置为利用计算平台104的用户接口功能(诸如显示器138或车辆扬声器130)来将信息提供给车辆乘员。在示例中,移动应用202可以是导航应用或流媒体播放器应用。作为一些其它的可能情况,移动应用202还可通过将从车辆102获得的信息传送给远程服务器以进行分析来提供诊断或车辆报告功能。
应用标识符204可以是分配给移动应用202的唯一码或字母数字串。在一些情况下,应用标识符204可以是随机产生的值。在其它情况下,可由被配置为管理应用标识符204的授权机构(authority)将应用标识符204分配给移动应用202。应用名称205可以是应用202的友好的用户可读名称,该名称可由应用202用于在用户界面中或在由应用标识符204标识的应用可能是不理想的其它情况下进行标识。
本地策略表206可被配置为存储详述车辆102中的应用许可的密钥信息。因此,本地策略表206可定义在计算平台104和给定的移动应用202之间允许的交互类型。在示例中,本地策略表206可包括根据分配给移动应用202的应用标识符204对应(keyed)的移动应用的许可信息。
许可信息可包括例如被认为允许由移动应用202使用的API的列表和车辆102系统的列表。作为一些特定示例,本地策略表206可包括针对计算平台104的允许由移动应用202使用的远程程序调用(诸如使用音频模块122流传输音频、使用显示器138、从HMI控制件136接收输入或搜索车辆102的当前GPS位置)的许可信息。作为一些其它示例,本地策略表206可包括针对移动应用202是否具有执行环境切换并从另一应用获取焦点(例如,中断无线电以提供消息)的许可的许可信息。作为另一示例,本地策略表206可包括针对移动应用202是否可执行计算平台104上的脚本的许可信息。作为另一示例,本地策略表206可包括针对哪个车辆102功能可在车辆102停车或静止时被使用并且哪个车辆102功能可在车辆102处于运动时被使用的许可信息。本地策略表206还可包括用于配置车辆102如何并且在何时请求对本地策略表206的更新以及关于如何联系更新的本地策略表206的源(例如,后端服务器218的URL或其它地址)的信息。
记录的应用使用208可包括记录的API使用和记录的车辆102系统使用或者记录的针对移动应用202控制许可的其它车辆102功能。因此,记录的应用使用208可包括收集的关于用户在车辆102中如何使用移动应用202的使用数据。与本地策略表206一样,可根据分配给移动应用202的应用标识符204来对应所记录的应用使用208。在一些示例中,记录的应用使用208可被包括在本地策略表206内,而在其它示例中,记录的应用使用208可与本地策略表206分开地保存。作为记录的信息的一些特定示例,记录的应用使用208可包括移动应用202的运行尝试、由移动应用202经历的错误(例如,许可拒绝错误、意外错误(诸如由于编程错误而导致的错误)等)、记录的HMI使用信息(例如,方向盘控制使用、语音命令使用等)以及在移动应用202通过车辆102HMI提供音频期间的可听时间。
策略管理器210可被配置为管理车辆102的计算平台104的移动应用202许可。在示例中,策略管理器210可保存本地策略表206。当移动应用202被启动或激活时,策略管理器210可基于本地策略表206识别与移动应用202相关联的许可。此外,当移动应用202与计算平台104交互时,策略管理器210可将移动应用202对车辆API和车辆102系统的使用记录在记录的应用使用208中。
计算平台104的策略管理器210还可被配置为管理与后端服务器218的通信。根据策略管理器210和后端服务器218之间的请求和响应,策略管理器210可被配置为启动与后端服务器218的通信。在示例中,策略管理器210可将消息提供给后端服务器218以向后端服务器218通知车辆102已启动并在监听信息。在一些情况下,后端服务器218可将未请求的消息发送给特定车辆102并将其推送到云端。然而,该消息可能不发送给车辆102,直到计算平台104连接后端服务器218并向后端服务器218请求该消息为止。
策略管理器210可被配置为请求后端服务器218向车辆102提供对本地策略表206的更新。例如,如果具有不在本地策略表206中的应用标识符204的移动应用202尝试与车辆102的计算平台104集成,则策略管理器210可请求对本地策略表206的更新。
策略管理器210还可被配置为将记录的应用使用208提供给后端服务器218以用于远程查阅和处理。为此,策略管理器210可提供包括由车辆102存储的记录的应用使用208信息的应用使用更新216消息。这可以允许系统在考虑到移动应用202的明显的目的的情况下核实移动应用202适当地利用API和车辆102系统。例如,导航移动应用202周期性地请求车辆102的速度信息可能是合理的,但是互联网无线电移动应用202这样做可能是不合理的。
应用代理212可被配置为便于策略管理器210与后端服务器218的通信。在示例中,应用代理212可包括编译到或链接到移动应用202中并提供允许策略管理器210通过移动应用202与后端服务器218通信的功能的库模块或其它代码模块。策略管理器210可相应地利用应用代理212经由后端服务器218请求策略表更新214,将应用使用更新216提供给后端服务器218,从后端服务器218接收策略表更新214,并协商在移动装置152和计算平台104之间创建安全隧道。策略表更新214可包括例如用于代替由策略管理器210当前存储的本地策略表206的新的本地策略表206,或者用于增加本地策略表206的当前条目的对现有本地策略表206的更新。应用代理212还可包括可用于与后端服务器218通信的其它功能,诸如在计算平台104和后端服务器218之间传递加密的消息的能力。因此,在一些情况下,这里讨论的与针对应用策略的移动应用202的功能相关的操作通常可由移动应用202的应用代理212代码来实现。
车辆102的无线收发器150可连接到配对的移动装置152(例如,经由蓝牙连接、经由USB连接等),使得移动装置152的通信功能可被用于允许计算平台104经由通信网络156与后端服务器218通信。移动装置152可相应地经由移动装置152的蜂窝数据计划来利用通信网络156(例如,将基于TCP/IP的通信功能提供给计算平台104)。另外地或可选地,计算平台104可利用车辆调制解调器144来在处理器106和通信网络156之间传输数据。经由通信网络156发送到车辆102的消息可在云端中排队,直到与车辆102的连接能够被建立为止或者直到该消息过期为止。在示例中,排队和消息过期功能可经由后端服务器218来实现。通信网络156消息排队功能还可用作针对服务器拒绝服务攻击的第一防御线。
后端服务器218可被配置为用作通信网络156和内部应用管理基础设施之间的网关。在示例中,可由车辆102的制造商管理内部应用管理基础设施,而在另一示例中,可由另一方(诸如应用认证实体)管理内部应用管理基础设施。后端服务器218可被配置为用作防火墙以在后端服务器218后方的系统(诸如密钥管理系统220和应用远程管理系统222)和在内部应用管理基础设施之外的车辆102之间验证、变换和路由消息。
密钥管理系统220可包括被配置为提供用于将消息发送到后端服务器218并从后端服务器218接收消息的安全消息服务的一个或更多个服务器或其它计算装置。例如,密钥管理系统220可认证、解密、验证输入消息,将解密并验证的消息转发到适当的内部目的地,并提供输出消息安全以对输出数据加密和签名,并确保当输出消息由预期的车辆102的计算平台104接收到时输出消息通过安全检查。在示例中,密钥管理系统220可通过将消息标识符分配给输出消息并核实适当的消息标识符被包括在输入消息中来验证消息以防重放攻击。
当后端服务器218接收到消息或请求时,后端服务器218将消息转发到密钥管理系统220,该消息在密钥管理系统220中经过认证、解密和验证。如果这些操作是成功的,后端服务器218可从该消息获得消息有效负载,并根据由该消息标识的服务类型将该消息路由到适当的应用。在示例中,策略表消息(例如,对策略表更新214的请求或对如下面讨论的证书的请求)可与指示消息将被路由到应用远程管理系统222的服务类型相关联。
应用远程管理系统222可包括被配置为从车辆102接收应用使用更新216以及将策略表更新214提供给车辆102的一个或更多个服务器或者其它计算装置。在示例中,应用远程管理系统222可在应用使用更新216消息中接收车辆102的本地策略表206的快照。本地策略表206可包括针对已与车辆102交互的移动应用202的记录的应用使用208。应用远程管理系统222可从接收到的本地策略表206将记录的应用使用208存档,并可通过向车辆102提供策略表更新214来更新由车辆102存储的应用许可。策略表更新214可基于由应用远程管理系统222保存在最新移动应用202许可的主策略表224中的最新信息。在示例中,移动应用202的每个版本(例如,版本2与版本2.1相比)可与主策略表224中的其自己的许可信息相关联。特别地,在策略表更新214中提供给车辆102的主策略表224信息可能缺少任何记录的应用使用208数据,但可包括针对根据接收到的应用使用更新216的本地策略表206识别为由车辆102使用的任何移动应用202的最新许可。
在传输层安全(TLS)系统中,服务器可将公共密钥发送到客户端,并且客户端可通过将其公共密钥发送到服务器来进行响应。公共密钥可被存储在被称为证书的数据元素中,而私人密钥可被称为密钥。TLS使用证书来描述使用的公共和私人密钥对。在非限制性示例中,TLS可使用由X.509标准定义的证书。公共和私人密钥对可成对产生。如果公共密钥被用于对数据加密,则仅该公共和私人密钥对中的私人密钥可对其解密;同样地,如果私人密钥被用于加密,则公共密钥必须被用于解密。
TLS可被用于提供对于由移动装置152执行的移动应用202和车辆102的计算平台104之间的通信的访问控制和密码安全。本地策略表206可包括与车辆计算平台104对应的模块证书226。模块证书226可包含用于移动应用202和计算平台104之间的TLS通信的计算平台104端的公共密钥。类似地,安装到移动装置152的移动应用202可利用与移动应用202对应的并包含用于TLS通信的移动装置152端的公共密钥的应用证书228。
图3示出由移动装置152执行的移动应用202利用与车辆102的计算平台104的安全隧道302的示例图300。安全隧道302可以是使用移动应用202的应用证书228和计算平台104的模块证书226创建的在移动应用202和计算平台104之间的安全连接。
在示例中,移动装置152可操作为TLS服务器,计算平台104可操作为TLS客户端装置。在这样的示例,计算平台104可连接到移动装置152以请求安全连接。例如,当在本地策略表206中所指示的移动应用202请求使用计算平台104的音频/视频或其它媒体功能时,计算平台104可请求创建针对在本地策略表206中所指示的移动应用202的安全隧道。
响应于请求创建安全隧道302,移动装置152可将移动应用202的应用证书228发送到计算平台104。在示例中,计算平台104可在继续执行之前连接应用远程管理系统222以确认应用证书228的有效性。在其它示例中,计算平台104可在不询问提供应用证书228的授权机构进行确认的情况下,验证应用证书228的有效期限或其它方面。
为了创建安全隧道302,移动装置152和计算平台104可执行握手过程以产生用于随后在会话期间对数据进行加密和解密的会话密钥。在示例中,可使用Diffie-Hellman密钥交换来产生会话密钥。在另一示例中,可通过使用应用证书228的公共密钥对随机数进行加密以供移动装置52使用与应用证书228相关联的私人密钥进行解密来产生会话密钥。一旦产生会话密钥,可建立安全隧道302。安全密钥可相应地用于对数据的对称加密和解密,直到安全隧道302关闭为止。
图4示出移动应用202请求应用证书228的示例图400。可按预定义时限时间(例如,每月、每周等)产生应用证书228,在该时限时间之后,移动应用202可被要求请求新的证书。例如,应用证书228可指示时限时间,在时限时间之后,应用证书228可不再被用于移动装置152和车辆102之间的TLS通信。
移动应用202可向远程服务器请求应用证书228。例如,如果当前存储的针对移动应用202的应用证书228过期,或者如果移动装置152当前没有存储针对移动应用202的应用证书228,则移动应用202可请求新的应用证书228。在示出的示例中,远程服务器可以是应用远程管理系统222,但是其它示例也是可能的。
移动应用202可将其应用名称205和应用标识符204编码为证书请求404(例如,经由应用代理212),并可将证书请求404发送到应用远程管理系统222以请求新的应用证书228。在一些情况下,可由移动装置152对证书请求404进行加密以用于传输,并可由移动应用202通过通信网络156将证书请求404从移动装置152发送到应用远程管理系统222。
应用远程管理系统222可接收证书请求404,并可对证书请求404进行解密。在示例中,应用远程管理系统222可利用密钥管理系统220的服务以对证书请求404进行解密。应用远程管理系统222可核实应用名称205是针对应用标识符204的正确的应用名称205,如果正确,则应用远程管理系统222可产生新的应用证书228。新的应用证书228可被产生为包括与包括在与应用标识符204对应的主策略表224中的当前模块证书226配对的密钥。
为了确保应用证书228在从应用远程管理系统222传送到移动装置152期间的安全,应用远程管理系统222可对应用证书228进行加密。在示例中,应用远程管理系统222可实现块(blob)加密器406,其中,块加密器406被配置为将应用证书228的内容加密为加密的块410以防止应用证书228在传送中被捕获。在示例中,可使用由应用远程管理系统222已知的对称密钥402执行加密以与移动应用202关联(例如,根据应用标识符204进行索引等)。密钥402可在应用202的应用代理212内被编码,并可用于解密。例如,每个不同的移动应用标识符204可被提供给其自己特定的应用代理212对象文件,其中,该对象文件包括专用于移动应用标识符204的对称密钥402。对象文件随后可被编译到移动应用202中。响应于证书请求404,应用远程管理系统222可在证书响应408中将加密的块410发送到移动装置152。
移动应用202可接收证书响应408,并可使用应用代理212的解密库对加密的块410进行解密以获得新的应用证书228。在示例中,解密库可使用密钥402,密钥402被硬编码到移动应用202并由块加密器406用于创建加密的块410。一旦被接收和解密,新的应用证书228可被安装到移动装置152的存储器168并可被移动应用202用于创建与计算平台104的安全隧道302。在许多示例中,应用证书228可以以加密的形式保存在存储器168中以确保应用证书228在静置时的安全。
图5示出用于更新主策略表224的示例处理500。例如,可由应用远程管理系统222执行处理500。
在操作502,应用远程管理系统222接收对于移动应用202的应用标识符204的请求。该请求还可包括诸如由移动应用202请求使用的许可、移动应用202应该被归类的类型以及移动应用202的供应商的附加信息。
在操作504,应用远程管理系统222响应于所述请求产生主策略表224中的条目。产生的条目可指示请求的许可和其它信息,并还可指定与移动应用202关联的应用标识符204。在一些示例中,应用标识符204可以是随机产生的值或递增产生的值(例如,下一个可用号或序列标识符)。
在操作506,应用远程管理系统222将应用标识符204发送到请求者。例如,应用远程管理系统222可产生与在操作502接收到的信息相关联的应用标识符204,并且可将产生的应用标识符204提供给应用开发者用于与移动应用202相关联。在操作506之后,处理500结束。
图6示出由应用远程管理系统222产生证书的示例处理600。在操作602,应用远程管理系统222产生针对车辆102的计算平台104的模块证书226。在示例中,可针对每个车辆102将模块证书226单独对应到车辆102的唯一标识符,诸如车辆102的VIN和/或车辆102的计算平台104的唯一标识符(例如,SYNC模块的序列号)。在示例中,模块证书226包含用于移动应用202和计算平台104之间的TLS通信的计算平台104端的密钥。
在操作604,应用远程管理系统222确定模块密钥产生时限是否已过期。在示例中,应用远程管理系统222可被配置为周期性重新产生与车辆计算平台104对应的模块证书226。例如,模块证书226可按预定义的时限时间(例如,每月、每周等)发布,在该时限时间之后,车辆102可被要求向应用远程管理系统222请求新的证书。因此,可由应用远程管理系统222预先产生新的模块证书226以在车辆102请求时可用。(在其它示例中,模块证书226可响应于车辆102的请求而按需产生。)如果模块密钥产生时限已过期,则控制进行到操作602。否则,控制进行到操作606。
在操作606,应用远程管理系统222确定针对移动应用202的任何应用标识符204是否已被撤销。例如,如果应用202被识别为具有不希望的特性,或者如果存在应用202已被破解(compromise)的可能性,则应用远程管理系统222可撤销应用202的应用标识符204。在这样的情况下,新的应用标识符204可被分配给应用202以允许请求应用202的新版本。这样,将不会针对撤销的应用标识符204产生额外的应用证书228,因此,一旦其当前应用证书228过期,则具有应用标识符204的移动应用202将无法继续利用计算平台104。如果应用标识符204已被撤销,则控制进行到操作608。否则,控制进行到操作610。
在操作608,应用远程管理系统222产生新的应用标识符204。在示例中,应用远程管理系统22可更新在主策略表224中的指示应用202的应用标识符204的条目。因此,为了用户在车辆102中继续使用应用202,用户将下载具有新的应用标识符204的应用202的新版本。
在操作610,应用远程管理系统222确定应用密钥产生时限是否已过期。在示例中,应用远程管理系统222可被配置为周期性地重新产生与应用202对应的应用证书228。例如,针对添加到主策略表224的新的应用202,针对在主策略表224中具有新的应用标识符204的应用202,和/或针对在主策略表224中的现有应用202条目,可执行上述操作。应该注意,应用证书228的更新可以比应用证书228的时限时间更频繁地执行。例如,应用证书228可被设置为具有五天或七天的期限,但是应用证书228可每晚重新产生。因此,移动装置152能够在应用证书228过期之前请求更新的应用证书228(例如,每天尝试请求在几天后过期的证书),但是还能够在应用证书228上具有额外的时间,以继续使用超出针对应用证书228的轮询和重新产生频率而被授权的应用202。如果应用密钥产生时限已过期,则控制进行到操作612。否则,控制进行到操作604。
图7示出用于更新车辆102的本地策略表206的示例处理700。例如,可由计算平台104的策略管理器201来执行处理700。
在操作702,计算平台104确定是否指示对本地策略表206的更新。在示例中,由于计算平台104识别出移动应用202app的应用标识符204在本地策略表206中没有被列出,因此计算平台104可确定本地策略表206应该被更新。在另一示例中,当用户启动请求本地策略表206更新的移动应用202并且策略管理器210在初始请求序列期间还未接收到更新的本地策略表206时,计算平台104可确定本地策略表206应该被更新。在另一示例中,在以下情况中的一个或更多个情况之后,计算平台104可确定本地策略表206应该被更新:“N”个点火周期(例如,其中的“N”在本地策略表206中被定义)、在在车辆102里程表上已记录了“M”公里之后(例如,其中的“M”在本地策略表206中被定义)、在“O”运行时间之后(例如,其中的“O”在本地策略表206中被定义)。
此外,可基于包括在本地策略表206中的模块证书226的过期来指示对本地策略表206的更新。在示例中,当使用过期的模块证书226来尝试创建安全隧道302时,模块证书226的过期可触发对本地策略表206的更新。
如果计算平台104确定更新本地策略表206,则控制进行到操作704。否则,控制保持在操作702。
在操作704,计算平台104将应用使用更新216消息发送到应用远程管理系统222。应用使用更新216可包括当前本地策略表206,并可根据包括在本地策略表206中的地址信息(例如,更新服务器URL)被发送到该地址。应用使用更新216或当前本地策略表206还可包括记录的应用使用208。应用使用更新216可经由后端服务器218被发送到应用远程管理系统222,并可与指示消息将被路由到应用远程管理系统222的服务类型相关联。
在操作706,计算平台104从后端服务器218接收策略表更新214消息。策略表更新214可包括用于增加或替换车辆102的当前本地策略表206的新的本地策略表206。更新后的本地策略表206可包括针对包括在被发送到后端服务器的本地策略表206中的移动应用202的最新应用许可以及针对计算平台104的最新模块证书226。然而,新的本地策略表206可不包括任何记录的应用使用208。
在操作708,计算平台104应用更新后的本地策略表206。因此,更新后的应用许可变为可用。在操作708之后,处理700返回到操作702。
图8示出用于移动装置153请求移动应用202的应用证书228的示例处理800。在示例中,可由安装了移动应用202的移动装置152执行处理800。
在操作802,移动装置152确定是否请求移动应用202的应用证书228。例如,如果当前存储的移动应用202的应用证书228过期,或者如果移动装置152当前未存储与应用标识符204对应的移动应用202的应用证书228,则移动应用212的应用代理212可请求新的应用证书228。在另一示例中,移动应用202的应用代理212可周期性地(例如,每天)请求新的应用证书228。如果移动装置152确定请求应用证书228,则控制进行到操作804。否则,控制保持在操作802。
在操作804,移动装置152发送证书请求404。在示例中,移动应用202的应用代理212可将移动应用202的应用标识符204和应用名称205编码为证书请求404。应用代理212可对证书请求404加密以用于通过通信网络156传输,并可通过通信网络156将证书请求404从移动装置152发送到应用远程管理系统222。
在操作806,移动装置152接收证书响应408。在示例中,移动装置152可从响应于该请求的应用远程管理系统222接收证书响应408,并可使用在应用代理212中编码的密钥412来对加密的块410进行解密以获得新的应用证书228。证书响应408可包括新的应用证书228。
在操作808,移动装置152安装应用证书228。一旦接收到应用证书228,移动装置152可将应用证书228安装到移动装置152的存储器168,并且应用证书228可被移动应用202使用以用于创建与计算平台104的安全隧道302。在许多示例中,应用证书228可以以加密的形式被保存在存储器168中以确保应用证书228的安全。在操作808之后,处理800返回到操作802。
图9示出用于使用本地策略表206和移动应用202的许可控制的证书的示例处理900。与处理600一样,例如,可由计算平台104的策略管理器210执行处理900。
在操作902,计算平台104识别调用的移动应用202。例如,计算平台104可接收可在移动装置152中使用的移动应用202的应用标识符204的列表。作为另一示例,计算平台104可接收移动装置152上的移动应用202的启动的指示。
在操作904,计算平台104从本地策略表206获得针对移动应用202的应用许可。在示例中,计算平台104可查询本地策略表206以获取与移动应用202的应用标识符204相关联的应用许可。在另一示例中,计算平台104可查询本地策略表206以获取与执行移动应用202的配对的移动装置162相关联的应用许可以及与移动应用202的应用标识符204相关联的应用许可。在一些情况下,如果对移动应用202的使用尚未得到用户同意,则计算平台104可在车辆102HMI中显示用户界面,用户可通过该用户界面授予与计算平台104一起使用移动应用202的许可。
在操作906,移动应用202确定移动应用202是否请求安全隧道302。在示例中,如果移动应用202尝试访问被标记为需要加密的安全车辆功能服务,则移动应用202可请求创建安全隧道302。作为一些示例,移动应用202可尝试访问安全车辆功能服务(诸如计算平台104的音频和/视频功能或其它媒体功能)、车辆诊断(诸如发动机数据)、将信息写入车辆102、个人可识别的信息(诸如位置)或者访问来自麦克风116的音频数据。作为更进一步的示例,移动应用202可尝试访问安全车辆功能服务,所述安全车辆功能服务用于针对移动支付、自主驾驶、车辆解锁、车辆启动、驾乘共享、微出租以及移动装置的用户的个性化设置的访问中的一个或更多个的认证。如果移动应用202需要安全隧道302,则控制进行到操作908。否则,控制进行到操作918以在没有安全隧道302的情况下进行。
在操作908,移动应用202请求移动装置152创建安全隧道302。在示例中,响应于移动应用202请求被标记为需要加密的服务,计算平台104可作为TLS客户端与用作TLS服务器的移动装置152连接。计算平台104还可请求移动应用202的应用证书228。
在操作910,计算平台104接收应用证书228。响应于创建安全隧道302的请求,移动装置152可将移动应用202的应用证书228发送到计算平台104。
在操作912,计算平台104确定应用证书228是否有效。在示例中,计算平台104可在示例中与应用远程管理系统222连接以在继续执行之前确认应用证书228的有效性。在另一示例中,计算平台104可在没有查询提供应用证书228的授权机构进行确认的情况下验证过期日期、应用标识符204、应用名称205或应用证书228的其它方面。如果计算平台104确定应用证书228有效,则控制进行到操作914。否则,控制进行到操作916。
在操作914,计算平台104创建安全隧道302。在示例中,移动装置152和计算平台104可执行握手过程以产生用于后续在会话期间对数据的加密和解密的会话密钥。例如,可使用Diffie-Hellman密钥交换来产生会话密钥,或者,可通过使用应用证书228的公共密钥对随机数进行加密以供移动装置52使用与应用证书228相关联的私人密钥进行解密来产生会话密钥。无论方式如何,安全密钥可相应地用于对数据的对称加密和解密,直到安全隧道302关闭为止。在操作914之后,控制进行到操作918以使用建立的安全隧道302继续与移动应用202的连接。
在操作916,计算平台104拒绝移动应用202与计算平台104的连接。在一些情况下,计算平台104可在车辆HMI中显示指示移动应用202未被授权使用计算平台104的错误消息。在一些示例中,计算平台104可向远程管理系统222或其它服务器通知失败。在操作916之后,处理900结束。
在操作918,计算平台104根据获得的许可执行移动应用202。计算平台104可根据与移动应用202相关联的应用许可,在一些示例中,还可根据移动装置152,相应地向移动应用202提供对车辆102系统(诸如可用的功能和HMI)的访问。
在操作920,计算平台104记录移动应用202的应用使用。例如,计算平台104可记录包括由移动应用202对车辆功能、API、RPC和车辆102系统的使用的应用使用208。在操作920之后,处理900结束。
这里描述的计算装置(诸如计算平台104、移动装置152和远离车辆102的服务器)通常包括计算机可执行指令,其中,这些指令可由一个或更多个计算装置(诸如上面列出的装置)执行。计算机可执行指令可从计算机程序被编译或解释,其中,计算机程序是使用各种编程语言和/或技术(包括但不限于JavaTM、C、C++、C#、Visual Basic、Java Script、Perl中的一种或它们的组合)而创建的。通常,处理器(例如,微处理器)例如从存储器、计算机可读介质等接收指令,并执行这些指令,从而执行包括这里描述的处理中的一个或更多个的一个或更多个处理。这样的指令和其它数据可使用各种计算机可读介质来存储并发送。
关于这里描述的处理、系统、方法、启示等,应该理解,虽然这样的处理等的步骤已被描述为根据特定顺序序列发生,但是这样的处理也可按照以与这里描述的顺序不同的顺序执行的描述的步骤来实施。还应该理解,特定步骤可被同时执行,其它步骤可被添加,或者可省略这里描述的特定步骤。换句话说,这里对处理的描述是为了说明特定实施例的目的而提供的,并且不应以任何方式被解释为限制权利要求。
虽然以上描述了示例性实施例,但是这些实施例并不意在描述本发明的所有可能形式。更确切地,在说明书中使用的词语是描述性词语而不是限制性词语,应该理解,可在不脱离本发明的精神和范围的情况下进行各种改变。另外,各种实现实施例的特征可被组合以形成本发明的进一步的实施例。
Claims (20)
1.一种系统,包括:
车辆的计算平台,被配置为:
从执行访问安全功能的移动应用的移动装置接收用于创建计算平台与移动装置之间的安全隧道的请求;
从移动应用获得应用证书;
使用应用证书和存储在计算平台的本地策略表中的模块证书来验证安全隧道的创建。
2.如权利要求1所述的系统,其中,安全功能包括对计算平台的音频车辆功能或视频车辆功能的访问。
3.如权利要求1所述的系统,其中,安全功能包括对车辆诊断的访问、将信息写入车辆的权限或对个人可识别信息的访问中的一个或更多个。
4.如权利要求1所述的系统,其中,安全功能包括对移动支付、自主驾驶、车辆解锁、车辆启动、驾乘共享、微出租以及移动装置的用户的个性化设置的访问中的一个或更多个的认证。
5.如权利要求1所述的系统,应用证书与移动应用的应用标识符对应,并且计算平台还被配置为验证应用证书与所述应用标识符对应并且未过期。
6.如权利要求1所述的系统,其中,计算平台还被配置为验证模块证书与计算平台对应并且未过期。
7.如权利要求1所述的系统,其中,计算平台还被配置为:响应于发生与计算平台相应的模块证书过期,将应用使用更新消息发送到移动装置,所述移动装置被配置为使所述移动装置向远程服务器请求策略表更新,其中,策略表更新包括新的模块证书。
8.如权利要求1所述的系统,其中,计算平台还被配置为:向移动应用提供对车辆功能的访问,其中,移动应用根据本地策略表中的应用许可而被授权对车辆功能的访问。
9.如权利要求1所述的系统,其中,计算平台还被配置为:响应于验证安全隧道的创建的失败,结束移动应用。
10.如权利要求1所述的系统,其中,计算平台还被配置为:响应于验证安全隧道的创建的失败,拒绝移动应用对安全功能的访问。
11.一种系统,包括:
移动装置,连接到车辆的计算平台,被配置为:
执行请求安全功能的移动应用;
响应于移动应用对安全功能的访问,发送用于创建与计算平台的安全隧道的请求;
将与移动应用相应的应用证书发送到计算平台以验证安全隧道的创建。
12.如权利要求11所述的系统,其中,安全功能包括对计算平台的音频功能和视频功能的访问。
13.如权利要求11所述的系统,其中,安全功能包括对车辆诊断的访问、将信息写入车辆的权限或对个人可识别信息的访问中的一个或更多个。
14.如权利要求11所述的系统,其中,移动装置还被配置为:
将对于应用证书的证书请求发送到远程服务器,其中,所述请求包括移动应用的应用标识符和移动应用的名称;
从远程服务器接收证书响应,其中,所述证书响应包括包含应用证书的加密的块;
利用移动装置的解密库来使用密钥对应用证书解密。
15.如权利要求11所述的系统,其中,移动装置还被配置为:以加密的形式将应用证书保存在移动装置的存储器中。
16.如权利要求11所述的系统,其中,应用证书被指定为在多日之后过期,并且移动装置还被配置为每日请求更新的应用证书。
17.一种方法,包括:
由连接到计算平台的移动装置发送用于创建与计算平台的安全隧道的请求,以执行请求安全功能的移动应用;
接收使用存储在移动装置中的应用证书和存储在计算平台的本地策略表中的模块证书执行的对与计算平台的安全隧道的确认。
18.如权利要求17所述的方法,其中,安全功能包括对计算平台的音频功能或视频功能的访问。
19.如权利要求17所述的系统,其中,安全功能包括对车辆诊断的访问、将信息写入计算平台的权限或对个人可识别信息的访问中的一个或更多个。
20.如权利要求17所述的系统,其中,安全功能包括对移动支付、自主驾驶、车辆解锁、车辆启动、驾乘共享、微出租以及移动装置的用户的个性化设置的访问中的一个或更多个的认证。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/057,474 US11228569B2 (en) | 2016-03-01 | 2016-03-01 | Secure tunneling for connected application security |
US15/057,474 | 2016-03-01 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107145324A true CN107145324A (zh) | 2017-09-08 |
CN107145324B CN107145324B (zh) | 2022-04-08 |
Family
ID=59651250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710118072.XA Active CN107145324B (zh) | 2016-03-01 | 2017-03-01 | 用于连接的应用安全的安全隧道 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11228569B2 (zh) |
CN (1) | CN107145324B (zh) |
DE (1) | DE102017102539A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109495441A (zh) * | 2018-09-10 | 2019-03-19 | 北京车和家信息技术有限公司 | 接入认证方法、装置、相关设备及计算机可读存储介质 |
CN109587107A (zh) * | 2017-09-28 | 2019-04-05 | 通用汽车环球科技运作有限责任公司 | 用于应用程序认证的方法和装置 |
CN114339680A (zh) * | 2022-03-07 | 2022-04-12 | 高新兴智联科技有限公司 | 一种v2x系统及安全认证方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9946890B2 (en) | 2016-03-18 | 2018-04-17 | Uber Technologies, Inc. | Secure start system for an autonomous vehicle |
US10089116B2 (en) * | 2016-03-18 | 2018-10-02 | Uber Technologies, Inc. | Secure start system for an autonomous vehicle |
KR102598613B1 (ko) * | 2016-07-21 | 2023-11-07 | 삼성전자주식회사 | 개인 인증 및 차량 인증 기반으로 차량 정보를 제공하는 시스템 및 방법 |
US10567387B1 (en) * | 2016-09-13 | 2020-02-18 | Symantec Corporation | Systems and methods for managing computing device access to local area computer networks |
CN108347331B (zh) * | 2017-01-25 | 2021-08-03 | 北京百度网讯科技有限公司 | 车联网系统中T_Box设备与ECU设备进行安全通信的方法与设备 |
JP6717793B2 (ja) * | 2017-10-10 | 2020-07-08 | 株式会社東海理化電機製作所 | カーシェアリングシステム及びカーシェア装置 |
DE102018201958A1 (de) | 2018-02-08 | 2019-08-08 | Audi Ag | Verfahren zum Kontrollieren eines Zugriffs zumindest einer Anwendung auf eine digitale Dienstfunktion eines Geräts sowie Gerät und Kraftfahrzeug |
WO2019168907A1 (en) * | 2018-02-27 | 2019-09-06 | Excelfore Corporation | Broker-based bus protocol and multi-client architecture |
US11917018B2 (en) | 2018-02-27 | 2024-02-27 | Excelfore Corporation | Broker-based bus protocol and multi-client architecture |
US10812469B2 (en) * | 2018-03-29 | 2020-10-20 | Nio Usa, Inc. | Secure vehicle communication interface device |
CN110875936A (zh) * | 2018-08-31 | 2020-03-10 | 百度在线网络技术(北京)有限公司 | 智能驾驶汽车的通讯系统、方法及终端设备、存储介质 |
US11032716B2 (en) * | 2018-11-30 | 2021-06-08 | Blackberry Limited | Secure communication for machine to machine connections |
EP3899766A1 (de) * | 2018-12-21 | 2021-10-27 | Inventio AG | Aufbauen einer geschützten datenkommunikationsverbindung zwischen einer steuerung einer personentransportanlage und einem mobilgerät |
CN112969999A (zh) * | 2019-01-31 | 2021-06-15 | 宝马股份公司 | 用于在控制器上执行程序组件的方法、计算机可读存储介质、控制器和系统 |
US10967836B2 (en) * | 2019-03-21 | 2021-04-06 | Denso International America, Inc. | Phone as a key vehicle access based on time policies, license information and validation and accuracy of a vehicle real time clock |
US11893092B2 (en) * | 2020-01-17 | 2024-02-06 | Sony Group Corporation | Privilege auto platform |
US11341525B1 (en) | 2020-01-24 | 2022-05-24 | BlueOwl, LLC | Systems and methods for telematics data marketplace |
US11526595B2 (en) * | 2020-02-13 | 2022-12-13 | Citrix Systems, Inc. | Optically scannable representation of a hardware secured artifact |
DE102020202882A1 (de) * | 2020-03-06 | 2021-09-09 | Robert Bosch Gesellschaft mit beschränkter Haftung | Gesicherter und dokumentierter Schlüsselzugriff durch eine Anwendung |
US20210304202A1 (en) * | 2020-03-26 | 2021-09-30 | Honda Motor Co., Ltd. | System and method for securing a vehicle transaction within blockchain |
JP7380415B2 (ja) | 2020-05-18 | 2023-11-15 | トヨタ自動車株式会社 | エージェント制御装置 |
JP7380416B2 (ja) * | 2020-05-18 | 2023-11-15 | トヨタ自動車株式会社 | エージェント制御装置 |
WO2023036418A1 (en) | 2021-09-09 | 2023-03-16 | Volkswagen Aktiengesellschaft | Apparatus, method and computer program for transferring an execution of computational function blocks from a vehicle to a personal device |
US11917086B2 (en) * | 2021-12-16 | 2024-02-27 | Gm Cruise Holdings Llc | Short-lived symmetric keys for autonomous vehicles |
GB2614272A (en) * | 2021-12-23 | 2023-07-05 | Continental Automotive Tech Gmbh | Secure automotive system |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005024567A2 (en) * | 2003-08-18 | 2005-03-17 | Spearman Anthony C | Network communication security system, monitoring system and methods |
US20100191973A1 (en) * | 2009-01-27 | 2010-07-29 | Gm Global Technology Operations, Inc. | System and method for establishing a secure connection with a mobile device |
CN102904869A (zh) * | 2011-07-25 | 2013-01-30 | 福特全球技术公司 | 用于远程认证的方法和设备 |
WO2013126918A1 (en) * | 2012-02-24 | 2013-08-29 | Ruckus Wireless, Inc. | Wireless services gateway |
US20140013109A1 (en) * | 2012-07-09 | 2014-01-09 | Verizon Patent And Licensing Inc. | Secure delivery of trust credentials |
US20140282827A1 (en) * | 2013-03-15 | 2014-09-18 | Ford Global Technologies, Llc | Method and apparatus for secure data transfer permission handling |
US20160037307A1 (en) * | 2014-07-31 | 2016-02-04 | General Motors, Llc | Vehicle-related information sharing method and system |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040123117A1 (en) * | 2002-12-18 | 2004-06-24 | Symantec Corporation | Validation for behavior-blocking system |
EP2273719A3 (en) * | 2003-01-28 | 2012-04-25 | Cellport Systems, Inc. | A method and an apparatus for securely controlling access and use related to a target service involving a vehicle having a security controller |
EP2053531B1 (en) * | 2007-10-25 | 2014-07-30 | BlackBerry Limited | Authentication certificate management for access to a wireless communication device |
US9639688B2 (en) * | 2010-05-27 | 2017-05-02 | Ford Global Technologies, Llc | Methods and systems for implementing and enforcing security and resource policies for a vehicle |
EP2461613A1 (en) * | 2010-12-06 | 2012-06-06 | Gemalto SA | Methods and system for handling UICC data |
US9032493B2 (en) * | 2011-03-31 | 2015-05-12 | Intel Corporation | Connecting mobile devices, internet-connected vehicles, and cloud services |
US8947202B2 (en) * | 2011-10-20 | 2015-02-03 | Apple Inc. | Accessing a vehicle using portable devices |
US9276736B2 (en) * | 2013-03-14 | 2016-03-01 | General Motors Llc | Connection key distribution |
US9237021B2 (en) * | 2013-03-15 | 2016-01-12 | Hewlett Packard Enterprise Development Lp | Certificate grant list at network device |
EP3072317B1 (en) * | 2013-11-22 | 2018-05-16 | Qualcomm Incorporated | System and method for configuring an interior of a vehicle based on preferences provided with multiple mobile computing devices within the vehicle |
US8954605B1 (en) * | 2014-04-07 | 2015-02-10 | Noson Hecht | System and method for providing controlled communications |
US10200201B2 (en) * | 2014-04-07 | 2019-02-05 | Samsung Electronics Co., Ltd | Method for application installation, electronic device, and certificate system |
US20150372813A1 (en) * | 2014-06-23 | 2015-12-24 | Entersekt, LLC | System and method for generating a random number |
US20160164881A1 (en) * | 2014-12-03 | 2016-06-09 | Ford Global Technologies, Llc | Remote vehicle application permission control and monitoring |
US9701305B2 (en) * | 2015-03-10 | 2017-07-11 | GM Global Technology Operations LLC | Automatic valet parking |
US20160328197A1 (en) * | 2015-05-04 | 2016-11-10 | GM Global Technology Operations LLC | Vehicle data enforcement and contextual interference module for in-vehicle app development |
US10686892B2 (en) * | 2015-05-28 | 2020-06-16 | Airwatch Llc | Remotely-hosted auto-discovery service |
US10800284B2 (en) * | 2016-01-20 | 2020-10-13 | Ford Global Technologies, Llc | Charging strategies to mitigate lithium plating in electrified vehicle battery |
-
2016
- 2016-03-01 US US15/057,474 patent/US11228569B2/en active Active
-
2017
- 2017-02-09 DE DE102017102539.1A patent/DE102017102539A1/de active Pending
- 2017-03-01 CN CN201710118072.XA patent/CN107145324B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005024567A2 (en) * | 2003-08-18 | 2005-03-17 | Spearman Anthony C | Network communication security system, monitoring system and methods |
US20100191973A1 (en) * | 2009-01-27 | 2010-07-29 | Gm Global Technology Operations, Inc. | System and method for establishing a secure connection with a mobile device |
CN102904869A (zh) * | 2011-07-25 | 2013-01-30 | 福特全球技术公司 | 用于远程认证的方法和设备 |
WO2013126918A1 (en) * | 2012-02-24 | 2013-08-29 | Ruckus Wireless, Inc. | Wireless services gateway |
US20140013109A1 (en) * | 2012-07-09 | 2014-01-09 | Verizon Patent And Licensing Inc. | Secure delivery of trust credentials |
US20140282827A1 (en) * | 2013-03-15 | 2014-09-18 | Ford Global Technologies, Llc | Method and apparatus for secure data transfer permission handling |
US20160037307A1 (en) * | 2014-07-31 | 2016-02-04 | General Motors, Llc | Vehicle-related information sharing method and system |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109587107A (zh) * | 2017-09-28 | 2019-04-05 | 通用汽车环球科技运作有限责任公司 | 用于应用程序认证的方法和装置 |
CN109495441A (zh) * | 2018-09-10 | 2019-03-19 | 北京车和家信息技术有限公司 | 接入认证方法、装置、相关设备及计算机可读存储介质 |
CN114339680A (zh) * | 2022-03-07 | 2022-04-12 | 高新兴智联科技有限公司 | 一种v2x系统及安全认证方法 |
CN114339680B (zh) * | 2022-03-07 | 2022-06-07 | 高新兴智联科技有限公司 | 一种v2x系统及安全认证方法 |
Also Published As
Publication number | Publication date |
---|---|
DE102017102539A1 (de) | 2017-09-07 |
US20170257345A1 (en) | 2017-09-07 |
CN107145324B (zh) | 2022-04-08 |
US11228569B2 (en) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107145324A (zh) | 用于连接的应用安全的安全隧道 | |
TWI779139B (zh) | 車輛虛擬鑰匙生成使用方法及其系統以及使用者終端 | |
CN112585905B (zh) | 一种设备升级方法及相关设备 | |
CN112543927B (zh) | 一种设备升级方法及相关设备 | |
CN105490803B (zh) | 控制对电子控制单元的访问的方法 | |
US10484349B2 (en) | Remote firewall update for on-board web server telematics system | |
EP3403246B1 (en) | A device and method for collecting user-based insurance data in vehicles | |
US20200177398A1 (en) | System, certification authority, vehicle-mounted computer, vehicle, public key certificate issuance method, and program | |
CN107786683B (zh) | 移动装置网络地址服务器更新 | |
JP6178390B2 (ja) | 管理装置、管理システム、車両、管理方法、及びコンピュータプログラム | |
CN107819737B (zh) | 使用策略来管理移动装置对车辆系统的控制 | |
US11681828B2 (en) | Passthrough mobile application policy | |
WO2017022821A1 (ja) | 管理装置、管理システム、鍵生成装置、鍵生成システム、鍵管理システム、車両、管理方法、鍵生成方法、及びコンピュータプログラム | |
CN103379170B (zh) | 处理在车辆上接收到的消息 | |
US20150180840A1 (en) | Firmware upgrade method and system thereof | |
US20160164881A1 (en) | Remote vehicle application permission control and monitoring | |
CN110324335A (zh) | 一种基于电子移动证书的汽车软件升级方法及系统 | |
CN110071954A (zh) | 将移动对车辆api扩展到云 | |
CN111049651A (zh) | 一种车载智能计算装置、云端服务器以及唤醒方法 | |
KR102053185B1 (ko) | 적어도 2개의 통신 파트너 사이에서 인증된 접속을 제공하는 방법 | |
JP2018019415A (ja) | システム、認証局、車載コンピュータ、公開鍵証明書発行方法、及びプログラム | |
CN110557256A (zh) | 临时和定制的车辆访问 | |
CN110944020B (zh) | 一种车载智能计算装置、云端服务器以及加密通信方法 | |
US20200334366A1 (en) | Method for providing an authenticated connection between at least two communication partners | |
KR20180012221A (ko) | 적어도 2개의 통신 파트너 사이에서 인증된 접속을 제공하는 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |