车辆控制指令生成方法、车辆控制指令执行方法与流程

摘要: 本技术涉及车辆,具体而言,涉及一种车辆控制指令生成方法、车辆控制指令执行方法。背景技术:1、车载乘员监控系统(occupancymonitoringsystem...
车辆控制指令生成方法、车辆控制指令执行方法与流程

本技术涉及车辆,具体而言,涉及一种车辆控制指令生成方法、车辆控制指令执行方法。

背景技术:

1、车载乘员监控系统(occupancy monitoring system ,oms)电机的控制是智能座舱舒适性与功能安全的关键环节。在当前的整车电子电气架构中,常采用android系统承担上层人机交互与多应用生态,并依托yocto/qnx等实时性较强的底层系统执行物理硬件驱动。

2、为实现电机启停、开闭等控制指令的跨层传输,现有技术普遍采用跨系统通信方案,其核心交互模式为:基于通用socket网络通信、自定义串口协议或依托操作系统原生提供的标准跨进程通信接口进行数据传输,从而建立android端与yocto/qnx底层系统间的数据通道。其中,由android应用端直接发送结构化指令,yocto/qnx底层服务端接收后解析并驱动电机执行。

3、然而,上述通用的跨系统通信架构主要着眼于连接建立与数据传输的基本功能性,未充分考虑车载控制场景对功能安全与信息安全的要求,导致难以满足当前车载智能控制系统对高可靠和高安全通信机制的需求。

技术实现思路

1、本技术实施例的目的在于提供一种车辆控制指令生成方法、车辆控制指令执行方法,用以通过在指令发起方对车载应用程序进行身份校验和指令校验,以生成安全性较高的标准指令信息,使得指令执行方基于该安全的标准指令信息对车辆的电子执行单元进行控制,提高了车载智能控制的安全性。

2、第一方面,本技术实施例提供一种车辆控制指令生成方法,该方法应用于指令发起方;该方法包括:响应于目标车载应用程序发起的接口调用请求,对目标车载应用程序进行身份校验;其中,接口调用请求包括控制指令;若判定目标车载应用程序身份校验通过,对控制指令进行指令合法性校验;若判定控制指令合法,对控制指令进行封装,生成标准指令信息,并将标准指令信息发送给指令执行方,以使指令执行方基于标准指令信息对车辆的电子执行单元进行控制。

3、本技术实施例中,通过响应于目标车载应用程序发起的接口调用请求,对目标车载应用程序进行身份校验,使得接入的目标车载应用程序是合法的,防止非授权车载应用程序调用车载控制接口,降低恶意应用程序访问的风险。进一步的,在目标车载应用程序身份合法后,对接口调用请求中的控制指令进行指令合法性校验,防止非法指令对车辆的电子执行单元进行控制。因此,经身份校验和指令校验后,生成安全的标准指令信息,并发送给指令执行方,使其基于该安全的标准指令信息对车辆的电子执行单元进行控制,从而提高了车载智能控制的安全性。

4、在一些实施例中,其中,接口调用请求包括第一app包名;响应于目标车载应用程序发起的接口调用请求,对目标车载应用程序进行身份校验,包括:响应于目标车载应用程序发起的接口调用请求,获取目标车载应用程序的第二app包名;若判定第一app包名与第二app包名相同,且在预设只读白名单中,对目标车载应用程序进行签名校验,以对目标车载应用程序进行身份校验。

5、本技术实施例中,考虑到存在恶意应用程序伪造合法包名,从而无法区分合法应用与仿冒应用,因此,将接口调用请求中的第一app包名、直接获取的第二app包名和只读白名单三者一起比较,只有三者都相同,才认定包名合法;进一步的,考虑到单纯判断包名来进行身份验证依然存在安全风险,还对应用程序的签名进行校验,只有包名合法且签名校验通过,才认定目标车载应用程序的身份合法,提高了身份验证的安全性,从而防止非授权车载应用程序调用车载控制接口,降低恶意应用程序访问的风险。

6、在一些实施例中,其中,接口调用请求还包括指令优先级;若判定控制指令合法,对控制指令进行封装,生成标准指令信息,包括:若判定控制指令合法,对控制指令绑定当前时间戳和随机数,生成校验指令;对校验指令进行crc校验计算,生成crc校验值;将第一app包名、控制指令、当前时间戳、随机数、crc校验值和指令优先级进行封装,生成标准指令信息。

7、本技术实施例中,由于控制指令需要发送给指令执行方进行执行,若直接将控制指令进行发送,在发送过程中,易被抓包篡改和复制重放。因此,为提高指令在传输过程中的完整性和安全性,以及车载智能控制的安全性,对控制指令绑定当前时间戳和随机数,并进行crc校验,同时将控制指令与其他参数一起封装生成标准指令信息进行发送。

8、在一些实施例中,该方法还包括:若判定第一app包名与第二app包名不同,或者第一app包名与第二app包名相同,但不在预设只读白名单中,返回不可信应用错误;若判定签名校验不通过,返回非系统应用错误;若判定控制指令为非法指令,触发重试机制,直至满足重试结束条件。

9、本技术实施例中,通过对异常执行差异化处理,避免出现有效指令失效,非法指令反复重试占用系统资源的问题,从而提高异常处理的准确性以及车载智能控制的稳定性。

10、第二方面,本技术实施例提供一种车辆控制指令执行方法,该方法应用于指令执行方,该方法包括:接收标准指令信息;其中,标准指令信息根据第一方面的任意一个实施例的方法步骤生成;标准指令信息包括第一app包名和控制指令;若判定第一app包名在预设只读白名单中,对控制指令进行完整性校验;若判定完整性校验通过,则执行控制指令,以对车辆的电子执行单元进行控制。

11、本技术实施例中,指令执行方在接收标准指令信息后,对标准指令信息中的第一app包名和控制指令进行再次校验,校验通过后再执行控制指令,进一步提高了车载智能控制的安全性。

12、在一些实施例中,在接收标准指令信息之后,该方法还包括:对标准指令信息进行解析,获得第一app包名、控制指令、当前时间戳、随机数和crc校验值;若判定第一app包名在预设只读白名单中,对控制指令进行完整性校验,包括:若判定第一app包名在预设只读白名单中,基于控制指令、当前时间戳和随机数进行crc校验计算,生成新crc校验值;若判定新crc校验值与crc校验值相同,则确定控制指令完整。

13、本技术实施例中,通过执行crc校验来验证控制指令的完整性,提高了指令校验的准确性。

14、在一些实施例中,该方法还包括:将当前时间戳和随机数与缓存的历史指令的历史时间戳和历史随机数进行比对;若判定当前时间戳与历史时间戳一致,且随机数与历史随机数一致,则返回非法指令错误;否则,基于当前时间戳和随机数对历史时间戳和历史随机数进行更新。

15、本技术实施例中,通过将当前时间戳和随机数与缓存的历史指令的历史时间戳和历史随机数进行比对,若判定当前时间戳与历史时间戳一致,且随机数与历史随机数一致,则返回非法指令错误,从而能够有效识别和防止重放攻击,提高了车载智能控制的安全性

16、在一些实施例中,其中,标准指令信息还包括指令优先级;若判定完整性校验通过,则执行控制指令,以对车辆的电子执行单元进行控制,包括:在预设时间窗口内,执行指令优先级最高的控制指令,以对车辆的电子执行单元进行控制;若在预设时间窗口内,多个控制指令的指令优先级均相同,则执行预设时间窗口内最后接收的控制指令,以对车辆的电子执行单元进行控制。

17、本技术实施例中,通过在预设时间窗口内,按照指令优先级执行优先级最高的控制指令,以及在预设时间窗口内,若多个控制指令的指令优先级均相同,则执行预设时间窗口内最后接收的控制指令,以对车辆的电子执行单元进行控制,避免了多指令并发时出现的指令交替执行,无效指令覆盖有效指令、以及频繁对车辆的电子执行单元执行控制的问题发生,提高了车载智能控制的安全性和稳定性。

18、在一些实施例中,该方法还包括:在预设时间窗口内,获取当前正在执行的指令;若判定控制指令与当前正在执行的指令冲突,则限制控制指令的执行。

19、本技术实施例中,若判定控制指令与当前正在执行的指令冲突,则限制控制指令的执行,在这个过程中,通过防抖机制,进一步避免了多指令并发时出现的指令交替执行,无效指令覆盖有效指令、以及频繁对车辆的电子执行单元执行控制的问题发生,提高了车载智能控制的安全性和稳定性。

20、第三方面,本技术实施例提供一种车辆控制系统,该系统包括指令发起方和执行执行方;指令发起方与指令执行方通信连接;其中,指令发起方执行第一方面的任意一个实施例的方法步骤;指令执行方执行第二方面的任意一个实施例的方法步骤。

21、第四方面,本技术实施例提供一种电子设备,包括:处理器和存储器,存储器存储有处理器可执行的机器可读指令,机器可读指令被处理器执行时能够执行第一方面、第二方面或这两方面的任意一个实施例的方法步骤。

22、第五方面,本技术实施例提供一种计算机可读存储介质,包括:计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器运行时执行第一方面、第二方面或这两方面的任意一个实施例的方法步骤。

23、第六方面,本技术实施例提供一种计算机程序产品,包括:计算机程序指令,计算机程序指令被处理器运行时执行第一方面、第二方面或这两方面的任意一个实施例的方法步骤。

24、本技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术实施例了解。