• 招生咨詢熱線:4008-569-579 
  • 手機(jī)版
    用手機(jī)掃描二維碼直達(dá)商品手機(jī)版
招生咨詢熱線
4008-569-579
機(jī)構(gòu)主頁 > 培訓(xùn)資料 > 嵌入式開發(fā):無線 (OTA) 更新的4個(gè)最佳實(shí)踐
機(jī)構(gòu)主頁 > 培訓(xùn)資料>嵌入式開發(fā):無線 (OTA) 更新的4個(gè)最佳實(shí)踐

嵌入式開發(fā):無線 (OTA) 更新的4個(gè)最佳實(shí)踐

來源:廣州達(dá)內(nèi)教育        時(shí)間:2023-05-30        熱度:40℃        返回列表

  OTA 更新對(duì)于連接設(shè)備的開發(fā)人員來說至關(guān)重要。在今天的文章中,我們將探討嵌入式開發(fā)人員在實(shí)施其 OTA

解決方案時(shí)應(yīng)牢記的幾個(gè)最佳實(shí)踐。盡管我將指出一些特定于 AWS 的最佳實(shí)踐,但其中大部分都是通用的。


  最佳實(shí)踐1 – 加密你的固件更新


  創(chuàng)建和測(cè)試非常耗時(shí),并且會(huì)消耗很大一部分開發(fā)預(yù)算。軟件雖然也驅(qū)動(dòng)產(chǎn)品中的大多數(shù)功能,并且可以顯著改變產(chǎn)品,該軟件是值得通過加密保護(hù)的知識(shí)產(chǎn)權(quán)。


  加密固件映像有幾個(gè)好處。首先,它可以將你的固件二進(jìn)制文件轉(zhuǎn)換為看似隨機(jī)或無意義的形式。這是理想的,因?yàn)殚_發(fā)人員不希望他們的二進(jìn)制圖像容易被研究、調(diào)查或逆向工程。這使某人更難竊取知識(shí)產(chǎn)權(quán),并且對(duì)可能對(duì)攻擊系統(tǒng)感興趣的人來說更難理解。其次,加密圖像意味著發(fā)送者必須擁有與解密圖像的設(shè)備相匹配的某種密鑰或憑證。這可以看一個(gè)簡(jiǎn)單的源來幫助驗(yàn)證源,盡管應(yīng)該做更多的工作而不只是加密來完全驗(yàn)證和驗(yàn)證完整性,例如簽署圖像。


  最佳實(shí)踐2 – 不支持固件回滾


  關(guān)于系統(tǒng)是否應(yīng)支持固件回滾經(jīng)常存在爭(zhēng)議?;貪L的論點(diǎn)通常是,如果固件更新出現(xiàn)問題,那么用戶可以回滾到正在運(yùn)行的舊版本。乍一看,這似乎是個(gè)好主意,但它可能是系統(tǒng)中的漏洞來源。例如,假設(shè)

1.7 版系統(tǒng)中存在允許遠(yuǎn)程攻擊者訪問系統(tǒng)的錯(cuò)誤,新的固件版本 1.8 修復(fù)了這個(gè)缺陷??蛻魧⑺麄兊墓碳碌?1.8

版本,但攻擊者知道如果他們可以強(qiáng)制系統(tǒng)恢復(fù)到 1.7,他們就可以擁有該系統(tǒng)。在當(dāng)今我們執(zhí)行 OTA

更新的互聯(lián)世界中,固件回滾是一個(gè)漏洞,因此嵌入式開發(fā)人員可以禁用它們以保護(hù)你的用戶。




  最佳實(shí)踐3 – 保護(hù)你的引導(dǎo)加載程序


  無線更新固件需要多個(gè)組件來確保安全且成功地完成。通常,重點(diǎn)是將新圖像發(fā)送到設(shè)備并對(duì)其進(jìn)行解密。然而,就像在傳統(tǒng)固件更新中一樣,引導(dǎo)加載程序仍然是更新過程的關(guān)鍵部分,在

OTA 更新中,引導(dǎo)加載程序不僅是你的傳統(tǒng)風(fēng)格,而且必須是安全的。


  有很多方法可以與板載引導(dǎo)加載程序一起使用,但無論使用哪種方法,引導(dǎo)加載程序都必須是安全的。安全引導(dǎo)加載程序需要能夠在加載之前驗(yàn)證固件的真實(shí)性和完整性。一些系統(tǒng)將使用應(yīng)用程序代碼來驗(yàn)證固件并將其安裝到新的應(yīng)用程序插槽中,而其他系統(tǒng)則完全依賴引導(dǎo)加載程序。在任何一種情況下,安全引導(dǎo)加載程序都需要能夠在接受新固件映像之前驗(yàn)證固件的真實(shí)性和完整性。


  嵌入式開發(fā)人員確保在信任鏈中引導(dǎo)加載程序內(nèi)置,并且不輕易修改或更新也是一個(gè)好主意。安全引導(dǎo)加載程序是確保系統(tǒng)安全所必需的信任鏈中的關(guān)鍵組件。


  最佳實(shí)踐4 — 建立信任鏈


  信任鏈?zhǔn)窃趩?dòng)設(shè)備時(shí)發(fā)生的一系列事件,可確保鏈中的每個(gè)鏈接都是受信任的軟件。例如,如果部件出廠時(shí)帶有基于硬件的信任根,以驗(yàn)證

MCU 來自安全來源。然后將該信任根 (RoT) 轉(zhuǎn)移給開發(fā)人員,該開發(fā)人員將安全引導(dǎo)加載程序和安全策略編程到設(shè)備上。在引導(dǎo)序列期間,RoT

驗(yàn)證引導(dǎo)加載程序的完整性和真實(shí)性,然后驗(yàn)證任何第二階段引導(dǎo)加載程序或軟件的完整性和真實(shí)性,然后驗(yàn)證應(yīng)用程序的真實(shí)性和完整性。然后應(yīng)用程序驗(yàn)證其數(shù)據(jù)、密鑰、操作參數(shù)等的真實(shí)性和完整性。


  該序列創(chuàng)建了一個(gè)信任鏈,固件 OTA

更新需要和使用該鏈。當(dāng)發(fā)出新固件請(qǐng)求時(shí),應(yīng)用程序必須解密圖像并驗(yàn)證新固件的真實(shí)性和完整性是否完好無損。只有當(dāng)信任鏈能夠成功通過鏈中的每個(gè)環(huán)節(jié)時(shí),才能使用新固件。最重要的是,開發(fā)人員和最終用戶知道,當(dāng)系統(tǒng)成功啟動(dòng)時(shí),新固件是合法的。


  結(jié)論


  OTA

更新是幾乎所有嵌入式開發(fā)設(shè)備的關(guān)鍵基礎(chǔ)設(shè)施組件。當(dāng)然,有些系統(tǒng)一旦部署就永遠(yuǎn)不會(huì)更新,但是,這些可能只是系統(tǒng)的一小部分。 OTA

更新是現(xiàn)場(chǎng)更新固件的首選機(jī)制。

電話咨詢

電話咨詢

咨詢電話:
4008-569-579
回到頂部

回到頂部