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

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

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

安全啟動Secure Boot流程

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-11-02 16:45 ? 次閱讀

安全啟動-Secure Boot

除了NSPE和SPE兩個環(huán)境的溝通流程之外,secure boot也是Trusted Firmware很重要的設計環(huán)節(jié)。

Secure boot最主要的目的就是防止系統(tǒng)使用到惡意的固件程序或操作系統(tǒng),在開機流程中,boot
code會先透過密碼學(cryptography)算法驗證是否為可信任的的程序,如果驗證成功即會開始執(zhí)行,否則中止流程。

在Trusted Firmware-M的secure boot流程如下:

圖片

secure boot流程

Boot loader stage 1(BL1)

此階段主要是必要的硬件初始化或是設定,因此BL1 boot code必須要是可信任且不可被竄改。在執(zhí)行完初始化后,就會跳到BL2的entry point繼續(xù)執(zhí)行BL2。

The bootloader code must be stored and executed from ROM or such part of
flash memory which supports write protection.

Boot loader stage 2(BL2)

BL2負責其他需要的初始化操作,例如啟動MCUboot前所需的設定或檢查,接著就會把執(zhí)行移交給MCUboot。

MCUboot

MCUboot是針對32-bit microcontroller所設計的secure bootloader,其中包含完整的程序驗證流程,因此也是Trusted Firmware-M secure boot流程的核心。

而MCUboot本身是獨立的open source project,因此也能應用在其他項目上。

TF-M

TF-M會依據(jù)memory layout放置在指定的內(nèi)存位置,而MCUboot會先去該位置取得TF-M binary
code,并且進行相關驗證確認,如果TF-M已被加密,也會在這階段進行解密。在確認完TF-M是正確且可信任后,就會加載TF-M。

要注意的是,Trusted Firmware-M手冊中有提到,驗證和解密所需key建議放在OTP memory中,以確保不可修改。

ROTPK(root of trust public key)can be stored in a one-time-programmable(OTP)memory.

此外,由于需要在加載TF-M前就對TF-M binary進行驗證,因此上一個段落提到的crypto流程不適用在這里,我們需要額外的crypto API來處理驗證與加解密。

一般這個時候使用的驅(qū)動和接口會封裝在BL2。

RTOS

最后階段就是加載RTOS以及應用程序。這階段的流程和上一個階段相似,同樣要先驗證確認且解密,確認無誤后再加載并執(zhí)行。

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

    關注

    68

    文章

    19384

    瀏覽量

    230501
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9137

    瀏覽量

    368261
  • 操作系統(tǒng)

    關注

    37

    文章

    6862

    瀏覽量

    123506
  • 系統(tǒng)
    +關注

    關注

    1

    文章

    1018

    瀏覽量

    21384
收藏 人收藏

    評論

    相關推薦

    u-boot啟動流程分析

    今天給大家全面的分析一下u-boot啟動流程。整理這篇文章花費時間較長,中間很長時間未更新,希望這篇文章對大家有所幫助。
    發(fā)表于 07-12 15:16 ?858次閱讀
    u-<b class='flag-5'>boot</b><b class='flag-5'>啟動</b><b class='flag-5'>流程</b>分析

    求助,關于TRAVEO MCU閃存啟動流程的問題求解

    我有一個關于 TRAVEO MCU 閃存啟動流程的問題。 Q) 架構(gòu) TRM - 34.3.3 閃存啟動流程,(6)、(8)、(9)、(10)、(11)、(12) 和 (13) 可以在
    發(fā)表于 05-30 06:25

    使用SECURE_BOOTSECURE_SFLASH選項

    / SecureBoot / aec_cbc_128和hmac_sha256命令,他們并沒有得到與makefile建成。當我們使用secure_boot = 1和secure_sflash = 1個
    發(fā)表于 08-29 14:51

    禁用安全啟動Hades Canyon NUC

    有VirtualBox。由于VirtualBox使用未簽名的內(nèi)核模塊,我需要禁用安全啟動。但是,當我通過以下菜單中的復選框禁用安全啟動時:高級 - >
    發(fā)表于 12-05 10:44

    U-BOOT啟動流程分享

    Bootloader移植(下)U-BOOT 啟動流程u-boot啟動三個2啟動步驟(重點)U-
    發(fā)表于 01-18 10:17

    基于armv8架構(gòu)對u-boot進行啟動流程分析(一)

    的開發(fā)調(diào)試文檔與強大的網(wǎng)絡技術支持;基于以上理由本篇文章對現(xiàn)在主流的armv8架構(gòu)的u-boot啟動流程進行詳細分析,以便所有人快速學習和理解u-boot的工作
    發(fā)表于 05-23 15:59

    基于 Rockchip U-boot next-dev 的 secure boot 流程

    資料將詳細介紹基于 Rockchip U-boot next-dev 的 secure boot 流程。 Rockchip Secure
    發(fā)表于 06-27 15:53

    使用STM32安全啟動與固件更新

    STM32 X-CUBE-SBSFU 軟件包已經(jīng)發(fā)布,提供了安全啟動(Secure Boot)和安全固件更新(SecureFirmware
    發(fā)表于 09-11 07:35

    嵌入式U-BOOT啟動流程及移植

    摘要:嵌入式系統(tǒng)一般沒有通用的bootloader,u-boot是功能強大的bootloader開發(fā)軟件,但相對也比較復雜。文中對u-boot啟動流程作了介紹,詳細給出了u-
    發(fā)表于 02-25 16:00 ?59次下載

    HAB boot啟動流程與實現(xiàn)步驟

    在《深扒HAB boot 啟動安全性》中,小編介紹了HAB boot啟動流程(如圖1所示),其
    的頭像 發(fā)表于 08-12 09:39 ?1580次閱讀

    secure boot相關的基本概念和框架

    secure boot是指確保在一個平臺上運行的程序的完整性的過程或機制。secure boot會在固件和應用程序之間建立一種信任關系。在啟用sec
    的頭像 發(fā)表于 09-13 14:20 ?1620次閱讀

    第一道防線-Secure Boot安全開機

    第一道防線-Secure Boot安全開機
    的頭像 發(fā)表于 08-11 14:46 ?721次閱讀
    第一道防線-<b class='flag-5'>Secure</b> <b class='flag-5'>Boot</b><b class='flag-5'>安全</b>開機

    Spring Boot啟動 Eureka流程

    在上篇中已經(jīng)說過了 Eureka-Server 本質(zhì)上是一個 web 應用的項目,今天就來看看 Spring Boot 是怎么啟動 Eureka 的。 Spring Boot 啟動 E
    的頭像 發(fā)表于 10-10 11:40 ?905次閱讀
    Spring <b class='flag-5'>Boot</b><b class='flag-5'>啟動</b> Eureka<b class='flag-5'>流程</b>

    車規(guī)MCU的安全啟動固件

    安全啟動固件(Secure Boot Firmware) 車規(guī)MCU的安全啟動固件(
    的頭像 發(fā)表于 10-27 17:20 ?2372次閱讀
    車規(guī)MCU的<b class='flag-5'>安全</b><b class='flag-5'>啟動</b>固件

    啟動(Cold boot流程及階段劃分

    restart--冷啟動 reset--熱啟動 ATF冷啟動實現(xiàn)分為5個步驟: ? BL1 - AP Trusted ROM,一般為BootRom。 ? BL2 - Trusted Boot
    的頭像 發(fā)表于 11-07 15:17 ?2526次閱讀
    冷<b class='flag-5'>啟動</b>(Cold <b class='flag-5'>boot</b>)<b class='flag-5'>流程</b>及階段劃分