保護物聯網 (IoT) 應用免受安全威脅涉及設備和服務器身份驗證、敏感數據和知識產權保護以及保護機密性以及設備和通信完整性。例如,考慮一個 IoT 節點設備。此類設備需要具有安全引導加載程序和最新的安全固件,以便通過TLS連接安全地將傳感器數據發送到服務器,并將敏感數據存儲在閃存中。該等式中的一個關鍵組件是安全IC,用作應用處理器的配套IC,以確保安全的數據交換并保護數據。
對于這一角色,安全IC有一些不同的選擇。傳統上,流行的選擇是基于可信計算組(TCG) 定義的可信平臺模塊 (TPM) 標準的芯片。這些分立芯片為消費類 PC 和服務器提供防篡改的加密協處理器。它們旨在通過網絡交換數據的計算機之間建立信任,保護用戶數據,并安全地存儲某些數據(如密鑰)。對于那些具有專業知識的人來說,TPM芯片還可用于支持非常復雜的安全策略的實施,這些策略定義了誰可以在何時做什么。由于此用例,TPM 標準的學習曲線相當高。這種復雜性也使得驗證系統的安全性變得更加困難。當涉及到小型嵌入式系統時,簡單地說,TPM芯片由于其初始設計和平臺資源要求而難以集成到物聯網領域的簡單系統中。
現在,還有另一種安全 IC 選項可用作配套 IC。Maxim的MAXQ1061和MAXQ1062設計用于為小型低成本嵌入式系統提供高安全性證書、密鑰和數據安全存儲以及安全加密基元。這些緊湊、防篡改的設備是專門為簡單的嵌入式連接設備創建的,基于內部、客戶和公共加密模塊規范的要求。它們可用于將設備集成到公鑰基礎結構、設備和服務器身份驗證、數據的機密性和完整性以及設備完整性。憑借其40個命令集來實現這些目的,IC消除了嵌入式安全不必要的復雜性。其簡單的訪問控制策略和功能集適用于與 IoT 設備相關的大多數安全方案。在這篇博文中,我們將比較兩種選項之間的差異,以證明MAXQ1061和MAXQ1062適用于保護物聯網設計等小型嵌入式系統。圖2給出了MAXQ1061和MAXQ1062的集成框圖。
圖2.MAXQ1061/MAXQ1062的集成示例。
為什么使用安全IC?
安全IC為嵌入式系統提供了多種優勢,包括:
提高密鑰存儲的安全性
抵御故障注入和側信道攻擊的安全加密實施
與平臺上運行的其他軟件嚴格隔離,因為唯一的交互通道是命令總線
僅靠軟件是不夠的數據保護和其他安全功能
硬件信任根通過其受信任的行為
減輕主機處理器的安全功能所需的內存占用和計算資源的負擔
滿足物聯網的獨特要求 鑒于這些電子設備通常尺寸小,有時甚至是電池供電的性質,為物聯網
設計提供安全性涉及一些獨特的考慮因素。因此,底層組件的低功耗對于支持延長電池壽命至關重要。MAXQ1061和MAXQ1062的典型待機電流為25μA,遠低于基于TPM標準的芯片,后者的電流典型值超過100μA,通常高達300μA。此外,MAXQ1061和MAXQ1062的啟動時間為30ms,不用時可以完全斷電,但在需要時仍能非常快速地提供。安全IC的足夠內部非易失性存儲是保存密鑰和證書等敏感數據的另一個重要考慮因素。MAXQ1061和MAXQ1062的防篡改內部存儲器適用于存儲X.509證書、ECDSA密鑰對或其他密鑰或任意數據。此內部存儲被組織為由用戶定義的訪問控制控制的簡單文件系統。基于 TPM 標準的芯片還具有內部、防篡改、非易失性存儲,足以滿足物聯網應用中不典型的大型密鑰存儲。MAXQ1061和MAXQ1062還支持與嵌入式設計緊密一致的通信協議:器件通過I連接到主機處理器2C 或 SPI 總線。雖然基于TPM標準的芯片也具有SPI接口,但它們具有其他接口,例如LPC,主要用于PC架構而不是嵌入式系統。
TPM芯片的學習曲線更艱難 使用基于TPM的芯片最具挑戰性的方面
之一是學習曲線。符合TPM標準的主機端軟件龐大而復雜,專用于具有Linux和Windows等操作系統的大型系統。內存占用量在 100KB 到 1MB 范圍內。網上可用的編程資源并不多。軟件組件包括TCG軟件堆棧(TSS),其規范龐大而復雜;符合 TPM 標準的驅動程序,其 API 很復雜且處于非常低的級別;以及功能 API,它具有簡單的用法但復雜的安全策略定義。
相比之下,MAXQ1061和MAXQ1062需要非常簡單的軟件,適合最小的微控制器。主機端軟件在源代碼中提供,因此可以自定義。由于它是一個 C 語言庫,其函數直接映射到設備的命令集,因此您可以使用簡單的程序以相對直接的方式實現復雜的用例。這些安全微控制器的主機庫通常使用大約 6KB 的代碼和 4KB 的 RAM,并且可以為任何小型處理器(如 Arm)構建。皮層-M0.定制的TLS客戶端堆棧,例如用于任何類型的微控制器(例如Cortex-M0,類似于高端微控制器的微控制器)和OpenSSL的mbedTL對于運行嵌入式Linux或Windows的大型微控制器,在此庫之上提供。TLS 客戶端堆棧使用設備的 TLS 功能。
卸載主機處理器 在系統中使用安全 IC 的一個優點是將主處理器
從敏感的加密操作中卸載。TPM芯片與MAXQ1和MAXQ1061支持的低級加密算法比較見表1062。
表 1.支持的低級加密算法
低級加密功能 | 基于 TPM 標準的芯片 | 最大Q1061/最大Q1062 |
---|---|---|
標準加密算法 | 是的 | 是的 |
AES | AES-256 is optional in the TPM 2.0 standard | ECB, CBC, CCM 128/192/256 ECB/GCM 128, fast |
Random Number Generator | SP800-90A, AIS31PTG2 | Designed for SP800-90A SHA256DRBG* |
Key Generation | RSA, ECDSA | ECDSA |
Secure Hash Algorithm | SHA-1, 256 | SHA-1, 256, 384, 512 |
RSA Signature | 2048-bit | No |
RSA Encryption | 2048-bit | No |
ECDSA Signature | NIST P-256 | NIST P-256, 384, 521 Brainpool 256, 384, 512 |
ECDH | Same curves as ECDSA | Same curves as ECDSA |
HMAC | SHA-256 | SHA-256, 384, 512 |
AES based MAC | No | Fast AES-CBC-MAC, AES-CMAC AES-GMAC with 128-bit keys on a dedicated SPI interface |
TLS 1.2 PRF | No | SHA-256-based |
*此隨機數生成器標準的設計尚未通過認證。
與TPM芯片相比,MAXQ1061和MAXQ1062運行加密算法的方式在性能方面具有一定的優勢。MAXQ1061和MAXQ1062通過SPI提供快速AES引擎,用于AES ECB和AES GCM加密,具有128位密鑰,速度高達10MBps。這樣,主處理器就不必處理一些對稱加密任務了。此外,AES密鑰不需要導出到主處理器,在那里它們可能會被側信道攻擊暴露和泄露(導致通過功耗或電磁輻射分析檢索密鑰)。通過板載快速AES引擎,密鑰可以安全地存儲在MAXQ1061和MAXQ1062中。相比之下,基于 TPM 標準的芯片沒有如此高速的對稱加密引擎。
如表1所示,MAXQ1061和MAXQ1062不支持RSA。值得注意的是,RSA正變得越來越不推薦使用,因為與ECDSA相比,長密鑰和數字簽名可能長達數千位,而ECDSA的密鑰和簽名只有幾百位長。
TPM 芯片不具有處理 TLS 協議的特定功能。它們可以用作基本的加密引擎和長期密鑰存儲,由某些TLS軟件堆棧(如wolfSSL)利用。以執行原子操作,如證書生成、簽名驗證、AES 加密或解密、HMAC 簽名或驗證,或 ECDH,具體取決于 TLS 握手和記錄處理的需要。使用此類芯片,TLS會話密鑰在主機處理器中計算,正如我們所討論的,主機處理器更容易受到黑客的攻擊。在將TLS會話密鑰保留在易失性存儲器內部的同時,MAXQ1061和MAXQ1062可以處理從握手到安全應用數據交換的完整TLS 1.2會話。通過 TLS 交換應用程序數據時,將使用 TLS 記錄層,并使用協商密鑰應用加密和簽名。設備完全處理此TLS記錄層,因此從握手階段派生的TLS會話密鑰可以在芯片內保持安全,并且永遠不會暴露在芯片外部。
外部內存加密需要一個對稱密鑰來加密/解密磁盤數據。對稱方法(如 AES)提供速度。安全 IC 必須在加密時保存磁盤加密/解密密鑰,僅當 CPU 啟動到安全狀態時,才會將其釋放到主 CPU。對于 TPM 芯片,安全狀態是使用在引導過程中更新的 PCR 值確定的。只有這樣,TPM 標準芯片才會將密鑰釋放給主機處理器,主機處理器自行執行磁盤加密/解密,因為芯片缺乏此類操作的速度。但是,密鑰在傳輸到主機處理器時可能會暴露。使用MAXQ1061和MAXQ1062時,安全啟動功能和保存磁盤解密密鑰的內部存儲器對象實現了此過程。一旦平臺安全啟動,MAXQ1061和MAXQ1062可以選擇將密鑰傳輸到外部AES-SPI引擎,并對外部存儲器進行高速加密/解密,而不是將密鑰傳輸到主機處理器。使用此功能,可以快速解密外部存儲器,而不會暴露解密密鑰。
審核編輯:郭婷
-
嵌入式
+關注
關注
5082文章
19104瀏覽量
304825 -
服務器
+關注
關注
12文章
9123瀏覽量
85329 -
IOT
+關注
關注
187文章
4202瀏覽量
196699
發布評論請先 登錄
相關推薦
評論