CN108418893A - 一种智能设备固件安全升级的方法 - Google Patents
一种智能设备固件安全升级的方法 Download PDFInfo
- Publication number
- CN108418893A CN108418893A CN201810230273.3A CN201810230273A CN108418893A CN 108418893 A CN108418893 A CN 108418893A CN 201810230273 A CN201810230273 A CN 201810230273A CN 108418893 A CN108418893 A CN 108418893A
- Authority
- CN
- China
- Prior art keywords
- firmware
- upgrade
- smart machine
- downloaded
- byte
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种智能设备固件安全升级的方法,包括以下步骤:使用加密算法对固件加密,存放在升级服务器上,供用户下载升级;在智能设备已有的固件中添加解密算法,该解密算法对应于对固件加密的加密算法;智能设备接收到远程升级指令后,解析升级服务器地址,从升级服务器上下载固件,并利用设备上的解密算法解密下载的固件,得到原始固件,完成升级。本发明使用加密算法对固件文件加密,在远程升级过程中,智能设备中已有固件会用与之对应的解密算法对下载的加密后的固件文件解密,还原成原始的固件文件写入flash分区,提高升级服务器上固件文件的安全性,降低了固件被盗用的风险,保护了固件厂商的权益。
Description
技术领域
本发明涉及智能设备固件,具体涉及一种智能设备固件安全升级的方法。
背景技术
近年来,随着智能设备的普及,智能设备远程升级越来越普遍,作为智能设备核心的智能设备固件,一般是以不加密方式存放在http服务器上供用户下载升级,在用户知晓url(统一资源定位符)的前提下,可以随意下载,一旦有人手动下载固件,再通过其他方法下载到智能设备上,就能够实现智能设备的批量生产,安全性较低,易被盗用,损害固件厂商的权益。
发明内容
本发明所要解决的技术问题是目前智能设备固件升级的方法安全性较低,固件易被盗用的问题。
为了解决上述技术问题,本发明所采用的技术方案是提供一种智能设备固件安全升级的方法,包括以下步骤:
一种智能设备固件安全升级的方法,其特征在于,包括以下步骤:
步骤S10、使用加密算法对固件加密,存放在升级服务器上,供用户下载升级;
步骤S20、在智能设备已有的固件中添加解密算法,该解密算法对应于对固件加密的加密算法;
步骤S30、智能设备接收到远程升级指令后,解析升级服务器地址,从升级服务器上下载固件,并利用设备上的解密算法解密下载的固件,得到原始固件,完成升级。
在上述方法中,所述加密算法为加密后字节数和加密之前字节数相等的所有加密算法。
在上述方法中,所述加密算法为异或加密算法。
在上述方法中,使用加密算法对固件加密,具体为:
以二进制方式打开固件文件;
每隔预设数目的字节,取下一个字节用加密算法对其进行加密;
把固件文件没有加密的字节和加密后的字节以二进制方式按照固件文件原有字节的顺序写入一个新建文件,得到加密后的固件文件。
在上述方法中,利用解密算法解密下载的固件文件,具体为:
以二进制方式打开智能设备下载的加密的固件文件;
每隔预设数目的字节,取下一个字节用相应的解密算法对其解密;
把所有加密字节的解密结果写入指定的flash分区,完成升级。
在上述方法中,步骤S30具体包括以下步骤:
步骤S31、智能设备收到升级指令;
步骤S32、智能设备解析升级服务器地址,启动升级流程;
步骤S33、根据解析的升级服务器地址从升级服务器上分包下载固件;
步骤S34、每下载一包,利用解密算法进行解密,并写入指定的flash分区;
步骤S35、判断是否全部下载完成,如果已经全部下载,升级完成,结束升级程序;否则,执行步骤S33。
本发明使用加密算法对固件文件加密,在远程升级过程中,智能设备中已有固件会用与之对应的解密算法对下载的加密后的固件文件解密,还原成原始的固件文件写入flash分区,使固件文件只能用于远程升级,即使有人手动下载了升级服务器上的固件文件,通过其他方法下载到智能设备中,该智能设备也无法正常工作,提高升级服务器上固件文件的安全性,降低了固件被盗用的风险,保护了固件厂商的权益。
附图说明
图1为本发明提供的一种智能设备固件安全升级的方法的流程图;
图2为本发明中步骤S30具体流程图。
具体实施方式
下面结合说明书附图和具体实施例对本发明做出详细的说明。
如图1所示,本发明提供的一种智能设备固件安全升级的方法,包括以下步骤:
步骤S10、使用加密算法对固件加密,存放在升级服务器上,供用户下载升级,其中,加密算法为加密后字节数和加密之前字节数相等的所有加密算法,如异或加密算法;
步骤S20、在智能设备已有的固件中添加解密算法,该解密算法对应于对固件加密的加密算法;
步骤S30、智能设备接收到远程升级指令后,根据指定的地址从升级服务器上下载固件,并利用设备上的解密算法解密下载的固件,得到原始固件,完成升级。
在本发明中,使用加密算法对固件加密,仅对固件中的特定字节加密,不仅提高加密和解密效率,而且加密效果更好,具体为:
以二进制方式打开固件文件;
每隔预设数目(可以根据设计要求任意设定预设数目)的字节,取下一个字节用加密算法对其进行加密;
把固件文件没有加密的字节和加密后的字节以二进制方式按照固件文件原有字节的顺序写入一个新建文件(即新建文件的每个字节都和原来的固件文件每个字节的位置一一对应,加密后得到的字节位置与没加密之前相同),得到加密的固件文件。
相应的,在本发明中,利用解密算法解密下载的固件文件,具体为:
以二进制方式打开智能设备下载的加密的固件文件;
每隔预设数目的字节,取下一个字节用相应的解密算法对其解密;
把所有加密字节的解密结果写入指定的flash分区,完成升级。
如图2所示,在本发明中,步骤S30具体包括以下步骤:
步骤S31、智能设备收到升级指令;
步骤S32、智能设备解析升级服务器地址,启动升级流程;
步骤S33、根据解析的升级服务器地址从升级服务器上分包下载固件;
步骤S34、每下载一包,利用解密算法进行解密,并写入指定的flash分区;
步骤S35、判断是否全部下载完成,如果已经全部下载,升级完成,结束升级程序;否则,执行步骤S33。
本发明还可以用于指定云到端的安全下载,即只有使用特定的下载器,才能下载到安全的、可用的资料或程序。
本发明通过对固件加密及在智能设备中对加密固件文件解密,实现智能设备固件的安全升级,提高升级服务器上固件的安全性,降低了固件被盗用的风险,保护了固件厂商的权益。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (6)
1.一种智能设备固件安全升级的方法,其特征在于,包括以下步骤:
步骤S10、使用加密算法对固件加密,存放在升级服务器上,供用户下载升级;
步骤S20、在智能设备已有的固件中添加解密算法,该解密算法对应于对固件加密的加密算法;
步骤S30、智能设备接收到远程升级指令后,解析升级服务器地址,从升级服务器上下载固件,并利用设备上的解密算法解密下载的固件,得到原始固件,完成升级。
2.根据权利要求1所述的方法,其特征在于,所述加密算法为加密后字节数和加密之前字节数相等的所有加密算法。
3.根据权利要求2所述的方法,其特征在于,所述加密算法为异或加密算法。
4.根据权利要求2或3所述的方法,其特征在于,使用加密算法对固件加密,具体为:
以二进制方式打开固件文件;
每隔预设数目的字节,取下一个字节用加密算法对其进行加密;
把固件文件没有加密的字节和加密后的字节以二进制方式按照固件文件原有字节的顺序写入一个新建文件,得到加密后的固件文件。
5.根据权利要求4所述的方法,其特征在于,利用解密算法解密下载的固件文件,具体为:
以二进制方式打开智能设备下载的加密的固件文件;
每隔预设数目的字节,取下一个字节用相应的解密算法对其解密;
把所有加密字节的解密结果写入指定的flash分区,完成升级。
6.根据权利要求1至5任一所述的方法,其特征在于,步骤S30具体包括以下步骤:
步骤S31、智能设备收到升级指令;
步骤S32、智能设备解析升级服务器地址,启动升级流程;
步骤S33、根据解析的升级服务器地址从升级服务器上分包下载固件;
步骤S34、每下载一包,利用解密算法进行解密,并写入指定的flash分区;
步骤S35、判断是否全部下载完成,如果已经全部下载,升级完成,结束升级程序;否则,执行步骤S33。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810230273.3A CN108418893A (zh) | 2018-03-20 | 2018-03-20 | 一种智能设备固件安全升级的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810230273.3A CN108418893A (zh) | 2018-03-20 | 2018-03-20 | 一种智能设备固件安全升级的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108418893A true CN108418893A (zh) | 2018-08-17 |
Family
ID=63132299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810230273.3A Pending CN108418893A (zh) | 2018-03-20 | 2018-03-20 | 一种智能设备固件安全升级的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108418893A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109040107A (zh) * | 2018-08-29 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 数据处理方法、服务器、无人驾驶设备及可读存储介质 |
CN109214168A (zh) * | 2018-08-27 | 2019-01-15 | 阿里巴巴集团控股有限公司 | 固件升级方法及装置 |
CN109598105A (zh) * | 2018-12-03 | 2019-04-09 | 深圳忆联信息***有限公司 | 一种微控制器安全加载固件的方法、装置、计算机设备及存储介质 |
CN111246396A (zh) * | 2020-01-06 | 2020-06-05 | 杭州涂鸦信息技术有限公司 | 一种基于udp局域网的整机烧录方法及*** |
CN111368345A (zh) * | 2020-03-09 | 2020-07-03 | 浙江众邦机电科技有限公司 | 加密程序的解密方法、装置、设备和计算机可读存储介质 |
WO2021197484A1 (zh) * | 2020-04-03 | 2021-10-07 | 江苏芯盛智能科技有限公司 | 固件运行方法、装置、固件烧录方法、装置和计算机设备 |
CN113741943A (zh) * | 2021-11-08 | 2021-12-03 | 湘投云储科技有限公司 | 一种嵌入式设备程序升级***及方法 |
CN116522368A (zh) * | 2023-06-29 | 2023-08-01 | 浙江大学 | 一种物联网设备固件解密解析方法、电子设备、介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102460456A (zh) * | 2009-04-28 | 2012-05-16 | 桑迪士克科技股份有限公司 | 用于内容的适应性保护的存储器器件和方法 |
CN102572595A (zh) * | 2012-02-03 | 2012-07-11 | 深圳市同洲电子股份有限公司 | Iptv的升级包结构、升级方法以及开机校验方法 |
CN103546576A (zh) * | 2013-10-31 | 2014-01-29 | 中安消技术有限公司 | 一种嵌入式设备远程自动升级方法和*** |
CN104780445A (zh) * | 2015-03-18 | 2015-07-15 | 福建新大陆通信科技股份有限公司 | 一种机顶盒软件防恶意升级的方法及*** |
CN105159707A (zh) * | 2015-08-14 | 2015-12-16 | 飞天诚信科技股份有限公司 | 一种安全的金融终端的固件烧写方法及金融终端 |
CN106909421A (zh) * | 2017-02-22 | 2017-06-30 | 福建魔方电子科技有限公司 | 一种安全的金融pos机固件升级方法 |
CN107154847A (zh) * | 2016-03-06 | 2017-09-12 | 北京火河科技有限公司 | 面向离线环境的密码生成方法、验证方法及其智能设备 |
-
2018
- 2018-03-20 CN CN201810230273.3A patent/CN108418893A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102460456A (zh) * | 2009-04-28 | 2012-05-16 | 桑迪士克科技股份有限公司 | 用于内容的适应性保护的存储器器件和方法 |
CN102572595A (zh) * | 2012-02-03 | 2012-07-11 | 深圳市同洲电子股份有限公司 | Iptv的升级包结构、升级方法以及开机校验方法 |
CN103546576A (zh) * | 2013-10-31 | 2014-01-29 | 中安消技术有限公司 | 一种嵌入式设备远程自动升级方法和*** |
CN104780445A (zh) * | 2015-03-18 | 2015-07-15 | 福建新大陆通信科技股份有限公司 | 一种机顶盒软件防恶意升级的方法及*** |
CN105159707A (zh) * | 2015-08-14 | 2015-12-16 | 飞天诚信科技股份有限公司 | 一种安全的金融终端的固件烧写方法及金融终端 |
CN107154847A (zh) * | 2016-03-06 | 2017-09-12 | 北京火河科技有限公司 | 面向离线环境的密码生成方法、验证方法及其智能设备 |
CN106909421A (zh) * | 2017-02-22 | 2017-06-30 | 福建魔方电子科技有限公司 | 一种安全的金融pos机固件升级方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109214168A (zh) * | 2018-08-27 | 2019-01-15 | 阿里巴巴集团控股有限公司 | 固件升级方法及装置 |
CN109040107A (zh) * | 2018-08-29 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 数据处理方法、服务器、无人驾驶设备及可读存储介质 |
CN109598105A (zh) * | 2018-12-03 | 2019-04-09 | 深圳忆联信息***有限公司 | 一种微控制器安全加载固件的方法、装置、计算机设备及存储介质 |
CN111246396A (zh) * | 2020-01-06 | 2020-06-05 | 杭州涂鸦信息技术有限公司 | 一种基于udp局域网的整机烧录方法及*** |
CN111246396B (zh) * | 2020-01-06 | 2021-11-09 | 杭州涂鸦信息技术有限公司 | 一种基于udp局域网的整机烧录方法及*** |
CN111368345A (zh) * | 2020-03-09 | 2020-07-03 | 浙江众邦机电科技有限公司 | 加密程序的解密方法、装置、设备和计算机可读存储介质 |
WO2021197484A1 (zh) * | 2020-04-03 | 2021-10-07 | 江苏芯盛智能科技有限公司 | 固件运行方法、装置、固件烧录方法、装置和计算机设备 |
CN113741943A (zh) * | 2021-11-08 | 2021-12-03 | 湘投云储科技有限公司 | 一种嵌入式设备程序升级***及方法 |
CN113741943B (zh) * | 2021-11-08 | 2022-03-18 | 湘投云储科技有限公司 | 一种嵌入式设备程序升级***及方法 |
CN116522368A (zh) * | 2023-06-29 | 2023-08-01 | 浙江大学 | 一种物联网设备固件解密解析方法、电子设备、介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108418893A (zh) | 一种智能设备固件安全升级的方法 | |
CN108241517B (zh) | 一种软件升级方法、客户端及电子设备 | |
CN109583217B (zh) | 一种互联网电商平台用户隐私数据加密及解密方法 | |
CN107888577B (zh) | 门锁固件的升级方法、门锁、服务器、***及存储介质 | |
TW202009778A (zh) | 韌體升級方法及裝置 | |
US8156318B2 (en) | Storing a device management encryption key in a network interface controller | |
CN108762791A (zh) | 固件升级方法及装置 | |
CN108595198B (zh) | 一种安全的固件更新方法 | |
CN103546576A (zh) | 一种嵌入式设备远程自动升级方法和*** | |
CN105227565B (zh) | 用于安卓***的防逆向破解共享对象文件的方法和装置 | |
CN104917787A (zh) | 基于群组密钥的文件安全共享方法和*** | |
CN101090452A (zh) | 机顶盒软件升级方法及升级*** | |
CN102572595A (zh) | Iptv的升级包结构、升级方法以及开机校验方法 | |
CN102082784A (zh) | 一种软件在线升级方法 | |
CN102509047A (zh) | 校验机顶盒中程序代码的方法和*** | |
EP3264265A1 (en) | Application protection method, server and terminal | |
CN104135531B (zh) | 一种Web软件的升级方法及装置 | |
CN112860791A (zh) | 一种跨网数据同步控制***、方法及存储介质 | |
CN108170461B (zh) | 差分升级包生成方法、差分升级方法及装置 | |
US9998285B2 (en) | Security hardening for a Wi-Fi router | |
US7975147B1 (en) | Electronic device network supporting enciphering and deciphering and update generation in electronic devices | |
CN111538512A (zh) | 一种空中下载技术ota固件升级方法、装置及设备 | |
CN112270002A (zh) | 全盘加密方法、***运行方法和电子设备 | |
CN112311528A (zh) | 一种基于国密算法的数据安全传输方法 | |
CN104636662A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180817 |