固件空中升级装置、充电桩、设备、方法及程序产品制造方法及图纸

技术编号:37557631 阅读:16 留言:0更新日期:2023-05-15 07:41
本公开提供了一种固件空中升级装置、充电桩、方法及程序产品,该装置包括电路板、通信模块、处理模块以及外部存储模块。处理模块用于通过通信模块接收服务器发送的升级指令请求,在确定固件空中升级装置符合升级条件的情况下,基于升级文件包的文件大小以及内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小,并从存储地址中对密文升级文件包进行分批下载,直到升级文件包下载完成;针对每次下载,处理模块用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于内部存储模块内,并对当前密文数据包进行解密后存储于外部存储模块中。如此,可以在内存较小的情况下,通过分批下载的方式实现FOTA升级。方式实现FOTA升级。方式实现FOTA升级。

【技术实现步骤摘要】
固件空中升级装置、充电桩、设备、方法及程序产品


[0001]本公开涉及通信
,具体而言,涉及一种固件空中升级装置、充电桩、电子设备、固件空中升级方法及计算机程序产品。

技术介绍

[0002]固件空中升级(Firmware Over

the

Air,FOTA)技术,主要是指一种通过空中接口远程管理、更新终端设备中固件的技术。通过FOTA升级操作,不仅仅可以下载升级应用软件,也可以更新设备的操作系统。这样,FOTA升级操作使设备制造商能够通过网络将升级包发送到终端设备中,从而对固件、软件进行升级,不但方便了用户,也为设备制造商节约了成本。
[0003]目前FOTA升级操作通常将升级文件整包下载,然后基于下载的整包文件进行固件升级,然而,该方法在升级文件较大的情况下,需要占用较大的内存空间,导致一些内存空间受限的情况可能无法实现FOTA升级。

技术实现思路

[0004]本公开实施例至少提供一种固件空中升级装置、充电桩、固件空中升级方法及计算机程序产品,可以在内存空间较小的情况下实现FOTA升级,使得FOTA升级不受限于内存空间的限制,进而提升了FOTA升级方法的适用性。
[0005]本公开实施例提供了一种固件空中升级装置,包括电路板、通信模块、处理模块以及外部存储模块,所述通信模块、所述处理模块以及所述外部存储模块设置于所述电路板上,所述处理模块分别与所述通信模块以及所述外部存储模块相连接,且所述处理模块包括内部存储模块;其中,所述通信模块用于建立所述固件空中升级装置与服务器之间的通信连接,所述服务器用于存储对目标对象进行固件升级的密文升级文件包;所述处理模块用于通过所述通信模块接收所述服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述密文升级文件包的大小以及所述密文升级文件包的存储地址;所述处理模块用于在确定所述固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小,并基于所述每次需要下载的文件大小按照所述文件下载次数从所述存储地址中对所述密文升级文件包进行下载,直到所述密文升级文件包下载完成;针对每次下载,所述处理模块用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块内,并对所述当前密文数据包进行解密,得到当前明文数据包,且将所述当前明文数据包存储于所述外部存储模块中;其中,所述密文数据包为每次需要下载的文件大小对应的密文升级文件。
[0006]本公开实施例中,可以基于固件空中升级装置的内存大小对服务器的密文升级文件包进行分批下载,且针对每次下载,可以将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于内存中,并对本次下载的当前密文数据包进行解密后存储于外部存储空间,如此即使在内存空间较小的情况下,也可以实现FOTA升级,使得FOTA升级不受限于内存空间的限制,进而提升了FOTA升级方法的适用性。
[0007]在一种可能的实施方式中,所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;所述每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数;所述处理模块具体用于基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。
[0008]本公开实施例中,基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,进而可以提升每次下载的密文数据包的精度、避免遗漏,有助于提升分批下载的密文数据包的连续性以及整包密文升级文件包的完整性。
[0009]在一种可能的实施方式中,所述密文升级文件包采用高级加密标准加密块链模式加密得到;所述处理模块还用于获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,并将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容。
[0010]本公开实施例中,由于密文升级文件包采用高级加密标准加密块链模式加密得到,因此对应的在解密时采用初始向量以及解密密钥对当前密文数据包进行解密,可以提升解密的精度以及效率。
[0011]在一种可能的实施方式中,所述处理模块还用于获取所述密文升级文件包所采用的加密填充模式,并基于所述加密填充模式、所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包;其中,在所述当前密文数据包不为所述密文升级文件包的最后一包的情况下,所述加密填充模式为无填充模式。
[0012]本公开实施例中,在解密时,还获取所述密文升级文件包所采用的加密填充模式,进而针对最后一包可以采用相应的加密填充模式进行解密,进而有助于提升最后一包密文数据包的数据解密精度。
[0013]在一种可能的实施方式中,所述处理模块还用在所述当前明文数据包为第一包的情况下,对所述当前明文数据包的头部信息进行校验,并在校验通过的情况下将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容;其中,所述头部信息用于表征所述当前明文数据包的身份信息。
[0014]本公开实施例中,在所述当前明文数据包为第一包的情况下,还对当前明文数据包的头部信息进行校验,进而可以保证下载数据的准确性。
[0015]在一种可能的实施方式中,所述处理模块还用于确定所述当前明文数据包的大小是否与所述数据下载偏移量匹配,并在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,重新对所述密文升级文件包进行下载。
[0016]本公开实施例中,在所述当前明文数据包的大小与所述数据下载偏移量不匹配的情况下,说明下载的数据有缺失,进而需要对密文升级文件包进行重新下载,如此,可以保证密文升级文件包下载的准确性和完整性。
[0017]在一种可能的实施方式中,所述处理模块还用于在所述当前明文数据包为第一包的情况下,对所述外部存储模块进行擦除处理并在去除所述当前明文数据包的头部信息后,将所述当前明文数据包存储于所述外部存储模块中。
[0018]本公开实施例中,在对明文数据包进行存储时,将第一包的头部信息进行删除,可以避免存储的数据存在非升级文件内容的情况,有助于提升升级文件包的准确性。
[0019]在一种可能的实施方式中,所述升级请求信息还包括文件签名信息,所述处理模块还用于在所述当前明文数据包为最后一包的情况下,基于所述文件签名信息对各个明文数据包进行校验,并在校验通过的情况下对所述目标对象进行升级。
[0020]本公开实施例中,在整包密文升级文件包下载完成的情况下,还通过签名信息对各个明文数据包进行校验,如此,可以保证升级本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种固件空中升级装置,其特征在于,包括电路板、通信模块、处理模块以及外部存储模块,所述通信模块、所述处理模块以及所述外部存储模块设置于所述电路板上,所述处理模块分别与所述通信模块以及所述外部存储模块相连接,且所述处理模块包括内部存储模块;其中,所述通信模块用于建立所述固件空中升级装置与服务器之间的通信连接,所述服务器用于存储对目标对象进行固件升级的密文升级文件包;所述处理模块用于通过所述通信模块接收所述服务器发送的升级指令请求,所述升级指令请求携带升级请求信息,所述升级请求信息包括所述密文升级文件包的大小以及所述密文升级文件包的存储地址;所述处理模块用于在确定所述固件空中升级装置符合升级条件的情况下,基于所述密文升级文件包的文件大小以及所述内部存储模块的存储空间大小,确定文件下载次数以及每次需要下载的文件大小,并基于所述每次需要下载的文件大小按照所述文件下载次数从所述存储地址中对所述密文升级文件包进行下载,直到所述密文升级文件包下载完成;针对每次下载,所述处理模块用于将本次下载的当前密文数据包以覆盖前一次下载的密文数据包的形式存储于所述内部存储模块内,并对所述当前密文数据包进行解密,得到当前明文数据包,且将所述当前明文数据包存储于所述外部存储模块中;其中,所述密文数据包为每次需要下载的文件大小对应的密文升级文件。2.根据权利要求1所述的装置,其特征在于,所述密文升级文件包为通过对原始明文升级文件按照预设字节长度依次进行加密后得到;所述每次需要下载的文件大小为所述预设字节长度的N倍,其中N为大于或者等于1的正整数;所述处理模块具体用于基于所述每次需要下载的文件大小确定数据下载偏移量,并基于所述每次需要下载的文件大小从初始数据下载偏移量开始依次对所述密文升级文件包进行下载,并在每次下载完密文数据包后,基于所述数据下载偏移量对前一次的数据下载偏移量进行更新。3.根据权利要求1所述的装置,其特征在于,所述密文升级文件包采用高级加密标准加密块链模式加密得到;所述处理模块还用于获取初始向量以及解密密钥,并基于所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包,并将所述初始向量的内容更新为所述当前明文数据包的最后预设字节对应的内容。4.根据权利要求3所述的装置,其特征在于,所述处理模块还用于获取所述密文升级文件包所采用的加密填充模式,并基于所述加密填充模式、所述初始向量以及所述解密密钥对所述当前密文数据包进行解密,得到所述当前明文数据包;其中,在所述当前密文...

【专利技术属性】
技术研发人员:陈真祥
申请(专利权)人:北京集度科技有限公司
类型:发明
国别省市:

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

1