CN110162317A - 一种提高单片机固件升级安全性的单片机结构和方法 - Google Patents
一种提高单片机固件升级安全性的单片机结构和方法 Download PDFInfo
- Publication number
- CN110162317A CN110162317A CN201910263179.2A CN201910263179A CN110162317A CN 110162317 A CN110162317 A CN 110162317A CN 201910263179 A CN201910263179 A CN 201910263179A CN 110162317 A CN110162317 A CN 110162317A
- Authority
- CN
- China
- Prior art keywords
- firmware upgrade
- chip microcontroller
- safety
- code key
- computer architecture
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 15
- 238000005192 partition Methods 0.000 claims abstract description 12
- 230000002123 temporal effect Effects 0.000 claims abstract description 3
- 230000008676 import Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
Classifications
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种提高单片机固件升级安全性的单片机结构,包括暂存数据的RAM单元和完成固件升级的ROM单元,ROM单元包括包含解密和加密算法的引导区和进行固件升级的应用区。本发明还提供了一种提高单片机固件升级安全性的方法,包括导入、认证、解密和加载。本发明通过在ROM底层分区固化一段包含解密和加密算法的引导程序,配合加密过的固件升级包,在避免用户错误升级的同时,保护了固件知识产权的安全性。
Description
技术领域
本发明涉及单片机技术领域,尤其涉及一种提高单片机固件升级安全性的单片机结构和方法。
背景技术
现有芯片固件升级的方式主要有两种,一种是通过芯片自带的固件升级,另一种是在固件中分区,固化一段引导程序代码,通过引导程序将新固件加载到ROM中。
第一种方法升级流程和指令都是透明的,芯片固件容易被恶意篡改,用户很容易将不适用于产品的固件错误的更新进芯片,同时,客户在得到固件升级包后可以烧录到任一相同芯片的产品,不利于知识产权的保护。
第二种方法通过个性化的引导程序能有效避免错误的固件升级包更新进入芯片,但客户在得到升级包后,升级包生产厂商同样面临被破解、知识产权遭到损害的风险。
发明内容
本发明的目的是为了解决现有技术中存在的缺点,而提出的一种提高单片机固件升级安全性的单片机结构和方法。
为实现上述目的,本发明提供了一种提高单片机固件升级安全性的单片机结构,包括暂存数据的RAM单元和完成固件升级的ROM单元,所述ROM单元包括包含解密和加密算法的引导区和进行固件升级的应用区。
较佳地,所述应用区包括多个应用分区。
本发明还提供了一种提高单片机固件升级安全性的方法,包括以下步骤:
S1.将加密过的固件升级包导入具有如上所述单片机结构的单片机,该固件升级包前段包含秘钥;
S2.秘钥被加载到RAM单元后,引导区对秘钥进行认证;
S3.当秘钥认证通过时,引导区使用秘钥约定的解密算法对固件升级包中秘钥后面的内容进行解密;
S4.解密完成后,引导区将解密获得的明文加载到应用区,直到加载结束。
较佳地,应用区包括多个应用分区,步骤S4中引导区将解密获得的明文加载到对应的应用分区。
较佳地,步骤S3中解密获得的明文暂存在RAM单元。
与现有技术相比,本发明的有益效果为:通过在ROM底层分区固化一段包含解密和加密算法的引导程序,配合加密过的固件升级包,在避免用户错误升级的同时,保护了固件知识产权的安全性。
附图说明
图1为本发明一实施例的一种提高单片机固件升级安全性的单片机结构的结构示意图。
具体实施方式
为使对本发明的目的、构造、特征、及其功能有进一步的了解,兹配合实施例详细说明如下。
请参见图1,本发明提供了一种提高单片机固件升级安全性的单片机结构,包括暂存数据的RAM单元1和完成固件升级的ROM单元2,ROM单元2包括包含解密和加密算法的引导区21和进行固件升级的应用区22。
优选地,应用区22包括多个应用分区,以使各应用功能之间有效区分,同时便于固件升级。
本发明还提供了一种提高单片机固件升级安全性的方法,包括以下步骤:
S1.将加密过的固件升级包导入具有如上所述单片机结构的单片机,该固件升级包前段包含秘钥;
S2.秘钥被加载到RAM单元后,引导区对秘钥进行认证;
S3.当秘钥认证通过时,引导区使用秘钥约定的解密算法对固件升级包中秘钥后面的内容进行解密;
S4.解密完成后,引导区将解密获得的明文加载到应用区,直到加载结束。
优选地,应用区包括多个应用分区,步骤S4中引导区将解密获得的明文加载到对应的应用分区。
优选地,步骤S3中解密获得的明文暂存在RAM单元。
由上所述,本发明通过在ROM底层分区固化一段包含解密和加密算法的引导程序,配合加密过的固件升级包,在避免用户错误升级的同时,保护了固件知识产权的安全性。
本发明已由上述相关实施例加以描述,然而上述实施例仅为实施本发明的范例。必需指出的是,已揭露的实施例并未限制本发明的范围。相反地,在不脱离本发明的精神和范围内所作的更动与润饰,均属本发明的专利保护范围。
Claims (5)
1.一种提高单片机固件升级安全性的单片机结构,其特征在于,包括暂存数据的RAM单元和完成固件升级的ROM单元,所述ROM单元包括包含解密和加密算法的引导区和进行固件升级的应用区。
2.如权利要求1所述的一种提高单片机固件升级安全性的单片机结构,其特征在于,所述应用区包括多个应用分区。
3.一种提高单片机固件升级安全性的方法,其特征在于,包括以下步骤:
S1.将加密过的固件升级包导入具有如权利要求1或2所述的单片机结构的单片机,所述固件升级包前段包含秘钥;
S2.秘钥被加载到RAM单元后,引导区对秘钥进行认证;
S3.当秘钥认证通过时,引导区使用秘钥约定的解密算法对固件升级包中秘钥后面的内容进行解密;
S4.解密完成后,引导区将解密获得的明文加载到应用区,直到加载结束。
4.如权利要求3所述的一种提高单片机固件升级安全性的方法,其特征在于,所述应用区包括多个应用分区,步骤S4中引导区将解密获得的明文加载到对应的应用分区。
5.如权利要求3所述的一种提高单片机固件升级安全性的方法,其特征在于,步骤S3中解密获得的明文暂存在RAM单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910263179.2A CN110162317B (zh) | 2019-04-02 | 2019-04-02 | 一种提高单片机固件升级安全性的单片机结构和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910263179.2A CN110162317B (zh) | 2019-04-02 | 2019-04-02 | 一种提高单片机固件升级安全性的单片机结构和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110162317A true CN110162317A (zh) | 2019-08-23 |
CN110162317B CN110162317B (zh) | 2022-11-18 |
Family
ID=67638836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910263179.2A Active CN110162317B (zh) | 2019-04-02 | 2019-04-02 | 一种提高单片机固件升级安全性的单片机结构和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110162317B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6442067B1 (en) * | 2000-05-23 | 2002-08-27 | Compaq Information Technologies Group, L.P. | Recovery ROM for array controllers |
US20070250254A1 (en) * | 2006-03-24 | 2007-10-25 | Mitsubishi Electric Corporation | On-vehicle control apparatus |
CN102201044A (zh) * | 2011-04-08 | 2011-09-28 | 山东华芯半导体有限公司 | 一种usb安全密钥 |
CN102611555A (zh) * | 2011-01-17 | 2012-07-25 | 株式会社理光 | 数据处理设备 |
CN102802036A (zh) * | 2012-07-26 | 2012-11-28 | 深圳创维-Rgb电子有限公司 | 一种数字电视认证的***及方法 |
CN103279372A (zh) * | 2013-05-23 | 2013-09-04 | 青岛海信宽带多媒体技术有限公司 | 机顶盒软件升级方法及机顶盒 |
CN104573528A (zh) * | 2014-12-31 | 2015-04-29 | 湖南国科微电子有限公司 | 一种防拷贝Soc启动方法及芯片 |
CN105184196A (zh) * | 2015-09-02 | 2015-12-23 | 四川九洲电器集团有限责任公司 | 电子***信息安全保护***及方法 |
CN106776133A (zh) * | 2016-12-09 | 2017-05-31 | 浪潮电子信息产业股份有限公司 | 一种操作***恢复的***及方法 |
US20170293484A1 (en) * | 2016-04-11 | 2017-10-12 | Endress+Hauser Conducta Gmbh+Co. Kg | Method for updating a firmware component and device of measurement and control technology |
CN107908942A (zh) * | 2017-11-30 | 2018-04-13 | 北京集创北方科技股份有限公司 | 电子设备、显示***、集成控制装置和生物特征验证方法 |
CN108196867A (zh) * | 2018-03-08 | 2018-06-22 | 深圳市文鼎创数据科技有限公司 | 设备的固件升级装置、设备及其固件升级方法 |
CN108287999A (zh) * | 2017-01-10 | 2018-07-17 | 厦门雅迅网络股份有限公司 | 一种基于TrustZone的***可信启动方法 |
CN109343873A (zh) * | 2018-08-28 | 2019-02-15 | 九阳股份有限公司 | 一种智能家电远程升级控制方法 |
CN109543435A (zh) * | 2018-11-29 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种fpga加密保护方法、***及服务器 |
-
2019
- 2019-04-02 CN CN201910263179.2A patent/CN110162317B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6442067B1 (en) * | 2000-05-23 | 2002-08-27 | Compaq Information Technologies Group, L.P. | Recovery ROM for array controllers |
US20070250254A1 (en) * | 2006-03-24 | 2007-10-25 | Mitsubishi Electric Corporation | On-vehicle control apparatus |
CN102611555A (zh) * | 2011-01-17 | 2012-07-25 | 株式会社理光 | 数据处理设备 |
CN102201044A (zh) * | 2011-04-08 | 2011-09-28 | 山东华芯半导体有限公司 | 一种usb安全密钥 |
CN102802036A (zh) * | 2012-07-26 | 2012-11-28 | 深圳创维-Rgb电子有限公司 | 一种数字电视认证的***及方法 |
CN103279372A (zh) * | 2013-05-23 | 2013-09-04 | 青岛海信宽带多媒体技术有限公司 | 机顶盒软件升级方法及机顶盒 |
CN104573528A (zh) * | 2014-12-31 | 2015-04-29 | 湖南国科微电子有限公司 | 一种防拷贝Soc启动方法及芯片 |
CN105184196A (zh) * | 2015-09-02 | 2015-12-23 | 四川九洲电器集团有限责任公司 | 电子***信息安全保护***及方法 |
US20170293484A1 (en) * | 2016-04-11 | 2017-10-12 | Endress+Hauser Conducta Gmbh+Co. Kg | Method for updating a firmware component and device of measurement and control technology |
CN106776133A (zh) * | 2016-12-09 | 2017-05-31 | 浪潮电子信息产业股份有限公司 | 一种操作***恢复的***及方法 |
CN108287999A (zh) * | 2017-01-10 | 2018-07-17 | 厦门雅迅网络股份有限公司 | 一种基于TrustZone的***可信启动方法 |
CN107908942A (zh) * | 2017-11-30 | 2018-04-13 | 北京集创北方科技股份有限公司 | 电子设备、显示***、集成控制装置和生物特征验证方法 |
CN108196867A (zh) * | 2018-03-08 | 2018-06-22 | 深圳市文鼎创数据科技有限公司 | 设备的固件升级装置、设备及其固件升级方法 |
CN109343873A (zh) * | 2018-08-28 | 2019-02-15 | 九阳股份有限公司 | 一种智能家电远程升级控制方法 |
CN109543435A (zh) * | 2018-11-29 | 2019-03-29 | 郑州云海信息技术有限公司 | 一种fpga加密保护方法、***及服务器 |
Non-Patent Citations (2)
Title |
---|
JOYDEEP RAKSHIT 等: "LEO: Low Overhead Encryption GRAM for Non-Volatile Memories", 《IEEE COMPUTER ARCHITECTURE LETTERS》 * |
电子产品世界: "基于闪存器的可下载固件方法(下)", 《嵌入式***》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110162317B (zh) | 2022-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11756030B2 (en) | Secure management of content distribution data blocks on a blockchain | |
WO2008127309A3 (en) | Systems and methods for distributing and securing data | |
JP2008537445A (ja) | 新しいセッション鍵の提供 | |
CN109409888B (zh) | 一种支持私有交易的公有区块链***及私有交易的处理方法 | |
CN103490894B (zh) | 一种确定智能密钥设备生命周期的实现方法及装置 | |
CN103906039B (zh) | 一种防止手机号码泄露的方法和装置 | |
CN106203071A (zh) | 一种固件升级方法及装置 | |
CN104868998B (zh) | 一种向电子设备供应加密数据的***、设备和方法 | |
EP1404052A3 (en) | Data encryption system and method | |
CN109391936A (zh) | 一种ota升级包加密下载的方法 | |
US20110010544A1 (en) | Process distribution system, authentication server, distribution server, and process distribution method | |
CN104850764B (zh) | 一种基于智能卡的软件保护方法及*** | |
CN107423626A (zh) | 一种基于连续Hash值的BIOS更新信任链的方法 | |
CN106411515A (zh) | 利用密码机对密钥进行分割提升密钥安全的方法及*** | |
CN104702575A (zh) | 一种账号管理方法、管理平台及*** | |
CN105490813B (zh) | 一种用户安全访问web的方法及装置 | |
CN105379172B (zh) | 用于在块加密算法中使用的密钥更新的设备和方法 | |
CN114362931B (zh) | 一种物联网设备注册和安全认证连接及指令交互方法 | |
CN113660205B (zh) | 一种软件授权码加密方法 | |
CN100596058C (zh) | 可信计算平台密钥授权数据管理***及方法 | |
CN103313244B (zh) | 一种基于gba的认证方法及装置 | |
CN110162317A (zh) | 一种提高单片机固件升级安全性的单片机结构和方法 | |
CN101453329A (zh) | 一种通过预登录增强***安全的方法 | |
CN106570354A (zh) | 移动应用的重构方法和装置、运行方法和装置 | |
CN109104712B (zh) | 一种基于nfc功能的无线充值加密***及其加密方法 |
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 |