背景
十多年來,TrustZone 一直在基于 Arm 的設(shè)備上成功保護(hù)媒體 pipelines 。在此期間,這些設(shè)備的要求隨著比特率、分辨率、幀率、圖像質(zhì)量和用戶界面創(chuàng)新而顯著增長。所有這些都在突破最初的設(shè)計(jì)限制。
與此同時(shí),近年來,許多消費(fèi)類設(shè)備都經(jīng)歷了重大變革。他們正在從專用于單一服務(wù)的封閉設(shè)備轉(zhuǎn)向兼容多種服務(wù)的開放設(shè)備。例如,電視不再僅用于觀看廣播電視頻道。可安裝的應(yīng)用程序現(xiàn)在提供多種流媒體服務(wù)、瀏覽器、游戲、視頻通話等。
滿足這些用例會增加計(jì)算工作負(fù)載的復(fù)雜性和系統(tǒng)安全要求。在安全方面,我們看到多個(gè)數(shù)字版權(quán)管理 (DRM) 方案同時(shí)處于活動(dòng)狀態(tài),并且它們之間存在不信任,因?yàn)樗鼈兲幚韥碜跃哂胁煌踩蠹墑e的不同來源的受保護(hù)內(nèi)容。這種對額外靈活性的需求推動(dòng)了軟件管理媒體 pipelines 的設(shè)計(jì)。
同時(shí),內(nèi)容提供商正在通過提高圖像質(zhì)量來提高性能要求。這增加了 pipelines 的處理步驟數(shù)量,并大大增加了設(shè)備上的內(nèi)存消耗。 對高效內(nèi)存使用的需求正在推動(dòng)設(shè)計(jì)用于動(dòng)態(tài)分配受保護(hù)內(nèi)存的機(jī)制 。
動(dòng)態(tài) Trustzone
這就是 Arm 推出動(dòng)態(tài) TrustZone 的原因,這是一種創(chuàng)新的新設(shè)計(jì)模式,它是 TrustZone 系統(tǒng)演進(jìn)道路上的下一步。該技術(shù)使用 Realm Management Extension (RME) 來提供一種架構(gòu)機(jī)制,以在運(yùn)行時(shí)在非安全和安全地址空間之間分配內(nèi)存頁面。
當(dāng)應(yīng)用于受保護(hù)的媒體 pipelines 時(shí),動(dòng)態(tài) TrustZone 支持從今天的固定功能視頻管道遷移到未來軟件配置的動(dòng)態(tài)媒體 pipelines。將動(dòng)態(tài) TrustZone 與安全虛擬化相結(jié)合的系統(tǒng)將支持軟件配置的 pipelines、多個(gè)不信任 DRM、可選的機(jī)器學(xué)習(xí) (ML) 加速器和動(dòng)態(tài)資源分配。
然而,這些未來媒體管道的實(shí)際設(shè)計(jì)和實(shí)施需要整個(gè)生態(tài)系統(tǒng)的支持和參與。這超越了硬件,更廣泛的生態(tài)系統(tǒng)的參與對于支持這些苛刻的新用戶體驗(yàn)所需的所有軟件組件和服務(wù)的接受和成功開發(fā)至關(guān)重要。
典型的安全媒體示例
在深入研究動(dòng)態(tài) TrustZone 之前,我們需要首先會議當(dāng)今常見的媒體 pipelines。在 Arm 系統(tǒng)中實(shí)施的受保護(hù)媒體 pipelines 往往遵循 TrustZone 媒體保護(hù) (TZMP) 定義的模式,如下圖所示:
這些系統(tǒng)有一些共同的特點(diǎn)和局限性:
- 固定的數(shù)據(jù)流和一組處理步驟,由特定于設(shè)備的軟件或在 SoC 設(shè)計(jì)時(shí)定義。每個(gè)處理元件通常被限制為讀取和寫入預(yù)先確定的受保護(hù)內(nèi)存緩沖區(qū),并且不允許任意添加和刪除設(shè)備。將完全可編程的 GPU 和 ML 引擎引入流水線可能從不可能到具有挑戰(zhàn)性。
- 受保護(hù)內(nèi)容的受保護(hù)內(nèi)存緩沖區(qū)的物理地址空間是連續(xù)的和預(yù)先分配的,或者是由受信任的管理程序分段和管理的。由于視頻播放是許多設(shè)備的主要用例并且絕不能丟幀,因此不能與其他系統(tǒng)進(jìn)程共享所使用的內(nèi)存。隨著分辨率和幀速率的提高,對內(nèi)存要求的壓力也隨之增加,從而推高了整體系統(tǒng)成本。
- 在要同時(shí)處理多個(gè)內(nèi)容流的情況下,需要考慮它們之間的隔離。由于不同的安全要求,可能無法同時(shí)使用不同的 DRM 方案。
為了克服這些限制,我們確定未來受保護(hù)的媒體系統(tǒng)需要能夠:
- 使用碎片化的 4KB 頁面動(dòng)態(tài)分配和管理受保護(hù)的內(nèi)存緩沖區(qū)。
- 在多個(gè)管道和所有其他軟件之間提供強(qiáng)大且安全的隔離。
- 將設(shè)備和軟件功能任意分配給 pipelines 。
- 允許運(yùn)行時(shí)主機(jī)軟件按需創(chuàng)建和配置 pipelines 。
新的 Arm 安全和架構(gòu)功能
在過去的十年中,Arm 一直在對 TrustZone 進(jìn)行定期增強(qiáng),以滿足不斷變化的安全要求。在宣布 Armv9 架構(gòu) (Armv9-A) 之前,我們通過添加安全虛擬化增強(qiáng)了 TrustZone 系統(tǒng)。在 Armv9-A 中,引入了 Realm Management Extension (RME) 作為 Arm 機(jī)密計(jì)算架構(gòu)的一部分。
通過添加這些新的安全功能,現(xiàn)在有一個(gè)完整的集合,使系統(tǒng)設(shè)計(jì)人員能夠?qū)崿F(xiàn)未來受保護(hù)的媒體管道。讓我們更深入地研究這些增強(qiáng)功能。
Secure virtualization
首先,讓我們看看安全虛擬化。引入此功能是為了進(jìn)一步劃分安全世界,以允許存在多個(gè)可信操作系統(tǒng) (TOS),隔離安全固件,此外還提供對 TOS 訪問非安全內(nèi)存的限制。
安全虛擬化通過在 TrustZone 環(huán)境中創(chuàng)建安全虛擬機(jī)來實(shí)現(xiàn)。安全世界中的這些虛擬機(jī)實(shí)例,通常稱為 “安全分區(qū)”,使用第 2 階段內(nèi)存轉(zhuǎn)換和保護(hù)相互隔離。當(dāng)然,由于處于安全世界中,它們與非安全世界完全隔離。安全虛擬化是通過以下架構(gòu)特性實(shí)現(xiàn)的:
- Secure-EL2 是在 Armv8.4 架構(gòu)中引入的,它是為執(zhí)行隔離管理程序而創(chuàng)建的 CPU 異常級別,稱為 “安全分區(qū)管理器”(SPM)。SPM 的作用是創(chuàng)建和管理多個(gè) 不信任安全分區(qū) S-EL2 使用第 2 階段內(nèi)存轉(zhuǎn)換和保護(hù)來強(qiáng)制分區(qū)之間的隔離。
- SMMUv3.2 擴(kuò)展了 Arm System MMU 架構(gòu),以支持系統(tǒng)中安全設(shè)備的安全第 2 階段轉(zhuǎn)換和保護(hù)。隔離管理程序可以將系統(tǒng)設(shè)備分配到安全分區(qū)的內(nèi)存空間中。
- GICv3.1 通用中斷控制器包括對 S-EL2 的支持。來自安全系統(tǒng)設(shè)備的虛擬中斷可以分配給安全分區(qū)。
我們應(yīng)該注意到,在實(shí)踐中,將安全設(shè)備分配給安全分區(qū)需要的不僅僅是內(nèi)存與 SMMU 的映射以及 GIC 的中斷。每個(gè)設(shè)備都必須在其操作狀態(tài)方面表現(xiàn)良好,并支持標(biāo)準(zhǔn)管理界面,以便可以在系統(tǒng)內(nèi)安全、正確地對其進(jìn)行管理。
Realm Management Extension (RME)
作為 Arm 機(jī)密計(jì)算架構(gòu)的一部分,Armv9-A 中的 RME 使內(nèi)存頁面能夠從非安全世界動(dòng)態(tài)轉(zhuǎn)換到安全世界,然后再返回。這就是將 “動(dòng)態(tài)” 放入動(dòng)態(tài) TrustZone 的原因。
RME 的一個(gè)稱為 “Granule Protection Check” (GPC) 的組件提供了在非安全和安全世界之間動(dòng)態(tài)分配內(nèi)存的機(jī)制。Granule Protection table (GPT) 記錄了 DRAM 每 4K 字節(jié)頁面的世界分配。該表由 EL3 固件擁有和更新。在運(yùn)行時(shí),每次內(nèi)存訪問都由 GPC 針對 GPT 進(jìn)行驗(yàn)證,確保 Non-secure 狀態(tài)只能訪問 Non-secure 內(nèi)存,而 Secure 狀態(tài)只能訪問 Secure 和 Non-secure 內(nèi)存。此檢查是對 MMU 已經(jīng)進(jìn)行的 stage-1 和 stage-2 轉(zhuǎn)換和權(quán)限檢查的補(bǔ)充。
然后,基于 RME 構(gòu)建的機(jī)密計(jì)算架構(gòu)提供以下附加功能,可以增強(qiáng)動(dòng)態(tài) TrustZone 解決方案:
- EL3 monitor 的固件分區(qū)和隔離,用于提供更強(qiáng)大的信任根 (RoT) 和證明服務(wù)。
- 通過內(nèi)存保護(hù)引擎對安全分配的 DRAM 中的所有數(shù)據(jù)進(jìn)行加密。
Media Pipelines with Dynamic TrustZone
先前概述的架構(gòu)特性允許系統(tǒng)設(shè)計(jì)人員遷移到具有多個(gè)軟件定義的受保護(hù)媒體 pipelines 的動(dòng)態(tài) TrustZone 技術(shù)解決方案。它看起來像這樣:
(1)、Secure virtualization
如綠框所示,安全虛擬化用于為每個(gè) pipelines 創(chuàng)建受保護(hù)的內(nèi)存空間。設(shè)備分配將系統(tǒng)設(shè)備(藍(lán)色)帶入管道,內(nèi)存緩沖區(qū)(黑色)通過 GPT 機(jī)制分配給安全世界。在使用過程中,所有解密的媒體內(nèi)容都保留在安全世界中。
(2)、Non-secure world
這包含媒體播放器和應(yīng)用程序的用戶界面。該軟件負(fù)責(zé)按需為每個(gè)媒體 pipelines 構(gòu)建清單,并在過渡到安全世界之前為其分配資源,例如內(nèi)存和系統(tǒng)設(shè)備。
(3)、Secure Media Pipeline 1
本例中的 Pipeline 1 正在處理受保護(hù)的音頻。處理步驟可由硬件設(shè)備或軟件編解碼器執(zhí)行。一個(gè)例子是高級環(huán)繞聲流,它使用專有編解碼器來處理高價(jià)值的基于對象的音頻內(nèi)容。
(4)、Secure Media Pipeline 2
Pipeline 2 可以是 8K 優(yōu)質(zhì)內(nèi)容電影,具有嚴(yán)格的 DRM 要求和穩(wěn)健性規(guī)則,可確保視頻和音頻流與系統(tǒng)上的任何其他代理隔離。由于 8K 分辨率視頻對其緩沖區(qū)的內(nèi)存要求非常高,這可能是電視等設(shè)備的主要用例。非安全主機(jī)操作系統(tǒng)可能會主動(dòng)從其他應(yīng)用程序回收內(nèi)存,以便在初始化播放時(shí)可以動(dòng)態(tài)分配這些受保護(hù)的緩沖區(qū)。
解密步驟將使用專用加密加速器,解碼專用視頻引擎。例如,圖片質(zhì)量步驟可以由分配給該流水線的高性能 ML 引擎執(zhí)行。
(5)、Secure Media Pipeline 3
Pipeline 3 可能是畫中畫新聞報(bào)道,可能具有與 Pipeline 2 不同的 DRM 系統(tǒng)。當(dāng)啟用流時(shí),可以為該管道的受保護(hù)緩沖區(qū)動(dòng)態(tài)分配內(nèi)存,而不會中斷 Pipeline 2。
(6)、Secure Media Output
最后,完全呈現(xiàn)的受保護(hù)內(nèi)容被輸出到顯示面板或安全的 HDMI Link。
生態(tài)系統(tǒng)協(xié)作
動(dòng)態(tài) TrustZone 是提供多租戶安全媒體 pipeline 的絕佳工具。完全不受操作系統(tǒng)、虛擬機(jī)管理程序和正常世界中任何可安裝應(yīng)用程序影響的 pipeline 。該解決方案還允許在正常環(huán)境中部署標(biāo)準(zhǔn)管理程序,而無需更改它們以支持 DRM。
但是,設(shè)計(jì)多租戶安全媒體 pipeline 需要整個(gè)生態(tài)系統(tǒng)的支持和參與。這超出了硬件本身,因?yàn)槎嘧鈶舭踩襟w管道可能會帶來策略挑戰(zhàn),尤其是當(dāng)兩個(gè)不同的流媒體視頻提供商對如何執(zhí)行策略有不同的要求時(shí)。因此,受保護(hù)媒體管道的靈活性為細(xì)粒度信令和安全策略檢查提供了機(jī)會,例如水印、元數(shù)據(jù)傳輸和內(nèi)容識別,僅舉幾例。
可以通過 Content Delivery and Security Association (CDSA)、芯片供應(yīng)商、OEM、OTT 服務(wù)提供商、內(nèi)容創(chuàng)建者等行業(yè)組織來實(shí)現(xiàn)與生態(tài)系統(tǒng)的互動(dòng)。他們都為對話帶來了獨(dú)特的觀點(diǎn)和專業(yè)知識,通過這種協(xié)作努力為全球數(shù)百萬用戶帶來了更豐富的媒體體驗(yàn)。
在 Arm,我們希望與我們偉大的生態(tài)系統(tǒng)合作,以解決我們共同構(gòu)建的設(shè)備上的許多安全挑戰(zhàn)。使用動(dòng)態(tài) TrustZone 的工作是可以在 Arm 生態(tài)系統(tǒng)內(nèi)進(jìn)行的安全合作的一個(gè)很好的例子。
-
ARM技術(shù)
+關(guān)注
關(guān)注
0文章
22瀏覽量
7367 -
DRM
+關(guān)注
關(guān)注
0文章
46瀏覽量
15148 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8441瀏覽量
133091 -
trustzone
+關(guān)注
關(guān)注
0文章
20瀏覽量
12565 -
GPU芯片
+關(guān)注
關(guān)注
1文章
303瀏覽量
5898
發(fā)布評論請先 登錄
相關(guān)推薦
MDMF304L1C9M-MINAS A6N系列 介紹 松下
![MDMF304L1C<b class='flag-5'>9</b>M-MINAS A6N系列 <b class='flag-5'>介紹</b> 松下](https://file1.elecfans.com/web2/M00/A9/42/wKgaomUwmYKAXjWEAAAsCdY_muE289.png)
基于Armv9架構(gòu)的MediaTek天璣8400移動(dòng)芯片問世
ARM技術(shù)是什么?國內(nèi)有哪些ARM廠家呢?一起來了解一下!
Armv9 CPU中SVE2的實(shí)際用例
![<b class='flag-5'>Armv9</b> CPU中SVE2的實(shí)際用例](https://file1.elecfans.com/web1/M00/F3/52/wKgZoWcVtL2AOSH_AAAVcpx7BHE191.png)
傳感器的動(dòng)態(tài)特性和靜態(tài)特性參數(shù)介紹
跨越地理限制:動(dòng)態(tài)海外住宅IP技術(shù)引領(lǐng)全球化網(wǎng)絡(luò)新紀(jì)元
在實(shí)際開發(fā)中,動(dòng)態(tài)代理技術(shù)都是如何應(yīng)用的?
一文弄懂實(shí)時(shí)動(dòng)態(tài)載波相位差分技術(shù)和偽距差分技術(shù)的區(qū)別
![一文弄懂實(shí)時(shí)<b class='flag-5'>動(dòng)態(tài)</b>載波相位差分<b class='flag-5'>技術(shù)</b>和偽距差分<b class='flag-5'>技術(shù)</b>的區(qū)別](https://file1.elecfans.com/web2/M00/01/01/wKgaomasUb2AVKmSAAFveOLBGO0676.png)
simulink動(dòng)態(tài)系統(tǒng)建模仿真-第9章
一文詳解動(dòng)態(tài)多點(diǎn)VPN技術(shù)
STM32H5和STM32U5在trustzone上有哪些不同?
移動(dòng)端芯片性能提升,Armv9架構(gòu)新升級引發(fā)關(guān)注
M9航空連接器8針動(dòng)態(tài)接觸電阻
![M<b class='flag-5'>9</b>航空連接器8針<b class='flag-5'>動(dòng)態(tài)</b>接觸電阻](https://file1.elecfans.com/web2/M00/C7/F4/wKgZomYXl0KAAFL_AADOko-X4qc742.png)
STM32H5 DA 之初體驗(yàn)(帶 TrustZone)
![STM32H5 DA 之初體驗(yàn)(帶 <b class='flag-5'>TrustZone</b>)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論