车载设备的升级方法和装置与流程

文档序号:25992056发布日期:2021-07-23 21:04阅读:83来源:国知局
车载设备的升级方法和装置与流程

本申请涉及车连网技术领域,尤其涉及一种车载设备的升级方法和装置。



背景技术:

对车载设备的固件和软件进行远程无线升级是未来工作在车联网中的车辆的一项必不可少的功能。而车载设备的固件和软件的传统升级方法是将车辆招回后进行升级,该方法由于升级周期长,导致升级效率低下。

因此,车载设备的升级应该采用更灵活的远程升级(ota)的方式。然而,车辆上车载设备的升级具有其特殊性,即可能一次升级过程中包括多个具有升级依赖关系的车载设备,比如a设备的升级需要依赖于b设备和c设备的升级完成,其中b设备和c设备为被依赖设备,a为依赖设备。因此如何确保被依赖设备升级后,依赖设备才能升级是亟需解决的技术问题。



技术实现要素:

本申请实施例提供一种车载设备的升级方法和装置,确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,即保证了正确的升级顺序,进而保证了各车载设备的正常运行。

第一方面,本申请实施例提供一种车载设备的升级方法,包括:第二车载设备确定所述第二车载设备升级成功;所述第二车载设备向第一车载设备发送第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于所述第一车载设备的第一升级文件加密获得。

本方案中,在第一车载设备的升级需要第二车载设备升级完成时,第二车载设备确定第二车载设备升级成功后向第一车载设备发送第一子密钥,第一子密钥用于构建解密第一密文的第一密钥,第一密文基于所述第一车载设备的第一升级文件加密获得。保证了第二车载设备升级完成时,第一车载设备才会升级,确保了升级的正确顺序,保证了车载设备的正常运行。

在一种可能的实施方式中,在所述第二车载设备确定所述第二车载设备升级成功之前,还包括:所述第二车载设备接收第二密文,所述第二密文基于所述第二车载设备的第二升级文件和第一子密钥加密获得;所述第二车载设备对所述第二密文解密,得到所述第一子密钥。

本方案中提供了第二车载设备获取第一子密钥的一种具体实现:用于构建第一密钥的第一子密钥用于生成第二车载设备的第二升级文件的密文,这样第二密文被解密后,第二车载设备才能得到第一子密钥,提高了第二子密钥在传输过程中的安全性。

在一种可能的实施方式中,在所述第二车载设备确定所述第二车载设备升级成功之前,还包括:所述第二车载设备接收所述第一子密钥。其中,第一子密钥可以事明文还可以是密文。

本方案中提供了第二车载设备获取第一子密钥的另一种具体实现:该种方案中,第二车载设备获取第一子密钥的效率较高,提高了车载设备的升级效率。同时,也节省了服务器的功耗。

第二方面,本申请实施例提供一种车载设备的升级方法,包括:第一车载设备接收第一密文,所述第一密文基于所述第一车载设备的第一升级文件加密获得;所述第一车载设备接收第一子密钥和第二子密钥,所述第一子密钥和所述第二子密钥用于构建解密第一密文的第一密钥;所述第一车载设备根据所述第一子密钥、所述第二子密钥和所述第一密文进行升级。

本方案中,第一车载设备获取到第一密钥被分成的多个子密钥后,恢复或构建第一密钥,以解密第一密文,保证了第一车载设备的正常升级。

在一种可能的实施方式中,所述第一车载设备接收第一子密钥和第二子密钥,包括:所述第一车载设备从第一设备接收所述第一子密钥;所述第一车载设备从第二设备接收所述第二子密钥;所述第一设备为第二车载设备,所述第二设备为所述第一车载设备所在的车辆或第三车载设备。

本方案中,在第一车载设备的升级需要第二车载设备升级完成时,第一密钥被分成的各子密钥中的第一子密钥在第二车载设备中,第二车载设备升级完成后,第一车载设备从第二车载设备接收到第一子密钥,之后才能构建解密第一密文的第一密钥,以解密第一密文完成升级。保证了第二车载设备升级完成时,第一车载设备才会升级,确保了升级的正确顺序,保证了车载设备的正常运行。

在一种可能的实施方式中,还包括:所述第一车载设备接收所述第二车载设备的标识;或者,所述第一车载设备接收所述第二车载设备和所述第三车载设备的标识。

本方案可以使得第一车载设备获知其升级所依赖的车载设备,能够确定是否接收到了第一密钥被分成的各子密钥,及可保证恢复出正确的第一密钥以完成升级。

第三方面,本申请实施例提供一种车载设备的升级方法,包括:车辆向第一车载设备发送第一密文,所述第一密文基于所述第一车载设备的第一升级文件加密获得;所述车辆向所述第一车载设备发送第二子密钥,所述第二子密钥用于构建解密所述第一密文的第一密钥。

本方案中,车辆向第一车载设备发送第一密文和用于构建解密所述第一密文的第一密钥的第二子密钥,以使第一车载设备恢复或构建第一密钥,保证了第一车载设备的正常升级。

在一种可能的实施方式中,还包括:所述车辆向第二车载设备发送第一子密钥,所述第二子密钥用于构建所述第一密钥。

本方案中第二车载设备获取第一子密钥的效率较高,提高了车载设备的升级效率。同时,也节省了服务器的功耗。

在一种可能的实施方式中,还包括:所述车辆接收升级策略,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

本方案可以使得车辆根据升级策略管理车辆的正常升级。

在一种可能的实施方式中,所述方法还包括:所述车辆向所述第一车载设备发送所述第二车载设备的标识。

本方案可以使得第一车载设备获知其升级所依赖的车载设备,能够确定是否接收到了第一密钥被分成的各子密钥,及可保证恢复出正确的第一密钥以完成升级。

第四方面,本申请实施提供一种车载设备的升级方法,包括:服务器基于第一信息生成第二密文,所述第一信息包括第二车载设备的第二升级文件和第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得;所述服务器向所述第二车载设备发送所述第二密文。

本方案中将第一子密钥用于第二车载设备的第二升级文件的第二密文的生成,在第一车载设备的升级需要第二车载设备升级完成时,第二车载设备可以获取到第一子密钥,并在确定第二车载设备升级成功后向第一车载设备发送第一子密钥,以使第一车载设备完成升级。保证了第二车载设备升级完成时,第一车载设备才会升级,确保了升级的正确顺序,保证了车载设备的正常运行。

在一种可能的实施方式中,所述第一信息还包括:所述第一车载设备的第一标识,所述第一标识和所述第一子密钥相关联。

本方案可以使得第二车载设备获知子密钥应该发送的设备,保证了升级的正常进行。

在一种可能的实施方式中,所述第一信息还包括指示信息,所述指示信息指示各依赖车载设备的数目,所述依赖车载设备的升级依赖于所述第二车载设备的升级完成,各所述依赖设备包括所述第一车载设备。

本方案可以保证升级的正常进行,

在一种可能的实施方式中,所述第一信息还包括所述第二车载设备的类型标识。

本方案可以使得第二车载设备获知自身的类型,以正常完成升级。

在一种可能的实施方式中,还包括:所述服务器向车辆发送第二子密钥,所述第二子密钥用于构建所述第一密钥。

本方案可以使得车辆向第一车载设备发送用于构建解密所述第一密文的第一密钥的第二子密钥,以使第一车载设备恢复或构建第一密钥,保证了第一车载设备的正常升级。

在一种可能的实施方式中,还包括:所述服务器向车辆发送升级策略;所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

本方案可以使得车辆根据升级策略管理车辆的正常升级。

第五方面,本申请实施提供一种车载设备的升级方法,包括:第二车载设备确定所述第二车载设备升级成功;所述第二车载设备向车辆发送第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得。

本方案中,在第一车载设备的升级需要第二车载设备升级完成时,第一密钥被分成的各子密钥中的第一子密钥在第二车载设备中,第二车载设备升级完成后,车辆从第二车载设备接收到第一子密钥,之后才能构建解密第一密文的第一密钥,并发送至第一车载设备以解密第一密文完成升级。保证了第二车载设备升级完成时,第一车载设备才会升级,确保了升级的正确顺序,保证了车载设备的正常运行。

在一种可能的实施方式中,在第二车载设备确定所述第二车载设备升级成功之前,还包括:所述第二车载设备接收第二密文;所述第二密文基于所述第二车载设备的第二升级文件和第一子密钥加密获得;所述第二车载设备对所述第二密文解密,得到所述第一子密钥。

本方案中提供了第二车载设备获取第一子密钥的一种具体实现:用于构建第一密钥的第一子密钥用于生成第二车载设备的第二升级文件的密文,这样第二密文被解密后,车辆才能得到第一子密钥,提高了第二子密钥在传输过程中的安全性。

第六方面,本申请实施提供一种车载设备的升级方法,包括:车辆接收第一子密钥和第二子密钥;所述第一子密钥和第二子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得;所述车辆根据第一子密钥和第二子密钥构建所述第一密钥;所述车辆向所述第一车载设备发送所述第一密钥。

本方案中在第一车载设备的升级需要第二车载设备升级完成时,第一密钥被分成的各子密钥中的第一子密钥在第二车载设备中,第二车载设备可在升级完成后,将第一子密钥发送至车辆,车辆从第二车载设备接收第一子密钥,之后才能根据接收的第二子密钥和第一子密钥构建解密第一密文的第一密钥,并发送至第一车载设备以解密第一密文完成升级。保证了第二车载设备升级完成时,第一车载设备才会升级,确保了升级的正确顺序,保证了车载设备的正常运行。

在一种可能的实施方式中,所述车辆接收第一子密钥和第二子密钥,包括:所述车辆从第一设备接收第一子密钥;所述车辆从第二设备接收第二子密钥;所述第一设备为第二车载设备,所述第二设备为服务器或第三车载设备。

本方案中给出了车辆接收第一子密钥和第二子密钥的两种具体的实现,若第一子密钥和第二子密钥均是从车载设备接收到的,则可以降低服务器的功耗。

第七方面,本申请实施提供一种升级装置,包括:处理模块,用于确定升级装置升级成功;收发模块,用于向第一车载设备发送第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于所述第一车载设备的第一升级文件加密获得。

在一种可能的实施方式中,在所述处理模块确定所述升级装置升级成功之前:所述收发模块还用于接收第二密文,所述第二密文基于所述升级装置的第二升级文件和第一子密钥加密获得;所述处理模块,还用于对所述第二密文解密,得到所述第一子密钥。

在一种可能的实施方式中,在所述处理模块确定所述升级装置升级成功之前,所述收发模块还用于接收所述第一子密钥。

第八方面,本申请实施提供一种升级装置,包括:收发模块,用于接收第一密文,所述第一密文基于升级装置的第一升级文件加密获得;所述收发模块,还用于接收第一子密钥和第二子密钥,所述第一子密钥和所述第二子密钥用于构建解密第一密文的第一密钥;处理模块,用于根据所述第一子密钥、所述第二子密钥和所述第一密文进行升级。

在一种可能的实施方式中,所述收发模块,具体用于:从第一设备接收所述第一子密钥;从第二设备接收所述第二子密钥;所述第一设备为第二车载设备,所述第二设备为所述升级装置所在的车辆或第三车载设备。

在一种可能的实施方式中,所述收发模块,还用于接收所述第二车载设备的标识;或者,所述收发模块,还用于接收所述第二车载设备和所述第三车载设备的标识。

第九方面,本申请实施提供一种升级装置,包括:收发模块,用于向第一车载设备发送第一密文,所述第一密文基于所述第一车载设备的第一升级文件加密获得;所述收发模块,还用于向所述第一车载设备发送第二子密钥,所述第二子密钥用于构建解密所述第一密文的第一密钥。

在一种可能的实施方式中,所述收发模块,还用于向第二车载设备发送第一子密钥,所述第一子密钥用于构建所述第一密钥。

在一种可能的实施方式中,所述收发模块,还用于接收升级策略,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

在一种可能的实施方式中,所述收发模块,还用于向所述第一车载设备发送所述第二车载设备的标识。

第十方面,本申请实施提供一种升级装置,包括:处理模块,用于基于第一信息生成第二密文,所述第一信息包括第二车载设备的第二升级文件和第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得;收发模块,用于向所述第二车载设备发送所述第二密文。

在一种可能的实施方式中,所述第一信息还包括:所述第一车载设备的第一标识,所述第一标识和所述第一子密钥相关联。

在一种可能的实施方式中,所述第一信息还包括指示信息,所述指示信息指示各依赖车载设备的数目,所述依赖车载设备的升级依赖于所述第二车载设备的升级完成,各所述依赖设备包括所述第一车载设备。

在一种可能的实施方式中,所述第一信息还包括所述第二车载设备的类型标识。

在一种可能的实施方式中,所述收发模块,还用于向车辆发送第二子密钥,所述第二子密钥用于构建所述第一密钥。

在一种可能的实施方式中,所述收发模块,还用于向车辆发送升级策略;所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

第十一方面,本申请实施提供一种升级装置,包括:处理模块,用于确定所述第二车载设备升级成功;收发模块,用于向车辆发送第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得。

在一种可能的实施方式中,在处理模块确定所述第二车载设备升级成功之前,所述收发模块还用于接收第二密文;所述第二密文基于所述第二车载设备的第二升级文件和第一子密钥加密获得;所述处理模块还用于对所述第二密文解密,得到所述第一子密钥。

第十二方面,本申请实施提供一种升级装置,包括:收发模块,用于接收第一子密钥和第二子密钥;所述第一子密钥和第二子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得;处理模块,用于根据第一子密钥和第二子密钥构建所述第一密钥;所述收发模块,还用于车辆向所述第一车载设备发送所述第一密钥。

在一种可能的实施方式中,所述收发模块具体用于从第一设备接收第一子密钥;从第二设备接收第二子密钥;所述第一设备为第二车载设备,所述第二设备为服务器或第三车载设备。

第十三方面,本申请实施提供一种升级设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面或第一方面任一可能的实施方式中所述的方法或者第二方面或第二方面任一可能的实施方式中所述的方法或者第三方面或第三方面任一可能的实施方式中所述的方法或者第四方面或第四方面任一可能的实施方式中所述的方法。

第十四方面,本申请实施提供一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行第一方面或第一方面任一可能的实施方式中所述的方法或者第二方面或第二方面任一可能的实施方式中所述的方法或者第三方面或第三方面任一可能的实施方式中所述的方法或者第四方面或第四方面任一可能的实施方式中所述的方法。

附图说明

图1为本实施例提供的系统架构图;

图2为本申请实施例提供的车载设备的升级方法的交互图一;

图3为本申请实施例提供的升级文件示意图;

图4为本申请实施例提供的n份受托密钥单元的一种示意图;

图5为本申请实施例提供用于生成升级文件的密文的第一信息包括的内容的一种示意图;

图6为本申请实施例提供用于生成升级文件的密文的第一信息包括的内容的另一种示意图;

图7为本申请实施例提供用于生成升级文件的密文的第一信息包括的内容的又一种示意图;

图8为本申请实施例提供的用于生成升级文件的密文的第二信息的一种示意图;

图9为本申请实施例提供的车载设备的升级方法的交互图二;

图10为本申请实施例提供的车载设备的升级方法的交互图三;

图11为本申请实施例提供的车载设备的升级方法的交互图四;

图12为本申请实施例提供的车载设备的升级方法的交互图五;

图13为本申请实施例提供的车载设备的升级方法的交互图六;

图14为本申请实施例提供的一种升级装置的结构示意图;

图15为本申请实施例提供的电子设备的一种实现方式的示意性框图;

图16为本申请实施例提供的车载设备的升级系统的结构示意图。

具体实施方式

首先对本申请涉及的一些要素进行说明。

1、从升级角度可将车载设备分为如下的1~5个子类型。

(1)、独立车载设备:独立设备的升级不依赖其它任何车载设备的升级完成,也不需要与其它车载设备一同升级。

(2)、依赖车载设备:依赖车载设备的升级需要依赖于至少一个其它车载设备的升级完成,此处的至少一个其它车载设备为依赖车载设备升级所依赖的设备,其中,依赖车载设备升级所依赖的设备在本实施例中称为被依赖车载设备,也就是依赖车载设备需在被依赖车载设备升级完成后才能进行升级。比如,车载设备a的升级需要依赖于车载设备b和车载设备c的升级完成。车载设备b和车载设备c均为车载设备a的被依赖车载设备。

(3)、被依赖车载设备:若其它车载设备需要在车载设备a升级完成后才能升级,则车载设备a为被依赖设备。

(4)、同质车载设备:对于车载设备a,若车辆中还包括其它与车载设备a相同类别的至少一个车载设备b,且车载设备a和至少一个车载设备b需要一同升级。则车载设备a以及至少一个车载设备b互为同质车载设备。比如,车辆上设置有多个麦克风,该多个麦克风互为同质车载设备。

(5)、异质设备:对于车载设备a,若车辆中还包括其它与车载设备a不同类别的至少一个车载设备b,且车载设备a和至少一个车载设备b需要一同升级。则车载设备a以及至少一个车载设备b互为异质设备。

可以理解的是,车载设备的类型可以包括上述1~5中的一种子类型,车载设备的类型还可包括上述2~5中至少两种子类型,比如:车载设备即是依赖车载设备又是同质车载设备,或者,即是依赖车载设备又是异质设备,或者,即是同质车载设备又是异质设备,或者,即是依赖车载设备又是同质车载设备还是异质设备,或者,即是被依赖设备又是依赖设备等等。

2、升级文件包括文件头和文件内容,文件头至少包括如下中的至少一项:设备标识、版本号和文件内容的大小。

图1为本实施例提供的系统架构图,参见图1,该系统架构包括服务器、车辆和车载设备。其中,车辆内的远程升级(overtheair,简称ota)管理平台(orchestrator)用于控制车载设备升级。ota管理平台可包括:电子控制单元(electroniccontrolunit,简称ecu)、人机接口(humanmachineinterface,简称hmi)和bms(batterymanagementsystem,简称bms)。

在一种方式中,服务器可包括升级管理节点和密钥管理节点,车载设备设置在车辆上。

下面采用具体的实施例对本申请的车载设备的升级方法进行说明。在本申请实施例中,采用对称密钥技术,即加密升级文件得到升级文件的密文的密钥与解密密文的密钥相同。

图2为本申请实施例提供的车载设备的升级方法的交互图一。本实施例中涉及任意一个依赖设备的升级方法,在本实施例中任意一个依赖设备称为第一车载设备。参见图2,本实施例的方法包括:

步骤s201、服务器生成第一密文和第二密文,第一密文基于第一车载设备的第一升级文件加密获得,第二密文基于第一信息加密获得,第一信息包括第二车载设备的第二升级文件和第一子密钥,第一子密钥用于构建解密第一密文的第一密钥。

本实施例中的第一车载设备为依赖设备,第二车载设备为被依赖设备,第一车载设备的升级至少依赖第二车载设备的升级完成。可以理解的是,由于车载设备的类型可能包括多个子类型,因此,第一车载设备也有还可能为被依赖设备,第二车载设备还可能为依赖设备。第一车辆设备和第二车载设备为车辆上的各待升级车载设备中的车载设备。

下面对服务器生成第一密文和第二密文的方法进行说明。

服务器在得到第一车载设备的第一升级文件后,生成用于加密第一升级文件的第一密钥。第一升级文件可如图3所示。参见图3,第一升级文件包括文件头和文件内容。接着将第一密钥分成m个子密钥,m为第一车载设备的升级需要依赖的车载设备的数量加1,即第一车载设备的升级需要依赖的m-1车载设备的升级完成,m个子密钥中包括第一子密钥。比如,车载设备1依赖于车载设备2和车载设备3的升级完成,则车载设备1的升级文件的第一密钥被分成3个子密钥。又比如,车载设备1依赖车载设备2、车载设备3和车载设备4的升级完成,则车载设备1的升级文件的第一密钥被分成4个子密钥。其中,m个子密钥中的m-1个子密钥分别被用于生成第一车载设备升级所依赖的m-1个其它车载设备的升级文件的密文,m个子密钥中除了该m-1个子密钥以外的第二子密钥存储在服务器中。若服务器包括升级管理节点和密钥管理节点,则第二子密钥存储在密钥管理节点中。

示例性地,第一车载设备的升级依赖于4个车载设备的升级完成,则第一密钥被分成5个子密钥,其中的第二子密钥存储在服务器中,除了第二子密钥以外的4个子密钥分别用于一车载设备的升级依赖的4个车载设备的升级文件的密文的生成。

第二车载设备为第一车载设备升级所依赖的m-1个其它车载设备中的一个车载设备,m-1个子密钥中包括第一子密钥,第一子密钥用于第二车载设备的第二升级文件的第二密文的生成。下面对服务器第一子密钥用于生成第二密文进行说明。

服务器在得到第二车载设备的第二升级文件后,生成第二密文。第二升级文件也如图3所示。

服务器在生成第二密文之前,生成第一信息。第一信息包括第二车载设备的第二升级文件和上述m个子密钥中的第一子密钥;第一信息还包括第一车载设备的第一标识,第一标识和第一子密钥相关联,第一标识和第一子密钥可称为一份受托密钥分单元。可以理解的是,若还存在其它依赖车载设备的升级需要依赖于第二车载设备的升级完成,则对于每个其它依赖车载设备,第一信息中还包括用于构建解密该其它依赖车载设备的升级文件的密文的密钥的一个子密钥以及与该子密钥关联的该其它依赖车载设备的标识,该子密钥以及与该子密钥关联的该其它依赖车载设备的标识也是一份受托密钥分单元。也就是说,若存在n个依赖车载设备的升级需要依赖于第二车载设备的升级完成,则第一信息中包括n份受托密钥单元。在一种方式中,n份受托密钥单元可与第二升级文件的文件内容的尾部相邻。

n份受托密钥单元的一种示意图如图4所示,参见图4,依赖于第二车载设备的升级完成的依赖车载设备的数量为3:依赖车载设备1、依赖车载设备2和依赖车载设备3,n=3。用于构建解密依赖车载设备1的升级文件的密文的第一密钥被分成4份:子密钥11、子密钥12、子密钥13和子密钥14,用于构建解密依赖车载设备2的升级文件的密文的第一密钥被分成2份:子密钥21、子密钥22,用于构建解密依赖车载设备3的升级文件的密文的第一密钥被分成3份:子密钥31、子密钥32、子密钥33。每份受托密钥单元包括一个依赖于第二车载设备升级完成的依赖车载设备的标识和被分成的多个子密钥中的一个子密钥。

可选地,第一信息中还可包括:指示信息,指示信息指示依赖于第二车载设备的升级完成的依赖车载设备的数目n。在一种方式中,指示信息与第二升级文件的文件内容的尾部相邻,n份受托密钥单元与指示信息相邻。

在第一信息不包括指示信息时,n份受托密钥单元可称为受托密钥内容;在第一信息包括指示信息时,n份受托密钥单元和指示信息可称为受托密钥内容。

可选地,第一信息中还可包括:第二车载设备的类型标识。其中,在第二车载设备的类型包括多个子类型时,第二车载设备的类型标识为多个子类型中优先级较高的子类型的标识。在一种方式中,依赖设备这一子类型的优先级高于异质设备这一子类型的优先级,异质设备这一子类型的优先级高于同质设备这一子类型的优先级,同质设备这一子类型的优先级高于被依赖设备这一子类型的优先级。可选的,第二车载设备的类型标识可添加至第二升级文件的头部,得到新的文件头。

可选地,为了保证第二升级文件的文件内容的完整性,第一信息中还可包括:第一消息认证码(messageauthenticationcode,简称mac)。一种方式中,第一消息认证码可为第二升级文件的文件内容和受托密钥内容的哈希值。另一种方式中,第一消息认证码还可为第一内容和第二内容的哈希值,第一内容为加密后的第二升级文件的文件内容,第二内容为加密后的受托密钥内容。又一种方式中,第一消息认证码还可为第三内容的哈希值,第三内容为对第二升级文件的文件内容和受托密钥内容加密后的内容。

图5为本申请实施例提供用于生成升级文件的密文的第一信息包括的内容的一种示意图。参见图5,第一信息包括第二车载设备的类型标识、第二升级文件的文件头、第二升级文件的文件内容、指示信息和n份受托密钥单元。类型标识位于文件头和文件内容之间,指示信息与第二升级文件的文件内容的尾部相邻,n份受托密钥单元与指示信息相邻。

图6为本申请实施例提供用于生成升级文件的密文的第一信息包括的内容的另一种示意图。参见图6,第一信息包括第二车载设备的类型标识、第二升级文件的文件头、第二升级文件的文件内容、指示信息和n份受托密钥单元和第一消息认证码。类型标识位于文件头和文件内容之间,第一消息认证码与第二升级文件的文件内容的尾部相邻,指示信息与第一消息认证码相邻,n份受托密钥单元与指示信息相邻。

图7为本申请实施例提供用于生成升级文件的密文的第一信息包括的内容的又一种示意图。参见图7,第一信息包括第二车载设备的类型标识、第二升级文件的文件头、第二升级文件的文件内容、指示信息和n份受托密钥单元和第一消息认证码。类型标识位于文件头和文件内容之间,指示信息与第二升级文件的文件内容的尾部相邻,n份受托密钥单元与指示信息相邻,第一消息认证码与n份受托密钥单元相邻。

服务器得到第一信息后,基于第一信息生成第二密文。

在第一种实施方式中,服务器基于第一信息生成第二密文包括如下的a1~a3:

a1、服务器采用第二密钥对第二升级文件的文件内容加密,得到第一内容;其中第二密钥是服务器随机选取的。

a2、服务器采用第二密钥对受托密钥内容加密,得到第二内容。

a3、服务器根据第一内容、第二内容和新的文件头得到第二密文。即第二密文包括第一内容、第二内容和新的文件头。

该实施方式得到第二密文的效率高。

在第二种实施方式中,服务器基于第一信息生成第二密文包括如下的b1~b2:

b1、服务器采用第二密钥对第二升级文件的文件内容和受托密钥内容加密,得到第三内容。

b2、服务器根据第三内容和新的文件头得到第二密文。即第二密文包括第三内容和新的文件头。

该实施方式得到第二密文的效率高。

在第三种实施方式中,服务器基于第一信息生成第二密文包括如下的c1~c4:

c1、服务器采用第二密钥对第二升级文件的文件内容加密,得到第一内容。

c2、服务器采用第二密钥对受托密钥内容加密,得到第二内容。

c3、服务器采用第三密钥对第一消息认证码进行加密,得到第四内容;其中,第二密钥和第三密钥可相同也可不相同,第三密钥也可以是随机选取的。

c4、服务器根据第一内容、第二内容、第四内容和新的文件头得到第二密文。即第二密文包括第一内容、第二内容、第四内容和新的文件头。

该实施方式可以保证第二升级文件的完整性。

在第四种实施方式中,服务器基于第一信息生成第二密文包括如下的d1~d3:

d1、服务器采用第二密钥对第二升级文件的文件内容和受托密钥内容加密,得到第三内容。

d2、服务器采用第三密钥对第一消息认证码进行加密,得到第四内容;

d3、服务器根据第三内容、第四内容和新的文件头得到第二密文。即第二密文包括第三内容、第四内容和新的文件头。

该实施方式可以保证第二升级文件的完整性。

对于第一密文的生成,若第一车载设备为依赖车载设备,不为被依赖车载设备,则服务器基于第二信息生成第一密文。第二信息包括第一车载设备的第一升级文件。

可选的,第二信息还包括第一车载设备的类型标识。其中,在第一车载设备的类型包括多个子类型时,第一车载设备的类型标识为多个子类型中优先级较高的子类型的标识。在一种方式中,依赖设备这一子类型的优先级高于异质设备这一子类型的优先级,异质设备这一子类型的优先级高于同质设备这一子类型的优先级,同质设备这一子类型的优先级高于被依赖设备这一子类型的优先级。可选的,第一车载设备的类型标识可添加至第一升级文件的头部,得到新的文件头。

可选的,第二信息还包括第二消息认证码。第二消息认证码可为第一升级文件的文件内容的哈希值,还可为第五内容的哈希值,第五内容为加密后的第一升级文件的文件内容。

图8为本申请实施例提供的用于生成升级文件的密文的第二信息的一种示意图。参见图8,第二信息包括第一车载设备的类型标识、第一升级文件的文件头、第一升级文件的文件内容和消息认证码。类型标识位于文件头和文件内容之间,消息认证码与第一升级文件的文件内容的尾部相邻。

服务器得到第二信息后,基于第二信息生成第一密文。

在第一种实施方式中,服务器基于第二信息生成第一密文包括如下的e1~e2:

e1、服务器采用第一密钥对第一升级文件的文件内容加密,得到第五内容。

e2、服务器根据第五内容和新的文件头得到第一密文。即第一密文包括第五内容和新的文件头。

该实施方式得到第一密文的效率高。

在第二种实施方式中,服务器基于第二信息生成第一密文包括如下的b1~b2:

f1、服务器采用第一密钥对第二升级文件的文件内容加密,得到第五内容。

f2、服务器采用第四密钥对第二消息认证码进行加密,得到第六内容;其中,第一密钥和第四密钥可相同也可不相同,第四密钥也可以是随机选取的。

f3、服务器根据第五内容、第六内容和新的文件头得到第一密文。即第一密文包括第五内容、第六内容和新的文件头。

该实施方式可以保证第一升级文件的完整性。

对于第一密文的生成,若第一车载设备即为依赖车载设备,还为被依赖车载设备,则服务器生成第一密文同服务器生成第二密文的方法。

可以理解的是,在车辆上各待升级车载设备除了包括第一车载设备和第二车载设备还包括其它的车载设备的情况下,服务器除了生成第一密文和第二密文,还生成基于其它车载设备的升级文件的密文。可以理解的是,车辆上的各待升级车载设备中的中为依赖车载设备不为被依赖车载设备的车载设备均可以按照上述第一车载设备为依赖车载设备不为被依赖车载设备时的第一升级文件的第一密文的生成方法生成相应的升级文件的密文。车辆上的各待升级车载设备中的被依赖车辆设备均可以按照第二车载设备的第二升级文件的第二密文的生成方法生成相应的升级文件的密文。服务器可基于各车辆上各待升级车载设备的升级文件的密文生成升级包。

在一种方式中,服务器还可以获取升级策略,此时,升级包中除了包括车辆上各待升级车载设备的升级文件的密文,还包括升级策略。升级策略包括车辆上的各待升级车载设备的升级依赖关系,升级策略至少可指示第一车载设备的升级依赖于第二车载设备的升级完成。可选地,升级策略中还可包括:车辆上的各待升级车载设备的类型和/或各待升级车载设备的升级顺序。此外,为了保证升级包的安全传输,服务器还可生成升级包的数字签名。

在一种具体的实现中,服务器包括升级管理节点和密钥管理节点,升级管理节点用于生成升级包,并将用于解密待升级车载设备的升级文件的密文的密钥或密钥被分成的一个子密钥发送至密钥管理节点进行存储。可以理解的是,在待升级车载设备不为依赖设备时,被发送至密钥管理节点为用于解密待升级车载设备的升级文件的密文的密钥;在待升级车载设备为依赖设备时,被发送至密钥管理节点为用于解密待升级车载设备的升级文件的密文的密钥被分成的多个子密钥中的一个子密钥。若待升级车载设备的升级文件的密文中还包括加密后的消息认证码,则升级管理节点还将用于加密消息认证码的密钥发送至密钥管理节点进行存储。

步骤s202、服务器向车辆发送第一密文和第二密文。

一种方式中,服务器向车辆发送升级包,升级包中包括第一密文和第二密文。若服务器中包括升级管理节点和密钥管理节点,则升级管理节点向车辆发送升级包,升级包中包括第一密文和第二密文。

步骤s203、服务器向车辆发送第二子密钥,第二子密钥用于构建第一密钥。

在服务器中包括升级管理节点和密钥管理节点时,密钥管理节点通过安全通道第二子密钥发送至车辆。此外,密钥管理节点还将车辆上的用于解密其它待升级车载设备的升级文件的密文的密钥或该密钥被分成的一个子密钥发送至车辆。

此外,在第一密文中包括加密后的第二消息认证码时,还包括:服务器向车辆发送第四密钥。在服务器中包括升级管理节点和密钥管理节点时,升级管理节点将第四密钥发送至密钥管理节点,密钥管理节点通过安全通道将第四密钥发送至车辆。即在在待升级车载设备的升级文件的密文中包括加密后的消息认证码时,还包括:服务器将解密该加密后的消息认证码的密钥发送至车辆。在服务器中包括升级管理节点和密钥管理节点时,密钥管理节点通过安全通道将解密该加密后的消息认证码的密钥发送至车辆。

步骤s204、车辆向第一车载设备发送第一密文。

在车辆基于各待升级车载设备的升级文件的密文得到升级包括的情况下,车辆在接收到服务器发送的升级包后,可采用升级包的数字签名验证升级包括,验证通过后,获取升级包中的第一密文,并将向第一车载设备发送第一密文。

由于第一车载设备为依赖设备,则第一密文中包括指示第一车载设备为依赖设备的类型标识。在一种可选的方式中,车辆可根据升级策略中包括的升级依赖关系,获取第一车载设备所依赖的各车载设备,向第一车载设备发送第一车载设备所依赖的各车载设备的标识,以使第一车载设备获知其升级所依赖的车载设备。其中,第一车载设备所依赖的各车载设备包括第二车载设备。

步骤s205、车辆向第一车载设备发送第二子密钥。

在第一密文中包括加密后的第二消息认证码时,则车辆还向第一车载设备发送第四密钥。

步骤s206、车辆向第二车载设备发送第二密文。

在车辆基于各待升级车载设备的升级文件的密文得到升级包括的情况下,车辆在接收到服务器发送的升级包后,可采用升级包的数字签名验证升级包括,验证通过后,获取升级包中的第二密文,并将向第二车载设备发送第二密文。

步骤s207、第二车载设备对第二密文进行解密,得到第二升级文件和第一子密钥。

第二车载设备接收第二密文。由于第二密文基于第一信息生成,第一信息包括第二升级文件和第一子密钥,因此,对第二密文进行解密,可得到第二升级文件和第一子密钥。

可以理解的是,若第二车载设备不为依赖设备,则解密第二密文的第二密钥或者第二密钥和第三密钥是车辆发送至第二车载设备的。若第二车载设备为依赖设备,其获取解密第二密文的第二密钥的方法参见第一车载设备获取解密第一密文的第一密钥的方法,第三密钥是车辆发送至第二车载设备的。

步骤s208、第二车载设备根据第二升级文件进行升级。

若第二密文中还包括加密后的第一消息认证码,则第一车载设备还采用第三密钥解密加密后的消息认证码,根据消息认证码验证得到的第二升级文件和受托密钥内容的完整性,若验证通过,则可根据第二升级文件进行升级。

步骤s209、第二车载设备在确定升级成功后,向第一车载设备发送第一子密钥。

步骤s210、第一车载设备根据第一子密钥、第二子密钥和第一密文进行升级。

第一车载设备接收第一子密钥、第二子密钥和第一密文,根据第第一子密钥、第二子密钥和第一密文进行升级。

可以理解的是,若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则第一车载设备还会接收到其它被依赖车载设备发送的其它子密钥,其它子密钥用于构建第一密钥。比如,若第一车载设备的升级依赖第二车载设备、第三车载设备的升级完成,则第一密钥会被分成3个子密钥:第一子密钥、第二子密钥和第三子密钥,则第一车载设备还会接收到第三车载设备发送的第三子密钥,其中,第三车载设备获取第三子密钥得方法同第二车载设备获取第二子密钥得方法即:第三车载设备对第三密文进行解密,得到第三升级文件和第三子密钥,其中,第三密文的获取方法同第二密文的获取方法:即第三密文基于第三信息加密获得,第三信息至少包括第三车载设备的第三升级文件和第三子密钥。也就是,若第一车载设备的升级依赖与m-1个被依赖车载设备的升级完成,则第一车载设备分别从m-1个被依赖车载设备接收到第一密钥的被分成的m个子密钥中的一个子密钥,从车辆接收到一个子密钥,共接收到m个子密钥。

第一车载设备接收到第一密文后,根据第一密文包括的新的文件头中的指示第一车载设备为依赖设备的类型标识,确定第一车载设备需要等待其所依赖的各车载设备分别发送的第一密钥被分成的一个子密钥以进行升级。

第一车载设备接收到第一子密钥、第二子密钥后,根据第一子密钥、第二子密钥恢复第一密钥,也就是根据接收到的m个子密钥恢复第一密钥。采用第一密钥解密第一密文得到第一升级文件。若第一密文中还包括加密后的受托密钥内容,则解密第一密文后还得到受托密钥内容。

若第一密文中还包括加密后的第二消息认证码,则第一车载设备还采用第四密钥解密加密后的第二消息认证码,根据第二消息认证码验证得到的第一升级文件的完整性或者验证得到的第一升级文件和受托密钥内容的完整性,若验证通过,则可根据第一升级文件进行升级。

本实施例中将用于依赖车载设备的升级文件的密文解密的密钥被分成多个子密钥,该多个子密钥中的除了一个子密钥以外的其它子密钥分别用于其所依赖的车载设备的升级文件的生成,以在依赖车载设备所依赖的各车载设备升级成功后将其它子密钥发送至该依赖车载设备,该依赖车载设备才能根据密钥被分成的各子密钥恢复密钥,以完成升级。也就是说本实施例的方法确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,保证了升级的正确顺序,进而保证了各车载设备的正常运行。

同时,由于在依赖车载设备所依赖的各车载设备升级成功后自动将其它子密钥发送至依赖车载设备,无需车辆判断依赖车载设备所依赖的各车载设备是否升级成功,减轻了车辆的负担。

下面结合图9所示的实施例对另一种车载设备的升级方法进行说明。

图9为本申请实施例提供的车载设备的升级方法的交互图二。本实施例中涉及任意一个依赖设备的升级方法,在本实施例中任意一个依赖设备称为第一车载设备,参见图9,本实施例的方法包括:

步骤s901、服务器生成第一密文和第二密文,第一密文基于第一车载设备的第一升级文件加密获得,第二密文基于第一信息加密获得,第一信息包括第二车载设备的第二升级文件和第一子密钥,第一子密钥用于构建解密第一密文的第一密钥。

该步骤的具体实现参照图2所示的实施例中的步骤s201的阐述,此处不再赘述。

步骤s902、服务器向车辆发送第一密文和第二密文。

该步骤的具体实现参照图2所示的实施例中的步骤s202的阐述,此处不再赘述。

步骤s903、服务器向车辆发送第二子密钥,第二子密钥用于构建第一密钥。

该步骤的具体实现参照图2所示的实施例中的步骤s203的阐述,此处不再赘述。

步骤s904、车辆向第一车载设备发送第一密文。

该步骤与图2所示的实施例中的步骤s204的不同之处在于,本实施例中车辆可无需向第一车载设备发送其所依赖的车载设备的车载设备的标识,其余的具体实现可参照步骤s204。

在第一密文中包括加密后的第二消息认证码时,则车辆还向第一车载设备发送第四密钥。

步骤s905、车辆向第二车载设备发送第二密文。

该步骤的具体实现参照图2所示的实施例中的步骤s205的阐述,此处不再赘述。

步骤s906、第二车载设备对第二密文进行解密,得到第二升级文件和第一子密钥。

该步骤的具体实现参照图2所示的实施例中的步骤s207的阐述,此处不再赘述。

步骤s907、第二车载设备根据第二升级文件进行升级。

步骤s908、第二车载设备在确定升级成功后,向车辆发送第一子密钥。

步骤s909、车辆根据第一子密钥和第二子密钥,恢复第一密钥。

车辆接收第一子密钥和第二子密钥,根据第一子密钥和第二子密钥,恢复第一密钥。

可以理解的是,若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则车辆还会接收到其它被依赖车载设备发送的其它子密钥,其它子密钥用于构建第一密钥。比如,若第一车载设备的升级依赖第二车载设备、第三车载设备的升级完成,则第一密钥会被分成3个子密钥:第一子密钥、第二子密钥和第三子密钥,则车辆还会接收到第三车载设备发送的第三子密钥,其中,第三车载设备获取第三子密钥得方法同第二车载设备获取第二子密钥得方法即:第三车载设备对第三密文进行解密,得到第三升级文件和第三子密钥,其中,第三密文的获取方法同第二密文的获取方法:即第三密文基于第三信息加密获得,第三信息至少包括第三车载设备的第三升级文件和第三子密钥。也就是,若第一车载设备的升级依赖与m-1个被依赖车载设备的升级完成,则车辆分别从m-1个被依赖车载设备接收到第一密钥的被分成的m个子密钥中的一个子密钥,从服务器接收到一个子密钥,共接收到m个子密钥,并根据m个子密钥恢复第一密钥。

步骤s910、车辆向第一车载设备发送第一密钥。

步骤s911、第一车载设备根据第一密钥和第一密文进行升级。

第一车载设备接收第一密钥和第一密文。第一车载设备采用第一密钥解密第一密文,至少得到第一升级文件。若第一密文中还包括加密后的受托密钥内容,则解密第一密文后还得到受托密钥内容。

若第一密文中还包括加密后的第二消息认证码,则第一车载设备还采用第四密钥解密加密后的第二消息认证码,根据第二消息认证码验证得到的第一升级文件中的文件内容的完整性或者验证得到的第一升级文件中的文件内容和受托密钥内容的完整性,若验证通过,则可根据第一升级文件进行升级。

本实施例中将用于依赖车载设备的升级文件的密文解密的密钥被分成多个子密钥,该多个子密钥中的除了一个子密钥以外的其它子密钥分别用于其所依赖的车载设备的升级文件的生成,以在依赖车载设备所依赖的各车载设备升级成功后将其它子密钥发送至车辆,该车辆才能根据密钥被分成的各子密钥恢复密钥,并发送该密钥至依赖车载设备以完成依赖车载设备的升级。也就是说本实施例的方法确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,保证了升级的正确顺序,进而保证了各车载设备的正常运行。

同时,由于在依赖车载设备所依赖的各车载设备升级成功后自动将其它子密钥发送至车辆,无需车辆判断依赖车载设备所依赖的各车载设备是否升级成功,减轻了车辆的负担。

下面结合图10所示的实施例对又一种车载设备的升级方法进行说明。

图10为本申请实施例提供的车载设备的升级方法的交互图三。本实施例中涉及任意一个依赖设备的升级方法,在本实施例中任意一个依赖设备称为第一车载设备。参见图10,本实施例的方法包括:

步骤s1001、服务器生成第一密文和第二密文,第一密文基于第一车载设备的第一升级文件加密获得,第二密文基于第一信息加密获得,第一信息包括第二车载设备的第二升级文件和第一子密钥,第一子密钥用于构建解密第一密文的第一密钥。

该步骤的具体实现与图2所示的实施例中的步骤s201不相同之处在于:若第一车载设备的升级依赖于m-1个被依赖车载设备的升级完成,则该第一密钥被分成m-1个子密钥,而不是被分成m个子密钥,m-1个子密钥分别被用于生成第一车载设备升级所依赖的m-1个其它车载设备的升级文件的密文。因此,本实施例中若服务器包括密钥管理节点和升级管理节点,则密钥管理节点中未存储有用于解密依赖车载设备的密文的密钥被分成的多个子密钥的任意一个子密钥,密钥管理节点中可存储有用于解密非依赖车载设备的升级文件的密文的密钥。若待升级车载设备的升级文件的密文中还包括加密后的消息认证码,则升级管理节点还将用于加密消息认证码的密钥发送至密钥管理节点进行存储。

也就是说,本实施与步骤s201的区别在于用于生成第二密文的第一信息中的第一子密钥为第一密钥被分成的m-1个子密钥中的一个子密钥。

该步骤的其余具体实现与图2所示的实施例中的步骤s201相同,此处不再赘述。

步骤s1002、服务器向车辆发送第一密文和第二密文。

若服务器中包括升级管理节点和密钥管理节点,则升级管理节点向车辆发送第一密文和第二密文。

可以理解的是,还可包括:服务器发送用于解密非依赖车载设备的升级文件的密文的密钥至车辆。在服务器中包括升级管理节点和密钥管理节点时,密钥管理节点通过安全通道发送用于解密非依赖车载设备的升级文件的密文的密钥至车辆。

此外,在第一密文中包括加密后的第二消息认证码时,还包括:服务器向车辆发送第四密钥。在服务器中包括升级管理节点和密钥管理节点时,升级管理节点将第四密钥发送至密钥管理节点,密钥管理节点通过安全通道将第四密钥发送至车辆。即在在待升级车载设备的升级文件的密文中包括加密后的消息认证码时,还包括:服务器将解密该消息认证码的密钥发送至车辆。在服务器中包括升级管理节点和密钥管理节点时,密钥管理节点通过安全通道将解密该加密后的消息认证码的密钥发送至车辆。

步骤s1003、车辆向第一车载设备发送第一密文。

该步骤的具体实现参照图2所示的实施例中的步骤s204中的阐述,此处不再赘述。

步骤s1004、车辆向第二车载设备发送第二密文。

步骤s1005、第二车载设备对第二密文进行解密,得到第二升级文件和第一子密钥。

该步骤的具体实现参照图2所示的实施例中的步骤s207中的阐述,此处不再赘述。

步骤s1006、第二车载设备根据第二升级文件进行升级。

该步骤的具体实现参照图2所示的实施例中的步骤s208中的阐述,此处不再赘述。

步骤s1007、第二车载设备在确定升级成功后,向第一车载设备发送第一子密钥。

步骤s1008、第一车载设备根据第一子密钥的和第一密文进行升级。

第一车载设备接收第一子密钥的和第一密文,第一车载设备根据第一子密钥的和第一密文进行升级。

可以理解的是,若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则第一车载设备还会接收到其它被依赖车载设备发送的其它子密钥,其它子密钥用于构建第一密钥。比如,若第一车载设备的升级依赖第二车载设备、第三车载设备的升级完成,则第一密钥会被分成2个子密钥:第一子密钥、第二子密钥,则第一车载设备还会接收到第三车载设备发送的第二子密钥,其中,第三车载设备获取第二子密钥得方法同第二车载设备获取第一子密钥得方法即:第三车载设备对第三密文进行解密,得到第三升级文件和第二子密钥,其中,第三密文的获取方法同第二密文的获取方法:即第三密文基于第三信息加密获得,第三信息至少包括第三车载设备的第三升级文件和第二子密钥。也就是,若第一车载设备的升级依赖与m-1个被依赖车载设备的升级完成,则第一车载设备分别从m-1个被依赖车载设备接收到第一密钥的被分成的m-1个子密钥中的一个子密钥,共接收到m-1个子密钥。

第一车载设备接收到第一密文后,根据第一密文包括的新的文件头中的指示第一车载设备为依赖设备的类型标识,确定第一车载设备需要等待其所依赖的各车载设备分别发送的第一密钥被分成的一个子密钥以进行升级。

第一车载设备接收到m-1个子密钥后,根据m-1个子密钥恢复第一密钥。采用第一密钥解密第一密文得到第一升级文件。若第一密文中还包括加密后的受托密钥内容,则解密第一密文后还得到受托密钥内容。

若第一密文中还包括加密后的第二消息认证码,则第一车载设备还采用第四密钥解密加密后的第二消息认证码,根据第二消息认证码验证得到的第一升级文件的完整性或者验证得到的第一升级文件和受托密钥内容的完整性,若验证通过,则可根据第一升级文件进行升级。

本实施例中将用于依赖车载设备的升级文件的密文解密的密钥被分成至少一个子密钥,该至少一个子密钥中分别用于其所依赖的车载设备的升级文件的生成,以在依赖车载设备所依赖的各车载设备升级成功后将分别该至少一个子密钥中的一个子密钥发送至该依赖车载设备,该依赖车载设备才能根据该密钥被分成的各子密钥恢复密钥,以完成升级。也就是说本实施例的方法确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,保证了升级的正确顺序,进而保证了各车载设备的正常运行。同时,由于在依赖车载设备所依赖的各车载设备升级成功后分别自动将该至少一个子密钥中的一个子密钥发送至依赖车载设备,无需车辆判断依赖车载设备所依赖的各车载设备是否升级成功,减轻了车辆的负担。且无需车辆发送该至少一个子密钥中的子密钥至依赖车载设备,进一步降低了车辆的功耗;同时也无需服务器发送该至少一个子密钥中的子密钥至车辆,也降低了服务器的功耗。

下面结合图11所示的实施例对又一种车载设备的升级方法进行说明。

图11为本申请实施例提供的车载设备的升级方法的交互图四。本实施例中涉及任意一个依赖设备的升级方法,在本实施例中任意一个依赖设备称为第一车载设备,参见图11,本实施例的方法包括:

步骤s1101、服务器生成第一密文和第二密文,第一密文基于第一车载设备的第一升级文件加密获得,第二密文基于第一信息加密获得,第一信息包括第二车载设备的第二升级文件和第一子密钥,第一子密钥用于构建解密第一密文的第一密钥。

该步骤的具体实现参照步骤s1001中的阐述,此处不再赘述。

步骤s1102、服务器向车辆发送第一密文和第二密文。

该步骤的具体实现参照图10所示的实施例中的步骤s1002中的阐述,此处不再赘述。

步骤s1103、车辆向第一车载设备发送第一密文。

该步骤的具体实现参照图2所示的实施例中的步骤s204中的阐述,此处不再赘述。

步骤s1104、车辆向第二车载设备发送第二密文。

步骤s1105、第二车载设备对第二密文进行解密,得到第二升级文件和第一子密钥。

该步骤的具体实现参照图2所示的实施例中的步骤s207中的阐述,此处不再赘述。

步骤s1106、第二车载设备根据第二升级文件进行升级。

步骤s1107、第二车载设备在确定升级成功后,向车辆发送第一子密钥。

步骤s1108、车辆根据第一子密钥,恢复第一密钥。

车辆接收第一子密钥,并根据第一子密钥,恢复第一密钥。

可以理解的是,若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则车辆还会接收到其它被依赖车载设备发送的其它子密钥,其它子密钥用于构建第一密钥。比如,若第一车载设备的升级依赖第二车载设备、第三车载设备的升级完成,则第一密钥会被分成2个子密钥:第一子密钥、第二子密钥,则车辆还会接收到第三车载设备发送的第二子密钥,其中,第三车载设备获取第二子密钥得方法同第二车载设备获取第一子密钥得方法即:第三车载设备对第三密文进行解密,得到第三升级文件和第二子密钥,其中,第三密文的获取方法同第二密文的获取方法:即第三密文基于第三信息加密获得,第三信息至少包括第三车载设备的第三升级文件和第二子密钥。也就是,若第一车载设备的升级依赖与m-1个被依赖车载设备的升级完成,则车辆分别从m-1个被依赖车载设备接收到第一密钥的被分成的m-1个子密钥中的一个子密钥,共接收到m-1个子密钥。并根据m-1个子密钥,恢复第一密钥。

步骤s1109、车辆向第一车载设备发送第一密钥。

步骤s1110、第一车载设备根据第一密钥和第一密文进行升级。

第一车载设备接收第一密钥和第一密文,并根据第一密钥和第一密文进行升级。

本实施例中将用于依赖车载设备的升级文件的密文解密的密钥被分成至少一个子密钥,该至少一个子密钥中分别用于其所依赖的车载设备的升级文件的生成,以在依赖车载设备所依赖的各车载设备升级成功后将分别该至少一个子密钥中的一个子密钥发送至车辆,该车辆才能根据该密钥被分成的各子密钥恢复密钥并向依赖车载设备发送该密钥以使该车载设备完成升级。也就是说本实施例的方法确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,保证了升级的正确顺序,进而保证了各车载设备的正常运行。同时,由于在依赖车载设备所依赖的各车载设备升级成功后分别自动将该至少一个子密钥中的一个子密钥发送至车辆,车辆恢复第一密钥,无需第一车载设备恢复第一密钥,降低了第一车载设备的功耗。且无需服务器发送该至少一个子密钥中的子密钥至车辆,也降低了服务器的功耗。

上述图2~图11所示的实施例中所涉及的技术方案为将用于解密依赖车载设备的升级文件的密文的密钥分成多个子密钥,多个子密钥中的全部或部分用于依赖车载设备所依赖的车载设备的升级文件的密文的生成。在另一种方案中,用于解密依赖车载设备的升级文件的密文的密钥被分成的多个子密钥用于依赖车载设备所依赖的车载设备的升级文件的密文的生成。中,下面采用图12~图13所示的实施例对该另一种方案进行说明。

图12为本申请实施例提供的车载设备的升级方法的交互图五。本实施例中涉及任意一个依赖车载设备的升级方法,在本实施例中任意一个依赖车载设备称为第一车载设备。参见图12,本实施例的方法包括:

步骤s1201、服务器生成第一密文和第二密文,第一密文基于第一车载设备的第一升级文件加密获得,第二密文基于第二车载设备的第二升级文件加密获得。

本实施例中的第一车载设备为依赖设备,第二车载设备为被依赖设备,第一车载设备的升级至少依赖第二车载设备的升级完成。可以理解的是,由于车载设备的类型可能包括多个子类型,因此,第一车载设备也有还可能为被依赖设备,第二车载设备还可能为依赖设备。第一车辆设备和第二车载设备为车辆上的各待升级车载设备中的车载设备。

本实施例中第一密文和第二密文的生成方法均与图2所示的实施例中第一车载设备为依赖车载设备不为被依赖车载设备时的第一升级文件的第一密文的生成方法相同。服务器除了生成第一密文和第二密文,还生成基于其它车载设备的升级文件的密文。可以理解的是,车辆上的各待升级车载设备中升级文件的生成方法均相同。服务器可基于各车辆上各待升级车载设备的升级文件的密文生成升级包。

在生成第一密文过程中,若第一车载设备的升级依赖于m-1个车载设备的升级完成,则服务器将第一密钥分成m个子密钥,m个子密钥均存储在服务器中。若第一密文中包括加密后的消息认证码,则服务器中还存储有第四密钥,第一密钥的含义与图2所示的实施例中第一密钥的含义相同,第四密钥的含义与图2所示的实施例中第四密钥的含义相同。

在一种具体的实现中,服务器包括升级管理节点和密钥管理节点,升级管理节点用于生成各升级文件的密文,并将每个用于解密待升级车载设备的升级文件的密文的密钥或密钥被分成的多个子密钥发送至密钥管理节点进行存储。可以理解的是,在待升级车载设备不为依赖设备时,升级管理节点将用于解密待升级车载设备的升级文件的密文的密钥发送至密钥管理节点进行存储;在待升级车载设备为依赖设备时,升级管理节点用于解密待升级车载设备的升级文件的密文的密钥被分成的多个子密钥发送至密钥管理节点进行存储。在待升级车载设备的升级文件的密文中存在包括加密后的消息认证码时,则升级管理节点还将解密加密后的消息认证码的密钥发送至密钥管理节点进行存储。

在一种方式中,服务器还可以获取升级策略,此时,升级包中除了包括车辆上各待升级车载设备的升级文件的密文,还包括升级策略。升级策略包括车辆上的各待升级车载设备的升级依赖关系,升级策略至少可指示第一车载设备的升级依赖于第二车载设备的升级完成。可选地,升级策略中还可包括:车辆上的各待升级车载设备的类型和/或各待升级车载设备的升级顺序。此外,为了保证升级包的安全传输,服务器还可生成升级包的数字签名。

步骤s1202、服务器向车辆发送第一密文和第二密文。

若服务器中包括升级管理节点和密钥管理节点,则升级管理节点向车辆发送第一密文和第二密文。

一种方式中,服务器向车辆发送升级包,升级包中包括第一密文和第二密文。若服务器中包括升级管理节点和密钥管理节点,则升级管理节点向车辆发送升级包,升级包中包括第一密文和第二密文。

步骤s1203、服务器向车辆发送第一密钥被分成的多个子密钥。

在服务器中包括升级管理节点和密钥管理节点时,密钥管理节点通过安全通道向车辆发送第一密钥被分成的多个子密钥。此外,密钥管理节点还将车辆上的用于解密其它待升级车载设备的升级文件的密文的密钥或该密钥被分成的多个子密钥发送至车辆。

若第一密文中包括加密后的消息认证码,密钥管理节点海通过安全通道向车辆发送第四密钥。即在待升级车载设备的升级文件的密文中包括加密后的消息认证码时,还包括:服务器将解密该加密后的消息认证码的密钥发送至车辆。在服务器中包括升级管理节点和密钥管理节点时,密钥管理节点通过安全通道将解密该加密后的消息认证码的密钥发送至车辆。

步骤s1204、车辆向第一车载设备发送第一密文。

在车辆基于各待升级车载设备的升级文件的密文得到升级包括的情况下,车辆在接收到服务器发送的升级包后,可采用升级包的数字签名验证升级包括,验证通过后,获取升级包中的第一密文,并将向第一车载设备发送第一密文。

由于第一车载设备为依赖设备,则第一密文中包括指示第一车载设备为依赖设备的类型标识。在一种可选的方式中,车辆可根据升级策略中包括的升级依赖关系,获取第一车载设备所依赖的各车载设备,向第一车载设备发送第一车载设备所依赖的各车载设备的标识,以使第一车载设备获知其升级所依赖的车载设备。其中,第一车载设备所依赖的各车载设备包括第二车载设备。

步骤s1205、车辆向第一车载设备发送第一密钥被分成的多个子密钥中的第二子密钥。即第二子密钥用于构建第一密钥。

车辆接收第一密钥被分成的多个子密钥,向第一车载设备发送第一密钥被分成的多个子密钥中的第二子密钥。

若车辆从服务器接收到了第四密钥,则车辆还向第一车载设备发送第四密钥。

步骤s1206、车辆向第二车载设备发送第二密文。

步骤s1207、车辆向第二车载设备发送第一密钥被分成的多个子密钥中的第一子密钥。即第一子密钥用于构建第一密钥。

若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则车辆还分别向其它被依赖车载设备发送第一密钥被分成的多个子密钥中的一个子密钥。

示例性地,若第一车载设备的升级依赖于m-1个第二车载设备的升级完成,则第一升级文件的第一密钥被分成m个子密钥,车辆将m个子密钥中除了第二子密钥以外的各子密钥分别发送至m-1个第二车载设备,m-1个第二车载设备分别接收到m个子密钥中的一个子密钥。

步骤s1208、第二车载设备对第二密文进行解密,得到第二升级文件;

步骤s1209、第二车载设备根据第二升级文件进行升级。

步骤s1210、第二车载设备在确定升级成功后,向第一车载设备发送第一子密钥。

第二车载设备接收第一子密钥,在确定升级成功后,将第一子密钥发送至第一车载设备。

步骤s1211、第一车载设备根据第一子密钥、第二子密钥和第一密文进行升级。

第一车载设备接收第一子密钥、第二子密钥和第一密文,根据第一子密钥、第二子密钥和第一密文进行升级。

可以理解的是,若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则第一车载设备还会接收到其它被依赖车载设备发送的其它子密钥,其它子密钥用于构建第一密钥。比如,若第一车载设备的升级依赖第二车载设备、第三车载设备的升级完成,则第一密钥会被分成3个子密钥:第一子密钥、第二子密钥和第三子密钥,则第一车载设备还会接收到第三车载设备发送的第三子密钥,其中,第三车载设备发送至第一车载设备的第三子密钥是车辆发送至第三车载设备的。也就是说,若第一车载设备的升级依赖与m-1个被依赖车载设备的升级完成,则第一车载设备分别从m-1个被依赖车载设备接收到第一密钥的被分成的m个子密钥中的一个子密钥,从车辆接收到一个子密钥,共接收到m个子密钥。

第一车载设备接收到第一密文后,根据第一密文包括的新的文件头中的指示第一车载设备为依赖设备的类型标识,确定第一车载设备需要等待其所依赖的各车载设备分别发送的第一密钥被分成的一个子密钥以进行升级。

第一车载设备接收到第一子密钥、第二子密钥后,根据第一子密钥、第二子密钥恢复第一密钥,也就是根据接收到的m个子密钥恢复第一密钥。采用第一密钥解密第一密文得到第一升级文件。若第一密文中还包括加密后的第二消息认证码,则第一车载设备还采用第四密钥解密加密后的第二消息认证码,根据第二消息认证码验证得到的第一升级文件的完整性,若验证通过,则可根据第一升级文件进行升级。

本实施例中将用于依赖车载设备的升级文件的密文解密的密钥被分成多个子密钥,该多个子密钥中的除了一个子密钥以外的其它子密钥分别被发送至其升级所依赖的车载设备,以在依赖车载设备所依赖的各车载设备升级成功后将其它子密钥发送至该依赖车载设备,该依赖车载设备才能根据密钥被分成的各子密钥恢复密钥,以完成升级。也就是说本实施例的方法确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,保证了升级的正确顺序,进而保证了各车载设备的正常运行。此外,本实施例中的方法生成升级包的过程简单,升级效率较高。

图13为本申请实施例提供的车载设备的升级方法的交互图六。本实施例中涉及任意一个依赖设备的升级方法,在本实施例中任意一个依赖设备称为第一车载设备。参见图13,本实施例的方法包括:

步骤s1301、服务器生成第一密文和第二密文,第一密文基于第一车载设备的第一升级文件加密获得,第二密文基于第二车载设备的第二升级文件加密获得。

该步骤的具体实现与图12所示的实施例中的步骤s1201不相同之处在于:若第一车载设备的升级依赖于m-1个其它的依赖车载设备的升级完成,则用于解密第一密文的第一密钥被分成m-1个子密钥,而不是被分成m个子密钥。

该步骤的其余具体实现与图12所示的实施例中的步骤s1201相同,此处不再赘述。

步骤s1302、服务器向车辆发送第一密文和第二密文。

该步骤的具体实现参照图12所示的实施例中的步骤s1202的阐述,此处不再赘述。

步骤s1303、服务器向车辆发送第一密钥被分成的多个子密钥。

该步骤的具体实现参照图12所示的实施例中的步骤s1203的阐述,此处不再赘述。

步骤s1304、车辆向第一车载设备发送第一密文。

该步骤的具体实现参照图12所示的实施例中步骤s1204的阐述,此处不再赘述。

若第一密文中还包括加密后的消息认证码,则车辆还向第一车载设备发送第四密钥。

步骤s1305、车辆向第二车载设备发送第二密文。

步骤s1306、车辆向第二车载设备发送第一密钥被分成的多个子密钥中的第一子密钥。

若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则车辆还分别向其它被依赖车载设备发送第一密钥被分成的多个子密钥中的一个子密钥。

示例性地,若第一车载设备的升级依赖于m-1个第二车载设备的升级完成,则第一升级文件的第一密钥被分成m-1个子密钥,车辆将m-1个子密钥中除了第二子密钥以外的各子密钥分别发送至m-1个第二车载设备,m-1个第二车载设备分别接收到m-1个子密钥中的一个子密钥。

步骤s1307、第二车载设备对第二密文进行解密,得到第二升级文件。

步骤s1308、第二车载设备在确定升级成功后,向第一车载设备发送第一子密钥。

第二车载设备接收第一子密钥,在确定升级成功后,将第一子密钥发送至第一车载设备。

步骤s1309、第一车载设备根据第一子密钥和第一密文进行升级。

第一车载设备接收第一子密钥和第一密文,根据第一子密钥和第一密文进行升级。

可以理解的是,若第一车载设备的升级还依赖除了第二车载设备以外的其它被依赖车载设备的升级完成,则第一车载设备还会接收到其它被依赖车载设备发送的其它子密钥,其它子密钥用于构建第一密钥。比如,若第一车载设备的升级依赖第二车载设备、第三车载设备的升级完成,则第一密钥会被分成2个子密钥:第一子密钥、第二子密钥,则第一车载设备还会接收到第三车载设备发送的第二子密钥,其中,第三车载设备发送至第一车载设备的第二子密钥是车辆发送至第三车载设备的。也就是说,若第一车载设备的升级依赖与m-1个被依赖车载设备的升级完成,则第一车载设备分别从m-1个被依赖车载设备接收到第一密钥的被分成的m-1个子密钥中的一个子密钥,共接收到m-1个子密钥。

第一车载设备接收到第一密文后,根据第一密文包括的新的文件头中的指示第一车载设备为依赖设备的类型标识,确定第一车载设备需要等待其所依赖的各车载设备分别发送的第一密钥被分成的一个子密钥以进行升级。

第一车载设备接收到第一子密钥后,根据第一子密钥恢复第一密钥,也就是根据接收到的m-1个子密钥恢复第一密钥。采用第一密钥解密第一密文得到第一升级文件。若第一密文中还包括加密后的第二消息认证码,则第一车载设备还采用第四密钥解密加密后的第二消息认证码,根据第二消息认证码验证得到的第一升级文件的完整性,若验证通过,则可根据第一升级文件进行升级。

本实施例中将用于依赖车载设备的升级文件的密文解密的密钥被分成至少一个子密钥,该至少一个子密钥中的子密钥分别被发送至其升级所依赖的车载设备,以在依赖车载设备所依赖的各车载设备升级成功后分别将至少一个子密钥的一个子密钥发送至该依赖车载设备,该依赖车载设备才能根据密钥被分成的至少一个子密钥恢复密钥,以完成升级。也就是说本实施例的方法确保了依赖车载设备所依赖的各车载设备升级完成后才会升级,保证了升级的正确顺序,进而保证了各车载设备的正常运行。此外,本实施例中的方法生成升级包的过程简单,升级效率较高。

以上对车辆上的各待升级车载设备中的依赖车载设备的升级方法进行了说明。下面对不是依赖车载设备的非依赖车载设备的升级方法进行说明。

对于非依赖车载设备:车辆从接收到的升级包中获取到非依赖车载设备的升级文件后,将非依赖车载设备的升级文件发送至非依赖车载设备,车辆从服务器接收到非依赖车载设备的升级文件的密钥后,将独立设备的升级文件的密钥发送至非依赖车载设备,以使非依赖车载设备根据升级文件和密钥进行升级。

其中,对于非依赖车载设备中的独立设备,车辆可通过一对一的方式将独立设备的升级文件和密钥发送至独立设备。

对于非依赖车载设备中的互为同质的各同质车载设备,车辆将相应的升级文件广播至互为同质的各同质车载设备。车辆将相应的升级文件的密钥通过一对一的方式发送至互为同质的各同质车载设备。若互为同质的各同质车载设备中存在升级失败的车载设备,则进行回滚,或者重新对升级失败的车载设备进行升级,若还未成功,则进行回滚。

对于非依赖车载设备中的互为异质的多组异质车载设备,车辆将分别向每组异质车载设备发送该组异质车载设备的升级文件和密钥。若互为异质的多组异质车载设备存在升级失败的车载设备,则进行回滚,或者重新升级失败的车载设备进行升级,若还未成功,则进行回滚。每组异质车载设备中包括一个或多个车载设备,一组异质车载设备若包括多个车载设备,则该多个车载设备为互为同质的同质设备。

以上对本申请涉及的车载设备的升级方法进行了说明,下面对本申请涉及的升级装置进行说明。

图14为本申请实施例提供的一种升级装置的结构示意图。如图14所示,该升级装置可以是如上的第一车载设备,也可以是如上的第一车载设备的部件(例如,集成电路,芯片等等)。该升级装置还可以是如上的第二车载设备,也可以是如上的第二车载设备的部件(例如,集成电路,芯片等等)。该升级装置还可以是如上的车辆,也可以是车辆的部件(例如,集成电路,芯片等等)。该升级装置还可以是如上的服务器,也可以是服务器的部件(例如,集成电路,芯片等等)。该升级装置还可以是其他通信模块,用于实现本申请方法实施例中的方法。该升级装置1400可以包括:处理模块1402(处理单元)。可选的,还可以包括收发模块1401(收发单元)和存储模块1403(存储单元)。

在一种可能的设计中,如图14中的一个或者多个模块可能由一个或者多个处理器来实现,或者由一个或者多个处理器和存储器来实现;或者由一个或多个处理器和收发器实现;或者由一个或者多个处理器、存储器和收发器实现,本申请实施例对此不作限定。所述处理器、存储器、收发器可以单独设置,也可以集成。

所述升级装置具备实现本申请实施例描述的第一车载设备的功能,比如,所述升级装置包括第一车载设备执行本申请实施例描述的第一车载设备涉及步骤所对应的模块或单元或手段(means),所述功能或单元或手段(means)可以通过软件实现,或者通过硬件实现,也可以通过硬件执行相应的软件实现,还可以通过软件和硬件结合的方式实现。详细可进一步参考前述对应方法实施例中的相应描述。

或者所述升级装置具备实现本申请实施例描述的第二车载设备的功能,比如,所述升级装置包括所述第二车载设备执行本申请实施例描述的第二车载设备涉及步骤所对应的模块或单元或手段(means),所述功能或单元或手段(means)可以通过软件实现,或者通过硬件实现,也可以通过硬件执行相应的软件实现,还可以通过软件和硬件结合的方式实现。详细可进一步参考前述对应方法实施例中的相应描述。

或者,所述升级装置具备实现本申请实施例描述的车辆的功能,比如,所述升级装置包括所述车辆执行本申请实施例描述的车辆涉及步骤所对应的模块或单元或手段(means),所述功能或单元或手段(means)可以通过软件实现,或者通过硬件实现,也可以通过硬件执行相应的软件实现,还可以通过软件和硬件结合的方式实现。详细可进一步参考前述对应方法实施例中的相应描述。

或者,所述升级装置具备实现本申请实施例描述的服务器的功能,比如,所述升级装置包括所述服务器执行本申请实施例描述的服务器涉及步骤所对应的模块或单元或手段(means),所述功能或单元或手段(means)可以通过软件实现,或者通过硬件实现,也可以通过硬件执行相应的软件实现,还可以通过软件和硬件结合的方式实现。详细可进一步参考前述对应方法实施例中的相应描述。

可选的,本申请实施例中的升级装置1400中各个模块可以用于执行本申请方法实施例中描述的方法。

在第一种可能的设计中,一种升级装置1400可包括收发模块1401和处理模块1402。

处理模块1402,用于执行步骤s209、步骤s1007、步骤s1210、步骤s1308中的确定所述升级装置1400升级成功;

收发模块1401,用于执行步骤s209、步骤s1007、步骤s1210、步骤s1308中的用于向第一车载设备发送第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于所述第一车载设备的第一升级文件加密获得。

可选地,所述第一车载设备的升级依赖于所述升级装置1400的升级完成。

可选地,在所述处理模块1402确定所述升级装置1400升级成功之前,所述收发模块1401,还用于执行步骤s207、步骤s1005中的接收第二密文,所述第二密文基于所述升级装置的第二升级文件和第一子密钥加密获得;处理模块1402,还用于执行步骤s207、步骤s1005对所述第二密文解密,得到所述第一子密钥。

可选地,在所述处理模块1402确定所述升级装置1400升级成功之前,所述收发模块1401,还用于执行步骤s1308、步骤s1210中的接收所述第一子密钥。

其中,第二车载设备还执行步骤s208、步骤s1006、步骤s1209、步骤s1307中的根据解密后的第二升级文件进行升级。

其中,第一种可能的设计中的升级装置1400可为上述图2或图10或图12或图13所示的方法实施例中的第二车载设备或第二车载设备的部件。

在第二种可能的设计中,一种升级装置1400可包括收发模块1401和处理模块1402。

收发模块1401,用于执行步骤s210、步骤s1008、步骤s1211、步骤s1309中的接收第一密文、第一子密钥和第二子密钥,所述第一密文基于升级装置1400的第一升级文件加密获得,所述第一子密钥和所述第二子密钥用于构建解密第一密文的第一密钥。

处理模块1402,用于执行步骤s210、步骤s1008、步骤s1211、步骤s1309中的根据所述第一子密钥、所述第二子密钥和所述第一密文进行升级。

可选地,所述收发模块1401具体用于执行步骤s210、步骤s1211中的从第一设备接收所述第一子密钥,从第二设备接收所述第二子密钥;所述第一设备为第二车载设备,所述第二设备为所述升级装置所在的车辆。

可选地,所述收发模块1401具体用于:执行步骤s1008、步骤s1309中的从第一设备接收所述第一子密钥,从第二设备接收所述第二子密钥;所述第一设备为第二车载设备,所述第二设备为第三车载设备。

可选地,所述收发模块1401还用于:还用于接收所述第二车载设备的标识;或者,所述收发模块,还用于接收所述第二车载设备和所述第三车载设备的标识。

其中,第二种可能的设计中的升级装置1400可为上述图2或图10或图12或图13所示的方法实施例中的第一车载设备或第一车载设备的部件。

在第三种可能的设计中,一种升级装置1400可包括收发模块1401。

收发模块1401,用于执行步骤s204、步骤s1204中的向第一车载设备发送第一密文,所述第一密文基于所述第一车载设备的第一升级文件加密获得,以及执行步骤s205、步骤s1205中的向所述第一车载设备发送第二子密钥,所述第二子密钥用于构建解密所述第一密文的第一密钥。

可选地,所述收发模块1401,还用于执行步骤s1207中的还用于向第二车载设备发送第一子密钥,所述第一子密钥用于构建所述第一密钥。

可选地,所述收发模块,还用于执行接收升级策略,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

可选地,所述收发模块,还用于执行发送升级策略至车辆,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

可选地,所述收发模块1401还用于执行步骤s204、步骤s1204中的向所述第一车载设备发送所述第二车载设备的标识。

可选地,所述收发模块1401还用于执行步骤s206、步骤s1206中的向第二车载设备发送第二密文。

其中,第三种可能的设计中的升级装置1400可为上述图2或图12所示的方法实施例中的车辆或车辆的部件。

在第四种可能的设计中,一种升级装置1400可包括收发模块1401。

收发模块1401,用于执行步骤s804中的将第一升级文件发送至所述第一车载设备,所述升级装置1400为所述第一车载设备所在的装置。

收发模块1401,还用于执行步骤s806将所述第一升级文件的第一密钥的各部分分别发送至各第二车载设备。

收发模块1401,用于执行步骤s1304中的向第一车载设备发送第一密文,所述第一密文基于所述第一车载设备的第一升级文件加密获得,以及执行步骤s1306中的向所述第二车载设备发送第一子密钥,所述第一子密钥用于构建解密所述第一密文的第一密钥。

可选地,所述收发模块,还用于执行接收升级策略,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

可选地,所述收发模块,还用于执行发送升级策略至车辆,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

可选地,所述收发模块1401还用于执行步骤s1304中的将所述第二车载设备的标识发送至所述第一车载设备。

可选地,所述收发模块1401还用于执行步骤s1305中的向第二车载设备发送第二密文。

其中,第四种可能的设计中的升级装置1400可为上述图13所示的方法实施例中的车辆或车辆的部件。

在第五种可能的设计中,一种升级装置1400可包括收发模块1401和处理模块1402。

处理模块1402,用于执行步骤s201、步骤s901、步骤s1001、步骤s1101中的用于基于第一信息生成第二密文,所述第一信息包括第二车载设备的第二升级文件和第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得。

收发模块1401,用于执行步骤s202、步骤s902、步骤s1002、步骤s1102中的用于向所述第二车载设备发送所述第二密文。

可选地,所述第一信息还包括:所述第一车载设备的第一标识,所述第一标识和所述第一子密钥相关联。

可选地,所述第一信息还包括指示信息,所述指示信息指示各依赖车载设备的数目,所述依赖车载设备的升级依赖于所述第二车载设备的升级完成,各所述依赖设备包括所述第一车载设备。

可选地,所述第一信息还包括所述第二车载设备的类型标识。

可选地,收发模块1401,还用于向车辆发送升级策略,所述升级策略指示所述第一车载设备的升级依赖于所述第二车载设备的升级完成。

可选地,收发模块1401,还用于执行步骤s203、步骤s903中的向车辆发送第二子密钥,所述第二子密钥用于构建所述第一密钥。

其中,第五种可能的设计中的升级装置1400可为上述图2或图9或图10或图11方法实施例中的服务器部件。

在第六种可能的设计中,一种升级装置1400可包括收发模块1401和处理模块1402。

处理模块1402,用于执行步骤s908、步骤s1107中的确定所述升级装置1400升级成功;收发模块1401,用于执行步骤s903中的向车辆发送第一子密钥,所述第一子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得。

在处理模块1402确定所述升级装置1400升级成功之前,所述收发模块1401还用于接收第二密文;所述第二密文基于所述升级装置1400的第二升级文件和第一子密钥加密获得;所述处理模块还用于对所述第二密文解密,得到所述第一子密钥。

其中,第六种可能的设计中的升级装置1400可为上述图9或图11所示的方法实施例中的第二车载设备或第二车载设备的部件。

在第七种可能的设计中,一种升级装置1400可包括收发模块1401和处理模块1402。

收发模块1401,用于执行步骤s909、步骤s1108中的接收第一子密钥和第二子密钥;所述第一子密钥和第二子密钥用于构建解密第一密文的第一密钥,所述第一密文基于第一车载设备的第一升级文件加密获得;处理模块1402,用于执行步骤s909、步骤s1108中的根据第一子密钥和第二子密钥构建所述第一密钥;收发模块1401,还用于执行步骤s910、步骤s1109中向所述第一车载设备发送所述第一密钥。

在一种可能的实施方式中,所述收发模块具体用于执行步骤s909中的从第一设备接收第一子密钥,从第二设备接收第二子密钥;所述第一设备为第二车载设备,所述第二设备为服务器。

在一种可能的实施方式中,所述收发模块具体用于执行步骤s1108中的从第一设备接收第一子密钥,从第二设备接收第二子密钥;所述第一设备为第二车载设备,所述第二设备为第三车载设备。

其中,第七种可能的设计中的升级装置1400可为上述图9或图11所示的方法实施例中的车辆或车辆的部件。

本实施例的装置,可以用于执行上述方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。

图15为本申请实施例的电子设备的一种实现方式的示意性框图。本实施例的电子设备可以是如上的第一车载设备,还可以是如上的第二车载设备,还可以是如上的车辆,还可以是如上的服务器。该电子设备可用于实现上述方法实施例中描述的第一车载设备或第二车载设备或车辆或服务器对应的方法,具体可以参见上述方法实施例中的说明。

所述电子设备可以包括一个或多个处理器1501,所述处理器1501也可以称为处理单元,可以实现一定的控制功能。所述处理器1501可以是通用处理器或者专用处理器等。

在一种可选的设计中,处理器1501也可以存有指令和/或数据1503,所述指令和/或数据1503可以被所述处理器运行,使得所述电子设备执行上述方法实施例中描述的方法。

在另一种可选的设计中,处理器1501中可以包括用于实现接收和发送功能的收发单元。例如该收发单元可以是收发电路,或者是接口,或者是接口电路。用于实现接收和发送功能的收发电路、接口或接口电路可以是分开的,也可以集成在一起。上述收发电路、接口或接口电路可以用于代码/数据的读写,或者,上述收发电路、接口或接口电路可以用于信号的传输或传递。

可选的,所述电子设备中可以包括一个或多个存储器1502,其上可以存有指令1504,所述指令可在所述处理器上被运行,使得所述电子设备执行上述方法实施例中描述的方法。可选的,所述存储器中还可以存储有数据。可选的,处理器中也可以存储指令和/或数据。所述处理器和存储器可以单独设置,也可以集成在一起。例如,上述方法实施例中所描述的对应关系可以存储在存储器中,或者存储在处理器中。

可选的,所述电子设备还可以包括收发器1505和/或天线1506。所述处理器1501可以称为处理单元,对所述电子设备进行控制。所述收发器1505可以称为收发单元、收发机、收发电路或者收发器等,用于实现收发功能。

本实施例中描述的处理器和收发器可以用各种ic工艺技术来制造,例如互补金属氧化物半导体(complementarymetaloxidesemiconductor,cmos)、n型金属氧化物半导体(nmetal-oxide-semiconductor,nmos)、p型金属氧化物半导体(positivechannelmetaloxidesemiconductor,pmos)、双极结型晶体管(bipolarjunctiontransistor,bjt)、双极cmos(bicmos)、硅锗(sige)、砷化镓(gaas)等。

应理解,本申请实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(fieldprogrammablegatearray,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。

可以理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。

本申请实施例中描述的电子设备的范围并不限于此,而且电子设备的结构可以不受图15的限制。本申请实施例中描述的电子设备可以是独立的设备或者可以是较大设备的一部分。

图16为本申请实施例提供的车载设备的升级系统的结构示意图。参见图16,车载设备的升级系统包括第一车载设备、至少一个第二车载设备、车辆、服务器。

在一种方式中,第一车载设备可以实现执行如上图2所示的实施例中与第一车载设备对应的方法、第二车载设备可以用于实现如上图2所示的实施例中与第二车载设备对应的方法、车辆可以用于实现如上图2所示的实施例中与车辆对应的方法、服务器可以实现执行如上图2所示的实施例中与服务器对应的方法。

在另一种方式中,第一车载设备可以实现执行如上图9所示的实施例中与第一车载设备对应的方法、第二车载设备可以用于实现如上图9所示的实施例中与第二车载设备对应的方法、车辆可以用于实现如上图9所示的实施例中与车辆对应的方法、服务器可以实现执行如上图9所示的实施例中与服务器对应的方法。

在又一种方式中,第一车载设备可以实现执行如上图10所示的实施例中与第一车载设备对应的方法、第二车载设备可以用于实现如上图10所示的实施例中与第二车载设备对应的方法、车辆可以用于实现如上图10所示的实施例中与车辆对应的方法、服务器可以实现执行如上图10所示的实施例中与服务器对应的方法。

在又一种方式中,第一车载设备可以实现执行如上图11所示的实施例中与第一车载设备对应的方法、第二车载设备可以用于实现如上图11所示的实施例中与第二车载设备对应的方法、车辆可以用于实现如上图11所示的实施例中与车辆对应的方法、服务器可以实现执行如上图11所示的实施例中与服务器对应的方法。

在又一种方式中,第一车载设备可以实现执行如上图12所示的实施例中与第一车载设备对应的方法、第二车载设备可以用于实现如上图12所示的实施例中与第二车载设备对应的方法、车辆可以用于实现如上图12所示的实施例中与车辆对应的方法、服务器可以实现执行如上图12所示的实施例中与服务器对应的方法。

在又一种方式中,第一车载设备可以实现执行如上图13所示的实施例中与第一车载设备对应的方法、第二车载设备可以用于实现如上图13所示的实施例中与第二车载设备对应的方法、车辆可以用于实现如上图13所示的实施例中与车辆对应的方法、服务器可以实现执行如上图13所示的实施例中与服务器对应的方法。

本实施例的系统可以用于执行上述任一方法实施例中的技术方案,其实现原理和技术效果类似,此处不再赘述。

本申请还提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被计算机执行时实现上述任一方法实施例中第一车载设备的功能或第二车载设备的功能或服务器的功能或车辆的功能。

本申请还提供了一种计算机程序产品,该计算机程序产品被计算机执行时实现上述任一方法实施例中第一车载设备的功能或第二车载设备的功能或服务器的功能或车辆的功能。

在上述实施例使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digitalsubscriberline,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digitalvideodisc,dvd))、或者半导体介质(例如,固态硬盘(solidstatedisk,ssd))等。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

应理解,说明书通篇中提到的“实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各个实施例未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。

还应理解,在本申请中,“当…时”、“若”以及“如果”均指在某种客观情况下终端设备或者服务器会做出相应的处理,并非是限定时间,且也不要求终端设备或者服务器实现时一定要有判断的动作,也不意味着存在其它限定。

本申请中对于使用单数表示的元素旨在用于表示“一个或多个”,而并非表示“一个且仅一个”,除非有特别说明。本申请中,在没有特别说明的情况下,“至少一个”旨在用于表示“一个或者多个”,“多个”旨在用于表示“两个或两个以上”。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a可以是单数或者复数,b可以是单数或者复数。

字符“/”一般表示前后关联对象是一种“或”的关系。

本文中术语“……中的至少一个”或“……中的至少一种”,表示所列出的各项的全部或任意组合,例如,“a、b和c中的至少一种”,可以表示:单独存在a,单独存在b,单独存在c,同时存在a和b,同时存在b和c,同时存在a、b和c这六种情况,其中a可以是单数或者复数,b可以是单数或者复数,c可以是单数或者复数。

应理解,在本申请各实施例中,“与a相应的b”表示b与a相关联,根据a可以确定b。但还应理解,根据a确定b并不意味着仅仅根据a确定b,还可以根据a和/或其它信息确定b。

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