CN111064723A - 一种基于备份系统的空中下载升级方法及系统 - Google Patents

一种基于备份系统的空中下载升级方法及系统 Download PDF

Info

Publication number
CN111064723A
CN111064723A CN201911275599.9A CN201911275599A CN111064723A CN 111064723 A CN111064723 A CN 111064723A CN 201911275599 A CN201911275599 A CN 201911275599A CN 111064723 A CN111064723 A CN 111064723A
Authority
CN
China
Prior art keywords
firmware
backup system
backup
partitioned
identification information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201911275599.9A
Other languages
English (en)
Other versions
CN111064723B (zh
Inventor
周杰
程磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Tuya Information Technology Co Ltd
Original Assignee
Hangzhou Tuya Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Tuya Information Technology Co Ltd filed Critical Hangzhou Tuya Information Technology Co Ltd
Priority to CN201911275599.9A priority Critical patent/CN111064723B/zh
Publication of CN111064723A publication Critical patent/CN111064723A/zh
Application granted granted Critical
Publication of CN111064723B publication Critical patent/CN111064723B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes

Abstract

本申请公开了一种基于备份系统的升级方法,包括:S100:加签待下载固件中的所有分区块固件;S200:备份系统获取并解签需要升级的所述分区块固件;S300:所述备份系统升级所述分区块。与现有技术相比,本申请具有如下优点:1.通过对固件的加签和解签避免了固件在传输过程中被篡改的可能;2.通过安全存储区代替缓存,将主系统和备份系统切换时需要的数据通过加密和解密的方式存储在安全存储区。避免了系统切换时,存在缓存中的数据被篡改和丢失的可能。

Description

一种基于备份系统的空中下载升级方法及系统
技术领域
本申请涉及物联网和网络通信技术领域,具体而言,涉及一种基于备份系统的空中下载升级方法。
背景技术
在Android或linux嵌入式领域,通常会带有recovery(备份)系统来进行OTA(空中下载)升级或设备恢复等功能。recovery系统为了不占用过多的系统flash空间,设计成最小系统。在recovery系统下进行OTA升级,可以方便的对其他用户分区进行升级。现有技术一般是在主系统先通过OTA下载recovery镜像,对recovery分区升级。然后重启切换到recovery系统通过OTA下载剩下的OTA固件进行升级。
然而现有技术涉及到固件安全隐患问题。在网络下载固件过程中,固件内容有可能被簒改或者第三方非法获取。被簒改会引起嵌入式设备遭到恶意植入病毒或设备崩溃。固件信息属于公司核心知识产权,被第三方非法获取也有可能导致公司核心技术被窃取。另recovery系统和主系统的重启环节,关键升级信息存储在flash也容易被泄露。
发明内容
本申请的主要目的在于提供一种基于备份系统的升级方法,包括:
S100:加签待下载固件中的所有分区块固件;
S200:备份系统获取并解签需要升级的所述分区块固件;
S300:所述备份系统升级所述分区块。
可选地,基于备份系统的空中下载升级方法还包括:
S101:主系统下载备份镜像;
S102:所述主系统对备份分区升级;
S103:所述主系统将服务器的下载识别信息经过加密后存储在安全存储区;
S104:所述备份系统下载所述下载识别信息;
S105:所述备份系统解密所述下载识别信息并根据所述下载识别信息下载经过加签的OTA固件。
可选地,所述下载识别信息包括:下载和上报服务器的地址。
可选地,所述下载识别信息还包括:所述备份系统与服务器的通信token。
可选地,所述备份系统获取需要升级的所述分区块固件包括:
当所述分区块固件的版本号高于所述备份系统中对应的版本号时,所述备份系统获取所述分区块固件。
可选地,所述备份系统获取需要升级的所述分区块固件还包括:识别所述分区块固件的版本号。
根据本申请的另一个方面,还提供了一种基于备份系统的升级系统,包括:
加签模块,用于加签待下载固件中的所有分区块固件;
获取模块,用于获取并解签需要升级的所述分区块固件;
升级模块,用于升级所述分区块。
本申请还公开了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
本申请还公开了一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。
本申请还公开了一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。
与现有技术相比,本申请具有如下优点:
1.通过对固件的加签和解签避免了固件在传输过程中被篡改的可能;
2.通过安全存储区代替缓存,将主系统和备份系统切换时需要的数据通过加密和解密的方式存储在安全存储区。避免了系统切换时,存在缓存中的数据被篡改和丢失的可能。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请一个实施例的基于备份系统的升级方法的流程示意图;
图2是根据本申请一个实施例的基于备份系统的升级方法的流程示意图;
图3是根据本申请一个实施例的计算机设备的示意图;以及
图4是根据本申请一个实施例的计算机可读存储介质的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参照图1,本申请一实施例提供了一种基于备份系统的升级方法,,包括:
S100:加签待下载固件中的所有分区块固件;
S200:备份系统获取并解签需要升级的所述分区块固件;
S300:所述备份系统升级所述分区块。
请参照图2,在本申请一实施例中,基于备份系统的空中下载升级方法还包括:
S101:主系统下载备份镜像;
S102:所述主系统对备份分区升级;
S103:所述主系统将服务器的下载识别信息经过加密后存储在安全存储区;
S104:所述备份系统下载所述下载识别信息;
S105:所述备份系统解密所述下载识别信息并根据所述下载识别信息下载经过加签的OTA固件。
在本申请一实施例中,所述下载识别信息包括:下载和上报服务器的地址。
使用时,待升级设备与固件服务器通信,对比固件主版本号,当前版本低于固件服务器就开始下载新的固件程序。(也可以不比对,直接下载)每个固件内部含有分区块的子版本号,设备根据子版本号选择性获取升级有更新的分区块。可以大量的节省升级下载时间。
每个分区块下载到设备缓存,计算缓存数据的hash值,并根据RSA公钥得到签名内容。验证分区块附带的签名信息。通过之后再对固件解密成明文。
主系统与recovery系统需要重启切换,双系统间关键数据交互通过设备安全存储模块,基于mbedtls加密的nvram存储区防止设备信息泄露。安全存储模块主要保存固件服务器下载地址和上报进度服务器地址,选择性的增加与服务器通信身份认证的token(令牌)。保存在安全存储模块的信息,主要是为了让recovery系统根据该信息找到固件服务器,因此该信息是固件服务器的识别信息,并不仅限于下载地址和上报地址。其次,该信息中的token是为了在recovery系统与服务器信息交互时起到安全加密或者识别的作用,因此不仅限于token。
Recovery系统下通过nvram存储模块获取下载和上报服务器的地址,以及通信的token,进行安全下载、解签解密、flash擦写。
进度上报部分,recovery系统不能像主系统一样运行固件主程序,一般设备对于服务端是属于离线状态。在recovery系统需要主动与服务端通信。借助主系统下服务端传递过来的token和服务端地址,主动去发起http请求上报状态。
OTA安全固件方法,通过AES签名结合RSA加密保障固件来对固件进行加签,防篡改和泄露安全,但并不以此为限。
Recovery系统与主系统通过安全存储介质加密通信方法。
Recovery与服务端通信进度上报,通过互联网传输协议,recovery获取主系统安全传递的token进行身份认证和加密数据上报。
本申请一实施例中,所述下载识别信息还包括:所述备份系统与服务器的通信token。
本申请一实施例中,所述备份系统获取需要升级的所述分区块固件包括:
当所述分区块固件的版本号高于所述备份系统中对应的版本号时,所述备份系统获取所述分区块固件。
本申请一实施例中,所述备份系统获取需要升级的所述分区块固件还包括:识别所述分区块固件的版本号。
根据本申请的另一个方面,还提供了一种基于备份系统的升级系统,包括:
加签模块,用于加签待下载固件中的所有分区块固件;
获取模块,用于获取并解签需要升级的所述分区块固件;
升级模块,用于升级所述分区块。
本申请是recovery方式ota升级方法,通过固件下载安全、上报机制和加密存储等组合方法及系统,解决recovery小系统下OTA升级的安全和可靠性问题。主要解决以下问题:
1、通过非对称加密算法对固件加解签,解决OTA固件下载安全问题,不被篡改。并通过AES-128加密算法加密固件内容,密文传输下载,解决OTA固件内容被第三方非法窃取问题
2、通过设备安全存储区,在主系统和recovery系统之间传递关键信息。解决recovery升级必不可少的重启环节引起的数据交互和数据安全问题。
3、本系统还涉及设备升级过程中向服务器可靠上报状态的实现方法。
请参照图3,本申请还提供了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
请参照图4,一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。
一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种基于备份系统的升级方法,其特征在于,包括:
S100:加签待下载固件中的所有分区块固件;
S200:备份系统获取并解签需要升级的所述分区块固件;
S300:所述备份系统升级所述分区块。
2.根据权利要求1所述的基于备份系统的空中下载升级方法,其特征在于,基于备份系统的空中下载升级方法还包括:
S101:主系统下载备份镜像;
S102:所述主系统对备份分区升级;
S103:所述主系统将服务器的下载识别信息经过加密后存储在安全存储区;
S104:所述备份系统下载所述下载识别信息;
S105:所述备份系统解密所述下载识别信息并根据所述下载识别信息下载经过加签的OTA固件。
3.根据权利要求2所述的基于备份系统的空中下载升级方法,其特征在于,所述下载识别信息包括:下载和上报服务器的地址。
4.根据权利要求3所述的基于备份系统的空中下载升级方法,其特征在于,所述下载识别信息还包括:所述备份系统与服务器的通信token。
5.根据权利要求4所述的基于备份系统的空中下载升级方法,其特征在于,所述备份系统获取需要升级的所述分区块固件包括:
当所述分区块固件的版本号高于所述备份系统中对应的版本号时,所述备份系统获取所述分区块固件。
6.根据权利要求5所述的基于备份系统的空中下载升级方法,其特征在于,所述备份系统获取需要升级的所述分区块固件还包括:识别所述分区块固件的版本号。
7.一种基于备份系统的升级系统,其特征在于,包括:
加签模块,用于加签待下载固件中的所有分区块固件;
获取模块,用于获取并解签需要升级的所述分区块固件;
升级模块,用于升级所述分区块。
8.一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-6中任一项所述的方法。
9.一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,其特征在于,所述计算机程序在由处理器执行时实现如权利要求1-6中任一项所述的方法。
10.一种计算机程序产品,包括计算机可读代码,其特征在于,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行权利要求1-6中任一项所述的方法。
CN201911275599.9A 2019-12-12 2019-12-12 一种基于备份系统的空中下载升级方法及系统 Active CN111064723B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911275599.9A CN111064723B (zh) 2019-12-12 2019-12-12 一种基于备份系统的空中下载升级方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911275599.9A CN111064723B (zh) 2019-12-12 2019-12-12 一种基于备份系统的空中下载升级方法及系统

Publications (2)

Publication Number Publication Date
CN111064723A true CN111064723A (zh) 2020-04-24
CN111064723B CN111064723B (zh) 2022-08-30

Family

ID=70300688

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911275599.9A Active CN111064723B (zh) 2019-12-12 2019-12-12 一种基于备份系统的空中下载升级方法及系统

Country Status (1)

Country Link
CN (1) CN111064723B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857786A (zh) * 2020-06-10 2020-10-30 华帝股份有限公司 一种基于云端的固件升级方法及系统
CN112667266A (zh) * 2021-01-22 2021-04-16 百度在线网络技术(北京)有限公司 固件升级方法、装置、设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020026634A1 (en) * 1998-05-18 2002-02-28 Robert Shaw Secure data downloading, recovery and upgrading
CN105573780A (zh) * 2015-12-08 2016-05-11 北京元心科技有限公司 一种基于容器的移动终端操作系统升级方法和装置
CN105955846A (zh) * 2016-04-29 2016-09-21 乐视控股(北京)有限公司 移动终端基于网络升级失败后进行恢复的方法及系统
CN106201584A (zh) * 2016-06-28 2016-12-07 青岛海信移动通信技术股份有限公司 版本升级方法及终端设备
CN106933625A (zh) * 2017-02-23 2017-07-07 湖北光谷天下传媒股份有限公司 一种多源软件更新的方法及系统
CN107122212A (zh) * 2017-04-28 2017-09-01 环球智达科技(北京)有限公司 固件加密方法
CN108205446A (zh) * 2017-10-24 2018-06-26 中兴通讯股份有限公司 固件修复方法及装置
CN108984198A (zh) * 2018-07-16 2018-12-11 深圳市茁壮网络股份有限公司 一种Android系统的升级方法及装置
CN110457908A (zh) * 2019-08-13 2019-11-15 山东爱德邦智能科技有限公司 一种智能设备的固件升级方法、装置、设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020026634A1 (en) * 1998-05-18 2002-02-28 Robert Shaw Secure data downloading, recovery and upgrading
CN105573780A (zh) * 2015-12-08 2016-05-11 北京元心科技有限公司 一种基于容器的移动终端操作系统升级方法和装置
CN105955846A (zh) * 2016-04-29 2016-09-21 乐视控股(北京)有限公司 移动终端基于网络升级失败后进行恢复的方法及系统
CN106201584A (zh) * 2016-06-28 2016-12-07 青岛海信移动通信技术股份有限公司 版本升级方法及终端设备
CN106933625A (zh) * 2017-02-23 2017-07-07 湖北光谷天下传媒股份有限公司 一种多源软件更新的方法及系统
CN107122212A (zh) * 2017-04-28 2017-09-01 环球智达科技(北京)有限公司 固件加密方法
CN108205446A (zh) * 2017-10-24 2018-06-26 中兴通讯股份有限公司 固件修复方法及装置
CN108984198A (zh) * 2018-07-16 2018-12-11 深圳市茁壮网络股份有限公司 一种Android系统的升级方法及装置
CN110457908A (zh) * 2019-08-13 2019-11-15 山东爱德邦智能科技有限公司 一种智能设备的固件升级方法、装置、设备及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111857786A (zh) * 2020-06-10 2020-10-30 华帝股份有限公司 一种基于云端的固件升级方法及系统
CN112667266A (zh) * 2021-01-22 2021-04-16 百度在线网络技术(北京)有限公司 固件升级方法、装置、设备和存储介质
CN112667266B (zh) * 2021-01-22 2024-02-06 百度在线网络技术(北京)有限公司 固件升级方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN111064723B (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
CN109787774B (zh) 基于数字签名校验的升级下载方法、装置、服务器及终端
US20210124820A1 (en) Application program integrity verification method and network device
EP3032802B1 (en) Method for sharing application between terminals, and terminals
US8966248B2 (en) Secure software file transfer systems and methods for vehicle control modules
JP5690412B2 (ja) ハードウェアデバイスの鍵プロビジョン方法および装置
US11356425B2 (en) Techniques for improving security of encrypted vehicle software updates
KR101527779B1 (ko) 효율적인 차량용 리프로그래밍 장치 및 그 제어방법
CN104166565A (zh) 一种智能显示终端固件升级方法
CN109862099B (zh) 一种升级校验方法、装置、终端及系统
US20150095652A1 (en) Encryption and decryption processing method, apparatus, and device
EP2887607A1 (en) Migration of assets of a trusted execution environment
CN104166564A (zh) 一种显示终端程序更新方法
CN112579125B (zh) 一种固件升级方法、装置、电子设备和存储介质
CN107239299B (zh) 插件升级方法及装置
CN111064723B (zh) 一种基于备份系统的空中下载升级方法及系统
CN113014381B (zh) 一种车载终端的密钥处理方法、装置、电子设备和介质
CN110276193B (zh) 风险特征输出方法、应用运行控制方法、系统及装置
CN105187410A (zh) 一种应用的自升级方法及其系统
WO2016173174A1 (zh) 锁网数据升级方法和装置
CN111399867A (zh) 一种软件升级方法、装置、设备及计算机可读存储介质
CN111818087A (zh) 区块链的节点接入方法、装置、设备及可读存储介质
EP3975015B1 (en) Applet package sending method and device and computer readable medium
CN114339676A (zh) 一种针对无人驾驶设备的更新系统、方法及装置
CN109688158B (zh) 金融执行链认证方法、电子装置及存储介质
CN111881474A (zh) 基于可信计算环境的私钥管理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant