[發(fā)明專利]一種安全的固件更新方法有效
| 申請(qǐng)?zhí)枺?/td> | 201810348555.3 | 申請(qǐng)日: | 2018-04-18 |
| 公開(公告)號(hào): | CN108595198B | 公開(公告)日: | 2022-02-22 |
| 發(fā)明(設(shè)計(jì))人: | 張洪柳;劉樹偉 | 申請(qǐng)(專利權(quán))人: | 山東方寸微電子科技有限公司 |
| 主分類號(hào): | G06F8/65 | 分類號(hào): | G06F8/65;G06F8/71;G06F21/14;G06F21/64 |
| 代理公司: | 濟(jì)南圣達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 37221 | 代理人: | 李健康 |
| 地址: | 250101 山東省濟(jì)南市高新區(qū)*** | 國省代碼: | 山東;37 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 安全 更新 方法 | ||
本發(fā)明公開了一種安全的固件更新方法,首先利用對(duì)稱密碼算法對(duì)固件Image文件進(jìn)行加密,然后利用非對(duì)稱密碼算法對(duì)加密過的固件Image文件進(jìn)行簽名,之后發(fā)送給客戶。在客戶處利用固件更新工具對(duì)加密、簽名后的固件Image文件進(jìn)行驗(yàn)簽,以防止固件Image文件被篡改,并將驗(yàn)簽后的固件Image文件下載到設(shè)備中,通過設(shè)備端bootrom對(duì)加密后的固件Image文件進(jìn)行解密,得到固件Image文件,最后通過設(shè)備端bootrom完成固件更新。本發(fā)明因?yàn)槟鼙WC固件Image是密文傳輸?shù)模瑹o法被逆向,可以有效防止固件Image被逆向分析,還能防止固件Image被篡改,防止設(shè)備受到攻擊,能防止攻擊者利用利用舊版本固件的漏洞來對(duì)設(shè)備進(jìn)行攻擊,防止固件版本回退。
技術(shù)領(lǐng)域
本發(fā)明屬于程序控制裝置技術(shù)領(lǐng)域,涉及用于執(zhí)行專門程序的裝載和更新,具體涉及一種安全的固件更新方法。
背景技術(shù)
固件(firmware)是一種存儲(chǔ)于設(shè)備中的EEPROM或FLASH芯片中,可由用戶通過特定的刷新程序進(jìn)行升級(jí)的程序,固件通常擔(dān)任著一個(gè)數(shù)碼產(chǎn)品最基礎(chǔ)、最底層工作。一般來說,這些硬件內(nèi)所保存的程序是無法被用戶直接讀出或修改的。因?yàn)橥ǔG闆r下是沒有必要對(duì)固件進(jìn)行升級(jí)操作,即使在固件內(nèi)發(fā)現(xiàn)了嚴(yán)重的Bug,也必須由專業(yè)人員進(jìn)行更換。早期的固件芯片一般采用了ROM設(shè)計(jì),F(xiàn)irmware代碼是在生產(chǎn)過程中固化的,用任何手段都無法修改。隨著技術(shù)的不斷發(fā)展,為適應(yīng)用戶對(duì)于不斷更新的硬件環(huán)境的需求,開始出現(xiàn)利用EEPROM和flash的可以重復(fù)刷寫特點(diǎn)讓固件得以修改和升級(jí)的技術(shù),使得更多的廠商把升級(jí)固件提供更多更新的功能做為附加值來提供給用戶。
固件的更新或升級(jí)是指把新的固件寫入芯片中,以代替原有的固件的過程。一些嵌入式設(shè)備一旦部署后,若要進(jìn)行固件的更新,只能進(jìn)行現(xiàn)場(chǎng)更新,而不是將設(shè)備回收到生產(chǎn)廠商處再更新,所以廠商就需要將新版本的固件發(fā)送到客戶處,由客戶來進(jìn)行更新。即一般的固件更新流程為:廠商生成固件Image文件,然后將此Image文件發(fā)送給客戶,客戶再利用更新工具將固件Image文件燒錄到設(shè)備中,在這個(gè)過程中,Image文件一般是明文傳輸,也不存在對(duì)Image文件的驗(yàn)證過程。這個(gè)過程中,就會(huì)存在很多安全問題,比如固件被逆向、被篡改,或?qū)⒐碳\(yùn)行于未經(jīng)授權(quán)的設(shè)備中等風(fēng)險(xiǎn)。
針對(duì)這些安全問題,現(xiàn)有技術(shù)中已經(jīng)披露了一些應(yīng)對(duì)的方法,比如申請(qǐng)?zhí)枮镃N201610554448.7、名稱為“一種安全的固件驗(yàn)證更新方法”的專利文獻(xiàn)。通過對(duì)此專利文獻(xiàn)的詳細(xì)解讀發(fā)現(xiàn)其雖然應(yīng)用了簽名算法,能夠規(guī)避固件被篡改的風(fēng)險(xiǎn),但是其固件依然為明文狀態(tài),無法規(guī)避被逆向和被被燒錄到未經(jīng)授權(quán)設(shè)備中的風(fēng)險(xiǎn),而且其只通過ID來進(jìn)行固件與主板的匹配,并未進(jìn)行版本控制,也存在固件版本回退的風(fēng)險(xiǎn)。
發(fā)明內(nèi)容
本發(fā)明目的在于針對(duì)傳統(tǒng)的固件的更新或升級(jí)過程中存在的固件Image文件被逆向、被篡改,或運(yùn)行于未經(jīng)授權(quán)的設(shè)備中等風(fēng)險(xiǎn),利用對(duì)稱密碼算法對(duì)固件Image進(jìn)行加密,再利用非對(duì)稱密碼算法對(duì)加密過的固件Image進(jìn)行簽名,隨后經(jīng)過驗(yàn)簽和解密,實(shí)現(xiàn)有效防止固件Image被逆向分析,防止固件Image被篡改,防止設(shè)備受到攻擊的危險(xiǎn)。
為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案為一種安全的固件更新方法,具體包含以下步驟:
S1:利用對(duì)稱密碼算法對(duì)固件Image文件進(jìn)行加密;
S2:利用非對(duì)稱密碼算法對(duì)加密過的固件Image文件進(jìn)行簽名;
S3:發(fā)送給客戶;
S4:利用固件更新工具對(duì)加密、簽名后的固件Image文件進(jìn)行驗(yàn)簽,以防止固件Image文件被篡改;
S5:客戶將驗(yàn)簽后的固件Image文件下載到設(shè)備中;
S6:通過設(shè)備端bootrom對(duì)加密后的固件Image文件進(jìn)行解密,得到固件Image文件;
S7:通過設(shè)備端bootrom完成固件更新。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于山東方寸微電子科技有限公司,未經(jīng)山東方寸微電子科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810348555.3/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 一種數(shù)據(jù)庫讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





