色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

將您的引導代碼存儲在安全的NOR閃存中

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Zhi Feng ? 2022-10-24 15:09 ? 次閱讀

安全啟動是構建安全電子系統的基礎。隨著微控制器的工藝幾何形狀不斷縮小,板載嵌入式閃存正逐漸被取代。

電子系統在我們的生活中起著至關重要的作用。無論是通過智能手機進行通信,還是駕駛配備高級駕駛輔助系統(ADAS)的汽車,我們都依靠電子設備來簡化甚至執行我們的日常任務。這些系統容易被黑客入侵,并且它們連接的事實放大了威脅。隨著可信情報采取關鍵活動(例如,個人醫療監控),網絡攻擊和破壞的后果增長到包括身體傷害甚至死亡。在這種新的現實中,建立能夠抵御此類攻擊的電子系統勢在必行。

安全啟動是構建安全電子系統的基礎。隨著微控制器的工藝幾何形狀不斷縮小,板載嵌入式閃存正逐漸被外部NOR閃存所取代。這種體系結構演變通過公開的總線接口、克隆可能性等創建了更大的攻擊面。解決這一日益嚴重的漏洞的一種方法是使用安全NOR閃存進行設計,以保護存儲,并幫助MCU在啟動時建立安全的信任鏈。

安全啟動 – 安全系統的基礎

每個電子系統在通電時都會啟動。對于嵌入式系統,這通常通過運行存儲在非易失性存儲器中的引導代碼來實現。要啟用安全引導,系統需要建立信任根,從原始硬件存儲引導,并使用原始受信任的引導代碼引導(請參閱圖 1)。

建立信任根

當MCU開始啟動時,它必須從受信任位置運行。這通常是通過小型內部ROM或受信任的嵌入式閃存實現的。此代碼必須是不可變的,以便系統可以從本質上信任它。它是信任根層次結構的基礎。從這里,系統可以通過對硬件進行身份驗證并驗證存儲內容來將信任擴展到外部存儲。

非對稱密鑰算法

為了建立信任根,ROM代碼通常依賴于預先存儲的密鑰。如果使用非對稱密鑰算法,則此密鑰通常是公鑰。MCU 使用此公鑰來驗證第二階段引導加載程序的簽名,該簽名位于外部閃存設備上。與實際引導加載程序一起存儲的簽名是引導加載程序的摘要值,并使用與公鑰以加密方式配對的私鑰進行簽名。如果MCU使用公鑰成功驗證引導加載程序簽名,并從當前引導加載程序計算相同的摘要值,則可以確定引導加載程序代碼未被更改。通過這種方式,建立了信任根。這個經過驗證的第二階段引導加載程序現在可以安全地執行。

對稱密鑰算法

通常,對稱密鑰算法的執行速度比對稱算法慢。因此,在啟動時間至關重要的應用程序中,用戶通常選擇對稱密鑰算法。使用對稱密鑰,主機MCU和外部閃存共享相同的密鑰。在現場部署之前(即在制造過程中),可以在安全環境中提前建立此共享密鑰。隨后,共享密鑰可用于通過在軟件上使用基于密鑰的哈希值來快速驗證第二階段引導加載程序。

poYBAGNWOmSAVWDyAAGtsbin1pU094.png

圖 1:建立信任根

從原始硬件存儲啟動

如果整個引導代碼存儲在 MCU 內的嵌入式閃存上,則從原始硬件存儲引導可能不是主要問題。這是因為在不損壞MCU主機的情況下更換嵌入式閃存是不可能的。然而,隨著行業向22 nm MCU邁進,在MCU中嵌入閃存變得越來越困難。超過28nm的技術可能被迫將引導代碼存儲在外部閃存中。因此,要安全引導,主機必須考慮是否已更換外部閃存。

為了防止黑客克隆具有原始內存內容的硬件,主機MCU可以在制造過程中執行與引導存儲設備的配對過程。之后,只有此配對的存儲設備才能提供用于引導的引導代碼。因此,必須在設備上使用安全的硬件標識符來提供此類配對功能。標識符可以是不能篡改或克隆的非常強的設備 ID。因此,配對后的認證過程可以基于這樣的標識符。

使用受信任的原始啟動代碼啟動

識別原始硬件存儲后,下一步是驗證引導代碼,以確保其未被篡改或修改。有多種方法可以做到這一點,每種方法都需要不同的處理能力并提供相應的安全級別。

簡單保護

與大多數傳統的NOR閃存一樣,用戶可以在引導代碼所在的內存范圍內啟用塊或基于扇區的保護。這種保護還可以防止意外寫入并從受保護區域擦除。簡單保護中沒有安全元素,因此這種保護對于更改代碼的故意攻擊很弱。黑客可以輕松發出命令來取消對區域的保護并修改啟動代碼。即使保護方案包含密碼,也可能被復雜的攻擊所破解,因為密碼本質上是靜態的。

校驗和驗證

如果校驗和是根據原始引導代碼計算得出的,則可以在后續引導中使用它來驗證代碼是否未被修改。此過程必須由主機完成;因此,它要求主機從引導設備讀取整個引導代碼并計算校驗和,然后才能開始使用它運行。請注意,主機不能依賴內存設備來提供校驗和值,因為在攻擊期間可能會修改校驗和值。

使用加密存儲引導代碼

加密的引導代碼可以使用密鑰存儲在 NOR 閃存上。MCU內部可能有硬件,可以在啟動時透明地解密數據。由于引導代碼純文本未在總線上公開,因此無法進行竊聽。只要用于加密的密鑰未被泄露,此方法就是安全的。但是,如果加密密鑰泄露,則必須重新刷新外部閃存上的啟動代碼內容。這個過程可能很繁瑣,甚至不可能在現場已有的設備上實施。

閃存設備輔助驗證

如果器件提供此類功能,則無需MCU將整個引導加載程序讀入RAM進行驗證,而是將驗證任務卸載到NOR閃存。在引導時間敏感型系統中,卸載驗證任務可以幫助MCU更快地開始執行引導加載程序。看門狗定時器可用于在驗證失敗的情況下重置系統。使用這種方法,MCU可以在閃存設備驗證代碼時開始處理一些緊急任務。當然,在驗證完成之前,只能運行不安全的函數。這意味著主機必須實現一個安全的中斷處理程序,該處理程序可以通過中斷事件從 NOR 閃存獲取驗證結果。

安全非閃存

傳統的NOR閃存能夠提供簡單的數據保護,無論是否使用密碼。這使得使用傳統的NOR閃存實現安全啟動功能變得困難。賽普拉斯公司提供的下一代安全NOR閃存集成了安全功能,可實現更強級別的安全啟動。

設備識別復合引擎

DICE 由可信計算組 (TCG) 指定,它提供了一種方法,用于根據每個設備的唯一設備密鑰派生強大且安全的設備 ID。在存儲引導代碼的設備上使用 DICE,系統可以在引導時建立信任根基礎。

DICE 建立在唯一設備機密 (UDS) 的基礎上。UDS 是每個設備上的真正隨機數,沒有任何關聯。UDS 在客戶的設施中生成,并存儲在設備上的機密位置,一旦寫入,就無法讀取 UDS。由證書提供的設備標識派生自 UDS。因此,一旦MCU與特定的閃存設備配對,就不可能克隆包含相同UDS的設備。

安全存儲區域

安全 NOR 閃存可以配置為在設備內具有多個獨立的安全區域。具有不同訪問級別的區域可用于存儲可能需要不同安全級別的固件或軟件。還可以將單個區域配置為常規數據的不安全存儲。隨著安全級別的提高,由于加密措施,來自設備的讀取吞吐量會降低。通過提供各種訪問級別,用戶可以決定系統每個部分的性能和安全性之間的權衡。

如果固件引導加載程序存儲在配置為需要身份驗證的區域中,則用戶可以確保固件未被任何未經授權的各方修改。如果固件包含用戶不希望在SPI總線上公開的敏感數據,則可以將其存儲在需要加密的區域,以便僅將加密數據傳輸到總線上。

快速安全啟動

某些應用(如汽車系統)需要及時安全啟動。在現代復雜系統中,引導代碼或應用軟件可能非常大,以至于MCU需要大量時間來讀取和驗證整個軟件。在這種情況下,安全NOR閃存可以在啟動期間卸載MCU,以驗證存儲在設備上的軟件。這是通過在MCU和設備之間提前存儲共享的秘密信息來實現的。在啟動過程中,可以快速驗證此共享密鑰,以確保設備和存儲軟件的原創性。該器件還可以在MCU開始處理一些基本任務時對軟件應用代碼進行身份驗證。因此,可以縮短整個啟動時間,以滿足汽車應用的嚴格要求。

汽車、工業和通信領域的現代電子系統需要高度安全的閃存存儲。設計人員面臨著構建能夠抵御網絡攻擊的安全可靠的系統的挑戰。安全存儲器,如賽普拉斯串行和并行NOR閃存,實現安全功能,使外部存儲能夠支持快速安全的啟動。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 微控制器
    +關注

    關注

    48

    文章

    7551

    瀏覽量

    151402
  • 代碼
    +關注

    關注

    30

    文章

    4787

    瀏覽量

    68589
  • adas
    +關注

    關注

    309

    文章

    2184

    瀏覽量

    208645
收藏 人收藏

    評論

    相關推薦

    英飛凌推出業界首款用于太空應用的QML認證512 Mbit抗輻射加固設計NOR閃存

    英飛凌近日推出業界首款用于太空和極端環境應用的512 Mbit抗輻射加固設計QSPI NOR閃存。 英飛凌近日推出業界首款用于太空和極端環境應用的512 Mbit抗輻射加固設計QSPI NOR
    的頭像 發表于 12-15 07:31 ?119次閱讀
    英飛凌推出業界首款用于太空應用的QML認證512 Mbit抗輻射加固設計<b class='flag-5'>NOR</b><b class='flag-5'>閃存</b>

    求助,如何將定制的2級引導加載程序上傳到指定的2級引導區?

    如何將定制的 2 級引導加載程序上傳到指定的 2 級引導區? 我的設備從 SPI 閃存啟動。 閃存
    發表于 09-26 06:54

    物聯網行業存儲方案詳解_SPI NOR Flash

    SPI NOR FLASH存儲初始響應和啟動時提供高可靠性,并具有低時延。這一特性對于物聯網設備至關重要,因為物聯網設備通常需要快速啟動并穩定運行,以確保數據的實時傳輸和處理。 2、直接執行
    的頭像 發表于 09-24 14:39 ?287次閱讀
    物聯網行業<b class='flag-5'>存儲</b>方案詳解_SPI <b class='flag-5'>NOR</b> Flash

    創建自定義的基于閃存引導加載程序(BSL)

    電子發燒友網站提供《創建自定義的基于閃存引導加載程序(BSL).pdf》資料免費下載
    發表于 09-19 10:50 ?0次下載
    創建自定義的基于<b class='flag-5'>閃存</b>的<b class='flag-5'>引導</b>加載程序(BSL)

    NAND閃存NOR閃存有什么區別

    NAND閃存NOR閃存是兩種常見的閃存存儲器技術,它們多個方面存在顯著的差異。以下將從技術原
    的頭像 發表于 08-10 16:14 ?3031次閱讀

    閃存的哪些扇區可用于用戶數據存儲

    有 2 個 ESP8266 模塊被磚砌了(無法使用下載工具下載任何應用程序)。 我非常感謝完整的內存映射和一些示例代碼,解釋了如何安全地使用板載閃存
    發表于 07-12 08:13

    NAND Flash與NOR Flash:壞塊管理需求的差異解析

    NOR Flash和NAND Flash是兩種不同類型的閃存技術,它們存儲單元的連接方式、耐用性、壞塊管理等方面存在差異。
    的頭像 發表于 07-10 14:25 ?2074次閱讀
    NAND Flash與<b class='flag-5'>NOR</b> Flash:壞塊管理需求的差異解析

    RTOS SDK1.5引導加載程序完成之后,扇區1閃存數據都會損壞,為什么?

    問題。 問題是,每次引導加載程序完成之后,在用戶程序以某種未知的方式啟動之前,扇區 1 (address=0x1000) 閃存數據都會損壞。 眾所周知,rBoot 使用兩個
    發表于 07-10 07:10

    FX3第二階段引導加載程序需要第二微秒延遲,否則SPI閃存讀取失敗,為什么?

    我使用的 FX3 配置了 SPI 啟動和IS25WP128閃存。 我可以用它成功啟動第二階段引導加載程序。 我的第二階段引導加載程序,它
    發表于 07-03 08:22

    安全服務加密存儲代碼怎么查

    安全服務加密存儲代碼的查詢與實現是一個復雜的過程,涉及到多個方面,包括數據加密、密鑰管理、訪問控制等。 1. 引言 隨著云計算的快速發展,越來越多的企業和個人數據
    的頭像 發表于 07-02 09:28 ?363次閱讀

    華為高端全閃存榮獲DCIG年度存儲數據安全首位推薦

    全球知名技術評估機構DCIG近日發布的《DCIG 2024-25高端全閃存存儲安全TOP5》報告,華為OceanStor Dorado 18000高端全
    的頭像 發表于 05-24 10:04 ?505次閱讀

    Flash存儲芯片:NOR Flash、NAND Flash、UFS和eMMC的比較與解析

    NOR Flash的制造工藝相對落后,密度較低,無法存儲大量的數據。   用途 NOR Flash被廣泛用于嵌入式系統的引導存儲器,可以
    發表于 04-03 12:05

    NAND存儲種類和優勢

    非易失性存儲器芯片又可分為快閃存儲器 (Flash Memory) 與只讀存儲器 (Read-Only Memory)。其中,快閃存儲器又可以分為 NAND
    發表于 03-22 10:54 ?875次閱讀
    NAND<b class='flag-5'>存儲</b>種類和優勢

    CYUSB3KIT-003如何集成一個NOR閃存

    我有一個 CYUSB3KIT-003。 我需要集成一個 NOR 閃存,我可以從中將固件讀取到 RAM,然后 NOR 閃存的一部分內存應該EVAL_2K4W_ACT_BRD_S7作為大容
    發表于 03-05 07:23

    請問如何激活Traveo II (TVIIBH4M) 引導加載程序?

    問題? 此外,是否有編寫引導加載程序固件的參考/示例? 備注:我代碼存儲 CM0+ 上,我正在使用 Flash API 的屏蔽模式
    發表于 02-01 07:56
    主站蜘蛛池模板: 女王羞辱丨vk| 亚洲精品国产在线网站| 袖珍人与大黑人性视频| 久久99国产精品蜜臀AV| 99九九99九九九视频精品| 十分钟免费看完整视频 | 久久精品视频在线直播6| bl(高h)文| 小货SAO边洗澡边CAO你动漫| 久久sese| 99RE6这里只有精品国产AV| 乱VODAFONEWIFI熟妇| 大香伊人久久精品一区二区| 亚洲三级视频| 欧美gv明星| 国产精品欧美一区二区在线看| 在线不卡日本v二区| 热久久视久久精品2015| 国精产品一区一区三区有限| 最新国产成人综合在线观看| 少妇邻居内射在线| 风情韵味人妻HD| 妖精视频免费看| 秋霞电影网视频一区二区三区| 国产亚洲精品97在线视频一| 92国产精品午夜免费福利视频| 午夜黄视频| 嫩草国产福利视频一区二区| 国产欧美日韩视频怡春院| 2021国产精品视频| 羞羞一区二区三区四区片| 免费可以看污动画软件| 国产三级精品三级在线观看| 99久久麻豆AV色婷婷综合| 亚洲AV久久无码精品九九软件| 免费观看久久| 国产在线观看免费观看不卡| qovd伦理| 一区二区三区四区国产| 视频一区国产精戏刘婷30| 麻豆高清区在线|