隨著連接設備的普及,特別是在物聯網(IoT)應用中,嵌入式系統設計人員越來越需要應對計算系統工程師多年來必須應對的信任和安全問題。
可信計算組 (TCG) 在開發基于標準的信任技術以解決這些信任和安全問題方面有著悠久的歷史。最近,TCG已將其重點擴展到嵌入式系統。TCG新發布的設備身份組合引擎(DICE)架構旨在為嵌入式空間提供增強的安全性和唯一的設備識別和證明。
DICE依賴于簡單的硅功能和軟件技術的組合,這些技術協同工作以提供加密強的設備標識。對純軟件安全性的改進部分基于將引導過程分解為多個層。每個層和硬件配置的唯一機密是使用只有 DICE(以及(可選)制造商)知道的唯一設備機密 (UDS) 創建的。
設備機密和密鑰對于設備和每個軟件層是唯一的,確保在修改代碼或配置時,機密和密鑰將不同。通過這種方法,每個軟件層都將其接收到的秘密完全保密。如果通過漏洞泄露了機密,則修補代碼將自動重新鍵入設備。
圖 1 顯示了 DICE 中的受信任代碼如何為平臺提供基于硬件的信任根。在 DICE 啟動模型中:
開機無條件啟動 DICE
百達對UDS擁有獨占訪問權限
每一層計算下一層的密鑰(通過加密單向函數)
每一層都保護它接收到的秘密
[圖1|DICE模型在每一層使用新的密鑰,基于受信任的不可變代碼構建,以構建信任鏈并提供強大的設備標識。
硬件具有將對 UDS 的訪問限制為僅對 DICE 的訪問的功能,它執行 DICE 安全性的初始步驟。UDS 和在 DICE 平臺上運行的第一個可變代碼的測量(其中 DICE 為測量提供信任根)都用于計算復合設備標識符 (CDI)。從 CDI 開始,每個連續的軟件層都使用密鑰和下一層的測量值來派生下一層的新密鑰。在轉移控制權之前,每一層都必須擦除自己的秘密。此過程在啟動期間繼續進行,從而形成一個基于設備標識并基于測量代碼的測量鏈。
為了實際了解這項技術,微軟的強大物聯網(RIoT)架構為利用DICE提供了參考實現。這與支持 Azure IoT 中的設備預配服務的體系結構相同。在 RIoT 參考中,支持 DICE 的處理器運行稱為 RIoT 內核的第一階段引導加載程序。RIoT 核心負責根據 DICE 執行的測量結果派生設備標識。然后,RIoT 內核將其自己的設備固件測量值與從 DICE 接收的 CDI 相結合,并將此機密值傳遞給固件,以便進一步派生其機密和密鑰。
在此體系結構中,設備固件依賴于以稱為固件標識 (FWID) 的加密哈希值編碼的證明(設備安全配置的加密報告)元素。FWID 是固件安全描述符 (FSD) 的哈希值,它與 UDS 一起是派生基于 DICE 的身份和證書的函數的模擬輸入。
實現 DICE 平臺有三個基本要求。這些包括:
計算哈希的能力(理想情況下在硬件或ROM中),
至少 256 位的 UDS,
一種保護機制,可將對 UDS 的訪問限制為 DICE,并且僅在平臺重置時重置
這些特性通常在嵌入式應用中使用的可用微控制器(MCU)中找到,但專為DICE架構設計的MCU可以優化其實現??捎糜趯崿FDICE架構的硬件包括現有的MCU:意法半導體的STM32L0L4系列MCU、美光科技基于Authenta的閃存。專為DICE設計的新型MCU包括微芯科技的CEC1702、安全IoT1702演示板和華邦的閃存。
隨著DICE規范接近最終確定,更廣泛的供應商將提供更多的設計導入工具和支持。
審核編輯:郭婷
-
mcu
+關注
關注
146文章
17316瀏覽量
352226 -
嵌入式
+關注
關注
5090文章
19176瀏覽量
306882 -
物聯網
+關注
關注
2912文章
44912瀏覽量
375871
發布評論請先 登錄
相關推薦
評論