System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种嵌入式设备的FOTA升级方法、装置、设备及存储介质制造方法及图纸_技高网

一种嵌入式设备的FOTA升级方法、装置、设备及存储介质制造方法及图纸

技术编号:41145464 阅读:2 留言:0更新日期:2024-04-30 18:13
本申请提供一种嵌入式设备的FOTA升级方法、装置、设备及存储介质,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域和参数存储区域,下载升级包到所述升级包存储区域。本申请中,整个FOTA升级过程中,升级包采用了私钥签名、公钥验签,确保升级包的真实性,不可抵赖性,同时对于升级包也采用SHA1进行校验确保升级包的完整性。整个下载过程使用HTTPS进行加密下载,同时下载的升级包使用一机一密AES256加密方式确保每个升级包都不一样,其他用户也无法从升级包中获取关键信息和篡改升级包内容,甚至无法进行版本回退,这样更加保证FOTA升级的安全。

【技术实现步骤摘要】

本申请涉及物联网,具体涉及一种嵌入式设备的fota升级方法、装置、设备及存储介质。


技术介绍

1、目前大多数汽车上都安装有远程控制模块等嵌入式设备,通过网络实现远程升级等功能。fota(firmware over-the-air,空中下载软件升级)是一种通过云端升级技术为具有联网功能的设备提供固件升级服务的方法。

2、当前,嵌入式物联网fota升级技术是整合嵌入式设备终端、物联网云平台等端云一体化升级技术。通过网络下载fota升级包,完成设备应用软件的升级。由于嵌入式设备的fota升级软件包内容可能被篡改、升级包内部关键信息被截取或者设备的软件版本被回退到旧版本等风险,使得设备变得不安全,因此一个安全的fota升级方法就显得十分重要。


技术实现思路

1、本申请的目的是提供一种嵌入式设备的fota升级方法及装置、电子设备及存储介质,能够保证嵌入式设备fota升级的安全。

2、第一方面,本申请实施例提供了一种嵌入式设备的fota升级方法,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域和参数存储区域,所述方法包括:

3、嵌入式设备上电初始化后连接到云服务器,向云服务器上报所述嵌入式设备的设备信息,所述设备信息包括设备的集成电路卡识别码和软件版本号;

4、接收云服务器下发的升级包地址,同时使云服务器根据所述集成电路卡识别码加上双方约定的固定字段经过md5算法生成对称aes256密钥,使用所述aes256密钥对升级包非文件头部进行加密并生成sha1校验码;

5、根据所述升级包地址下载升级包到所述升级包存储区域,设置升级标志位为1,下载完成后校验升级包的sha1校验码;若校验通过,则将升级包版本号与所述软件版本号进行对比,若升级包版本号比所述软件版本号小,则反馈云服务器升级失败,设置升级标志位为0;若升级包版本号比所述软件版本号大,继续升级;

6、使用所述aes256密钥解密升级包,每次最大只对预设阈值大小的数据进行解密,同时根据解密后的数据使用嵌入式设备内部的公钥进行签名计算,直至得到所有解密结束后的签名值,对文件头部的签名字段验签对比;

7、签名校验通过后,设备重启,进入bootloader再次对升级包进行解密,将所述升级包存储区域存储的升级包刷写到所述内部程序区域,并生成校验值,设置升级标志位为0,等待下一次升级。

8、在本申请的一些实施方式中,所述升级包的生成过程如下:

9、在嵌入式开发平台编译生成第一升级包文件,内部服务器生成非对称公钥和私钥对,所述私钥加密保存在内部服务器中;

10、将所述公钥写入嵌入式设备中;

11、将所述第一升级包文件上传到内部服务器,内部服务器使用所述私钥对第一升级包文件进行签名,同时将私钥签名写入所述第一升级包文件的头部,生成新的带私钥签名的第二升级包文件;

12、内部服务器将带私钥签名的第二升级包文件作为升级包上传到云服务器。

13、在本申请的一些实施方式中,所述第二升级包文件的头部信息包括升级包版本号和私钥签名值。

14、在本申请的一些实施方式中,将所述公钥写入嵌入式设备中,包括:

15、通过pc产线加密工具将所述公钥写入嵌入式设备中。

16、第二方面,本申请实施例提供了一种嵌入式设备的fota升级装置,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域和参数存储区域,所述装置包括:

17、上报模块,用于嵌入式设备上电初始化后连接到云服务器,向云服务器上报所述嵌入式设备的设备信息,所述设备信息包括设备的集成电路卡识别码和软件版本号;

18、接收模块,用于接收云服务器下发的升级包地址,同时使云服务器根据所述集成电路卡识别码加上双方约定的固定字段经过md5算法生成对称aes256密钥,使用所述aes256密钥对升级包非文件头部进行加密并生成sha1校验码;

19、下载模块,用于根据所述升级包地址下载升级包到所述升级包存储区域,设置升级标志位为1,下载完成后校验升级包的sha1校验码;若校验通过,则将升级包版本号与所述软件版本号进行对比,若升级包版本号比所述软件版本号小,则反馈云服务器升级失败,设置升级标志位为0;若升级包版本号比所述软件版本号大,继续升级;

20、解密模块,用于使用所述aes256密钥解密升级包,每次最大只对预设阈值大小的数据进行解密,同时根据解密后的数据使用嵌入式设备内部的公钥进行签名计算,直至得到所有解密结束后的签名值,对文件头部的签名字段验签对比;

21、刷写模块,用于签名校验通过后,设备重启,进入bootloader再次对升级包进行解密,将所述升级包存储区域存储的升级包刷写到所述内部程序区域,并生成校验值,设置升级标志位为0,等待下一次升级。

22、在本申请的一些实施方式中,所述升级包的生成过程如下:

23、在嵌入式开发平台编译生成第一升级包文件,内部服务器生成非对称公钥和私钥对,所述私钥加密保存在内部服务器中;

24、将所述公钥写入嵌入式设备中;

25、将所述第一升级包文件上传到内部服务器,内部服务器使用所述私钥对第一升级包文件进行签名,同时将私钥签名写入所述第一升级包文件的头部,生成新的带私钥签名的第二升级包文件;

26、内部服务器将带私钥签名的第二升级包文件作为升级包上传到云服务器。

27、第三方面,本申请提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行以实现如第一方面所述的方法。

28、第四方面,本申请实提供了一种计算机可读存储介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如第一方面所述的方法。

29、相较于现有技术,本申请提供的嵌入式设备的fota升级方法,整个fota升级过程中,升级包采用了私钥签名、公钥验签,确保升级包的真实性,不可抵赖性,同时对于升级包也采用sha1进行校验确保升级包的完整性。整个下载过程使用https进行加密下载,同时下载的升级包使用一机一密aes256加密方式确保每个升级包都不一样,其他用户也无法从升级包中获取关键信息和篡改升级包内容,甚至无法进行版本回退,这样更加保证fota升级的安全。

本文档来自技高网...

【技术保护点】

1.一种嵌入式设备的FOTA升级方法,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域和参数存储区域,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述升级包的生成过程如下:

3.根据权利要求2所述的方法,其特征在于,所述第二升级包文件的头部信息包括升级包版本号和私钥签名值。

4.根据权利要求2所述的方法,其特征在于,将所述公钥写入嵌入式设备中,包括:

5.一种嵌入式设备的FOTA升级装置,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域和参数存储区域,所述装置包括:

6.根据权利要求5所述的装置,其特征在于,所述升级包的生成过程如下:

7.一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序时以实现如权利要求1至4任一项所述的方法。

8.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至4任一项所述的方法。

...

【技术特征摘要】

1.一种嵌入式设备的fota升级方法,其特征在于,嵌入式设备的内部闪存包括引导程序区域和内部程序区域,将嵌入式设备外挂的外部闪存划分为升级包存储区域和参数存储区域,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述升级包的生成过程如下:

3.根据权利要求2所述的方法,其特征在于,所述第二升级包文件的头部信息包括升级包版本号和私钥签名值。

4.根据权利要求2所述的方法,其特征在于,将所述公钥写入嵌入式设备中,包括:

5.一种嵌入式设备的fota升级装置,其特征在于,嵌入式设备的...

【专利技术属性】
技术研发人员:隋榕华林伟兰成荣张隽
申请(专利权)人:慧翰微电子股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1