OTA文件安全处理方法、装置及系统与流程

文档序号:25650960发布日期:2021-06-29 20:23阅读:255来源:国知局
OTA文件安全处理方法、装置及系统与流程
ota文件安全处理方法、装置及系统
技术领域
1.本发明涉及ota技术领域,尤其涉及一种ota文件安全处理方法、装置及系统。


背景技术:

2.随着车辆网技术的发展,车辆的功能及复杂性越来越高,车辆上搭载嵌入式软件的电子控制单元(electronic control unit,ecu)也越来越多,这些ecu的版本更新贯穿了车辆的整个生命周期,ota(空中下载,over the air)的升级方式已经被各个汽车厂商所使用,ecu的版本文件通过ota的方式下载到车端进行升级。同时为了保障汽车的安全,许多车辆也都支持了远程诊断功能,系统在不打扰车主的情况下,进行车辆诊断并且将诊断信息上传至云端,云端进行综合评估,如果有风险项或者故障,实施远程故障消除,这就可能需要下发诊断脚本,或者故障消除脚本等文件到车端。如果上述ota文件被黑客获取,就可能通过对这些文件进行分析进而推导出威胁车辆安全的方法,因此这些文件的安全性不言而喻,而现在主流的ota方式中,这些文件都是通过公共网络进行传输的,这就加大了文件被盗取的可能性,如何保证这些文件的安全,使其无法被破解,是一个重要的课题。
3.目前,对ota文件的处理方式通常是将文件进行加密处理,密钥通过信令的方式传输给车端,但是一旦文件被盗取,并且密钥被泄露,将不再安全。
4.此外,ota文件如果被截流、篡改后,下发到车端,车端执行了该ota文件的升级/诊断/消除等措施后,可能导致车辆变砖或车辆被植入病毒,严重影响车辆使用人的财产及生命安全。


技术实现要素:

5.基于此,针对上述技术问题,提供一种ota文件安全处理方法、装置及系统。
6.为解决上述技术问题,本发明采用如下技术方案:
7.一方面,提供一种云端的ota文件安全处理方法,包括:
8.在与车端第一次通讯时,接收所述车端发送的公钥;
9.分别对ota文件包中各ota文件的文件名与文件内容的叠加信息进行哈希,得到多个摘要信息;
10.将所述多个摘要信息分别通过第一数字证书的私钥进行数字签名,得到多个签名信息;
11.将所述多个摘要信息保存在第一文件中,将所述多个签名信息保存在第二文件中,并将所述各ota文件、第一文件以及第二文件打包成下发包;
12.随机生成加密密钥以及解密密钥,通过第一加密算法以及所述加密密钥对所述下发包进行加密,通过第二加密算法以及从车端获得的公钥对所述解密密钥进行加密,所述第二加密算法为一种非对称加密算法;
13.将加密的下发包的下载地址、加密的解密密钥、第一加密算法以及第二加密算法下发给所述车端。
14.另一方面,提供一种车端的ota文件安全处理方法,包括:
15.在与云端第一次通讯时,发送公钥给所述云端;
16.接收所述云端下发的加密的下发包的下载地址、加密的解密密钥、第一加密算法以及第二加密算法;
17.通过所述下载地址下载所述加密的下发包;
18.通过所述第二加密算法以及对应所述公钥的私钥对所述加密的解密密钥进行解密,得到解密密钥,通过所述第一加密算法以及解密密钥对所述加密的下发包进行解密;
19.进行验签,验签通过后,对各ota文件进行摘要信息比对,若摘要信息比对通过,则执行所述ota文件包,否则,不执行所述ota文件包,并将相应的文件上报给云端;
20.其中,所述摘要信息比对为分别对各ota文件的文件名与文件内容的叠加信息进行哈希,得到多个摘要信息,将每个摘要信息分别与所述第一文件中的对应摘要信息进行比对;所述验签为对所述第二文件中每个签名信息进行验签。
21.再一方面,提供一种云端ota文件安全处理装置,该装置被配置为用于执行上述一种云端的ota文件安全处理方法。
22.再一方面,提供一种车端ota文件安全处理装置,该装置被配置为用于执行上述一种车端的ota文件安全处理方法。
23.再一方面,提供一种ota文件安全处理方法,包括上述一种云端的ota文件安全处理方法以及上述一种车端的ota文件安全处理方法。
24.又一方面,提供一种ota文件安全处理系统,包括上述一种云端ota文件安全处理装置以及上述一种车端ota文件安全处理装置。
25.综上所述,本发明中对ota文件进行解密的密钥由车端的公钥进行加密,只有用车端的相应私钥才能解密出真正的密钥,因此可以保证即使ota文件被盗取、密钥被泄露,ota文件也是安全的,并且一旦ota文件被截流、篡改,也可以通过摘要信息比对以及验签精准检测到哪个文件被篡改,拒绝执行该文件,并且将该文件上报云端,从而便于云端可以做出更全面的分析。
附图说明
26.下面结合附图和具体实施方式对本发明进行详细说明:
27.图1为本发明的一种云端的ota文件安全处理方法的流程图;
28.图2为本发明的一种车端的ota文件安全处理方法的流程图;
29.图3为本发明的一种ota文件安全处理系统的结构示意图。
具体实施方式
30.如图1所示,本说明书实施例提供一种云端的ota文件安全处理方法,包括:
31.s101、在与车端20第一次通讯时,接收车端20发送的公钥。
32.在本实施例中,只要与车端20发生通讯,在第一次通讯时,接收车端20发送的包含公钥的第二数字证书,然后从该第二数字证书中获取公钥。
33.s102、分别对ota文件包中各ota文件的文件名与文件内容的叠加信息进行哈希,得到多个摘要信息。这样的方式,校验更加完整,如果只对文件名或者文件内容进行哈希,
还是有被篡改的可能。
34.如ota文件1的文件名+文件内容进行哈希,得到ota文件1的摘要信息。
35.s103、将上述多个摘要信息分别通过第一数字证书的私钥进行数字签名,得到多个签名信息(签名信息中会包含第一数字证书的公钥)。第一数字证书可以由云端自己生成,也可以从第三方获得。
36.如对上述ota文件1的摘要信息进行数字签名,得到ota文件1的签名信息。
37.s104、将上述多个摘要信息保存在第一文件中,将上述多个签名信息保存在第二文件中,并将上述各ota文件、第一文件以及第二文件打包成下发包。
38.其中,在第一文件中以文件名与摘要信息一一对应的方式对摘要信息进行保存,在第二文件中以文件名与签名信息一一对应的方式对签名信息进行保存。
39.s105、随机生成加密密钥以及解密密钥,通过第一加密算法以及上述加密密钥对上述下发包进行加密,通过第二加密算法以及从车端20获得的公钥对上述解密密钥进行加密。
40.s106、将加密的下发包的下载地址、加密的解密密钥、第一加密算法以及第二加密算法下发给车端20。
41.其中,加密密钥以及解密密钥为云端生成的随机字符串。
42.在本实施例中,第一加密算法为一种对称加密算法或者非对称加密算法。
43.当第一加密算法为对称加密算法时,解密密钥与加密密钥相同,此时,步骤s105中只需随机生成一个密钥,并通过第二加密算法以及公钥对该密钥进行加密,相应地,步骤s106中的加密的解密密钥其实是加密的密钥。
44.第二加密算法则必须为一种非对称加密算法,保证上述公钥与对应的私钥是不同的,这样即使公钥被获取也无法获得上述解密密钥。
45.如图2所示,基于同一发明构思,本说明书实施例还提供一种车端的ota文件安全处理方法,包括:
46.s201、在与云端10第一次通讯时,发送公钥给云端10。
47.在本实施例中,只要与云端10发生通讯,在第一次通讯时,发送包含公钥的第二数字证书给云端10。
48.第二数字证书一般是产线下线的时候就预置在车端,如果数字证书过期,车端可以在线通过向pki服务器申请新的通讯证书。
49.s202、接收云端10下发的加密的下发包的下载地址、加密的解密密钥、第一加密算法以及第二加密算法。
50.s203、通过上述下载地址下载加密的下发包。
51.s204、通过上述第二加密算法以及对应上述公钥的私钥对加密的解密密钥进行解密,得到解密密钥,通过上述第一加密算法以及解密密钥对加密的下发包进行解密。
52.其中,解密密钥为云端生成的随机字符串。
53.在本实施例中,第一加密算法为一种对称加密算法或者非对称加密算法。
54.当第一加密算法为对称加密算法时,解密密钥与加密密钥相同,云端只需随机生成一个密钥,并通过第二加密算法以及公钥对该密钥进行加密,然后下发给车端20,此时,步骤s202中的加密的解密密钥其实是加密的s密钥,相应地,步骤204解密后得到该密钥,然
后对下发包进行解密。
55.第二加密算法则必须为一种非对称加密算法,保证上述公钥与对应的私钥是不同的,这样即使公钥被获取也无法获得上述解密密钥。
56.s205、进行验签,验签通过后,对各ota文件进行摘要信息比对,若摘要信息比对通过,则执行上述ota文件包,否则,不执行,并将摘要信息比对不通过或者验签不通过的相应的文件上报给云端。
57.其中,摘要信息比对为分别对各ota文件的文件名与文件内容的叠加信息进行哈希,得到多个摘要信息,将每个摘要信息分别与第一文件中的对应摘要信息进行比对,验签为对第二文件中每个签名信息进行验签。
58.具体地,由于在第一文件中以文件名与摘要信息一一对应的方式对摘要信息进行保存,在第二文件中以文件名与签名信息一一对应的方式对签名信息进行保存,通过上述对应方式可以知道摘要信息比对或者验签没有通过的是哪个文件。
59.验签的过程如下:
60.车端从签名信息中提取出公钥信息,验证ca(证书颁发机构certificate authority)是否匹配,通常这个ca可以预置在车端,也可以与车端的通讯证书的ca相同,ca验证通过后,则表明这是个可信任的公钥,然后用这个公钥去解密签名信息,就可以得到明文的摘要信息了,然后就可以进行摘要信息比对了。
61.如图3所示,基于同一发明构思,本说明书实施例还提供一种云端ota文件安全处理装置11,该装置11设于云端10,装置11被配置为用于执行上述一种云端的ota文件安全处理方法。
62.具体地,云端ota文件安全处理装置11包括存储模块,存储模块包括由处理器加载并执行的指令(程序代码),指令在被执行时使处理器执行本说明书上述一种云端的ota文件安全处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
63.其中,存储模块可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)和/或高速缓存存储单元,还可以进一步包括只读存储单元(rom)。
64.如图3所示,基于同一发明构思,本说明书实施例还提供一种车端ota文件安全处理装置21,该装置21设于车端20,被配置为用于执行上述一种车端的ota文件安全处理方法。
65.具体地,车端ota文件安全处理装置21包括存储模块,存储模块包括由处理器加载并执行的指令(程序代码),指令在被执行时使处理器执行本说明书上述一种车端的ota文件安全处理方法部分中描述的根据本发明各种示例性实施方式的步骤。
66.其中,存储模块可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)和/或高速缓存存储单元,还可以进一步包括只读存储单元(rom)。
67.可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网
(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
68.如图1以及图2所示,基于同一发明构思,本说明书实施例还提供一种ota文件安全处理方法,包括上述一种云端的ota文件安全处理方法以及上述一种车端的ota文件安全处理方法,此处不再赘述。
69.如图3所示,基于同一发明构思,本说明书实施例还提供一种ota文件安全处理系统,包括上述一种云端ota文件安全处理装置11以及上述一种车端ota文件安全处理装置21,装置11设于云端10,装置21设于云端20,两者通过互联网无线连接。
70.综上所述,本发明中对ota文件进行解密的密钥由车端的公钥进行加密,只有用车端的相应私钥才能解密出真正的密钥,因此可以保证即使ota文件被盗取、密钥被泄露,ota文件也是安全的,并且一旦ota文件被截流、篡改,也可以通过摘要信息比对以及验签精准检测到哪个文件被篡改,拒绝执行该文件,并且将该文件上报云端,从而便于云端可以做出更全面的分析。
71.但是,本技术领域中的普通技术人员应当认识到,以上的实施例仅是用来说明本发明,而并非用作为对本发明的限定,只要在本发明的实质精神范围内,对以上所述实施例的变化、变型都将落在本发明的权利要求书范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1