在嵌入式設(shè)計(jì)中實(shí)現(xiàn)安全功能似乎是一項(xiàng)艱巨的任務(wù),專(zhuān)門(mén)提供安全功能的微控制器 (MCU) 因此應(yīng)運(yùn)而生,它們能夠在嵌入式設(shè)計(jì)之初實(shí)現(xiàn)安全功能。這是一件好事,因?yàn)楹翢o(wú)疑問(wèn),需要一種新型的嵌入式解決方案來(lái)保護(hù)物聯(lián)網(wǎng) (IoT) 應(yīng)用。
ABI Research 的一項(xiàng)研究估計(jì),去年售出的物聯(lián)網(wǎng)設(shè)備中不到 4% 具有嵌入式安全功能。同時(shí),這家市場(chǎng)研究公司預(yù)測(cè),到 2020 年,近 25% 的網(wǎng)絡(luò)攻擊將針對(duì)物聯(lián)網(wǎng)設(shè)備,從而使安全 MCU 成為熱門(mén)話(huà)題。
但什么是安全 MCU?許多 MCU 聲稱(chēng)提供安全功能,但仔細(xì)研究卻發(fā)現(xiàn)只是吹噓。本文將深入探討定義安全 MCU 的特征,并詳細(xì)介紹具體的特性和功能,以便于將安全 MCU 與僅宣稱(chēng)具有保護(hù)功能的 MCU 區(qū)分開(kāi)來(lái)。
首先,MCU 供應(yīng)商尋求以額外的安全保護(hù)層來(lái)補(bǔ)充其基于硬件的安全解決方案,從而增強(qiáng)對(duì)軟件漏洞和網(wǎng)絡(luò)攻擊的防御能力。
淺談兩個(gè)MCU協(xié)作
隨著在網(wǎng)絡(luò)邊緣運(yùn)行的端點(diǎn)設(shè)備的出現(xiàn),人們需要安全的空中下載 (OTA) 固件更新。Renesas 的 RX651 微控制器通過(guò)集成可信安全 IP (TSIP) 和可信閃存區(qū)域保護(hù)來(lái)滿(mǎn)足此更新要求,支持通過(guò)安全網(wǎng)絡(luò)通信在現(xiàn)場(chǎng)進(jìn)行閃存固件更新。
TSIP 提供了可靠的密鑰管理、加密通信和篡改檢測(cè),以確保針對(duì)竊聽(tīng)、篡改和病毒等外部威脅提供強(qiáng)有力的保護(hù)(圖 1)。同樣,集成的雙存儲(chǔ)區(qū)閃存使設(shè)備制造商更容易安全可靠地執(zhí)行現(xiàn)場(chǎng)固件更新。
雙組閃存使嵌入式系統(tǒng)設(shè)計(jì)人員能夠通過(guò) TSIP(用于保護(hù)加密密鑰)與加密硬件加速器(例如 AES、3DES、RSA、SHA 和 TRNG)的組合來(lái)實(shí)現(xiàn)高信任根級(jí)別。并且有代碼閃存區(qū)域保護(hù)來(lái)確保引導(dǎo)代碼免遭未經(jīng)授權(quán)的重新編程。
接下來(lái),Renesas 與嵌入式系統(tǒng)安全專(zhuān)家 Secure Thingz 合作,對(duì)其 RX 系列 32 位微控制器進(jìn)行安全配置。為此,Renesas 將支持創(chuàng)建了 Secure Thingz 的 Secure Deploy 架構(gòu),以簡(jiǎn)化跨設(shè)計(jì)和制造價(jià)值鏈的安全實(shí)現(xiàn)。
在與嵌入式安全解決方案提供商合作的 MCU 供應(yīng)商中,另一家是 STMicroelectronics 。這家芯片制造商正在與 Arilou Information Security Technologies 合作創(chuàng)建一種多層安全配置,其中的硬件和軟件可以相互補(bǔ)充以監(jiān)視數(shù)據(jù)流并檢測(cè)通信異常。
STMicro 的 SPC58 Chorus 系列 32 位汽車(chē)微控制器嵌入了硬件安全模塊 (HSM),可保護(hù)敏感的安全信息(如加密密鑰),從而確保防止車(chē)身和網(wǎng)關(guān)應(yīng)用中的通信總線(xiàn)受到入侵。HSM 提供基于硬件的信任根,以支持安全通信、OTA 更新和安全引導(dǎo)。
現(xiàn)在,ST 在 SPC58 Chorus 系列汽車(chē) MCU 中增加了 Arilou 的入侵檢測(cè)和防御系統(tǒng) (IDPS) 軟件,以檢測(cè)交通異常并形成針對(duì)網(wǎng)絡(luò)攻擊的額外保護(hù)層(圖 2)。IDPS 是一種軟件解決方案,旨在監(jiān)視控制器區(qū)域網(wǎng)絡(luò) (CAN) 總線(xiàn)并檢測(cè)汽車(chē)設(shè)計(jì)中電子控制單元 (ECU) 的通信模式異常。
專(zhuān)用安全MCU
以上部分簡(jiǎn)要介紹了集成安全功能以應(yīng)對(duì)物理和遠(yuǎn)程攻擊的 MCU。本部分將說(shuō)明專(zhuān)用安全 MCU,通常稱(chēng)為安全元件,這些元件通過(guò) I2C 或單線(xiàn)接口鏈接,充當(dāng)主 MCU 的伴芯。
安全元件支持不具備安全功能的 MCU,它們基于專(zhuān)門(mén)構(gòu)建的硬件,以提供針對(duì)各種威脅的安全框架。這些元件簡(jiǎn)單、便宜,并且可以減輕主 MCU 或 CPU 的安全相關(guān)任務(wù)(如密鑰存儲(chǔ)、加密加速等)負(fù)載。這就是它們也稱(chēng)為安全協(xié)處理器的原因。
在安全元件中,所有安全構(gòu)件都在一個(gè)共同邊界內(nèi)工作,該邊界將身份驗(yàn)證密鑰與軟件隔離,從而防止黑客進(jìn)行攻擊,如電源循環(huán)、時(shí)鐘毛刺和邊信道攻擊。在工廠(chǎng)中將安全密鑰和證書(shū)上傳到安全元件中還可以防止 IP 盜用、設(shè)計(jì)克隆和產(chǎn)品仿冒。
以 Microchip 的 ATECC608A 安全元件(圖 3)為例,其具有一個(gè)用于生成唯一密鑰的隨機(jī)數(shù)發(fā)生器 (RNG),同時(shí)符合美國(guó)國(guó)家標(biāo)準(zhǔn)與技術(shù)研究院 (NIST) 的最新要求。該元件還具有用于相互身份驗(yàn)證的加密加速器,例如 AES-128、SHA-256 和 ECC P-256。
最后,用于密鑰存儲(chǔ)的安全 ROM 營(yíng)造了一個(gè)黑客和欺騙攻擊很難更改的不可改變環(huán)境,從而防止篡改和邊信道攻擊??偠灾?,ATECC608A 提供的服務(wù)范圍從安全引導(dǎo)到 OTA 驗(yàn)證,再到用于物聯(lián)網(wǎng)和云服務(wù)身份驗(yàn)證的安全密鑰存儲(chǔ)和傳輸。
另一個(gè)專(zhuān)門(mén)用于安全功能實(shí)現(xiàn)的低成本 MCU 是 Microchip 的 SAM L11 (圖 4),可以保護(hù)功耗受限的物聯(lián)網(wǎng)節(jié)點(diǎn)免受故障注入和邊信道攻擊等威脅的影響。該器件通過(guò)模塊化 GUI 抽象出低級(jí)安全細(xì)節(jié),使開(kāi)發(fā)人員可以選擇相關(guān)的安全功能,從而簡(jiǎn)化嵌入式安全功能實(shí)現(xiàn)。
SAM L11 抽象出的安全功能包括第三方配置服務(wù)。該器件還集成了 Arm 的 TrustZone 技術(shù),這種技術(shù)隔離了微控制器內(nèi)的安全代碼和非安全代碼。此外,SAM L11 還簡(jiǎn)化了與 Amazon Web Services (AWS) 等云服務(wù)連接時(shí)物聯(lián)網(wǎng)節(jié)點(diǎn)的安全需求。
NXP 的 LPC5500 微控制器面向的是物聯(lián)網(wǎng)邊緣應(yīng)用,是安全 MCU 的另一個(gè)實(shí)例。該器件利用設(shè)備唯一的密鑰來(lái)創(chuàng)建不可改變的硬件信任根。密鑰可以由基于 SRAM 的物理不可克隆功能 (PUF) 在本地生成,允許最終用戶(hù)與 OEM 之間進(jìn)行閉環(huán)事務(wù)處理。這種操作消除了第三方密鑰處理的需求。
專(zhuān)用安全工具
盡管像 ATECC608A 這樣以安全為中心的 MCU 包含了安全構(gòu)件以促進(jìn)受信任的生態(tài)系統(tǒng),但它們并不能解決軟件隔離問(wèn)題?,F(xiàn)在,在 MCU 上運(yùn)行的軟件數(shù)量正在持續(xù)增長(zhǎng),開(kāi)發(fā)人員需要保護(hù)大型代碼庫(kù)免受惡意攻擊。
例如,物聯(lián)網(wǎng)設(shè)備都具有用于 Wi-Fi、藍(lán)牙、TLS 等功能的協(xié)議棧,因此即使沒(méi)有黑客竊取安全密鑰,協(xié)議棧的損壞也會(huì)影響設(shè)備的運(yùn)行。這就要求將任務(wù)關(guān)鍵代碼與非任務(wù)關(guān)鍵代碼分開(kāi),并將關(guān)鍵軟件置于安全的環(huán)境中。
Arm 的 TrustZone 環(huán)境(圖 5)將任務(wù)關(guān)鍵代碼和協(xié)議棧與復(fù)雜的操作系統(tǒng) (OS) 軟件和大型代碼庫(kù)分開(kāi),從而防止固件后門(mén)進(jìn)入安全密鑰存儲(chǔ)區(qū)。該環(huán)境創(chuàng)建了多個(gè)軟件安全域,以限制對(duì)微控制器內(nèi)部特定內(nèi)存、外設(shè)和 I/O 組件的訪(fǎng)問(wèn)。
上述所有三種安全微控制器 ATECC608A、SAM L11 和 LPC5500(圖 6)都采用了 TrustZone 技術(shù),可以將安全代碼和非安全代碼進(jìn)行隔離。此外,ATECC608A 安全元件還可與任何支持 TrustZone 的微控制器一起使用。
圖 6:LPC5500 微控制器中的 TrustZone 技術(shù)與 Arm Cortex M-33 處理器捆綁在一起,如圖左上方所示。(圖片來(lái)源:NXP)
在這里,還值得一提的是,安全 MCU 與 TrustZone 技術(shù)是相輔相成的,在某種意義上說(shuō) TrustZone 需要硬件保護(hù),而像 ATECC608A 和 SAM L11 這樣的安全 MCU 則在物聯(lián)網(wǎng)設(shè)計(jì)環(huán)境中促成了這一點(diǎn)。另一方面,TrustZone 則有助于在以 MCU 為中心的嵌入式設(shè)計(jì)中構(gòu)建緊湊的軟件環(huán)境。
總結(jié)
通過(guò)對(duì)安全 MCU 進(jìn)行剖析,我們可了解到它們?nèi)绾卧谠O(shè)計(jì)階段簡(jiǎn)化嵌入式安全功能實(shí)現(xiàn),以及如何繞過(guò)安全技術(shù)專(zhuān)業(yè)知識(shí)的陡峭學(xué)習(xí)曲線(xiàn)。這些專(zhuān)用 MCU 還可降低成本開(kāi)銷(xiāo)和功耗,對(duì)于高度受限的物聯(lián)網(wǎng)設(shè)計(jì),這是兩個(gè)主要考慮因素。
當(dāng)物聯(lián)網(wǎng)設(shè)備的推出速度超過(guò)了安全部署這些互連設(shè)計(jì)的速度時(shí),安全 MCU 可提供一條應(yīng)對(duì)多方面網(wǎng)絡(luò)威脅的可行途徑。它們提供了一個(gè)簡(jiǎn)化的解決方案,配備安全設(shè)計(jì)生態(tài)系統(tǒng),促進(jìn)了點(diǎn)擊式開(kāi)發(fā)環(huán)境的形成。
評(píng)論