99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

Arm? TrustZone? 技術(shù)簡介

嵌入式USB開發(fā) ? 來源:嵌入式Lee ? 作者:嵌入式Lee ? 2023-07-04 08:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一.前言

本文對TrustZone 進行簡單的介紹,不涉及具體的技術(shù)細節(jié),旨在有一個概念性的感性的理解,后面有機會再分享幾篇更詳細的技術(shù)細節(jié)介紹和實際應用案例。

本文后續(xù)內(nèi)容以瑞薩的RA系列為例,不同廠家芯片可能不同需要參考對應的手冊。

二.TrustZone介紹

Arm TrustZone 技術(shù)是Armv8-M 架構(gòu)一個可選的架構(gòu)擴展。

其核心思想就是樸素的硬件隔離思想,系統(tǒng)和軟件劃分為安全區(qū)域和非安全區(qū)域,安全軟件可以訪問安全和非安全存儲器和資源,而非安全軟件只能訪問非安全存儲器和資源。安全與非安全狀態(tài)與現(xiàn)有的線程和處理模式組合,即有四種處理器狀態(tài),如下所示:

e20b8f5c-1a03-11ee-9c1d-dac502259ad0.png

系統(tǒng)實現(xiàn)了安全擴展,則系統(tǒng)默認以安全狀態(tài)啟動的,即啟動時是無所不能的,一般此時對應bootrom完全相關工作,然后跳轉(zhuǎn)到用戶非安全程序運行。如果未實現(xiàn)安全擴展,則系統(tǒng)始終處于非安全狀態(tài)。

注意安全是一個系統(tǒng)工程,Arm TrustZone只是提供了一種實現(xiàn)安全的隔離技術(shù),并未包括安全的所有方面,比如他就不涉及加密等,也并不是說使用Arm TrustZone就安全了,安全是需要系統(tǒng)考慮的,任何一處不安全整個系統(tǒng)就不安全,符合木桶原理。打個比方,武俠小說中很牛逼的反派人物,練就了金鐘罩鐵布衫刀槍不入,但是往往會有一個弱點就是比如足下或者腋下很脆弱,這就不是安全系統(tǒng),木桶原理導致其很容易從非安全處被攻破,所以最后大決戰(zhàn)階段正派一開始被暴擊,最后快要掛了時,對準反派的弱點比如足下一擊,立馬KO。所以安全的考慮要系統(tǒng)的考慮,而不僅僅是考慮使用一種什么技術(shù),及你就能考慮處理器就可以達到的。

三.關鍵組件

隔離的目的就是要隔離關鍵組件(資源),使得其受保護,不能被非信任軟件直接訪問,避免被攻擊。

關鍵組件包括以下內(nèi)容:

l安全自舉程序,即前面提到的bootrom程序,因為系統(tǒng)啟動默認是安全狀態(tài)的(能不能啟動時不是安全狀態(tài)呢?不能,如果此時不是安全狀態(tài)則沒法配置安全資源,沒法進行初始化配置,所以啟動時必須是安全狀態(tài),此時無所不能)。所以啟動程序要保證受保護,不會被攻破。

l密鑰,這個不用說,密鑰肯定是要保證不能被非法獲取的,否則別人有了你家的鑰匙,你再牛逼的防盜門也沒啥用。

l閃存編程支持,這也很重要,因為程序最終是要寫入FLASH的,如何保證程序燒錄的安全,不被篡改,不燒錄非授信程序等都是保證安全的前提。

l高價值資產(chǎn),其他的,比如用戶信息數(shù)據(jù)等都是需要受保護的。

e22a2e58-1a03-11ee-9c1d-dac502259ad0.png

四.安全系統(tǒng)

要構(gòu)建安全硬件平臺,安全注意事項不僅僅要考慮處理器級別,而是需要考慮系統(tǒng)級別,所以一再強調(diào)的是系統(tǒng)安全,而不是處理器安全,主要包括:

存儲器系統(tǒng)

總線系統(tǒng)

外設

調(diào)試系統(tǒng)等。

4.1存儲器系統(tǒng)

前面提到了TrustZone 技術(shù)的核心是隔離,所以針對存儲器系統(tǒng)就是劃分不同的區(qū)域?qū)煌膶傩浴4a閃存、數(shù)據(jù)閃存和 SRAM 分為 安全 (S)、非安全 (NS) 和非安全可調(diào)用 (NSC) 區(qū)域,比如瑞薩的RA系列MCU這個劃分是通過IDAU控制的。

如下圖所示:

代碼閃存和SRAM都可以執(zhí)行程序所以有非安全可調(diào)用區(qū)域,而數(shù)據(jù)閃存不可執(zhí)行程序只有非安全和安全區(qū)域之分。

e240c46a-1a03-11ee-9c1d-dac502259ad0.png

當器件生命周期為安全軟件開發(fā) (SSD) 狀態(tài)時,可通過使用串行編程命令將這些存儲器安全屬性編程到非易失性存儲器中。

安全區(qū)域,執(zhí)行安全程序,具備最高權(quán)限可以訪問所有資源。

安全地址用于只能由安全代碼或安全 master 訪問的內(nèi)存和外設。安全事務是那些由 master 發(fā)起并在安全狀態(tài)下運行的事務。

非安全區(qū)域,執(zhí)行非安全程序,只能訪問非安全資源,也可以調(diào)用非安全可調(diào)用區(qū)域API,執(zhí)行一些安全程序的接口。

非安全地址用于設備上運行的所有軟件均可訪問的內(nèi)存和外設。非?安全事務源自以非安全方式運行的 master或訪問非安全地址的安全 master(僅數(shù)據(jù)事務,非獲取指令)。僅允許非安全事務訪問非?安全地址。非安全事務不能訪問安全地址。

非安全可調(diào)用區(qū)域NSC,即中間地帶,提供非安全程序可調(diào)用的安全API。

NSC 是一種特殊類型的安全位置。這種類型的內(nèi)存是 Armv8-M 處理器允許為其保留 SG(安全門)指令的唯一類型,該指令允許軟件從非安全狀態(tài)轉(zhuǎn)為安全狀態(tài)。該 SG 指令可用于防止非安全應用程序從分支進入無效入口點。

當非安全代碼調(diào)用安全端函數(shù)時:

– API 中的第一條指令必須是 SG 指令。

– SG 指令必須在 NSC 區(qū)域內(nèi)。

安全代碼還提供非安全可調(diào)用函數(shù),為非安全代碼提供安全服務訪問。

基于 TrustZone 區(qū)域 的代碼和數(shù)據(jù)閃存安全功能

從非安全區(qū)域讀取代碼和數(shù)據(jù)閃存區(qū)域?qū)⑸?TrustZone 安全故障。

代碼和數(shù)據(jù)閃存 編程和擦除 (P/E) 模式入口可以配置為僅通過安全軟件實現(xiàn),也可以配置為通過安全和非安全軟件實現(xiàn)。默認情況下,MCU 將代碼和數(shù)據(jù)閃存 P/E 功能配置為僅通過安全軟件實現(xiàn)。閃存驅(qū)動程序可以置于安全分區(qū) 中,并且可以配置為非安全可調(diào)用,以允許非安全應用程序執(zhí)行閃存 P/E 操作。

支持安全區(qū)域和非安全區(qū)域的臨時和永久閃存塊保護。

SRAM

SRAM 存儲器可以通過存儲器安全屬性 (MSA) 分為安全/非安全 可調(diào)用/非安全狀態(tài),并且可以防止非安全訪問。當 MSA 指示 SRAM 存儲區(qū)域處于安全或非安全可調(diào)用狀態(tài) 時,非安全訪問無法覆寫它們。

4.2總線系統(tǒng)

DMA 控制器和數(shù)據(jù)傳輸控制器

直接存儲器訪問控制器 (DMAC) 和數(shù)據(jù)傳輸控制器 (DTC) 由主 TrustZone 過濾器監(jiān)控。在訪問總線之前,會提 前檢測閃存和 SRAM 的 TrustZone 違例區(qū)域。DMAC 和 DTC 中的主 TrustZone 過濾器可以檢測 IDAU 定義的閃 存區(qū)域(代碼閃存和數(shù)據(jù)閃存)和 SRAM 區(qū)域的安全區(qū)域。當非安全通道訪問這些地 址時,主 TrustZone 過濾器會檢測到安全違例,不允許訪問違例地址。

以太網(wǎng)DMA控制器

EDMAC RAM 緩沖區(qū)置于 TrustZone 的非安全 RAM 中。EDMAC 被硬編碼為 TrustZone 非安 全總線主器件。這些硬件特性允許以下兩個以太網(wǎng)程序分區(qū)選項:

在安全區(qū)域中運行以太網(wǎng)程序 ,在非安全區(qū)域中放置 EDMAC RAM 緩沖區(qū)

在非安全區(qū)域中運行以太網(wǎng)程序 EDMAC RAM 緩沖區(qū)。

MPU

總線主 MPU 可用于除 CPU 外的每個總線主器件的存儲器保護功能。安全軟件可以設置總線主 MPU 的安全 屬性。

4.3外設

MCU 中的大多數(shù)外設都可以配置為安全或非安全,但CS 區(qū)域控制器、QSPI、OSPI、ETHERC 和 EDMAC始終是非安全。

外設分為兩種類型。 類型 1 外設具有一種安全屬性,對所有寄存器的訪問由一種安全屬性控制。安全應用程序?qū)㈩愋?1 外設安 全屬性設置到外設安全屬性寄存器(PSARx:x = B 至 E)。外設的不同通道可以采用不同的安全屬性。例如,UART 通道 0 和通道 1 可以具有不同的安全或非安 全屬性。

類型 2 外設具有每個寄存器或每個位的安全屬性,根據(jù)這些安全屬性控制對每個寄存器或位域的訪問。安 全應用程序?qū)㈩愋?2 外設安全屬性設置到每個模塊中的安全屬性寄存器。

總結(jié)一下就是外設類型1顆粒度更大,所有寄存器一起控制安全屬性,類型2顆粒度更小。

e25b1496-1a03-11ee-9c1d-dac502259ad0.png

時鐘生成電路針對每個時鐘樹控制都有單獨的安全屬性??墒褂靡幌聲r鐘控制方案。

整個時鐘樹僅通過安全項目進行控制,在非安全項目中被鎖定。

整個時鐘樹可通過非安全項目和安全項目進行控制。

4.4調(diào)試系統(tǒng)

開發(fā)階段希望有更強大的調(diào)試功能,以方便進行各種調(diào)試分析,而發(fā)布階段希望關閉調(diào)試功能以放置通過調(diào)試系統(tǒng)被攻破。所以調(diào)試功能分為了不同級別

調(diào)試功能分為 DBG0、DBG1 和 DBG2 三個級別,以 對支持 TrustZone 技術(shù)的調(diào)試功能提供支持,并為開發(fā)、生產(chǎn)和部署的產(chǎn)品提供安全性。

DBG2:允許調(diào)試器連接,無限制訪問存儲器和外設。

DBG1:允許調(diào)試器連接,但僅限訪問非安全存儲區(qū)域和外設

DBG0:不允許調(diào)試器連接

調(diào)試級別根據(jù)產(chǎn)品的器件生命周期狀態(tài)確定。通過器件生命周期管理系統(tǒng)可以實現(xiàn)調(diào)試級別的回退。

五.器件生命周期管理

使用 TrustZone 技術(shù)功能和安全加密引擎 9 (SCE9) 實現(xiàn)增強型器件 生命周期管理系統(tǒng)。器件生命周期管理在啟用 TrustZone 技術(shù)的應用程序開發(fā)、生產(chǎn)和部署階段非常重要,主要實現(xiàn)以下功能:

根據(jù)器件生命周期狀態(tài)定義和切換,在開發(fā)和生產(chǎn)階段創(chuàng)建、安 裝和使用器件生命周期管理密鑰等。

六.參考

《TrustZone technology for Armv8-M Architecture Version 2.1》

《Renesas RA Family Security Design with Arm TrustZone - IP Protection》

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19858

    瀏覽量

    234321
  • 存儲器
    +關注

    關注

    38

    文章

    7644

    瀏覽量

    166915
  • trustzone
    +關注

    關注

    0

    文章

    22

    瀏覽量

    12670
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Arm 公司面向 PC 市場的 ?Arm Niva? 深度解讀

    面向 PC 市場的 ? Arm Niva ? 深度解讀 ? Arm Niva ? 是 Arm 公司為 PC 市場推出的核心計算平臺,屬于其“平臺優(yōu)先”戰(zhàn)略的關鍵布局。作為 ? Arm
    的頭像 發(fā)表于 05-29 09:56 ?576次閱讀

    【直播預告】《實時操作系統(tǒng)應用技術(shù)—基于RT-Thread與ARM的編程實踐》教學脈絡及資源簡介

    直播預告直播主題:《實時操作系統(tǒng)應用技術(shù)—基于RT-Thread與ARM的編程實踐》教學脈絡及資源簡介開放時間:2025年5月29日(周四)20:00主講老師:王宜懷課程類型:視頻直播觀看平臺
    的頭像 發(fā)表于 05-26 17:50 ?274次閱讀
    【直播預告】《實時操作系統(tǒng)應用<b class='flag-5'>技術(shù)</b>—基于RT-Thread與<b class='flag-5'>ARM</b>的編程實踐》教學脈絡及資源<b class='flag-5'>簡介</b>

    藍牙LE Audio技術(shù)簡介和優(yōu)勢分析

    Energy)技術(shù)的優(yōu)點,同時又具備卓越的音頻性能。本文將從技術(shù)簡介和優(yōu)勢分析兩個方面對藍牙LE Audio技術(shù)進行詳細的介紹。 一、藍牙LE Audio
    的頭像 發(fā)表于 05-21 16:08 ?493次閱讀

    RA8T1基于480MHz Arm Cortex-M85、搭載Helium和TrustZone的電機控制微控制器技術(shù)手冊

    RA8T1 系列 32 位微控制器 (MCU) 基于高達 480MHz 的 Arm^?^ Cortex-M85^?^ 內(nèi)核,采用 Helium? 技術(shù)TrustZone ^?^ ,并提供針對電機
    的頭像 發(fā)表于 05-15 17:17 ?248次閱讀
    RA8T1基于480MHz <b class='flag-5'>Arm</b> Cortex-M85、搭載Helium和<b class='flag-5'>TrustZone</b>的電機控制微控制器<b class='flag-5'>技術(shù)</b>手冊

    Arm精銳超級分辨率技術(shù)助力提升游戲性能

    去年夏天,Arm 推出了 Arm 精銳超級分辨率技術(shù) (Arm Accuracy Super Resolution, Arm ASR) 的早
    的頭像 發(fā)表于 04-21 13:52 ?407次閱讀
    <b class='flag-5'>Arm</b>精銳超級分辨率<b class='flag-5'>技術(shù)</b>助力提升游戲性能

    TrustZone介紹及用途

    TrustZoneArm開發(fā)的一項核心技術(shù),作為Armv8-M架構(gòu)的一部分,通過強制硬件隔離提供系統(tǒng)級安全措施。TrustZone要求在軟件中劃分安全和非安全MCU區(qū)域?qū)倪壿嫹謪^(qū)
    的頭像 發(fā)表于 04-08 09:47 ?527次閱讀
    <b class='flag-5'>TrustZone</b>介紹及用途

    用STM32Cubeprogrammer燒錄TrustZone的示范程序不成功怎么解決?

    最近測試STM32U575 的TrustZone 保護機制。 用STM32Cubeprogrammer 2.17.0 燒錄已編譯好的以下地址的TrustZone 的HEX 文件
    發(fā)表于 03-07 08:28

    Arm 技術(shù)預測:2025 年及未來的技術(shù)趨勢

    Arm 不斷思考著計算的未來。無論是最新架構(gòu)的功能,還是用于芯片解決方案的新技術(shù),Arm 所創(chuàng)造和設計的一切都以未來技術(shù)的使用和體驗為導向。 憑借在
    發(fā)表于 01-14 16:43 ?283次閱讀
    <b class='flag-5'>Arm</b> <b class='flag-5'>技術(shù)</b>預測:2025 年及未來的<b class='flag-5'>技術(shù)</b>趨勢

    屏蔽柵MOSFET技術(shù)簡介

    繼上一篇超級結(jié)MOSFET技術(shù)簡介后,我們這次介紹下屏蔽柵MOSFET。
    的頭像 發(fā)表于 12-27 14:52 ?2643次閱讀
    屏蔽柵MOSFET<b class='flag-5'>技術(shù)</b><b class='flag-5'>簡介</b>

    利用Arm Kleidi技術(shù)實現(xiàn)PyTorch優(yōu)化

    PyTorch 是一個廣泛應用的開源機器學習 (ML) 庫。近年來,Arm 與合作伙伴通力協(xié)作,持續(xù)改進 PyTorch 的推理性能。本文將詳細介紹如何利用 Arm Kleidi 技術(shù)提升 A
    的頭像 發(fā)表于 12-23 09:19 ?1002次閱讀
    利用<b class='flag-5'>Arm</b> Kleidi<b class='flag-5'>技術(shù)</b>實現(xiàn)PyTorch優(yōu)化

    ARM技術(shù)是什么?國內(nèi)有哪些ARM廠家呢?一起來了解一下!

    (AArch64)。這使得ARM處理器能夠兼容更多的軟件和應用,提高系統(tǒng)的靈活性和兼容性。 二、ARM技術(shù)發(fā)展歷程 ARM架構(gòu)經(jīng)歷了多個版本的迭代,不斷提升性能和功能。以下是幾個主要版
    發(fā)表于 11-18 16:35

    Arm Tech Symposia年度技術(shù)大會即將來襲

    Arm Tech Symposia 年度技術(shù)大會將于下月登陸上海與深圳兩地,小編迫不及待想與各位 Arm 新朋老友線下相見!上周為大家預告了上午主題演講的大咖陣容,本期將來細說下午各大技術(shù)
    的頭像 發(fā)表于 11-01 13:56 ?665次閱讀

    Arm精銳超級分辨率技術(shù)解析

    近日,Arm 推出了 Arm 精銳超級分辨率技術(shù) (Arm Accuracy Super Resolution, Arm ASR),這是一款
    的頭像 發(fā)表于 09-03 11:28 ?1341次閱讀
    <b class='flag-5'>Arm</b>精銳超級分辨率<b class='flag-5'>技術(shù)</b>解析

    STM32H5和STM32U5在trustzone上有哪些不同?

    我要做空調(diào)的空中升級FOTA的方案,需要加密,對于trustzone功能,采用那款芯片比較合適?STM32H5和STM32U5在trustzone上有哪些不同?
    發(fā)表于 07-05 07:03

    請問STM32L5和STM32H5對trustzone有哪些不同?

    STM32L5和STM32H5對trustzone有哪些不同?
    發(fā)表于 07-04 08:08