设备的固件升级方法及系统技术方案

技术编号:33631179 阅读:16 留言:0更新日期:2022-06-02 01:35
本发明专利技术提供一种设备的固件升级方法及系统,方法包括:服务器发送升级请求帧给设备;设备在接收到升级请求帧后回复应答帧给服务器,应答帧中包含设备的唯一识别码;服务器根据唯一识别码确定目标APP跳转地址,根据目标APP跳转地址得到设备的目标固件升级包,并将目标固件升级包发送给设备;设备将目标固件升级包的升级数据写入APP分区;设备在本地读取唯一识别码,并根据唯一识别码确定目标APP跳转地址;设备根据目标APP跳转地址跳转至APP程序。由此,将唯一识别码和APP跳转地址绑定,并将APP跳转地址和固件升级包对应起来,采用动态的APP跳转地址实现设备的升级及启动,可以提高设备的破解难度,提升设备的安全性。提升设备的安全性。提升设备的安全性。

【技术实现步骤摘要】
设备的固件升级方法及系统


[0001]本专利技术涉及固件升级
,具体涉及一种设备的固件升级方法和一种设备的固件升级系统。

技术介绍

[0002]目前,加密升级方案主要侧重在数据通信、升级流程、数据保存几个方面的加密和解密。在相关技术方案中,在设备进行固件升级时,设备中的APP (Application,应用程序)跳转地址(也就是APP的启动地址)往往是固定不变的,缺少相应的加密机制作为保障,往往成为设备安全保障中的薄弱环节,从而导致设备的升级安全性被严重破坏。

技术实现思路

[0003]本专利技术为解决上述技术问题之一,提出了如下技术方案。
[0004]本专利技术第一方面实施例提出了一种设备的固件升级方法,包括:
[0005]S1,服务器发送升级请求帧给设备;
[0006]S2,所述设备在接收到所述升级请求帧后回复应答帧给所述服务器,其中,所述应答帧中包含所述设备的唯一识别码;
[0007]S3,所述服务器根据所述唯一识别码确定目标APP跳转地址,根据所述目标APP跳转地址得到所述设备的目标固件升级包,并将所述目标固件升级包发送给所述设备;
[0008]S4,所述设备将目标固件升级包的升级数据写入APP分区;
[0009]S5,所述设备在本地读取所述唯一识别码,并根据所述唯一识别码确定所述目标APP跳转地址;
[0010]S6,所述设备根据所述目标APP跳转地址跳转至APP程序。
[0011]另外,根据本专利技术上述实施例的设备的固件升级方法还可以具有如下附加的技术特征。
[0012]根据本专利技术的一个实施例,根据所述唯一识别码确定所述目标APP跳转地址,包括:
[0013]对所述唯一识别码进行加密处理得到第一特征码;
[0014]获取APP跳转地址池;
[0015]按照预设规则,根据所述第一特征码和所述APP跳转地址池确定所述目标APP跳转地址。
[0016]根据本专利技术的一个实施例,按照预设规则,根据所述第一特征码和所述 APP跳转地址池确定所述目标APP跳转地址,包括:
[0017]获取APP跳转地址池的地址范围,并根据所述APP跳转地址池的地址范围确定地址掩码;
[0018]确定所述地址掩码的有效字节数N,其中,N为大于或者等于1的整数;
[0019]提取所述第一特征码的最后N个字节作为第二特征码;
[0020]将所述第二特征码与所述地址掩码进行位与运算得到第三特征码;
[0021]根据所述APP跳转地址池的地址范围得到APP跳转地址池的起始地址;
[0022]将所述第三特征码与所述APP跳转地址池的起始地址相加,得到所述目标APP跳转地址。
[0023]根据本专利技术的一个实施例,设备的固件升级方法,还包括:
[0024]为所述APP跳转地址池的每个APP跳转地址生成对应的固件升级包,以得到APP跳转地址和固件升级包之间的对应关系表。根据本专利技术的一个实施例,为所述APP跳转地址池的每个APP跳转地址生成对应的固件升级包,包括:
[0025]确定APP跳转地址池的起始地址、结束地址和地址间隔,并将所述APP 跳转地址池的起始地址作为当前跳转地址;
[0026]获取链接文件模板;
[0027]根据所述当前跳转地址和所述链接文件模板生成链接文件;
[0028]对所述链接文件进行编译,以得到二进制文件;
[0029]对所述二进制文件进行打包处理,以得到所述当前跳转地址对应的固件升级包;
[0030]判断是否得到所述APP跳转地址池的结束地址对应的固件升级包;
[0031]在未得到所述APP跳转地址池的结束地址对应的固件升级包时,根据所述当前跳转地址和所述地址间隔得到下一个APP跳转地址,并将所述下一个 APP跳转地址作为所述当前跳转地址,返回所述根据所述当前跳转地址和所述链接文件模板生成链接文件的步骤,直至得到所述APP跳转地址池的结束地址对应的固件升级包。
[0032]根据本专利技术的一个实施例,所述服务器根据所述目标APP跳转地址得到所述设备的目标固件升级包,包括:
[0033]获取APP跳转地址和固件升级包之间的对应关系表;
[0034]根据所述目标APP跳转地址和所述对应关系表,得到所述目标APP跳转地址对应的目标固件升级包。
[0035]根据本专利技术的一个实施例,在所述设备在本地读取所述唯一识别码之前,还包括:
[0036]所述设备根据所述目标固件升级包验证APP分区数据,并确定验证通过,其中,所述目标固件升级包包括:固件长度和固件CRC(Cyclic RedundancyCheck,循环冗余校验)码。
[0037]根据本专利技术的一个实施例,所述设备根据所述目标固件升级包验证APP 分区数据,并确定验证通过,包括:
[0038]根据所述固件长度计算APP分区数据的固件CRC码,以得到计算出的固件CRC码;
[0039]读取APP分区保存的固件CRC码,以得到读取到的固件CRC码;
[0040]在所述计算出的固件CRC码与所述读取到的固件CRC码一致时,确定验证通过。
[0041]本专利技术第二方面实施例提出了一种设备的固件升级系统,包括设备和服务器,所述服务器包括发送模块和生成模块,所述设备包括回复模块、写入模块、确定模块和跳转模块;
[0042]所述发送模块,用于发送升级请求帧给设备;
[0043]所述回复模块,用于在接收到升级请求帧后回复应答帧给所述服务器,其中,所述应答帧中包含所述设备的唯一识别码;
[0044]所述生成模块,用于根据所述唯一识别码确定目标APP跳转地址,根据所述目标APP跳转地址得到所述设备的目标固件升级包,并将所述目标固件升级包发送给所述设备;
[0045]所述写入模块,用于将目标固件升级包的升级数据写入APP分区;
[0046]所述确定模块,用于在本地读取所述唯一识别码,并根据所述唯一识别码确定所述目标APP跳转地址;
[0047]所述跳转模块,用于根据所述目标APP跳转地址跳转至APP程序。
[0048]根据本专利技术实施例的设备的固件升级系统还可以具有如下附加的技术特征:
[0049]根据本专利技术的一个实施例,所述生成模块或者所述确定模块,在根据所述唯一识别码确定所述目标APP跳转地址时,具体用于:
[0050]对所述唯一识别码进行加密得到第一特征码;
[0051]获取APP跳转地址池;
[0052]按照预设规则,根据所述第一特征码和所述APP跳转地址池确定所述目标APP跳转地址。
[0053]本专利技术实施例的技术方案,服务器根据设备的唯一识别码确定APP跳转地址,根据APP跳转地址得到设备的固件升级包,并将固件升级包发送给设备,设备根据唯一识别码确定APP跳转地址,进而根据APP跳转地址跳转至 APP程序,完成设备的升级启动。由此,本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种设备的固件升级方法,其特征在于,包括以下步骤:S1,服务器发送升级请求帧给设备;S2,所述设备在接收到所述升级请求帧后回复应答帧给所述服务器,其中,所述应答帧中包含所述设备的唯一识别码;S3,所述服务器根据所述唯一识别码确定目标APP跳转地址,所述服务器根据所述目标APP跳转地址得到所述设备的目标固件升级包,并将所述目标固件升级包发送给所述设备;S4,所述设备将目标固件升级包的升级数据写入APP分区;S5,所述设备在本地读取所述唯一识别码,并根据所述唯一识别码确定所述目标APP跳转地址;S6,所述设备根据所述目标APP跳转地址跳转至APP程序。2.根据权利要求1所述的设备的固件升级方法,其特征在于,根据所述唯一识别码确定所述目标APP跳转地址,包括:对所述唯一识别码进行加密处理得到第一特征码;获取APP跳转地址池;按照预设规则,根据所述第一特征码和所述APP跳转地址池确定所述目标APP跳转地址。3.根据权利要求2所述的设备的固件升级方法,其特征在于,按照预设规则,根据所述第一特征码和所述APP跳转地址池确定所述目标APP跳转地址,包括:获取APP跳转地址池的地址范围,并根据所述APP跳转地址池的地址范围确定地址掩码;确定所述地址掩码的有效字节数N,其中,N为大于或者等于1的整数;提取所述第一特征码的最后N个字节作为第二特征码;将所述第二特征码与所述地址掩码进行位与运算得到第三特征码;根据所述APP跳转地址池的地址范围得到APP跳转地址池的起始地址;将所述第三特征码与所述APP跳转地址池的起始地址相加,得到所述目标APP跳转地址。4.根据权利要求2所述的设备的固件升级方法,其特征在于,还包括:为所述APP跳转地址池的每个APP跳转地址生成对应的固件升级包,以得到APP跳转地址和固件升级包之间的对应关系表。5.根据权利要求4所述的设备的固件升级方法,其特征在于,为所述APP跳转地址池的每个APP跳转地址生成对应的固件升级包,包括:确定APP跳转地址池的起始地址、结束地址和地址间隔,并将所述APP跳转地址池的起始地址作为当前跳转地址;获取链接文件模板;根据所述当前跳转地址和所述链接文件模板生成链接文件;对所述链接文件进行编译,以得到二进制文件;对所述二进制文件进行打包处理,以得到所述当前跳转地址对应的固件升级包;判断是否得到所述APP跳转地址池的结束地址对应的固件升级包;在未得到所述APP跳转地址池的结束地址对应的固...

【专利技术属性】
技术研发人员:齐斌陈申朱选才
申请(专利权)人:万帮星星充电科技有限公司
类型:发明
国别省市:

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

1