背景技术:
1、在现代车辆中,与外部组件、例如与车辆乘客的智能电话或与云服务的联网越来越重要。
2、由于联网,车辆的功能范围可以扩展到通过由车辆侧服务组件和外部服务组件的交互产生的服务。并且反之亦然,外部云服务或外部设备的功能范围可以通过与车辆中的提供车辆的功能范围或数据的服务组件进行联网和交互来扩展。外部和车辆侧服务组件的交互被称为协作服务交付。例如,车辆的功能范围可以扩展到音乐流,其中,外部的基于云的服务提供音频流数据并且提供相应的车辆侧的服务范围(例如车辆中的音频播放和适合的显示和操作元件)。因此,协作地提供音乐流服务。
3、在车辆与车辆乘客的移动终端设备之间也可以协作地提供例如服务、如电话和音乐,其方式为,通过接口和协议在车辆侧服务组件与移动终端设备的外部服务组件之间交换数据。
4、作为另一示例,智能电话(例如,智能电话应用(app),诸如bmw的"mybmw"应用)上的服务范围可通知用户车辆电池的充电状态,或者如果车辆本身为此提供适合的服务组件和接口,则能实现由智能电话控制车辆功能(例如,喇叭、停车采暖器、门锁)。
5、可靠的和无故障的协作服务交付刚好在汽车领域中是特别重要的,尤其是由于可能由车辆中的错误的服务交付引起的相应的后果或危险。在此,可靠的和无故障的协作服务交付决定性地取决于所参与的服务组件的兼容性和无故障性,以及必要时也取决于可能影响兼容性的其他方面,例如车辆的特点和配置。
6、然而,让确保兼容性变得困难的是,参与的车辆侧的和外部服务组件大多彼此独立地开发以及具有不同的开发周期和生命周期。
7、这尤其是在车辆与商业上通用的智能电话之间利用软件和应用的协作服务交付的示例中是明显的:两个系统被彼此独立地设计、开发和更新。就此而言,两个系统相互间的一次性的兼容性检验不足以保证在车辆的整个生命周期期间的兼容性。这也适用于通常也独立于特定车辆而开发和继续开发的云服务。
8、此外,所规定的协作交付服务在车辆的制造时刻还无法交付,而是通过之后提供云服务才能实现,或者通过智能电话或智能电话应用的软件更新才能实现。
9、除了参与的服务组件的不兼容性之外,还可能存在需要协作服务交付的后续(暂时)停用以保证车辆的无故障和安全运行的其他原因。暂时的停用在此应该至少持续到消除问题。
10、对此的一个示例是在外部服务组件中、尤其是在云服务、智能电话应用或其执行环境(例如云服务器、智能电话操作系统、通信栈)中发现安全漏洞。
11、安全漏洞或不兼容性也可由外部服务组件(即,云服务、智能电话或智能电话应用)侧或车辆侧服务组件(即,车辆侧软件)侧的软件更新来触发。
技术实现思路
1、本发明的任务之一在于,提供一种用于在车辆中可靠地并且无故障地提供服务的方法。所述服务尤其可以是如下服务,所述服务在使用至少一个车辆侧服务组件与外部服务组件的情况下优选协作地提供。此外,本发明的任务是,提供用于实施所述方法的相应的装置。
2、尤其是该方法应防止由服务组件的不兼容性或其它故障引起的车辆中的功能故障。
3、该任务通过根据权利要求1的方法、根据权利要求11的计算机可读存储介质、根据权利要求12的启用模块、根据权利要求13的隔离模块、根据权利要求14的车辆以及根据权利要求15的系统来解决。
4、尤其是,该任务通过一种用于在车辆中提供服务的方法来解决。在此,在使用至少一个车辆侧服务组件和外部服务组件的情况下交付服务,尤其是作为协作服务交付来进行交付。该方法包括以下步骤:
5、接收关于在所述车辆中提供所述服务的请求;
6、确定所述外部服务组件的识别标志和/或所述车辆侧服务组件的识别标志中;
7、在使用启用列表和车辆侧服务组件的识别标志和/或外部服务组件的识别标志的情况下为车辆确定用于协作服务交付的启用信息;
8、按照所述启用信息通过车辆的启用模块启用至少一个用于车辆侧服务组件和/或外部服务组件的(车辆侧)接口,以提供服务。
9、本发明的一点在于,在通过车辆中的启用模块进行检验之后才实现启用至少一个用于车辆侧服务组件和/或用于外部服务组件的(车辆侧)接口。以这种方式,只要不存在相应的启用信息,用于提供服务所需的接口就可以保持停用。因此,车辆可以如此按照标准地在(在服务交付方面)受保护的模式中运行和/或一旦不再存在当前的或有效的启用信息,就回到这种模式中。这保护车辆免受由协作服务交付导致的功能故障,并且因此可以提高车辆的安全性。
10、为了执行所述检验,该方法在相应的请求之后首先确定一个或两个参与的服务组件的识别标志,以便能够识别这些服务组件。然而根据本发明,该请求不必许在时间上直接在所期望的在车辆中提供服务之前进行,而是可以在之前的任意时间进行,例如在车载计算机启动时、在定期的时刻或者在最后一次改变/最后一次更新时。根据所描述的方法,根据请求确定用于在相应的车辆中的相应服务的启用信息。
11、启用信息可以理解为这样的说明,该说明给出在什么范围内启用、亦即允许在车辆中提供相关的服务。因此,本发明明确地规定,在车辆中不仅完全地启用或禁止服务的提供,而且其实是在功能层面上授权启用。因此,能够精确地控制车辆中的服务的提供。
12、在此,在使用(一个或多个)识别标志以及启用列表的情况下进行启用信息的确定。所述启用列表尤其可以是数据库或者其它数据结构。
13、在此,所述启用列表可以制定最低要求,参与服务交付的组件、尤其是车辆侧服务组件和外部服务组件必须满足所述最低要求,由此允许在相应的车辆中提供服务。所述要求例如可以涉及车辆侧服务组件本身(软件版本等)以及其执行环境,即车辆(特殊装备、软件版本、制造年份、硬件版本等)。所述要求也可以涉及外部服务组件本身(智能电话应用的软件版本、云服务的软件版本等)以及其执行环境(例如智能电话的操作系统版本、云服务的服务器等)。此外,所述启用列表可以制定对运行环境(车辆的位置、时间等)的一般要求,例如以便满足法律框架条件。
14、在一种实施方式中,启用信息的确定可以通过启用模块进行并且该方法还具有以下步骤:
15、确定协作服务交付的特性特征;
16、借助移动终端设备和/或借助车辆的通信模块将特性特征传输给后端服务器,其中,启用列表存储在后端服务器上;
17、在使用所述特性特征的情况下确定所述启用列表的数据项;
18、尤其是借助移动终端设备和/或借助车辆的通信模块将所述启用列表的数据项从后端服务器传输给车辆;
19、将所述数据项传输到启用模块的数据库中。
20、在此,通过启用模块对启用信息的确定此外在使用数据项的情况下和使用协作服务交付的特性特征的情况下进行。
21、根据该实施方式,对启用信息的确定因此通过车辆中的启用模块来进行,其中,启用列表存储在后端服务器上。为了不必须将完整的启用列表、而是仅将启用列表的对于相应所请求的服务交付相关的数据项传输给车辆,首先确定协作服务交付的特性特征。
22、特性特征在此尤其是可以包括以下信息:
23、一组车辆侧服务组件的属性;
24、一组外部服务组件的属性;
25、一组服务和/或服务范围的识别标志;
26、一组车辆的属性,尤其是车辆标志、硬件和软件组件的属性(例如版本、配置)、车辆装备、车辆注册的国家、车辆用户的国家、车辆的地理位置。
27、一组可以理解为任意多个元素的集合。该组可以通过明确列举其中包含的元素(白名单)、明确列举不包含的元素(黑名单)或者通过表达式隐含地、必要时在使用占位符的情况下被描述。
28、(车辆侧的或外部的)服务组件的属性尤其是可以理解为软件版本号或序列号。车辆侧服务组件的属性还可包括关于车辆本身的属性,特别是车辆识别号、安装的特殊装备、车辆注册国家等。
29、根据所描述的实施方式,所确定的特性特征随后被传输给后端服务器。所述传输尤其是可以借助与车辆连接的移动终端设备和/或借助车辆的通信模块进行。移动终端设备在此例如可以与车辆的主机单元连接,尤其是通过蓝牙或wlan连接,并且可以通过移动数据连接建立与后端服务器的连接。通信模块可通过任意无线电技术(例如,lte、5g、wlan等)或其他技术(例如,通过充电插头(ladestecker)的通信)连接到后端服务器。
30、在传输特性特征之后,在使用特性特征的情况下确定启用列表的数据项。这尤其是可以包括按照数据项过滤所述启用列表,所述数据项与请求相关,亦即,所述数据项与所传输的特性特征中的一个或多个相匹配。通过将特性特征传输给后端服务器和过滤对于该具体的车辆当前的和必要时还有将来相关的数据项的该可选的优化步骤,防止了将如下数据项传输回车辆,所述数据项完全不相关,因为这些数据项例如涉及车辆侧服务组件的其它软件版本。在此,可以有意地将比在当前配置中所需的数据更多的数据从后端服务器传输给车辆,例如以便在下一次软件更新之后的时间内在车辆中已经存在数据项。
31、所确定的数据项向车辆的传输尤其是可以在上述通信路径上进行,尤其是通过通信模块或通过移动终端设备进行。
32、在车辆中,所接收的数据项最后被传输到启用模块的数据库中,该启用模块现在基于所接收的数据项确定启用信息。
33、因此,根据该实施方式,在车辆中确定启用信息。这提供了如下优点,即为了确定启用信息可以包括其他信息,这些信息仅存在于车辆中。例如,可以检验车辆故障存储器是否包含故障代码,或者车辆是否位于特定地理位置。另一优点是,车辆可以独立地并且直接地也对改变(例如服务组件的软件更新)作出响应并且可以独立地生成启用信息,而在此不需要依赖于与后端服务器的在线通信。于是这尤其是在大量有效数据项(例如还没有超过有效性时间段)已经存在于车辆中的情况下是可能的。
34、在一种备选实施方式中,由后端服务器进行启用信息的确定,并且该方法还包括以下步骤:
35、确定协作服务交付的特性特征;
36、借助移动终端设备和/或借助车辆的通信模块将特性特征传输给后端服务器,其中,启用列表存储在后端服务器上;
37、通过后端服务器此外在使用协作服务特性特征的情况下确定启用信息;
38、尤其是借助移动终端设备和/或借助车辆的通信模块将启用信息从后端服务器传输给车辆;
39、将启用信息传输给启用模块。
40、可选地,该方法还可以包括以下步骤:
41、通过启用模块对启用信息的有效性进行(一次性或重复性的)评估,尤其是在使用协作服务交付的相应当前特性特征)的情况下进行评估。
42、与之前描述的实施方式的主要区别在于,启用信息的确定在后端服务器上而不是在车辆中进行。这以如下为前提,即,用于确定启用信息的所有需要信息存在于后端服务器中。然而,该实施方式的一个优点在于,仅必需将启用信息而不是启用列表的数据项从后端服务器传输回车辆。启用信息可以具有比(可能很大)数量的数据项数量显著更少的数据量。由此,车辆与后端服务器或车辆与移动终端设备之间的通信连接更少地受负载并且可以更有效地被使用。此外,用于在后端中确定启用信息的逻辑可以随时更新并且必要时也可以用其他数据源补充。
43、通过启用模块对启用信息的有效性进行的可选评估在此可以一次性地或重复性地进行。重复评估的优点在于,在此期间改变的特性特征可导致重新改变的评估。重复评估可以由特性特征的变化(例如,软件更新、配置变化)触发,或者以确定的时间间隔、或与车辆的启动或休眠过程相关联。此外,可以根据对服务交付的请求进行重复评估。
44、在一种实施方式中,根据启用信息启用至少一个接口可以包括以下步骤中的至少一个:
45、激活软件接口,尤其是用于被车辆侧服务组件所使用的软件接口;
46、激活所述车辆的硬件组件;
47、在车辆中启动软件进程;
48、激活通信接口、尤其是车载网络接口或网络端口,和/或在车辆中的网络连接;
49、激活和/或扩展至外部服务组件的接口、尤其是通信接口;
50、在车辆中提供启用信息。
51、根据该实施方式,可以在车辆中激活提供服务所需的对于服务交付必要的接口或(软件)进程。为了实现尽可能高的安全性,在此优选的是,按照标准地停用车辆中的接口或进程。
52、接口的激活或停用可以利用按照iso 26262(汽车功能安全(automotivefunctional safety))和/或iso 21434(汽车网络安全(automotive cybersecurity))开发的机制来进行。
53、在一种实施方式中,服务(协作服务交付)可以是对车辆的停车采暖装置、喇叭或锁定系统的控制。
54、在一种实施方式中,所述启用列表的至少一个数据项,优选地每个数据项包括以下数据中的一个或多个:
55、一组车辆侧服务组件的属性;
56、一组外部服务组件的属性;
57、一组服务和/或服务范围的识别标志;
58、一组车辆的属性,尤其是车辆标志、硬件和软件组件、车辆装备、车辆注册的国家、车辆用户的国家、车辆的地理位置;
59、一组外部服务组件的执行环境的属性,尤其是接口、硬件、操作系统的版本。
60、在此,启用信息的确定包括与车辆侧服务组件的至少一个属性和/或外部服务组件或其执行环境的至少一个属性和/或车辆的至少一个属性进行比较。
61、在此,所述组如已描述的那样尤其是可以以白名单或者黑名单的形式描述。
62、在一种实施方式中,所述启用列表的至少一个数据项还可以包括有效性时间段说明。启用信息的确定在此可以包括将数据项的有效性时间段说明与车辆的系统时间和/或外部服务组件的执行环境的系统时间和/或在线或通过卫星提供的系统时间进行比较。
63、同样,由后端服务器发出的启用信息可以包括有效性时间段说明。
64、优选地,如果车辆的系统时间和/或车辆组件的系统时间在由有效性时间段说明确定的范围之外,则不提供服务或以减少的服务范围提供服务。优选地,保护所使用的系统时间免受操纵,例如通过防止车辆中的系统时间复位的保护机制或者通过与可信的时间服务器进行比较来进行保护。
65、具体地,在所述实施方式中,可以给数据项设置有效期,该有效期例如被规定为在启用列表中的数据项公开之后的30天。因此,只要没有提供具有延长的有效期的新的数据项,相关的服务在车辆中能运行最多30天。由此可以防止由于没有更新数据项而提供根据当前的启用列表不再允许的服务。
66、相应的内容适用于通过后端服务器提供的启用信息的有效性时间段说明。
67、在另一实施方式中,所述启用列表的至少一个数据项还可以包括地理区域说明,并且确定启用信息可以包括将所述数据项的地理区域说明与所述车辆的(地理)位置和/或所述外部服务组件的执行环境的(地理)位置进行比较。
68、在此,地理区域说明例如可以由国家或描述地区的地理坐标的集组成。此外,地理区域说明可以由诸如道路类型(例如,高速公路、地方公路、交叉路口)、道路名称、城市、以及兴趣点的特定类别(例如,加油站、机场、交通灯)周围的地理围栏的元素组成。通过该实施方式,可以仅在特定地理区域中、例如在特定国家中允许或不允许特定服务。
69、在另一实施方式中,所述启用列表的至少一个数据项和/或所述启用信息可以数字地签名,并且所述方法还具有以下步骤:
70、通过启用模块来验证数据项的至少一个数字签名和/或启用信息的至少一个数字签名。
71、优选地,如果数字签名的验证失败,则启用模块不授权或者仅在有限的范围内授权提供服务。
72、该实施方式通过检验各个数据项的完整性来附加地提高服务交付的安全性。如果数据项被恶意地改变或者启用信息由于传输错误所歪曲,则导致数字签名无效。在这种情况下通过(预防性地)限制或阻止服务交付,附加地提高车辆安全性。
73、在另一实施方式中,启用列表的至少一个数据项可包括至少一个检验条件。检验条件尤其可以是在车辆中不存在故障代码或者车辆的软件模块的数字签名的有效性。此外,检测条件可以涉及当前的车辆状态或运行状态的特性、车辆功能的当前状态或数据、车辆的传感器测量的当前值或外部服务或其执行环境的当前运行状态。此外,该方法还可以包括以下步骤:
74、确定在车辆中是否满足所述检验条件。
75、同样优选的是,当不满足检验条件时,启用模块不授权或仅在有限的范围内授权用于提供服务的启用。确定是否满足检验条件在此也可以重复地在特定的时刻或事件或连续地进行。
76、这得到与在前述实施方式中类似的优点。
77、此外,所述任务通过一种计算机可读的存储介质得到解决。所述计算机可读存储介质包含指令,当通过至少一个处理器执行所述指令时,所述指令使至少一个处理器实现如上所述的方法。
78、此外,该任务通过车辆中的启用模块来解决。在此,启用模块优选构成为用于执行以下步骤中的一个或多个:
79、确定在车辆中、尤其是在车辆侧服务组件与外部服务组件之间的协作服务交付的特性特征;
80、接收和/或发送关于在所述车辆中提供服务的请求,其中,所述请求包括外部服务组件的识别标志和/或车辆侧服务组件的识别标志;
81、从移动终端和/或车辆的通信模块接收启用列表的数据项,并将所述数据项存储在启用模块的数据库中;
82、在使用启用列表的情况下,尤其是还在使用协作服务交付的相应当前特性特征的情况下确定和/或接收用于协作服务交付的启用信息;
83、根据所述启用信息,尤其是借助如下描述的隔离模块,启用至少一个用于车辆侧服务组件和/或用于外部服务组件的(车辆侧)接口,以便提供服务;
84、存储所确定的或所接收的、尤其是用于后续使用的启用信息;
85、对启用信息检验有效性、尤其是时间有效性和/或地理有效性,必要时接着请求新的启用信息;
86、重新确定协作服务交付的特性特征并且验证先前存储的启用信息的有效性鉴于新确定的特性特征是否继续存在。
87、在启用模块方面得到与已经结合根据本发明的方法描述的技术优点和效果类似的技术优点和效果。
88、此外,该任务通过车辆中的隔离模块来解决。在此,隔离模块可配置用于,促使车辆的至少一个控制设备和/或软件组件激活或停用用于车辆侧服务组件和/或用于外部服务组件的接口,尤其是通过以下方式中的至少一种:
89、尤其是在所述车辆或所述车辆侧服务组件的操作系统层面上允许或阻止软件的执行;
90、尤其是在车辆与车辆侧服务组件之间和/或车辆侧服务组件与外部服务组件之间的通信路径上转发或吸收数据和/或控制指令;
91、尤其是在车辆与车辆侧服务组件之间和/或在车辆侧服务组件与外部服务组件之间的通信路径上发送故障代码,
92、其中,隔离模块优选与尤其是如上所述的启用模块连接。
93、例如,隔离模块可以在操作系统的层面上(或在操作系统与车辆侧服务组件之间)实现或阻止车辆侧服务组件的软件侧的执行。
94、此外,隔离模块可被实现为在车辆api与车辆侧服务组件之间的代理,以确保由车辆提供的接口与车辆侧或外部服务组件之间的访问控制。备选地,隔离模块可以实现为在车辆侧服务组件与外部服务组件之间的代理,并且因此确保在车辆侧或外部服务组件的相应接口之间的访问控制。
95、访问控制也可以分别通过如下方式来表明,即通过返回标准值(例如"0")或故障值(例如"oxff")或者在api中设置的故障代码来调节访问。
96、优选地,隔离模块能够在多个服务中单独地为每个服务和每个接口执行所述访问控制。
97、在隔离模块方面得到与已经结合根据本发明的方法描述的技术优点和效果类似的技术优点和效果。
98、此外,该任务通过一种车辆来实现,该车辆具有:
99、如上所述的启用模块和至少一个如上所述的隔离模块,其尤其是用于实现如上所述的方法;
100、至少一个车辆侧服务组件;
101、通信模块。
102、在此,所述车辆构成为用于在使用至少一个车辆侧服务组件和外部服务组件的情况下交付服务,尤其是作为协作服务交付来进行交付。
103、优选地,所述车辆还具有位置确定模块,尤其是gps模块和/或用于确定在车辆内部或车辆外部提供的系统时间的机制。
104、在车辆方面得到与已经结合根据本发明的方法描述的技术优点和效果类似的技术优点和效果。
105、此外,所述任务通过一种系统解决,该系统尤其是用于执行如上所述的方法。该系统包括:
106、如上所述的车辆;
107、外部服务组件;
108、后端服务器。
109、在一种优选的实施方式中,该系统还具有移动终端设备,该移动终端设备构成为用于:
110、将车辆的协作服务交付的特性特征传输给后端服务器;和/或
111、从后端服务器调用启用列表的数据项并且将其传输到启用模块的数据库中;和/或
112、从后端服务器调用启用信息并且将其传输给启用模块。
113、该实施方式是有利的,因为移动终端设备、尤其是商业上通用的智能电话一方面支持通过不同的网络(例如移动无线电网络、wlan、…)的通信,而车辆的通信模块可能限于特定的无线电技术、例如限于移动无线电网络。另一方面,移动终端通常位于可以实际建立这种连接的环境中(例如,通过足够的移动无线电网络接收,移动终端设备附近的wlan网络,…)。如果通信模块仅能够通过移动无线电通信并且车辆位于不存在足够信号接收的地下停车场或偏远地点,则通信模块可能无法建立到服务器的连接。
114、在此关联中,可以有利地利用:在a)通过移动终端设备从后端服务器调用启用列表的数据项,在从车辆向移动终端设备传输必要的信息之后与b)从移动终端设备向车辆传输数据项之间可存在时间间隔。例如,根据a)的数据项的调用可以例如通过在智能电话上的bmw应用在如下时刻并且在如下地点处进行,在该时刻和地点处智能电话可以经由wlan建立因特网连接。根据b)的将数据项传输给车辆可以后续在车辆中进行,例如其方式为,智能电话建立与车辆的主单元的蓝牙或wlan连接,该主单元将所接收的数据项经由车辆车载网络转发给启用模块。
115、换言之,移动终端可用作临时存储器,以便能实现对启用模块的内部数据库的更新,用于车辆无法通过通信模块建立到后端服务器的连接的情况。
116、此外,在系统方面得到与已经结合根据本发明的方法描述的类似的技术优点和效果。
117、不言而喻,关于根据本发明的方法所描述的特征和由此分别可实现的优点可以应用或转用到根据本发明的装置上并且反之亦然。
118、具体地,在本发明的本说明书的上下文中,装置的组件构成为用于执行根据本发明的方法步骤。同样,根据本发明的装置的上述组件的功能可用作根据本发明的方法的方法步骤。