[发明专利]固件更新方法及相关设备有效
申请号: | 201910926093.3 | 申请日: | 2019-09-27 |
公开(公告)号: | CN110784386B | 公开(公告)日: | 2021-12-07 |
发明(设计)人: | 潘志伟;胡震宇 | 申请(专利权)人: | 深圳市火乐科技发展有限公司 |
主分类号: | H04L12/40 | 分类号: | H04L12/40;H04L12/24;G06F8/65;H04L29/06 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518000 广东省深圳市南山区科技*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 更新 方法 相关 设备 | ||
1.一种固件更新方法,其特征在于,应用于主机,所述主机与第一微处理单元MCU之间通过I2C总线协议进行数据传输,所述第一MCU安装有第一固件,所述主机存储有升级所述第一固件的第一升级包,所述方法包括:
确定所述第一MCU的数据读写速度和所述主机与所述第一MCU的通信延时时长,所述通信延时时长为所述主机在通过所述I2C总线协议向所述第一MCU传输数据时每传输完一段数据后等待的预定时长;
基于所述数据读写速度和所述通信延时时长将所述第一升级包拆分成N个第一数据包,所述第一MCU读写每个第一数据包所需的第一时长小于或等于所述通信延时时长;
基于预设加密算法加密所述N个第一数据包,得到N个加密数据包,包括:确定N个第三数值和N个第四数值,所述N个第三数值为所述N个第一数据包对应的拆分顺序,所述N个第四数值为所述N个第一数据包对应的大小,所述N个第三数值、所述N个第四数值均与所述N个第一数据包一一对应;确定N个第五数值和N个第六数值,每个第五数值为每个第三数值与其对应的第四数值之和,每个第六数值为每个第三数值与其对应的第四数值之差;基于所述N个第五数值和所述N个第六数值确定N个第一公钥和N个第一私钥,所述N个第五数值和所述N个第六数值与所述N个第一公钥一一对应,所述N个第五数值和所述N个第六数值与所述N个第一私钥一一对应;基于预设加密算法和所述N个第一公钥加密所述N个第一数据包,得到N个加密数据包,所述N个第一数据包与所述N个加密数据包一一对应;
将所述N个加密数据包传输至所述第一MCU,以及向所述第一MCU发送固件升级指令,所述固件升级指令用于请求所述第一MCU基于所述N个第一数据包升级所述第一固件。
2.根据权利要求1所述的方法,其特征在于,所述确定所述第一MCU的数据读写速度和所述主机与所述第一MCU的通信延时时长之前,所述方法还包括:
接收所述第一MCU发送的固件升级请求,所述固件升级请求用于请求升级所述第一固件,所述固件升级请求携带所述第一固件的版本号;
确定所述第一固件的版本号低于或等于预设版本号。
3.根据权利要求1或2所述的方法,其特征在于,所述基于预设加密算法加密所述N个第一数据包,得到N个加密数据包,还包括:
确定N个第一数值和N个第二数值,所述N个第一数值为所述N个第一数据包对应的拆分顺序,所述N个第二数值为所述N个第一数据包对应的大小,所述N个第一数值、所述N个第二数值均与所述N个第一数据包一一对应;
基于所述N个第一数值和所述N个第二数值生成第一密钥,以及将所述第一密钥作为预设加密算法使用的密钥;
基于所述预设加密算法和所述第一密钥加密所述N个第一数据包,得到N个加密数据包。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
向所述第一MCU发送所述第一密钥,所述第一密钥用于解密所述N个加密数据包,得到所述N个第一数据包。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市火乐科技发展有限公司,未经深圳市火乐科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910926093.3/1.html,转载请声明来源钻瓜专利网。