1.導(dǎo)言
物聯(lián)網(wǎng)(IoT)轉(zhuǎn)型的進(jìn)程正如火如荼,并有可能改變企業(yè)和消費(fèi)者體驗(yàn)。互聯(lián)網(wǎng)的這個(gè)新階段能否取得成功,很大程度上取決于數(shù)十億各種互聯(lián)設(shè)備的信任和安全性能。企業(yè)需要依靠來(lái)自邊緣計(jì)算的數(shù)據(jù)才能做出商業(yè)決策,而消費(fèi)者需要確保他們的互聯(lián)家居和數(shù)字生活不會(huì)被黑客攻擊。近期的攻擊和安全研究表明,在極端情況下,設(shè)計(jì)不佳的連接設(shè)備有可能被攻陷并導(dǎo)致互聯(lián)網(wǎng)基礎(chǔ)架構(gòu)的關(guān)鍵部件被破壞,甚至影響到我們的安全。因此,我們需要能夠應(yīng)對(duì)這些威脅并且適用于各種成本點(diǎn)的設(shè)備安全。平臺(tái)安全架構(gòu)(PSA)的使命就是克服這一挑戰(zhàn)。它能夠服務(wù)于任何設(shè)計(jì)合理的 Arm 處理器,包括低成本微控制器。
安全并非可有可無(wú)
Arm宣布將推出平臺(tái)安全架構(gòu)(PSA)和配套的開源軟件計(jì)劃Trusted Firmware-M。該項(xiàng)目能夠提供由硬件支持的可擴(kuò)展安全性,可應(yīng)用于成本從低到高的各類設(shè)備。其目的是通過(guò)共享的最佳實(shí)踐方法提高整個(gè)生態(tài)系統(tǒng)的安全性。為此,我們需要轉(zhuǎn)變安全經(jīng)濟(jì)學(xué),降低實(shí)施強(qiáng)大安全措施的風(fēng)險(xiǎn)、成本、低層次碎片化和復(fù)雜性。
基于微控制器(MCU)的設(shè)備數(shù)量急速增長(zhǎng)將導(dǎo)致:
數(shù)十億種物聯(lián)網(wǎng)設(shè)備和嵌入式連接設(shè)備設(shè)計(jì),全部基于各種 Arm 解決方案
種類繁雜的使用案例和安全健壯性要求
來(lái)自多家供應(yīng)商的系統(tǒng)組件集成:硬件、軟件和固件
各種組件的多樣化實(shí)施
不同項(xiàng)目之間可能無(wú)法復(fù)用的集成工作
本白皮書概述了全新架構(gòu)——PSA。這種架構(gòu)將為日益增加的基于MCU的連接設(shè)備奠定基于硬件和固件的安全基礎(chǔ)。PSA不限定CPU架構(gòu),但以基于MCU的設(shè)備為優(yōu)先服務(wù)對(duì)象,同時(shí)也可應(yīng)用于全面可信執(zhí)行環(huán)境(TEE)太過(guò)龐大、太過(guò)復(fù)雜的其他平臺(tái)。
運(yùn)行 Linux 等復(fù)雜操作系統(tǒng)、Arm TrustZone? 等現(xiàn)有基于硬件的安全產(chǎn)品以及可信執(zhí)行環(huán)境(TEE)的 Arm 應(yīng)用處理器(即Cortex-A系列)也同樣適用。
1.1 行業(yè)挑戰(zhàn)
行業(yè)面臨如下挑戰(zhàn):
1.在設(shè)備的整個(gè)生命周期內(nèi)實(shí)施安全可能代價(jià)不菲
2.安全設(shè)備很難實(shí)現(xiàn)規(guī)?;芾?/p>
3.行業(yè)對(duì)傳感器和執(zhí)行器接收和發(fā)送的數(shù)據(jù)缺乏信心,因此無(wú)法全面發(fā)掘物聯(lián)網(wǎng)的經(jīng)濟(jì)效益
1.2 Arm 對(duì)更安全物聯(lián)網(wǎng)的愿景
Arm的安全愿景側(cè)重于三個(gè)主要領(lǐng)域:
1. 轉(zhuǎn)變安全經(jīng)濟(jì)學(xué)
設(shè)備的整個(gè)生命周期都應(yīng)當(dāng)提供用戶負(fù)擔(dān)得起的安全性。
2.實(shí)現(xiàn)規(guī)?;踩?nbsp;
物聯(lián)網(wǎng)的云運(yùn)營(yíng)商需要相應(yīng)的設(shè)施來(lái)安全、有效地管理海量設(shè)備,無(wú)論何種設(shè)備類型和芯片類型。
3.整個(gè)價(jià)值鏈的安全
物聯(lián)網(wǎng)的一個(gè)主要優(yōu)點(diǎn)就在于它生成和交換的數(shù)據(jù),以及從這些數(shù)據(jù)中分析提取的信息。企業(yè)必須能夠判斷數(shù)據(jù)的可靠性,進(jìn)而實(shí)現(xiàn)整個(gè)生態(tài)系統(tǒng)共享的經(jīng)濟(jì)效益。
1.3 IP支持
Arm現(xiàn)有的安全產(chǎn)品和技術(shù)能夠幫助移動(dòng)和上網(wǎng)本市場(chǎng)的硅芯片合作伙伴提高安全性和質(zhì)量并加快產(chǎn)品的上市速度。Arm現(xiàn)有的安全產(chǎn)品包括:
Armv8-A等包含TrustZone的Cortex-A系列
Arm可信固件(針對(duì)Cortex-A系列),一種開源參考實(shí)施,包括可信 啟動(dòng)和TEE加載組件
將TrustZone引入微控制器市場(chǎng)的Armv8-M架構(gòu)
Arm SecurCore,防篡改處理器系列
TrustZone CryptoCell,提供平臺(tái)級(jí)安全服務(wù)的安全模塊
TrustZone CryptoIsland,高度集成式安全子系統(tǒng),旨在提供片上智能卡級(jí)別的安全性
Arm Mbed IoT Device Platform,提供相應(yīng)的操作系統(tǒng)、云服務(wù)、工具和開發(fā)者生態(tài)系統(tǒng),以實(shí)現(xiàn)基于標(biāo)準(zhǔn)的商業(yè)物聯(lián)網(wǎng)解決方案的規(guī)模化開發(fā)和部署。
接下來(lái)我們將介紹平臺(tái)安全架構(gòu),為制造更安全連接設(shè)備提供方法。
2.平臺(tái)安全架構(gòu)
2.1 目標(biāo)
平臺(tái)安全架構(gòu)(PSA)是一個(gè)由威脅模型、安全分析以及硬件和固件規(guī)范組成的整體。它與開源參考實(shí)施共同幫助您在最低的安全層面為所有互聯(lián)設(shè)備實(shí)現(xiàn)統(tǒng)一的安全設(shè)計(jì)。PSA吸收并整合了整個(gè)行業(yè)的最佳實(shí)踐。它的服務(wù)對(duì)象是整個(gè)物聯(lián)網(wǎng)生態(tài)系統(tǒng),從芯片設(shè)計(jì)師和設(shè)備開發(fā)者到云和網(wǎng)絡(luò)基礎(chǔ)架構(gòu)提供商以及軟件供應(yīng)商。
PSA 提供了一種無(wú)需自行開發(fā)所有元件就能構(gòu)建安全系統(tǒng)的方法。Arm是這個(gè)生態(tài)系統(tǒng)的領(lǐng)導(dǎo)者,其目標(biāo)是保護(hù)整個(gè)互聯(lián)世界。
下列目標(biāo)概述了確保數(shù)十億設(shè)備安全的框架:
簡(jiǎn)化按照安全標(biāo)準(zhǔn)評(píng)估物聯(lián)網(wǎng)設(shè)備的過(guò)程
促進(jìn)重復(fù)利用、提高互操作性和最大程度減少API碎片,進(jìn)而降低生態(tài)系統(tǒng)合作伙伴開發(fā)軟件的成本和復(fù)雜性
利用PSA提供的原始資源實(shí)現(xiàn)設(shè)備安全模型,進(jìn)而降低SoC設(shè)計(jì)者的成本和復(fù)雜性
為了實(shí)現(xiàn)上述目標(biāo),下列要求必須得到滿足:
為認(rèn)證/評(píng)估基于Arm的SoC或設(shè)備建立基礎(chǔ)
定義核心安全功能
定義沙箱安全模型
為第三方軟件提供商實(shí)施的安全功能定義框架
定義基礎(chǔ)物聯(lián)網(wǎng)安全硬件平臺(tái)
為物聯(lián)網(wǎng)提供健壯的開源參考實(shí)施(類似于上網(wǎng)本和移動(dòng)市場(chǎng)的Arm可信固件)
2.2 構(gòu)建模塊
PSA 由三個(gè)部分組成:
1.威脅模型和安全分析,來(lái)自各種典型的物聯(lián)網(wǎng)使用案例
2.架構(gòu)的固件和硬件規(guī)范
3.固件架構(gòu)規(guī)范的開源參考實(shí)施
PSA的基礎(chǔ)是設(shè)備的威脅模型,它們將安全要求延伸至其他各大構(gòu)件,如圖 1所示。威脅模型與CPU架構(gòu)無(wú)關(guān),而另外兩大構(gòu)件的作用是為統(tǒng)一的實(shí)施提供支持。
三大構(gòu)件之間的關(guān)系如圖 1 所示。
圖 1 – PSA 的組成
2.3 威脅模型與安全分析
設(shè)計(jì)安全系統(tǒng)時(shí),我們需要結(jié)合關(guān)鍵問(wèn)題進(jìn)行風(fēng)險(xiǎn)分析并建立威脅模型。這些關(guān)鍵問(wèn)題包括:
我們要保護(hù)的資產(chǎn)
潛在的威脅
潛在攻擊的范圍和強(qiáng)度
潛在攻擊者的類型以及攻擊方式
通過(guò)這些研究可以確定安全目標(biāo),隨后制定減輕此類威脅的安全功能要求。
Arm 對(duì)相關(guān)的物聯(lián)網(wǎng)使用案例和情境進(jìn)行了分析。通過(guò)分析得出普遍適用的安全原則,然后用它來(lái)指導(dǎo)架構(gòu)規(guī)范文件的制定。
Arm 使用英語(yǔ)語(yǔ)言保護(hù)范圍(PP)方法來(lái)為評(píng)估目標(biāo)(TOE)制定一系列安全功能要求(SFR)。每一個(gè)輪廓都考慮了功能描述、TOE 和必要的安全要求。這些文件要讓并非安全專家的工程師能夠使用。
各種PSA架構(gòu)規(guī)范描述的硬件和軟件安全構(gòu)件提供了滿足威脅模型所凸顯的安全要求所需的原語(yǔ)。
圖 2 顯示了高層次分析示例。
圖 2 – 一個(gè)儀表的安全分析示例
2.4 架構(gòu)規(guī)范文件
PSA架構(gòu)規(guī)范包括一系列彼此關(guān)聯(lián)的文件,如下所列:
1. 設(shè)備安全模型 – 基礎(chǔ)的信任模型和模式
2.可信設(shè)備初始化 – 初始安全設(shè)備編程和配置要求
3.可信基礎(chǔ)系統(tǒng)架構(gòu) [TBSA-M] – v8-M的硬件平臺(tái)要求
4.可信啟動(dòng)與固件更新
5.PSA固件框架M [PSA FF] – 受限物聯(lián)網(wǎng)平臺(tái)安全處理環(huán)境(SPE)的固件接口定義
6.PSA可信功能 – SPE內(nèi)標(biāo)準(zhǔn)可信設(shè)備的定義
2.4.1 設(shè)備安全模型
設(shè)備安全模型(DSM)定義了在生態(tài)系統(tǒng)內(nèi)設(shè)計(jì)和部署 PSA兼容可信設(shè)備的總體安全架構(gòu)。它是其他PSA規(guī)范的頂層文件,為它們規(guī)定了通用語(yǔ)言、高階魯棒性規(guī)則和模型。
DSM的基礎(chǔ)是威脅模型和安全分析針對(duì)使用案例提出的建議。雖然DSM與使用案例無(wú)關(guān),但其最初側(cè)重于幾個(gè)選定的物聯(lián)網(wǎng)使用案例。
DSM 包括三個(gè)主要方面:
1. 信任根和相關(guān)安全服務(wù)
2. 根秘密及其存儲(chǔ)、保護(hù)和初始化
3. 設(shè)備生命周期及其對(duì)信任根的影響
2.4.2 可信設(shè)備初始化
只有在根秘密和設(shè)備固件在安全生產(chǎn)過(guò)程的背景下初始化時(shí),安全和信任模型才有效。
生產(chǎn)過(guò)程延伸到設(shè)備管理,以便向服務(wù)提供商和設(shè)備所有者分配設(shè)備屬性和固件更新等。
這是一份資料性文件,它指出并討論了對(duì)基礎(chǔ)架構(gòu)和通用框架的一般需求,以促進(jìn)設(shè)備安全架構(gòu)中的這些過(guò)程并以及它們對(duì)信任根的依賴性。配置實(shí)際的工廠供應(yīng)和設(shè)備管理架構(gòu)應(yīng)當(dāng)由行業(yè)利益相關(guān)方負(fù)責(zé),或者使用類似 Arm Mbed Cloud 的設(shè)備來(lái)完成。
2.4.3 可信基礎(chǔ)系統(tǒng)架構(gòu)(TBSA)
Armv8-M的Arm可信基礎(chǔ)系統(tǒng)架構(gòu)((TBSA-M)是一系列SoC硬件要求。它適用于基于 Armv8-M的設(shè)計(jì),有助于研發(fā)更安全的設(shè)備。TBSA-M文件也能為計(jì)劃使用Armv7-M架構(gòu)實(shí)施安全設(shè)計(jì)的硅芯片制造商提供參考。
TBSA-M包含圍繞Armv8-M處理單元(PE)進(jìn)行系統(tǒng)設(shè)計(jì)時(shí)適用的最佳實(shí)踐安全原則。這些原則為設(shè)計(jì)和集成下列植根于硬件的功能特點(diǎn)提供支持:
信任根
受保護(hù)的密鑰庫(kù)
可信和不可信軟件組件的隔離
安全的固件更新機(jī)制
生命周期管理機(jī)制和安全的調(diào)試
高熵隨機(jī)數(shù)發(fā)生器;它對(duì)可靠的密碼必不可少
密碼編譯加速器,其作用是為適當(dāng)?shù)陌踩δ鼙3謱?shí)時(shí)功能性
固件框架(PSA-FF)實(shí)現(xiàn)最好能在TBSA-M兼容設(shè)計(jì)的頂層進(jìn)行,以便實(shí)現(xiàn)安全關(guān)鍵功能性和數(shù)據(jù)與應(yīng)用固件數(shù)據(jù)隔離的安全處理環(huán)境。這樣可以提高設(shè)備的可信度,即便出現(xiàn)可能被利用的軟件漏洞。
2.4.4 可信啟動(dòng)與固件更新
可信啟動(dòng)和固件更新規(guī)定了確保MCU啟動(dòng)的完整性所必須滿足的系統(tǒng)和固件技術(shù)要求。規(guī)范包括以下內(nèi)容:
經(jīng)過(guò)驗(yàn)證的啟動(dòng)過(guò)程以建立安全運(yùn)行時(shí)服務(wù)
安全的固件更新代理
固件更新的認(rèn)證和授權(quán)說(shuō)明,包含密碼證書和設(shè)備密鑰
有助于實(shí)現(xiàn)健壯性的建議和最佳實(shí)踐說(shuō)明
規(guī)范的范圍與A系列客戶端設(shè)備的可信主板引導(dǎo)要求(TBBR)類似。
2.4.5 固件框架(PSA-FF)
固件框架(FF)基于設(shè)備安全模型的要求,規(guī)定了用于在受限物聯(lián)網(wǎng)設(shè)備中隔離可信功能的標(biāo)準(zhǔn)接口和框架??蚣芴峁?/p>
為可信和不可信固件描述隔離運(yùn)行環(huán)境(分區(qū))的架構(gòu)
描述各個(gè)分區(qū)的功能和資源的標(biāo)準(zhǔn)模型
用于向其他分區(qū)請(qǐng)求服務(wù)的安全 IPC 接口
描述分區(qū)如何彼此進(jìn)行互動(dòng)的模型,以及硬件和固件框架實(shí)施本身
該規(guī)范能夠?qū)崿F(xiàn)安全固件功能性的開發(fā),可復(fù)用于符合固件框架實(shí)施的不同設(shè)備。
圖 3 顯示了這個(gè)框架的概況。
圖 3 – PSA 固件框架概況
2.4.5.1 安全分區(qū)與隔離
平臺(tái)安全架構(gòu)固件框架(PSA-FF)定義了三個(gè)許可的固件運(yùn)行隔離層級(jí)。這樣可以允許在高度受限的設(shè)備中減少隔離。與此同時(shí),還能在擁有充足的資源的平臺(tái)上增加安全性和魯棒性,并且為安全功能提供一致的固件接口。
PSA-FF將系統(tǒng)內(nèi)的執(zhí)行劃分為兩個(gè)分區(qū)——非安全處理環(huán)境(NSPE)和安全處理環(huán)境(SPE)。NSPE包含應(yīng)用固件、操作系統(tǒng)內(nèi)核和庫(kù),通??刂浦蟛糠州斎?輸出外圍設(shè)備。SPE包含安全固件和硬件資源,與 NSPE固件和非安全硬件資源隔離。
PSA-FF將SPE進(jìn)一步劃分為安全分區(qū)管理器(SPM)和安全分區(qū)。安全分區(qū)為安全功能提供執(zhí)行環(huán)境。SPM運(yùn)用隔離邏輯來(lái)分隔不同的分區(qū),由平臺(tái)硬件使用主側(cè)和/或從側(cè)過(guò)濾器執(zhí)行。例如,安全屬性單元(SAU)和存儲(chǔ)保護(hù)單元(MPU)可以在新的 Armv8-M平臺(tái)中使用。其他平臺(tái)可以使用其他機(jī)制來(lái)提供類似的分區(qū)隔離。
2.4.5.2 安全I(xiàn)PC
固件框架定義了基于安全會(huì)話的IPC機(jī)制,可以讓彼此隔離的分區(qū)中的固件進(jìn)行互動(dòng)。具體說(shuō)來(lái),IPC框架讓一個(gè)分區(qū)內(nèi)的固件可以通過(guò)標(biāo)準(zhǔn)接口向另一分區(qū)內(nèi)的固件請(qǐng)求服務(wù)。API要求由分區(qū)之間的框架來(lái)復(fù)制消息,進(jìn)而消除直接共享內(nèi)存帶來(lái)的脆弱性風(fēng)險(xiǎn)。
2.4.5.3 安全功能
PSA-FF 將安全性功能顯示為一系列安全功能。每一項(xiàng)安全功能都是安全分區(qū)中實(shí)施的一系列相關(guān)安全操作。每一個(gè)安全分區(qū)能夠支持多項(xiàng)安全功能。
不同的芯片合作伙伴可以為標(biāo)準(zhǔn)安全功能(SF)提供他們自己的插件實(shí)現(xiàn)。固件框架通過(guò)預(yù)定義的API和調(diào)用語(yǔ)義將SF實(shí)施抽離。芯片和其他合作伙伴也可以定義他們自己的安全功能實(shí)現(xiàn),以便提供針對(duì)平臺(tái)的服務(wù)或更高水平的安全服務(wù)。
有關(guān)固件框架的更多詳情見(jiàn) PSA 固件框架-M [PSA-FF] 規(guī)范。
2.4.6 可信功能
有些安全功能提供信任根服務(wù)(例如身份認(rèn)證),或者是信任根的使能(例如加密操作);這些安全功能被稱為“可信功能”??尚殴δ艿臉?biāo)準(zhǔn)接口將由PSA定義,例如:
安全認(rèn)證
安全存儲(chǔ)/數(shù)據(jù)封裝
加密操作
RNG 和安全時(shí)間服務(wù)
安全的固件更新
2.5 Trusted Firmware-M(TF-M)參考實(shí)現(xiàn)
Trusted Firmware-M是一個(gè)開源計(jì)劃,其作用是為基于M系列平臺(tái)的物聯(lián)網(wǎng)設(shè)備提供 PSA 固件規(guī)范的參考實(shí)現(xiàn)。TF-M 將公開托管在 GitHub 上,與目前針對(duì) Cortex-A 驅(qū)動(dòng)的移動(dòng)和翻蓋設(shè)備的 A 計(jì)劃 Arm Trusted Firmware 類似。其他生態(tài)系統(tǒng)合作伙伴可能提供其他實(shí)現(xiàn)。
TF-M將在 Armv8-M主線(Cortex M33)上處理PSA固件運(yùn)行隔離層級(jí)1,并將為更高層級(jí)的隔離類型提供更多支持。其他內(nèi)核將在今后進(jìn)行處理。
初始版本旨在提供:
SSE-200的受限PSA運(yùn)行隔離層級(jí)1的實(shí)施(Arm Musca-A1 測(cè)試芯片主板)
操作系統(tǒng)支持
- 初始版本主要針對(duì)Mbed操作系統(tǒng)
- RTX 被用于原型創(chuàng)建工作,發(fā)布時(shí)將提供有限支持
啟動(dòng)加載程序,為安全和非安全鏡像提供認(rèn)證啟動(dòng)
基于cmake和GNU工具鏈的跨平臺(tái)構(gòu)建系統(tǒng)
從一開始就支持的GCC和ARMCLANG編譯器
固件更新例子
2.6 生態(tài)系統(tǒng)使能
下面是開發(fā)中的生態(tài)系統(tǒng)使能支持工具:
Arm Cortex-M原型系統(tǒng)(MPS2和MPS3)以及Arm Musca-A1測(cè)試芯片主板,用于實(shí)現(xiàn)開發(fā)
Trusted Firmware-M:Armv8-M 平臺(tái)安全架構(gòu)的開源參考實(shí)施
Mbed操作系統(tǒng):基于MCU的物聯(lián)網(wǎng)設(shè)備的開源平臺(tái)操作系統(tǒng),針對(duì)所有Arm Cortex-M目標(biāo)提供PSA的優(yōu)化實(shí)施
Arm KEIL開發(fā)系統(tǒng),用于安全和非安全的軟件開發(fā)、調(diào)試和驗(yàn)證
圖 4 – 工具支持
3.安全評(píng)估與兼容性
兼容性有兩根軸:
1.功能性
2.魯棒性
功能性兼容指的是硬件和固件規(guī)范得到滿足,例如使用了正確的硬件組件并實(shí)現(xiàn)了預(yù)期的API功能。僅靠功能性兼容并不能得出滿足設(shè)備總體安全性要求的結(jié)論,還需要魯棒性這根軸。
Arm將為功能性硬件要求提供驗(yàn)證套件。Arm也可能為固件規(guī)范提供驗(yàn)證套件。
威脅模型和安全分析構(gòu)成魯棒性兼容的基礎(chǔ)。Arm正積極與合作伙伴共同確定評(píng)估價(jià)值鏈安全魯棒性的最佳方法,從硅芯片制造商到管理設(shè)備的物聯(lián)網(wǎng)云公司。
不只是Arm的物聯(lián)網(wǎng)安全性產(chǎn)品,所有根據(jù)PSA開發(fā)的產(chǎn)品也都將受益于Arm技術(shù)的基線安全魯棒性。
4.總結(jié)
平臺(tái)安全架構(gòu)(PSA)轉(zhuǎn)變了連接設(shè)備的安全經(jīng)濟(jì)學(xué)。
PSA將行業(yè)最佳實(shí)踐匯總成一整套架構(gòu)文件、安全分析和要求,并提供開源參考固件實(shí)現(xiàn)。
Arm的持續(xù)投入將在整個(gè)生態(tài)系統(tǒng)內(nèi)實(shí)現(xiàn)解決方案的持續(xù)發(fā)展、改進(jìn)和采用。我們將推出多種與PSA協(xié)同的硬件安全解決方案,以提供必要的安全魯棒性。例如,PSA將與多種Arm微控制器和系統(tǒng)IP協(xié)同工作,包括 Arm TrustZone CryptoCell。
通過(guò)減少低級(jí)別安全碎片,Arm旨在建立服務(wù)于所有人的安全生態(tài)系統(tǒng),包括芯片合作伙伴、OEM、平臺(tái)所有者、服務(wù)提供商、消費(fèi)者和更廣大的開發(fā)者群體。我們邀請(qǐng) Arm 生態(tài)系統(tǒng)在PSA和Trusted Firmware-M的基礎(chǔ)上開展并擴(kuò)大我們的工作。
我們計(jì)劃在2017年第四季度為NDA合作伙伴提供開源計(jì)劃的有限訪問(wèn)權(quán)限。全面訪問(wèn)將在2018年初開放。