在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

Arm? TrustZone? 技術簡介

嵌入式USB開發 ? 來源:嵌入式Lee ? 作者:嵌入式Lee ? 2023-07-04 08:44 ? 次閱讀

一.前言

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

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

二.TrustZone介紹

Arm TrustZone 技術是Armv8-M 架構一個可選的架構擴展。

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

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

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

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

三.關鍵組件

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

關鍵組件包括以下內容:

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

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

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

l高價值資產,其他的,比如用戶信息數據等都是需要受保護的。

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

四.安全系統

要構建安全硬件平臺,安全注意事項不僅僅要考慮處理器級別,而是需要考慮系統級別,所以一再強調的是系統安全,而不是處理器安全,主要包括:

存儲器系統

總線系統

外設

調試系統等。

4.1存儲器系統

前面提到了TrustZone 技術的核心是隔離,所以針對存儲器系統就是劃分不同的區域對應不同的屬性。代碼閃存、數據閃存和 SRAM 分為 安全 (S)、非安全 (NS) 和非安全可調用 (NSC) 區域,比如瑞薩的RA系列MCU這個劃分是通過IDAU控制的。

如下圖所示:

代碼閃存和SRAM都可以執行程序所以有非安全可調用區域,而數據閃存不可執行程序只有非安全和安全區域之分。

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

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

安全區域,執行安全程序,具備最高權限可以訪問所有資源。

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

非安全區域,執行非安全程序,只能訪問非安全資源,也可以調用非安全可調用區域API,執行一些安全程序的接口。

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

非安全可調用區域NSC,即中間地帶,提供非安全程序可調用的安全API。

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

當非安全代碼調用安全端函數時:

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

– SG 指令必須在 NSC 區域內。

安全代碼還提供非安全可調用函數,為非安全代碼提供安全服務訪問。

基于 TrustZone 區域 的代碼和數據閃存安全功能

從非安全區域讀取代碼和數據閃存區域將生成 TrustZone 安全故障。

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

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

SRAM

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

4.2總線系統

DMA 控制器和數據傳輸控制器

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

以太網DMA控制器

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

在安全區域中運行以太網程序 ,在非安全區域中放置 EDMAC RAM 緩沖區

在非安全區域中運行以太網程序 EDMAC RAM 緩沖區。

MPU

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

4.3外設

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

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

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

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

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

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

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

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

4.4調試系統

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

調試功能分為 DBG0、DBG1 和 DBG2 三個級別,以 對支持 TrustZone 技術的調試功能提供支持,并為開發、生產和部署的產品提供安全性。

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

DBG1:允許調試器連接,但僅限訪問非安全存儲區域和外設

DBG0:不允許調試器連接

調試級別根據產品的器件生命周期狀態確定。通過器件生命周期管理系統可以實現調試級別的回退。

五.器件生命周期管理

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

根據器件生命周期狀態定義和切換,在開發和生產階段創建、安 裝和使用器件生命周期管理密鑰等。

六.參考

《TrustZone technology for Armv8-M Architecture Version 2.1》

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

審核編輯 黃宇

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

    關注

    68

    文章

    19286

    瀏覽量

    229817
  • 存儲器
    +關注

    關注

    38

    文章

    7492

    瀏覽量

    163829
  • trustzone
    +關注

    關注

    0

    文章

    20

    瀏覽量

    12539
收藏 人收藏

    評論

    相關推薦

    屏蔽柵MOSFET技術簡介

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

    利用Arm Kleidi技術實現PyTorch優化

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

    ARM技術是什么?國內有哪些ARM廠家呢?一起來了解一下!

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

    Arm Tech Symposia年度技術大會即將來襲

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

    Arm精銳超級分辨率技術解析

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

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

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

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

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

    ArmArm Neoverse計算子系統(CSS):Arm Neoverse CSS V3和Arm Neoverse CSS N3

    Arm宣布了兩款新的Arm Neoverse計算子系統(CSS),它們基于“迄今為止最好的一代Neoverse技術”。是什么讓這些新產品在擁擠的計算技術領域脫穎而出?
    的頭像 發表于 04-24 17:53 ?1071次閱讀
    <b class='flag-5'>Arm</b>新<b class='flag-5'>Arm</b> Neoverse計算子系統(CSS):<b class='flag-5'>Arm</b> Neoverse CSS V3和<b class='flag-5'>Arm</b> Neoverse CSS N3

    【Vision Board創客營連載體驗】RA8D1 Vision Board初體驗

    技術的加持,性能非常強大。 內核:480 MHz Arm Cortex-M85,包含Helium和TrustZone技術 存儲:集成2MB/1MB閃存和1MB SRAM(包括TCM,5
    發表于 04-23 21:53

    芯片信息安全,不同ISA架構的實現思路

    /IEC 27400:2022等。然而對于不同的芯片架構而言,實現安全的方式往往也不盡相同,比如Arm和RISC-V。 ? Arm TrustZone 技術 ? 經過多年的發展,
    的頭像 發表于 04-18 00:09 ?3295次閱讀

    fpga封裝技術arm架構的優缺點

    FPGA封裝技術ARM架構是兩個不同的概念,分別屬于硬件設計的不同領域。
    的頭像 發表于 03-26 15:51 ?861次閱讀

    fpga封裝技術arm架構有什么區別

    FPGA封裝技術ARM架構在多個方面存在顯著的區別。
    的頭像 發表于 03-26 15:50 ?717次閱讀

    Arm Helium技術誕生的由來 為何不直接采用Neon?

    經過 Arm 研究團隊多年的不懈努力,Arm 于 2019 年推出了適用于 Armv8?M 架構的 Arm Cortex-M 矢量擴展技術 (MVE)——
    的頭像 發表于 02-29 17:01 ?2249次閱讀
    <b class='flag-5'>Arm</b> Helium<b class='flag-5'>技術</b>誕生的由來 為何不直接采用Neon?

    STM32H5 DA 之初體驗(帶 TrustZone)

    電子發燒友網站提供《STM32H5 DA 之初體驗(帶 TrustZone).pdf》資料免費下載
    發表于 02-19 14:19 ?0次下載
    STM32H5 DA 之初體驗(帶 <b class='flag-5'>TrustZone</b>)

    STM32簡介 STM32和ARM7的關系

    STM32是“意法半導體”生產的基于“ARM公司Cortex-M3內核”的32位高性能MCU。
    的頭像 發表于 01-03 13:38 ?1998次閱讀
    STM32<b class='flag-5'>簡介</b> STM32和<b class='flag-5'>ARM</b>7的關系
    主站蜘蛛池模板: 欧美性色视频| 久久夜色精品国产亚洲噜噜| 在线免费观看毛片网站| 亚洲 欧美 视频| 美女扒开尿口让男生添 漫画| 男女视频免费观看| 最新日韩中文字幕| 五月综合激情视频在线观看| 视频黄色免费| 免费欧美黄色网址| 国产精品三区四区| 午夜在线播放视频| 九九草在线观看| 美国一区二区三区| 久久免费观看国产精品| 五月激情站| 欧美xxxxx精品| 成 人在线观看视频网站| 天天爽夜夜爽每晚高澡| 久久草在线观看| avtt天堂网 手机资源| 最近2018中文字幕免费看在线| 午夜肉伦伦影院在线观看| 欧美在线视频免费| 国产精品毛片久久久久久久| 午夜精品在线| 午夜在线亚洲男人午在线| 李老汉的性生生活1全部| 性欧美黑人巨大videos| 免费一级大片| 亚洲国产美女精品久久| 大香线蕉97久久| 美女扒开尿口给男人桶| 色女人在线视频| 深夜福利欧美| 一级毛片免费网站| 欧美一区二区影院| www4hu| 国产午夜小视频| 免费在线一区二区三区| 日本午夜三级|