System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及ota,具体涉及一种ota升级包结构、升级包生成方法及装置。
技术介绍
1、随着智能网联技术的发展,ota(over the air)升级越来越受到相关企业的重视,而ota升级的重点便是升级包的制作,升级包的制作关系着车云两端的通信、升级包的验签解密、以及车端如何升级。现有ota升级包的方案存在两个问题:其一,升级包的结构无法统一,不同结构的升级包采用不同的加密签名方案,代码实现的复杂度高且难以后期维护;其二,升级包的结构过于复杂,通常ota升级包会有几个文件构成,每个文件会有不同的作用,在对升级包进行签名加密时,需要对升级包中的每个文件分别进行签名,然后生成新的文件合并成新的升级包或者存储到其他地方,过程繁琐,而且会修改原升级包的构成,系统风险高,解密验签过程耗时长。
2、针对以上问题,本领域技术人员一直在寻求解决方法。
技术实现思路
1、本申请要解决的技术问题在于,针对上述现有技术的缺陷,提供一种ota升级包结构、升级包生成方法及装置。
2、为了实现上述目的,本申请是通过如下的技术方案来实现:
3、本申请提供一种ota升级包结构,包括:包分段和数据段;
4、包分段包括包信息、数字签名;
5、包信息用于记录升级包的文件类型、版本、软件类型、数据大小;
6、数字签名设置于包信息与数据段之间;
7、数据段包括原始升级文件,用于对待升级零件进行升级。
8、可选地,包分段还包括段地址
9、数字签名设置于包信息与段地址之间,段地址用于对标定段、程序段、原始升级文件进行位置索引;
10、标定段设置于段地址与程序段之间,用于记录待升级零件的标定信息;
11、程序段设置于标定段与数据段之间,包括程序刷写脚本,用于记录数据段刷写时的脚本。
12、本申请还提供一种ota升级包的生成方法,包括:
13、提供一种上述的升级包结构;
14、获取包信息;
15、根据预设加密算法获取对应的秘钥;
16、根据预设的哈希算法进行分段签名以获取数字签名;
17、利用秘钥和预设加密算法进行加密;
18、根据升级包结构将原始升级文件、数字签名、包信息添加至ota升级包;
19、输出ota升级包。
20、可选地,获取包信息之前,包括:
21、确定原始升级文件的基本信息和下载地址;
22、根据下载地址下载原始升级文件;
23、根据原始升级文件获取制包元数据。
24、可选地,基本信息包括文件类型、包属性、升级包版本、软件类型、文件大小;
25、制包元数据包括零件标定信息、物流信息、升级版本、加密方式、签名算法。
26、可选地,获取包信息包括:
27、将基本信息和制包元数据中至少一项添加至包信息;
28、获取包信息之后,包括:
29、将制包元数据中的至少一项添加至标定段;
30、将程序刷写脚本添加至程序段;
31、将原始升级文件添加至数据段。
32、可选地,根据预设的哈希算法进行签名以获取数字签名,包括:
33、利用预设的哈希算法,对标定段、程序段、数据段进行分段签名;
34、标定段、程序段、数据段包括n段数据,分段签名包括:将第n-1哈希值与第n段数据拼接后进行哈希计算以获取第n哈希值,n大于或等于2;
35、根据第n哈希值生成数字签名。
36、可选地,根据升级包结构将原始升级文件、数字签名、包信息添加至ota升级包,还包括:
37、根据升级包结构,依照添加顺序将数据段、程序段、标定段、数字签名、包信息添加至ota升级包。
38、可选地,方法还包括:
39、响应于输出ota升级新需求,根据新需求生成第二包分段;
40、将第二包分段添加至ota升级包以生成第二ota升级包。
41、本申请还提供一种ota升级包的生成装置,包括获取模块、加密模块、包生成模块、通信模块;
42、获取模块用于获取包信息,以及根据预设的哈希算法进行分段签名以获取数字签名;
43、加密模块用于根据预设加密算法获取对应的秘钥,以及利用秘钥和预设加密算法进行加密;
44、包生成模块用于根据升级包结构将原始升级文件、数字签名、包信息添加至ota升级包;
45、通信模块用于输出ota升级包。
46、本申请提供了一种ota升级包结构、升级包生成方法及装置,采用新型的升级包结构,在保持原始升级文件内容、结构均不变的情况下,将加密签名信息通过包头、标定、程序集成到制作的升级包中,设备端收到此种格式的升级包,验签解密更便捷、效率更高。
47、为让本申请的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
本文档来自技高网...【技术保护点】
1.一种OTA升级包结构,其特征在于,包括:包分段和数据段;
2.如权利要求1所述的升级包结构,其特征在于,所述包分段还包括段地址、标定段、程序段;
3.一种OTA升级包的生成方法,其特征在于,包括:
4.如权利要求3所述的方法,其特征在于,所述获取包信息之前,包括:
5.如权利要求4所述的方法,其特征在于,所述基本信息包括文件类型、包属性、升级包版本、软件类型、文件大小;
6.如权利要求5所述的方法,其特征在于,所述获取包信息包括:
7.如权利要求6所述的方法,其特征在于,所述根据预设的哈希算法进行签名以获取数字签名,包括:
8.如权利要求3所述的方法,其特征在于,所述根据所述升级包结构将原始升级文件、所述数字签名、所述包信息添加至OTA升级包,还包括:
9.如权利要求3所述的方法,其特征在于,所述方法还包括:
10.一种OTA升级包的生成装置,其特征在于,包括获取模块、加密模块、包生成模块、通信模块;
【技术特征摘要】
1.一种ota升级包结构,其特征在于,包括:包分段和数据段;
2.如权利要求1所述的升级包结构,其特征在于,所述包分段还包括段地址、标定段、程序段;
3.一种ota升级包的生成方法,其特征在于,包括:
4.如权利要求3所述的方法,其特征在于,所述获取包信息之前,包括:
5.如权利要求4所述的方法,其特征在于,所述基本信息包括文件类型、包属性、升级包版本、软件类型、文件大小;
6.如权利要求5所述的方...
【专利技术属性】
技术研发人员:请求不公布姓名,程鄂,
申请(专利权)人:合众新能源汽车股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。