WO2012024963A1 - 基于固件空中传输技术的固件处理方法、装置及系统 - Google Patents

基于固件空中传输技术的固件处理方法、装置及系统

Info

Publication number
WO2012024963A1
WO2012024963A1 PCT/CN2011/075701 CN2011075701W WO2012024963A1 WO 2012024963 A1 WO2012024963 A1 WO 2012024963A1 CN 2011075701 W CN2011075701 W CN 2011075701W WO 2012024963 A1 WO2012024963 A1 WO 2012024963A1
Authority
WO
Grant status
Application
Patent type
Prior art keywords
firmware
data
file
upgrade
check
Prior art date
Application number
PCT/CN2011/075701
Other languages
English (en)
French (fr)
Inventor
李翔宇
雷鹏
钟鸣
贾志峰
Original Assignee
华为终端有限公司
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

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communication including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communication including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communication including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communication including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communication including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATIONS NETWORKS
    • H04W12/00Security arrangements, e.g. access security or fraud detection; Authentication, e.g. verifying user identity or authorisation; Protecting privacy or anonymity
    • H04W12/12Fraud detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATIONS NETWORKS
    • H04W12/00Security arrangements, e.g. access security or fraud detection; Authentication, e.g. verifying user identity or authorisation; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity

Description

基于固件空中传输技术的固件处理方法、 装置及系统 本申请要求于 2010年 08月 27日提交中国专利局、 申请号为 CN 201010268847. X、 发明名称为 "基于固件空中传输技术的固件处理方法、 装置及系统"的中国专利申请的 优先权, 其全部内容通过引用结合在本申请中。 技术领域 本发明实施例涉及无线通信技术领域, 尤其涉及一种基于固件空中传输 (Firmware Over The Air, FOTA) 技术的固件处理方法、 装置及系统。 背景技术 随着技术的发展, 诸如手机等移动终端的功能越来越强大, 移动终端中的软件(也 称为固件) 也越来越庞大。 一旦移动终端推向市场而又需要对其固件进行升级时, 由于 用户分布面广, 传统的升级方法, 如制造商召回移动终端进行升级或移动终端通过互联 网进行升级, 几乎不可行。

因此, 利用 F0TA技术, 对移动终端固件升级的技术得到了应用。 F0TA是利用移动 终端的空中接口把升级的数据包发送给移动终端, 由移动终端自行完成代码和文件系统 等固件的升级。 由于操作简单, 可由用户自行完成, F0TA升级方法正越来越受到运营商 的青睐。

现有的 F0TA升级的一般方法是, 通过一定的算法, 计算出某一个固件升级前后两 个版本的升级包, 然后通过移动终端的空中接口把该升级包下载到用户的移动终端, 启 动移动终端中的 F0TA升级流程, 完成固件的升级, 并重启移动终端以启动升级后的固 件。

在实现本发明过程中, 发明人发现现有技术中至少存在如下问题: 固件升级的升级 包通过空中接口直接传输至移动终端, 给移动终端带来受非法代码入侵的威胁。 发明内容

本发明实施例提供一种基于固件空中传输技术的固件处理方法、 装置及系统, 用以 解决现有技术中移动终端易受非法代码入侵的缺陷, 快速实现多固件升级, 并提升移动 终端的安全性。

本发明实施例提供一种基于固件空中传输技术的固件处理方法, 包括: 对至少一个固件升级文件进行校验处理, 形成第一校验数据;

对所述第一校验数据进行加密处理, 形成第一加密数据;

将所述第一加密数据、 所述第一校验数据与所述固件升级文件合并为固件升级包, 并通过空中接口将所述固件升级包发送至移动终端。

本发明实施例还提供一种基于固件空中传输技术的固件升级方法, 包括: 通过空中接口接收服务器发送的固件升级包, 并存储所述固件升级包至缓存分区; 对存储于所述缓存分区的所述固件升级包进行读取;其中,所述固件升级包中包括: 第一加密数据、 第一校验数据和固件升级文件;

对所述固件升级包中的第一加密数据进行解密, 形成第二校验数据;

当所述第二校验数据和第一校验数据相一致时,根据所述固件升级包中的固件升级 文件对相应的固件进行升级操作。

本发明提供一种服务器, 包括:

校验模块, 用于对至少一个固件升级文件进行校验处理, 形成第一校验数据; 加密模块, 对所述校验模块形成的所述第一校验数据进行加密处理, 形成第一加密 数据;

处理模块, 用于将所述第一加密数据、 所述第一校验数据与所述固件升级文件合并 为固件升级包, 并通过空中接口将所述固件升级包发送至移动终端。

本发明还提供一种移动终端, 包括:

接收模块, 用于通过空中接口接收服务器发送的固件升级包, 并存储所述固件升级 包至缓存分区;

读取模块, 用于对存储于所述缓存分区的所述固件升级包进行读取; 其中, 所述固 件升级包中包括: 第一加密数据、 第一校验数据和固件升级文件;

解密模块, 用于对所述读取模块读取的所述固件升级包中的第一加密数据进行解 密, 形成第二校验数据;

升级模块, 用于当所述第二校验数据和第一校验数据相一致时, 根据所述固件升级 包中的固件升级文件对相应的固件进行升级操作。

本发明实施例还提供一种基于固件空中传输技术的固件升级系统, 包括: 上述服务 器和移动终端。 本发明实施例的基于固件空中传输技术的固件处理方法、 装置及系统, 通过对固件 升级文件进行校验、 加密及合并处理, 解决了现有技术中移动终端易受非法代码入侵的 缺陷, 能够快速实现多固件升级, 并提升了移动终端的安全性。 附图说明 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现有 技术描述中所需要使用的附图作一简单地介绍, 显而易见地, 下面描述中的附图是本发 明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的前提下, 还可 以根据这些附图获得其他的附图。

图 1为本发明基于固件空中传输技术的固件处理方法一实施例的流程图; 图 2为本发明基于固件空中传输技术的固件升级方法一实施例的流程图; 图 3为本发明基于固件空中传输技术的固件升级方法另一实施例的流程图; 图 4为本发明服务器一实施例的结构示意图;

图 5为本发明服务器另一实施例的结构示意图;

图 6为本发明移动终端一实施例的结构示意图;

图 7为本发明移动终端另一实施例的结构示意图;

图 8为本发明基于固件空中传输技术的固件升级系统一实施例的系统框图。 具体实施方式 为使本发明实施例的目的、 技术方案和优点更加清楚, 下面将结合本发明实施例中 的附图, 对本发明实施例中的技术方案进行清楚、 完整地描述, 显然, 所描述的实施例 是本发明一部分实施例, 而不是全部的实施例。 基于本发明中的实施例, 本领域普通技 术人员在没有做出创造性劳动前提下所获得的所有其他实施例, 都属于本发明保护的范 围。

图 1为本发明基于固件空中传输技术的固件处理方法一实施例的流程图。 如图 1所 示, 本发明实施例提供了一种基于固件空中传输技术的固件处理方法, 包括:

步骤 101、 对至少一个固件升级文件进行校验处理, 形成第一校验数据; 步骤 102、 对该第一校验数据进行加密处理, 形成第一加密数据;

步骤 103、 将该第一加密数据、 第一校验数据与固件升级文件合并为固件升级包, 并通过空中接口将该固件升级包发送至移动终端。 在本发明实施例中, 上述步骤可以由服务器执行。 移动终端中可能包含多个待升级 的固件, 如二进制文件、 文件系统、 升级执行脚本等。 在服务器侧, 首先对至少一个待 升级固件的固件升级文件进行校验处理, 形成第一校验数据; 然后, 对该第一校验数据 进行加密处理, 形成第一加密数据; 最后, 将所形成的第一加密数据、 第一校验数据与 固件升级文件合并为一个固件升级包, 并把该固件升级包通过空中接口发送至待升级固 件的移动终端, 以使得该移动终端根据接收到的固件升级包进行固件升级。

本发明实施例的基于固件空中传输技术的固件处理方法,通过对固件升级文件进行 校验、 加密及合并处理, 形成固件升级包, 并在移动终端中根据该固件升级包进行固件 升级,解决了现有技术中移动终端易受非法代码入侵的缺陷,能够快速实现多固件升级, 并提升了移动终端的安全性。

在上述方法实施例的基础上, 步骤 101可以包括:

al、 对至少一个固件升级文件进行循环冗余校验 (Cycl ic Redundancy Check; 以 下简称: CRC) 处理, 形成 CRC数据作为第一校验数据; 或者

a2、 对至少一个固件升级文件进行信息-摘要算法 5 (Message-Digest Algorithm 5; 以下简称: 5MD5 ) 处理, 形成 MD5信息校验数据作为第一校验数据。

服务器在对固件升级文件进行校验处理时,可以采取 CRC方法,也可以采用 MD5方法。 采用 CRC方法形成的校验数据的长度随着固件升级文件的长度的增加而成比例增加, 采 用 MD5方法形成的校验数据的长度是固定的。 在后续加密过程中, 加密的数据越少效率 越高, 因此采用 MD5方法进行校验处理是一个较佳的方案。

在上述技术方案的基础上, 步骤 102可以包括:

bl、 对该第一校验数据进行私钥加密, 将加密后的数据作为第一加密数据。

服务器可以利用内部存储的私钥对第一加密数据进行加密处理, 该私钥与移动终端 出厂时内置的公钥相匹配。

进一步地, 当上述第一校验数据是 CRC数据, 即采取 CRC方法对固件升级文件进行处 理时, 步骤 102可以包括:

b2、 对该 CRC数据和固件升级文件进行私钥加密, 形成加密后的数据, 该加密后的 数据包括加密后的 CRC数据和加密后的固件升级文件; 其中, 加密后的 CRC数据为第一加 密数据, 此时, 固件升级包中包括的固件升级文件为加密后的固件升级文件; 或者 b3、 对该 CRC数据进行 MD5处理, 形成 CRC数据对应的 MD5信息, 并对该对应的 MD5信 息进行私钥加密, 形成第一加密数据。 同时, 当上述第一校验数据时 MD5信息校验数据, 即采用 MD5方法对固件升级文件进 行处理时, 也可以先对该 MD5信息校验数据进行 CRC处理, 形成 CRC数据, 再对该 CRC数据 进行私钥加密, 形成第一加密数据。

也就是说, 在对固件升级文件进行校验和加密处理的阶段, 在进行私钥加密的步骤 之前, 可以对固件升级文件进行 CRC处理或 MD5处理或者二者的结合, 并且不限定二者的 先后顺序。

另外, 在上述步骤 101之前, 本发明实施例提供的基于固件空中传输技术的固件处 理方法还可以包括:

c l、 获取多个固件升级文件, 此时, 固件升级包中包括获取的多个固件升级文件。 服务器可以根据表 1中的顺序形成固件升级包。

表 1

图 2为本发明基于固件空中传输技术的固件升级方法一实施例的流程图。 如图 2所 示, 本发明实施例提供了一种基于固件空中传输技术的固件升级方法, 包括:

步骤 201、 通过空中接口接收服务器发送的固件升级包, 并存储该固件升级包至缓 存分区;

步骤 202、 对存储于缓存分区的固件升级包进行读取; 其中, 固件升级包包括: 第 一加密数据、 第一校验数据和固件升级文件;

步骤 203、 对固件升级包中的第一加密数据进行解密, 形成第二校验数据; 步骤 204、 当第二校验数据和第一校验数据相一致时, 根据固件升级包中的固件升 级文件对相应的固件进行升级操作。

在本发明实施例中, 上述步骤可以由移动终端执行。 移动终端中可能包含多个待升 级的固件, 如二进制文件、 文件系统、 升级执行脚本等。 在服务器侧对至少一个待升级 固件的固件升级文件进行操作, 并将形成的固件升级包通过空中接口发送至待升级固件 的移动终端后, 该移动终端将接收到的固件升级包存储于缓存 (CACHE) 分区。 移动终 端读取缓存分区中的固件升级包, 该固件升级包中包括: 第一加密数据、 第一校验数据 和固件升级文件, 并对该固件升级包中的第一加密数据进行解密, 形成第二校验数据, 当第二校验数据与第一校验数据一致时,根据该固件升级包中的固件升级文件对相应的 固件进行升级操作。

本发明实施例的基于固件空中传输技术的固件升级方法,移动终端接收到服务器对 固件升级文件进行校验、 加密及合并处理而形成的固件升级包后, 对该固件升级包进行 相应的解密操作, 以进行固件升级, 解决了现有技术中移动终端易受非法代码入侵的缺 陷, 能够快速实现多固件升级, 并提升了移动终端的安全性。

图 3为本发明基于固件空中传输技术的固件升级方法另一实施例的流程图。如图 3所 示, 在上述图 2所示实施例的基础上, 本发明还提出一种基于固件空中传输技术的固件 升级方法, 包括:

步骤 301、 通过空中接口接收服务器发送的固件升级包, 并存储该固件升级包至缓 存分区;

步骤 302、 遍历缓存分区, 获取与固件升级包相对应的文件头;

步骤 303、 从与固件升级包相对应的文件头中选取一个有效的文件头作为目标文件 头;

在 CACHE分区中, 若存储某个文件, 假设其标识 (ID) 为 ID_a, 则需要在 CACHE分区 中写入包含 ID_a的文件头; 当更新该文件时, 将其对应的文件头置为无效(即, 在 CACHE 分区中写入一个文件名为 "unlinked" 、 ID为 ID_a的文件头) , 然后重新写入新的文件 头 (假设更新后的文件的 ID为 ID_b, 则在 CACHE分区中写入包含 ID_b的文件头) 。 因此, 在所有与固件升级包相对应的文件头中, 删除与文件名为 "unlinked"的文件头的 ID相 同的文件头, 则剩余的文件头均为有效的文件头, 从有效的文件头中选取一个作为目标 文件头; 步骤 304、 根据目标文件头中的 ID, 读取与该 ID对应的数据包, 并将这些数据包按 顺序排列以组成固件升级包;

步骤 305、 对该固件升级包中的第一加密数据进行公钥解密, 将解密后的数据作为 第二校验数据;

步骤 306、 判断第二校验数据与第一校验数据是否一致, 若一致, 则执行步骤 307, 否则, 执行步骤 310;

步骤 307、 对固件升级文件进行校验处理, 形成第三校验数据;

在本发明实施例中, 如果固件升级包中的固件升级文件为私钥加密后的固件升级文 件, 则需首先对其进行公钥解密, 然后再进行校验处理;

步骤 308、 验证第三校验数据与固件升级包中的第一校验数据是否一致, 若一致, 则执行步骤 309, 否则, 执行步骤 310;

步骤 309、 根据固件升级包中的固件升级文件对相应的固件进行升级操作; 步骤 310、 不对该固件升级文件对相应的固件进行升级操作, 并丢弃固件升级文件。 在本发明实施例中, 上述步骤可以由移动终端执行。 在上述图 2所示的方法实施例 的基础上, 移动终端接收到的固件升级包存储于 CACHE分区, 可以采用的是 yaffs2文件 系统,而移动终端中用于读取该固件升级包的模块 0EMSBL不支持 yaffs2文件系统,因此, 0EMSBL读取缓存分区中的固件升级包的操作可以包括: 首先, 遍历缓存分区, 以获取所 有与固件升级包相对应的文件头,例如获取所有符合升级包文件名要求的文件头;然后, 在这些文件头中, 凡是 ID与文件名为 "unlinked"的文件头的 ID相同, 则删除该文件头; 接着, 从剩余的文件头中根据一定规则选取目标文件头, 例如可以在其中选取块编号 (blocknum)最大的文件头作为目标文件头, 当存在多个块编号相等的文件头时, 从多 个块编号相等的文件头中选取闪存 (Flash) 地址最大的文件头作为目标文件头; 当选 取出目标文件头后, 读取与该目标文件头中的标识对应的数据包, 并将这些数据包按顺 序排列以组成完成的固件升级包。

进一步地, 上述步骤 306可以具体包括:

dl、 当第一校验数据是 CRC数据, 并且第一加密数据是对 CRC数据进行私钥加密的数 据时, 直接比较第二校验数据和第一校验数据是否相同; 或者

d2、 当第一校验数据是 MD5信息校验数据, 并且第一加密数据是对 MD5信息校验数据 进行私钥加密的数据时, 直接比较第二校验数据和第一校验数据是否相同; 或者 d3、 当第一校验数据是 CRC数据, 并且第一加密数据是对 CRC数据对应的 MD5信息进 行私钥加密的数据时, 对固件升级包中的 CRC数据进行 MD5处理, 形成第二 MD5信息, 并 验证第二校验数据与第二 MD5信息是否一致; 其中, 第二校验数据为固件升级包中的第 一加密数据解密后形成的 MD5信息。

移动终端对相应的固件进行升级的操作可以包括: 0EMSBL对二进制文件的升级, 并 设置相关标志; 以及移动终端中的另一个模块(RECOVERY)对文件系统的升级和对升级 执行脚本的处理。 待所有固件升级完成后, 重新启动移动终端, 即可使用升级后的各固 件。

本发明实施例的基于固件空中传输技术的固件升级方法,移动终端接收到服务器对 固件升级文件进行校验、 加密及合并处理而形成的固件升级包后, 对该固件升级包进行 相应的解密操作, 以进行固件升级, 解决了现有技术中操作繁琐及移动终端易受非法代 码入侵的缺陷, 能够快速实现多固件升级, 并提升了移动终端的安全性。

上述实施例所述的技术方案可以在智能手机中实现, 假如该智能手机包含 ARM9和 ARM11两个 CPU, 主要包括以下模块和文件系统: OEMSB AMSS、 EFS、 BOOT和 SYSTEM。 利用本发明实施例的技术方案可以一次完成所有固件的升级, 表 2为一个典型的固件升 级包。

表 2

0EMSBL_HEADE

OEMSBL头文件

R

OEMSBL OEMSBL内容

EFS EFS文件系统

SOFTWARE_VER 当前升级的 SW的版本号

FS—DIFF ANDROID SYSTEM升级的差分包

SCRIPT. ZIP ANDROID RECOVERY下执行的升级脚本

在 OEMSBL中, 完成对 OEMSBL, AMSS, BOOT, EFS的升级。 在 RECOVERY中完成 SYSTEM 和 SCRIPT. ZIP的升级处理。 整个升级过程手机只需要重启一次。

该 F0TA升级方案, 在固件升级包下载过程中, 支持断点续传。 启动 F0TA升级后, 移 动终端 (例如手机)重启一次, 完成对手机所有待升级固件的升级。 升级过程中支持掉 电保护, 能够兼容 SCRIPT. ZIP升级执行脚本的处理, 具有良好的用户体验。

图 4为本发明服务器一实施例的结构示意图。 如图 4所示, 本发明实施例提供了一种 服务器, 用于为移动终端提供固件升级包, 包括: 校验模块 41、 加密模块 42和处理模块 43。其中,校验模块 41用于对至少一个固件升级文件进行校验处理,形成第一校验数据; 加密模块 42用于对校验模块 41形成的第一校验数据进行加密处理, 形成第一加密数据; 处理模块 43用于将第一加密数据、 第一校验数据与固件升级文件合并为固件升级包, 并 通过空中接口将该固件升级包发送至移动终端。

在本发明实施例中, 移动终端中可能包含多个待升级的固件, 如二进制文件、 文件 系统、 升级执行脚本等。 本发明实施例提供的服务器, 首先对至少一个待升级固件的固 件升级文件进行校验处理,形成第一校验数据;然后,对该第一校验数据进行加密处理, 形成第一加密数据; 最后, 将所形成的第一加密数据、 第一校验数据与固件升级文件合 并为一个固件升级包, 并把该固件升级包通过空中接口发送至待升级固件的移动终端, 以使得该移动终端根据接收到的固件升级包进行固件升级。

本发明实施例的服务器, 通过对固件升级文件进行校验、 加密及合并处理, 形成固 件升级包, 并在移动终端中根据该固件升级包进行固件升级, 解决了现有技术中移动终 端易受非法代码入侵的缺陷, 能够快速实现多固件升级, 并提升了移动终端的安全性。

图 5为本发明服务器另一实施例的结构示意图。 如图 5所示, 在上述服务器实施例的 基础上, 校验模块 41可以包括: CRC单元 51和 /或 MD5单元 52。 其中, CRC单元 51用于对至 少一个固件升级文件进行 CRC处理, 形成 CRC数据作为第一校验数据; MD5单元 52用于对 至少一个固件升级文件进行 MD5处理, 形成 MD5信息校验数据作为第一校验数据。

校验模块 41在对固件升级文件进行校验处理时, 可以采取 CRC方法, 也可以采用 MD5 方法。 采用 CRC方法形成的校验数据的长度随着固件升级文件的长度的增加而成比例增 力口, 采用 MD5方法形成的校验数据的长度是固定的。 在后续加密过程中, 加密的数据越 少效率越高, 因此采用 MD5方法进行校验处理是一个较佳的方案。

在上述技术方案的基础上, 加密模块 42可以包括: 第一加密单元 53。 该第一加密单 元 53可以用于对第一校验数据进行私钥加密, 将加密后的数据作为第一加密数据。

第一加密单元 53可以利用服务器内部存储的私钥对第一加密数据进行加密处理, 该 私钥与移动终端出厂时内置的公钥相匹配。

进一步地, 加密模块 42可以包括: 第二加密单元 54和 /或第三加密单元 55。 其中, 第二加密单元 54用于当第一校验数据是 CRC数据时,对该 CRC数据和固件升级文件进行私 钥加密, 形成加密后的数据, 该加密后的数据包括加密后的 CRC数据和加密后的固件升 级文件; 其中, 加密后的 CRC数据为第一加密数据, 固件升级包中包括的固件升级文件 为加密后的固件升级文件; 第三加密单元 55用于当第一校验数据是 CRC数据时, 对该 CRC 数据进行 MD5处理, 形成 CRC数据对应的 MD5信息, 并对该对应的 MD5信息进行私钥加密, 形成第一加密数据。

另外, 本发明实施例所提供的移动终端, 还可以进一步包括: 获取模块 56, 该获取 模块 56在校验模块 41对至少一个固件升级文件进行校验处理之前, 获取多个固件升级文 件; 其中, 固件升级包中包括上述多个固件升级文件。

本发明实施例的服务器, 通过对固件升级文件进行校验、 加密及合并处理, 形成固 件升级包, 并在移动终端中根据该固件升级包进行固件升级, 解决了现有技术中操作繁 琐及移动终端易受非法代码入侵的缺陷, 能够快速实现多固件升级, 并提升了移动终端 的安全性。

图 6为本发明移动终端一实施例的结构示意图。 如图 6所示, 本发明实施例提供了一 种具有升级固件功能的移动终端, 包括: 接收模块 61、 读取模块 62、 解密模块 63和升级 模块 64。 其中, 接收模块 61用于通过空中接口接收服务器发送的固件升级包, 并存储该 固件升级包至缓存分区 65 ; 读取模块 62用于对存储于缓存分区 65的该固件升级包进行读 取, 其中, 固件升级包中包括: 第一加密数据、 第一校验数据和固件升级文件; 解密模 块 63用于对读取模块 62读取的固件升级包中的第一加密数据进行解密, 形成第二校验数 据; 升级模块 64用于当第二校验数据和第一校验数据相一致时, 根据固件升级包中的固 件升级文件对相应的固件进行升级操作。

在本发明实施例中, 移动终端中可能包含多个待升级的固件, 如二进制文件、 文件 系统、 升级执行脚本等。 在服务器侧对至少一个待升级固件的固件升级文件进行操作, 并将形成的固件升级包通过空中接口发送至待升级固件的移动终端后, 该移动终端中的 接收模块 61将接收到的固件升级包存储于缓存 (CACHE) 分区 65。 进一步地, 读取模块 62读取缓存分区 65中的固件升级包, 该固件升级包中包括: 第一加密数据、 第一校验数 据和固件升级文件, 解密模块 63对该固件升级包中的第一加密数据进行解密, 形成第二 校验数据, 当第二校验数据与第一校验数据一致时, 升级模块 64根据该固件升级包中的 固件升级文件对相应的固件进行升级操作。

本发明实施例的移动终端, 接收模块接收到服务器对固件升级文件进行校验、 加密 及合并处理而形成的固件升级包后, 校验模块对该固件升级包进行相应的解密操作, 以 进行固件升级, 解决了现有技术中移动终端易受非法代码入侵的缺陷, 能够快速实现多 固件升级, 并提升了移动终端的安全性。

图 7为本发明移动终端另一实施例的结构示意图。 如图 7所示, 在上述移动终端实施 例的基础上, 读取模块 62可以包括: 遍历单元 71、 选取单元 72和读取单元 73。 其中, 遍 历单元 71用于遍历缓存分区 65, 获取与固件升级包相对应的文件头; 选取单元 72用于从 与固件升级包相对应的文件头中选取一个有效的目标文件头; 读取单元 73用于根据选取 单元 72选取的目标文件头中的标识, 读取与该标识对应的数据包, 并将这些数据包按顺 序排列以组成固件升级包。

在 CACHE分区 65中, 若存储某个文件, 假设其标识 (ID) 为 ID_a, 则需要在 CACHE分 区中写入包含 ID_a的文件头;当更新该文件时,将其对应的文件头置为无效(BP,在 CACHE 分区中写入一个文件名为 "unlinked" 、 ID为 ID_a的文件头) , 然后重新写入新的文件 头 (假设更新后的文件的 ID为 ID_b, 则在 CACHE分区中写入包含 ID_b的文件头) 。 因此, 选取单元 72在所有与固件升级包相对应的文件头中, 删除与文件名为 "unlinked"的文 件头的 ID相同的文件头, 则剩余的文件头均为有效的文件头, 从有效的文件头中选取一 个作为目标文件头。

在本发明实施例中, 在上述图 6所示技术方案的基础上, 移动终端接收到的固件升 级包存储于 CACHE分区 65, 可以采用的是 yaffs2文件系统, 而移动终端中用于读取该固 件升级包的读取模块 62可以为 0EMSBL, 该 0EMSBL不支持 yaff s2文件系统, 因此, 遍历单 元 71遍历缓存分区, 以获取所有与固件升级包相对应的文件头, 例如获取所有符合升级 包文件名要求的文件头; 然后, 选取单元 72在这些文件头中, 凡是 ID与文件名为 "unlinked"的文件头的 ID相同, 则删除该文件头, 从剩余的文件头中根据一定规则选 取目标文件头, 例如, 选取单元 72可以包括用于在与固件升级包相对应的有效的文件头 中选取 blocknum最大的文件头作为目标文件头的第一选取子单元, 和用于当存在多个 blocknum相等的文件头时, 从多个 blocknum相等的文件头中选取 Flash地址最大的文件 头作为目标文件头的第二选取子单元; 当选取出目标文件头后, 读取单元 73读取与该目 标文件头中的标识对应的数据包, 并将这些数据包按顺序排列以组成固件升级包。

进一步地, 解密模块 63具体用于对固件升级包中的第一加密数据进行公钥解密, 将 解密后的数据作为第二校验数据。

更进一步地, 本发明实施例所提供的移动终端还可以包括: 判断模块 74。 该判断模 块 74用于在解密模块 63对固件升级包中的第一加密数据进行解密, 形成第二校验数据之 后, 判断第二校验数据和第一校验数据是否一致; 该判断模块 74可以包括: 第一比较单 元 75、 第二比较单元 76和 /或第三比较单元 77。 其中, 第一比较单元 75用于当第一校验 数据是 CRC数据, 并且第一加密数据是对该 CRC数据进行私钥加密的数据时, 直接比较第 二校验数据和第一校验数据是否相同; 第二比较单元 76用于当第一校验数据是 MD5信息 校验数据, 并且第一加密数据是对该 MD5信息校验数据进行私钥加密的数据时, 直接比 较第二校验数据和第一校验数据是否相同; 第三比较单元 77用于当第一校验数据是 CRC 数据, 并且第一加密数据是对该 CRC数据对应的 MD5信息进行私钥加密的数据时, 对固件 升级包中的 CRC数据进行 MD5处理, 形成第二 MD5信息, 并验证第二校验数据与第二 MD5信 息是否一致; 其中, 第二校验数据为固件升级包中的第一加密数据解密后形成的 MD5信 息。

再进一步地, 本发明实施例中的移动终端还可以包括: 校验模块 78和验证模块 79。 其中,校验模块 78用于在升级模块 64根据固件升级包中的固件升级文件对相应的固件进 行升级操作之前, 对固件升级文件进行校验处理, 形成第三校验数据; 验证模块 79用于 验证第三校验数据与固件升级包中的第一校验数据是否一致; 此时, 如果第三校验数据 与第一校验数据一致, 升级模块 64用于根据固件升级包中的固件升级文件对相应的固件 进行升级操作; 否则, 不对该固件升级文件对相应的固件进行升级操作, 并丢弃该固件 升级文件。 本发明实施例的移动终端, 接收模块接收到服务器对固件升级文件进行校验、 加密 及合并处理而形成的固件升级包后, 校验模块对该固件升级包进行校验处理, 并在校验 通过后升级模块进行固件升级,解决了现有技术中操作繁琐及移动终端易受非法代码入 侵的缺陷, 能够快速实现多固件升级, 并提升了移动终端的安全性。

图 8为本发明基于固件空中传输技术的固件升级系统一实施例的系统框图。如图 8所 述, 本发明实施例提供了一种基于固件空中传输技术的固件升级系统, 包括: 服务器 81 和移动终端 82。

本系统实施例中服务器 81的功能如上述图 4或图 5所示实施例中的具体描述,移动终 端 82的功能如上述图 6或图 7所示实施例中的具体描述, 在此不再赘述。

本发明实施例的基于固件空中传输技术的固件升级系统,移动终端接收到服务器对 固件升级文件进行校验、 加密及合并处理而形成的固件升级包后, 对该固件升级包进行 校验处理, 并在校验通过后进行固件升级, 解决了现有技术中操作繁琐及移动终端易受 非法代码入侵的缺陷, 能够快速实现多固件升级, 并提升了移动终端的安全性。

本领域普通技术人员可以理解: 实现上述方法实施例的全部或部分步骤可以通过程 序指令相关的硬件来完成, 前述的程序可以存储于一计算机可读取存储介质中, 该程序 在执行时, 执行包括上述方法实施例的步骤; 而前述的存储介质包括: R0M、 RAM, 磁碟 或者光盘等各种可以存储程序代码的介质。

最后应说明的是: 以上实施例仅用以说明本发明的技术方案, 而非对其限制; 尽管 参照前述实施例对本发明进行了详细的说明, 本领域的普通技术人员应当理解: 其依然 可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分技术特征进行等同替 换; 而这些修改或者替换, 并不使相应技术方案的本质脱离本发明各实施例技术方案的 精神和范围。

Claims

权利要求
1、 一种基于固件空中传输技术的固件处理方法, 其特征在于, 包括:
对至少一个固件升级文件进行校验处理, 形成第一校验数据;
对所述第一校验数据进行加密处理, 形成第一加密数据;
将所述第一加密数据、 所述第一校验数据与所述固件升级文件合并为固件升级包, 并通过空中接口将所述固件升级包发送至移动终端。
2、 根据权利要求 1所述的基于固件空中传输技术的固件处理方法, 其特征在于, 所述对至少一个固件升级文件进行校验处理, 形成第一校验数据, 包括:
对所述至少一个固件升级文件进行循环冗余校验处理, 形成循环冗余校验数据作为 所述第一校验数据; 或者,
对所述至少一个固件升级文件进行 MD5处理, 形成 MD5信息校验数据作为所述第一 校验数据。
3、 根据权利要求 1或 2所述的基于固件空中传输技术的固件处理方法, 其特征在 于, 所述对所述第一校验数据进行加密处理, 形成第一加密数据, 包括:
对所述第一校验数据进行私钥加密, 将私钥加密后的数据作为所述第一加密数据。
4、 根据权利要求 2所述的基于固件空中传输技术的固件处理方法, 其特征在于, 当所述第一校验数据是循环冗余校验数据时, 所述对所述第一校验数据进行加密处理, 形成第一加密数据, 包括:
对所述循环冗余校验数据和所述固件升级文件进行私钥加密, 形成私钥加密后的数 据,所述私钥加密后的数据包括私钥加密后的循环冗余校验数据和私钥加密后的固件升 级文件; 其中, 所述私钥加密后的循环冗余校验数据为所述第一加密数据, 所述固件升 级包中包括的固件升级文件为所述私钥加密后的固件升级文件; 或者,
对所述循环冗余校验数据进行 MD5处理, 形成循环冗余校验数据对应的 MD5信息, 并对所述对应的 MD5信息进行私钥加密, 形成所述第一加密数据。
5、 根据权利要求 1所述的基于固件空中传输技术的固件处理方法, 其特征在于, 在所述对至少一个固件升级文件进行校验处理之前, 还包括:
获取多个固件升级文件; 其中, 所述固件升级包中包括所述多个固件升级文件。
6、 一种基于固件空中传输技术的固件升级方法, 其特征在于, 包括:
通过空中接口接收服务器发送的固件升级包, 并存储所述固件升级包至缓存分区; 对存储于所述缓存分区的所述固件升级包进行读取;其中,所述固件升级包中包括: 第一加密数据、 第一校验数据和固件升级文件;
对所述固件升级包中的第一加密数据进行解密, 形成第二校验数据;
当所述第二校验数据和第一校验数据相一致时,根据所述固件升级包中的固件升级 文件对相应的固件进行升级操作。
7、 根据权利要求 6所述的基于固件空中传输技术的固件升级方法, 其特征在于, 所述对存储于所述缓存分区的所述固件升级包进行读取, 包括:
遍历所述缓存分区, 获取与所述固件升级包相对应的文件头;
从与所述固件升级包相对应的文件头中选取一个有效的文件头作为目标文件头; 根据所述目标文件头中的标识, 读取与所述标识对应的数据包, 并将所述标识对应 的数据包组成所述固件升级包。
8、 根据权利要求 7所述的基于固件空中传输技术的固件升级方法, 其特征在于, 所述从与所述固件升级包相对应的文件头中选取一个有效的文件头作为目标文件头,包 括:
在与所述固件升级包相对应的有效的文件头中选取块编号最大的文件头作为所述 目标文件头; 当块编号最大的文件头包括多个块编号相等的文件头时, 从所述多个块编 号相等的文件头中选取闪存地址最大的文件头作为所述目标文件头。
9、 根据权利要求 6所述的基于固件空中传输技术的固件升级方法, 其特征在于, 所述对所述固件升级包中的第一加密数据进行解密, 形成第二校验数据, 包括:
对所述固件升级包中的所述第一加密数据进行公钥解密,将解密后的数据作为第二 校验数据。
10、 根据权利要求 9所述的基于固件空中传输技术的固件升级方法, 其特征在于, 在所述对所述固件升级包中的第一加密数据进行解密,形成第二校验数据之后,还包括: 判断所述第二校验数据和第一校验数据是否一致;
所述判断所述第二校验数据和第一校验数据是否一致, 包括:
当所述第一校验数据是循环冗余校验数据, 并且所述第一加密数据是对所述循环冗 余校验数据进行私钥加密的数据时,直接比较所述第二校验数据和第一校验数据是否相 同; 或者
当所述第一校验数据是 MD5信息校验数据, 并且所述第一加密数据是对所述 MD5信 息校验数据进行私钥加密的数据时,直接比较所述第二校验数据和第一校验数据是否相 同; 或者
当所述第一校验数据是循环冗余校验数据, 并且所述第一加密数据是对所述循环冗 余校验数据对应的 MD5信息进行私钥加密的数据时,对所述固件升级包中的所述循环冗 余校验数据进行 MD5处理,形成第二 MD5信息,并验证所述第二校验数据与所述第二 MD5 信息是否一致; 其中, 第二校验数据为所述固件升级包中的所述第一加密数据解密后形 成的 MD5信息。
11、 根据权利要求 6至 10中任一所述的基于固件空中传输技术的固件升级方法, 其特征在于,在所述根据所述固件升级包中的固件升级文件对相应的固件进行升级操作 之前, 还包括:
对所述固件升级文件进行校验处理, 形成第三校验数据;
验证所述第三校验数据与所述固件升级包中的第一校验数据是否一致;
如果一致, 则根据所述固件升级包中的固件升级文件对相应的固件进行升级操作; 否则, 如果不一致, 则不对该固件升级文件对相应的固件进行升级操作, 并丢弃所述固 件升级文件。
12、 一种服务器, 其特征在于, 包括:
校验模块, 用于对至少一个固件升级文件进行校验处理, 形成第一校验数据; 加密模块, 对所述校验模块形成的所述第一校验数据进行加密处理, 形成第一加密 数据;
处理模块, 用于将所述第一加密数据、 所述第一校验数据与所述固件升级文件合并 为固件升级包, 并通过空中接口将所述固件升级包发送至移动终端。
13、 根据权利要求 12所述的服务器, 其特征在于, 所述校验模块包括: 循环冗余校验单元, 用于对所述至少一个固件升级文件进行循环冗余校验处理, 形 成循环冗余校验数据作为所述第一校验数据; 和 /或
MD5单元, 用于对所述至少一个固件升级文件进行 MD5处理, 形成 MD5信息校验数 据作为所述第一校验数据。
14、 根据权利要求 12或 13所述的服务器, 其特征在于, 所述加密模块包括: 第一加密单元, 用于对所述第一校验数据进行私钥加密, 将私钥加密后的数据作为 所述第一加密数据。
15、 根据权利要求 13所述的服务器, 其特征在于, 所述加密模块包括: 第二加密单元, 用于当所述第一校验数据是循环冗余校验数据时, 对所述循环冗余 校验数据和所述固件升级文件进行私钥加密, 形成私钥加密后的数据, 该私钥加密后的 数据包括私钥加密后的循环冗余校验数据和私钥加密后的固件升级文件; 其中, 所述私 钥加密后的循环冗余校验数据为所述第一加密数据,所述固件升级包中包括的固件升级 文件为所述私钥加密后的固件升级文件; 和 /或
第三加密单元, 用于当所述第一校验数据是循环冗余校验数据时, 对所述循环冗余 校验数据进行 MD5处理, 形成循环冗余校验数据对应的 MD5信息, 并对该对应的 MD5信 息进行私钥加密, 形成所述第一加密数据。
16、 根据权利要求 12所述的服务器, 其特征在于, 还包括:
获取模块, 用于在所述校验模块对至少一个固件升级文件进行校验处理之前, 获取 多个固件升级文件; 其中, 所述固件升级包中包括所述多个固件升级文件。
17、 一种移动终端, 其特征在于, 包括:
接收模块, 用于通过空中接口接收服务器发送的固件升级包, 并存储所述固件升级 包至缓存分区;
读取模块, 用于对存储于所述缓存分区的所述固件升级包进行读取; 其中, 所述固 件升级包中包括: 第一加密数据、 第一校验数据和固件升级文件;
解密模块, 用于对所述读取模块读取的所述固件升级包中的第一加密数据进行解 密, 形成第二校验数据;
升级模块, 用于当所述第二校验数据和第一校验数据相一致时, 根据所述固件升级 包中的固件升级文件对相应的固件进行升级操作。
18、 根据权利要求 17所述的移动终端, 其特征在于, 所述读取模块包括: 遍历单元, 用于遍历所述缓存分区, 获取与所述固件升级包相对应的文件头; 选取单元,用于从与所述固件升级包相对应的文件头中选取一个有效的文件头作为 目标文件头;
读取单元, 用于根据所述选取单元选取的所述目标文件头中的标识, 读取与所述标 识对应的数据包, 并将所述标识对应的数据包组成所述固件升级包。
19、 根据权利要求 18所述的移动终端, 其特征在于, 所述选取单元包括: 第一选取子单元,用于在与所述固件升级包相对应的有效的文件头中选取块编号最 大的文件头作为所述目标文件头;
第二选取子单元, 用于当块编号最大的文件头包括多个块编号相等的文件头时, 从 所述多个块编号相等的文件头中选取闪存地址最大的文件头作为所述目标文件头。
20、 根据权利要求 17所述的移动终端, 其特征在于, 所述解密模块具体用于对所 述固件升级包中的所述第一加密数据进行公钥解密, 将解密后的数据作为第二校验数 据。
21、 根据权利要求 20所述的移动终端, 其特征在于, 还包括: 判断模块, 用于在 所述解密模块对所述固件升级包中的第一加密数据进行解密, 形成第二校验数据之后, 判断所述第二校验数据和第一校验数据是否一致;
所述判断模块包括:
第一比较单元, 用于当所述第一校验数据是循环冗余校验数据, 并且所述第一加密 数据是对所述循环冗余校验数据进行私钥加密的数据时,直接比较所述第二校验数据和 第一校验数据是否相同;
第二比较单元, 用于当所述第一校验数据是 MD5信息校验数据, 并且所述第一加密 数据是对所述 MD5信息校验数据进行私钥加密的数据时,直接比较所述第二校验数据和 第一校验数据是否相同; 或
第三比较单元, 用于当所述第一校验数据是循环冗余校验数据, 并且所述第一加密 数据是对所述循环冗余校验数据对应的 MD5信息进行私钥加密的数据时,对所述固件升 级包中的所述循环冗余校验数据进行 MD5处理, 形成第二 MD5信息, 并验证所述第二校 验数据与所述第二 MD5信息是否一致; 其中, 第二校验数据为所述固件升级包中的所述 第一加密数据解密后形成的 MD5信息。
22、 根据权利要求 17至 21中任一所述的移动终端, 其特征在于, 还包括: 校验模块,用于在所述升级模块根据所述固件升级包中的固件升级文件对相应的固 件进行升级操作之前, 对所述固件升级文件进行校验处理, 形成第三校验数据;
验证模块,用于验证所述第三校验数据与所述固件升级包中的第一校验数据是否一 致;
所述升级模块用于如果所述第三校验数据与所述第一校验数据一致, 则根据所述固 件升级包中的固件升级文件对相应的固件进行升级操作; 否则, 不对所述固件升级文件 对相应的固件进行升级操作, 并丢弃所述固件升级文件。
23、 一种基于固件空中传输技术的固件升级系统, 其特征在于, 包括: 权利要求 12 至 16中任一所述的服务器, 以及权利要求 17至 22中任一所述的移动终端。
PCT/CN2011/075701 2010-08-27 2011-06-14 基于固件空中传输技术的固件处理方法、装置及系统 WO2012024963A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201010268847.X 2010-08-27
CN 201010268847 CN101924607B (zh) 2010-08-27 2010-08-27 基于固件空中传输技术的固件处理方法、装置及系统

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20127033275A KR101490578B1 (ko) 2010-08-27 2011-06-14 펌웨어 오버­디­에어 기술에 기초하여 펌웨어를 프로세싱하기 위한 방법, 장치 및 시스템
EP20110819338 EP2568639A4 (en) 2010-08-27 2011-06-14 Method, apparatus and system for processing firmware based on firmware over the air technology
JP2013519942A JP5608288B2 (ja) 2010-08-27 2011-06-14 無線でのファームウェア配信技術に基づいてファームウェアを処理する方法、装置及びシステム
US13712646 US8910139B2 (en) 2010-08-27 2012-12-12 Method for processing firmware based on firmware over the air technology, apparatus, and system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US13712646 Continuation US8910139B2 (en) 2010-08-27 2012-12-12 Method for processing firmware based on firmware over the air technology, apparatus, and system

Publications (1)

Publication Number Publication Date
WO2012024963A1 true true WO2012024963A1 (zh) 2012-03-01

Family

ID=43339276

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2011/075701 WO2012024963A1 (zh) 2010-08-27 2011-06-14 基于固件空中传输技术的固件处理方法、装置及系统

Country Status (6)

Country Link
US (1) US8910139B2 (zh)
EP (1) EP2568639A4 (zh)
JP (1) JP5608288B2 (zh)
KR (1) KR101490578B1 (zh)
CN (1) CN101924607B (zh)
WO (1) WO2012024963A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2763428A1 (en) * 2013-02-04 2014-08-06 Samsung Electronics Co., Ltd Electronic device and firmware upgrading method thereof

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101924607B (zh) 2010-08-27 2013-01-23 华为终端有限公司 基于固件空中传输技术的固件处理方法、装置及系统
CN102073541B (zh) * 2010-12-28 2015-05-20 中兴通讯股份有限公司 数据访问方法及移动终端
US9183393B2 (en) * 2012-01-12 2015-11-10 Facebook, Inc. Multiple system images for over-the-air updates
US9116774B2 (en) * 2013-05-14 2015-08-25 Sandisk Technologies Inc. Firmware updates for multiple product configurations
CN104252364B (zh) * 2013-06-25 2017-09-12 腾讯科技(深圳)有限公司 增量更新的方法、设备及系统
CN103473088B (zh) * 2013-08-30 2018-01-02 北京远特科技股份有限公司 一种单片机在线升级方法和系统
CN103942075B (zh) * 2014-04-09 2017-11-14 苏州汇川技术有限公司 一种电梯控制器固件烧录系统及方法
CN104102519A (zh) * 2014-07-24 2014-10-15 英业达科技有限公司 机架式服务器系统的固件更新方法及其装置
CN104135531B (zh) * 2014-08-07 2018-02-27 武汉益模软件科技有限公司 一种Web软件的升级方法及装置
CN104581397B (zh) * 2014-12-29 2018-04-27 北京四达时代软件技术股份有限公司 安卓机顶盒的系统升级方法及装置
CN105069373A (zh) * 2015-07-30 2015-11-18 株洲南车时代电气股份有限公司 文件的加密及解密方法
CN105095025A (zh) * 2015-08-28 2015-11-25 小米科技有限责任公司 恢复ext文件系统中已删除文件的方法及装置
US10003612B1 (en) * 2017-02-14 2018-06-19 International Business Machines Corporation Protection for computing systems from revoked system updates

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101106773A (zh) * 2006-07-14 2008-01-16 中兴通讯股份有限公司 无线接入固定台软件升级后参数保持的方法
CN101251883A (zh) * 2008-03-11 2008-08-27 北京深思洛克数据保护中心 一种对软件保护设备进行安全可控的远程升级的方法
CN101924607A (zh) * 2010-08-27 2010-12-22 华为终端有限公司 基于固件空中传输技术的固件处理方法、装置及系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7082549B2 (en) * 2000-11-17 2006-07-25 Bitfone Corporation Method for fault tolerant updating of an electronic device
WO2002041147A1 (en) * 2000-11-17 2002-05-23 Biftone Corporation System and method for updating and distributing information
US7299463B2 (en) * 2001-09-28 2007-11-20 Intel Corporation Method for atomically updating a plurality of files
JP2003304235A (ja) * 2002-04-10 2003-10-24 Sony Corp 無線通信装置、およびプログラム・ダウンロード方法、並びにコンピュータ・プログラム
US20070169073A1 (en) * 2002-04-12 2007-07-19 O'neill Patrick Update package generation and distribution network
US7340736B2 (en) * 2002-08-22 2008-03-04 Hewlett-Packard Development Company, L.P. Electronic device with an update agent that employs preprocessing techniques for update
US7480907B1 (en) * 2003-01-09 2009-01-20 Hewlett-Packard Development Company, L.P. Mobile services network for update of firmware/software in mobile handsets
US7725889B2 (en) * 2003-01-13 2010-05-25 Hewlett-Packard Development Company, L.P. Mobile handset capable of updating its update agent
US7689981B1 (en) * 2003-02-28 2010-03-30 Hewlett-Packard Development Company, L.P. Mobile handset with efficient interruption point detection during a multiple-pass update process
WO2005024628A3 (en) * 2003-09-03 2005-05-26 Bitfone Corp Tri-phase boot process in electronic devices
EP1665041A1 (en) * 2003-09-26 2006-06-07 Bitfone Corporation Update package catalog for update package transfer between generator and content server in a network
US7549042B2 (en) * 2003-12-16 2009-06-16 Microsoft Corporation Applying custom software image updates to non-volatile storage in a failsafe manner
US7426633B2 (en) * 2005-05-12 2008-09-16 Hewlett-Packard Development Company, L.P. System and method for reflashing disk drive firmware
KR100794220B1 (ko) 2005-11-07 2008-01-14 엘지전자 주식회사 Fota를 이용한 이동 통신 단말기의 파일 업데이트 방법및 이를 위한 이동 통신 단말기
US20070143530A1 (en) * 2005-12-15 2007-06-21 Rudelic John C Method and apparatus for multi-block updates with secure flash memory
CN101384997A (zh) * 2006-03-01 2009-03-11 安讯士有限公司 用于对多个装置进行升级的方法及系统
US7640367B2 (en) * 2006-09-06 2009-12-29 Seiko Epson Corporation Method for executing a software updating process and computer for implementing the method
US8726259B2 (en) * 2007-04-09 2014-05-13 Kyocera Corporation System and method for preserving device parameters during a FOTA upgrade
JP4392672B2 (ja) * 2007-08-01 2010-01-06 Necシステムテクノロジー株式会社 ソフトウェア無線通信装置、及びソフトウェア更新方法、並びに、ソフトウェア無線通信システム
JP5102060B2 (ja) * 2008-02-08 2012-12-19 関西電力株式会社 通信システムおよびそれを用いる給電監視制御システムならびに通信システムにおけるファームウェアの更新方法
CN101247416A (zh) * 2008-03-25 2008-08-20 中兴通讯股份有限公司 基于ota的固件下载方法、预处理方法、完整性验证方法
US20090320012A1 (en) * 2008-06-04 2009-12-24 Mediatek Inc. Secure booting for updating firmware over the air

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101106773A (zh) * 2006-07-14 2008-01-16 中兴通讯股份有限公司 无线接入固定台软件升级后参数保持的方法
CN101251883A (zh) * 2008-03-11 2008-08-27 北京深思洛克数据保护中心 一种对软件保护设备进行安全可控的远程升级的方法
CN101924607A (zh) * 2010-08-27 2010-12-22 华为终端有限公司 基于固件空中传输技术的固件处理方法、装置及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None
See also references of EP2568639A4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2763428A1 (en) * 2013-02-04 2014-08-06 Samsung Electronics Co., Ltd Electronic device and firmware upgrading method thereof
US9454436B2 (en) 2013-02-04 2016-09-27 Samsung Electronics Co., Ltd. Electronic device and firmware upgrading method thereof

Also Published As

Publication number Publication date Type
KR20130030771A (ko) 2013-03-27 application
US8910139B2 (en) 2014-12-09 grant
CN101924607B (zh) 2013-01-23 grant
CN101924607A (zh) 2010-12-22 application
JP5608288B2 (ja) 2014-10-15 grant
JP2013534377A (ja) 2013-09-02 application
EP2568639A4 (en) 2013-09-18 application
EP2568639A1 (en) 2013-03-13 application
US20130111455A1 (en) 2013-05-02 application
KR101490578B1 (ko) 2015-02-05 grant

Similar Documents

Publication Publication Date Title
US8560823B1 (en) Trusted modular firmware update using digital certificate
US20120317565A1 (en) Methods and devices for controlling access to computing resources
US20030228866A1 (en) Mobile terminal system
US20120317638A1 (en) Method and devices for managing permission requests to allow access to a computing resource
US20120108205A1 (en) Methods and apparatus for storage and execution of access control clients
US20120210115A1 (en) Secure Boot Method and Method for Generating a Secure Boot Image
US20100115278A1 (en) Support of multiple pre-shared keys in access point
US20080209206A1 (en) Apparatus, method and computer program product providing enforcement of operator lock
US20140082358A1 (en) Efficient key generator for distribution of sensitive material from mulitple application service providers to a secure element such as a universal integrated circuit card (uicc)
US20090320012A1 (en) Secure booting for updating firmware over the air
US8589667B2 (en) Booting and configuring a subsystem securely from non-local storage
US20070143530A1 (en) Method and apparatus for multi-block updates with secure flash memory
US20070112680A1 (en) System and method for processing digital media content in a mobile device
US20080114687A1 (en) Method and apparatus for moving, dividing, or merging copyrighted content
US20150017950A1 (en) Virtual sim card cloud platform
CN101340663A (zh) 智能存储卡系统以及该系统实现交互的方法
US20140006798A1 (en) Device, system, and method for processor-based data protection
CN101034424A (zh) 一种数据安全存储系统和装置及方法
Weinmann Baseband Attacks: Remote Exploitation of Memory Corruptions in Cellular Protocol Stacks.
CN103428188A (zh) 一种文件更新方法、装置及相关设备
US20110317831A1 (en) Protecting video content using virtualization
WO2013123233A2 (en) Methods and apparatus for large scale distribution of electronic access clients
CN102982264A (zh) 一种嵌入式设备软件保护方法
US20130159727A1 (en) Secure replay protected storage
US20100035577A1 (en) Using network authentication to counter subscriber identity module card man-in-the-middle subsidy lock attack

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11819338

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase in:

Ref document number: 2013519942

Country of ref document: JP

Kind code of ref document: A

ENP Entry into the national phase in:

Ref document number: 20127033275

Country of ref document: KR

Kind code of ref document: A

NENP Non-entry into the national phase in:

Ref country code: DE