在本系列的第 1 部分中,我們介紹了安全性在連接的嵌入式系統中的重要性,以及強制使用外部閃存的閃存的去集成。在本系列的第 2 部分中,我們將介紹下一代智能內存安全閃存。
無論是使用 eFlash 還是外部閃存,設計安全的嵌入式系統都是一項越來越繁重的工作。本節重點介紹一些重要的注意事項,以幫助指導設計和開發工作。
通常,在為端到端安全性而設計的系統中需要三個元素:
·保護機制,通過防止代碼和關鍵數據通過各種方式被刪除、更改或損壞,從而保持代碼和關鍵數據的完整性
·檢測機制,用于揭示代碼和/或關鍵數據何時可能被某些未經授權的方式更改
·恢復機制,用于恢復被某些未經授權的方式更改的任何代碼和/或關鍵數據的完整性
工程師應設計能夠解決 STRIDE 模型中確定的所有威脅的系統(參見表 1)。下表總結了此模型,它提供了一種了解潛在威脅以及如何通過各種安全規定來應對每個威脅的實用方法。
表 1:STRIDE 模型概述了安全系統需要解決的威脅。
安全的產品設計需要建立基于信任根的可信執行環境 (TEE)。TEE提供了在使用之前驗證所有組件和子系統的真實性和完整性的方法。以下是創建此類安全設計的一些最佳實踐:
·在硬件中實現信任根以創建安全的基礎
·通過身份驗證和加密鞏固這一基礎
·為所有連接、網絡和云組件提供端到端的價值鏈保護
·提供對側信道攻擊和故障注入技術的免疫力
·對系統進行獨立的漏洞和風險評估
·持續實時監控異常
·實施對策流程(例如安全更新)
圖 2 顯示了在系統中實現信任根如何涉及在風險和成本之間進行權衡。正如預期的那樣,基于軟件的設計是最便宜的,也是最不安全的。沒有顯示的是不安全的嵌入式系統的間接成本,而這些非常真實的成本使得證明基于硬件的設計很容易最大化安全性。
以下是美國國家標準與技術研究院的計算機安全資源中心如何解釋在硬件中實現信任根的優勢:“信任根是執行特定關鍵安全功能的高度可靠的硬件,固件和軟件組件。由于信任根本質上是受信任的,因此它們必須在設計上是安全的。因此,許多信任根都是在硬件中實現的,因此惡意軟件無法篡改它們提供的功能。
技術的進步不斷降低IC的成本,從而降低采用下一代IC的系統的成本。隨著安全“智能閃存”的出現,外部閃存就是這種情況,它減少了在硬件中實現信任根并整合其他所需功能所需的工作量。
安全閃存:下一代智能存儲器
半導體代工廠正在花費大量精力追求小尺寸嵌入式閃存,但尚未出現可行的解決方案。小截面RRAM和MRAM技術作為eFlash替代品已被廣泛探索,但由于數據完整性和成本挑戰,這些技術尚不可行,特別是對于需要在高溫下具有高可靠性的關鍵任務應用。在撰寫本文時,尚不清楚這些或任何其他技術何時(或是否)能夠在批量生產中提供嵌入式內存。
由縮小的幾何形狀引起的不可避免的變化產生了對新型安全通道的需求,在該通道中,可以在MCU內部的HSM和外部存儲設備內的加密安全區域之間交換位。一個有前途的解決方案是采用當前實踐的反面,將各種類型的內存集成到處理器中,而是將處理器集成到內存IC中以創建智能內存。圖3顯示了安全閃存如何能夠與主機MCU建立經過身份驗證和加密的安全處理環境。
下一代智能存儲器的這一趨勢有可能為電子行業帶來革命性的變化。對于嵌入式系統,這些進步將集中在NOR Flash上,它是一種理想的非易失性存儲器,用于存儲基于其耐用性和快速隨機讀取性能的代碼。
Secure NOR 閃存(或更簡單的“安全閃存”)為安全密鑰、證書、密碼哈希、特定應用數據、配置數據、代碼版本信息和生物識別傳感器數據提供受硬件保護的安全存儲,以便進行身份驗證。Secure Flash 還可以支持經過身份驗證和加密的交易,以防止未經授權的訪問和其他安全威脅。
相比之下,當前基于狀態機的內存架構無法提供與嵌入式處理器相同的多功能性和性能。例如,強大的安全性需要強大的加密,而這反過來又需要相當大的處理能力。嵌入式處理器還可以支持其他與安全相關的要求,包括 HMAC 密鑰生成和存儲以及單調計數器,并提供針對固件、啟動映像和系統參數的攻擊的保護。
在存儲器中嵌入處理能力可以選擇性地促進邏輯集成,以添加特定功能和/或卸載系統主機MCU的工作負載。例如,嵌入式處理可以創建硬件信任根,以防止對存儲的代碼和數據進行修改、操作和其他安全攻擊。或者,處理器可以在存儲系統其他功能所需的結果之前,對原始數據(包括用于機器學習的數據)運行各種算法。
此外,對于可以通過在智能存儲器的嵌入式處理器中運行的代碼部分或完全滿足的安全法規,可以更輕松地認證新系統的合規性。這有可能通過簡化所需的設計和開發工作來顯著加快新產品的上市時間。
審核編輯:郭婷
-
嵌入式
+關注
關注
5068文章
19019瀏覽量
303272 -
代碼
+關注
關注
30文章
4748瀏覽量
68351
發布評論請先 登錄
相關推薦
評論