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

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

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

3天內不再提示

HAB boot的啟動流程與實現步驟

我快閉嘴 ? 來源:MCU頻道 ? 作者:MCU頻道 ? 2022-08-12 09:39 ? 次閱讀

問題簡介

在《深扒HAB boot 啟動安全性》中,小編介紹了HAB boot的啟動流程(如圖1所示),其中的1、2、3驗證步驟本質上就是驗簽過程。

2ac58412-1971-11ed-ba43-dac502259ad0.png圖1

驗簽過程在公鑰可信的情況下,可用于檢測數據的完整性(Integrity),身份認證(Authentication)和不可否認(Non-repudiation/Undeniable),而hab4_pki_tree.sh和hab4_pki_tree.bat腳本又保證生成的公鑰與私鑰對,證書是可信的,所以能“完美閉環”,使得HAB boot的安全性得到保證。

在應用手冊AN12079中,介紹了實現HAB boot的步驟,大致可分為:

  • 生成證書與密鑰
  • 對bootable image進行簽名
  • 打包簽名后的bootable image生成SB文件

簽名過程需借助elftosb工具和BD文件,其中BD文件包含了實現簽名的命令,

options{
flags=0x08;
startAddress=0x60000000;
ivtOffset=0x1000;
initialLoadSize=0x2000;

entryPointAddress=0x60004645;
}

sources{
elfFile=extern(0);
}

constants{
SEC_CSF_HEADER=20;
SEC_CSF_INSTALL_SRK=21;
SEC_CSF_INSTALL_CSFK=22;
SEC_CSF_INSTALL_NOCAK=23;
SEC_CSF_AUTHENTICATE_CSF=24;
SEC_CSF_INSTALL_KEY=25;
SEC_CSF_AUTHENTICATE_DATA=26;
SEC_CSF_INSTALL_SECRET_KEY=27;
SEC_CSF_DECRYPT_DATA=28;
SEC_NOP=29;
SEC_SET_MID=30;
SEC_SET_ENGINE=31;
SEC_INIT=32;
SEC_UNLOCK=33;
}

section(SEC_CSF_HEADER;
Header_Version="4.2",
Header_HashAlgorithm="sha256",
Header_Engine="DCP",
Header_EngineConfiguration=0,
Header_CertificateFormat="x509",
Header_SignatureFormat="CMS"
)
{
}

section(SEC_CSF_INSTALL_SRK;
InstallSRK_Table="............Users
xa07025secure_provisioning000000000000000000000000000gen_hab_certsSRK_hash.bin",
InstallSRK_SourceIndex=0
)
{
}

section(SEC_CSF_INSTALL_CSFK;
InstallCSFK_File="............Users
xa07025secure_provisioning000000000000000000000000000crtsCSF1_1_sha256_2048_65537_v3_usr_crt.pem",
InstallCSFK_CertificateFormat="x509"
)
{
}

section(SEC_CSF_AUTHENTICATE_CSF)
{
}

section(SEC_CSF_INSTALL_KEY;
InstallKey_File="............Users
xa07025secure_provisioning000000000000000000000000000crtsIMG1_1_sha256_2048_65537_v3_usr_crt.pem",
InstallKey_VerificationIndex=0,
InstallKey_TargetIndex=2)
{
}

section(SEC_CSF_AUTHENTICATE_DATA;
AuthenticateData_VerificationIndex=2,
AuthenticateData_Engine="DCP",
AuthenticateData_EngineConfiguration=0)
{
}


section(SEC_SET_ENGINE;
SetEngine_HashAlgorithm="sha256",
SetEngine_Engine="DCP",
SetEngine_EngineConfiguration="0")
{
}

section(SEC_UNLOCK;
Unlock_Engine="SNVS",
Unlock_features="ZMKWRITE"
)
{
}


在運行類似下面的命令后,bootable image的組成會有如圖2所示的變化。

./elftosb.exe-fimx-V-cimx-flexspinor-normal-signed.bd-oivt_application_signed.binled_demo_evk_flexspi_nor_0x60002000.srec
2aeb1498-1971-11ed-ba43-dac502259ad0.jpg圖2

在仔細查看BD文件后,我們會發現里面有加載SRK公鑰,IMG1和CSF1證書等命令,卻沒有了關于私鑰的相關命令?那么私鑰是如何參與bootable image的簽名過程的呢?

私鑰在哪里?

圖3的左邊部分表示elftosb.exe執行如下命令后,首先application和CSF(Command Sequence File)會進行Hash運算生成摘要,跟著私鑰會對其加密生成簽名。

./elftosb.exe-fimx-V-cimx-flexspinor-normal-signed.bd-oivt_application_signed.binled_demo_evk_flexspi_nor_0x60002000.srec
2b10134c-1971-11ed-ba43-dac502259ad0.jpg圖3

那么elftosb.exe是從哪里加載私鑰的呢?答案就是在與證書所處文件夾crts同一層目錄下的keys文件夾中,且elftosb.exe會加載與BD文件中的公鑰證書所對應的私鑰文件,比如上述BD文件的公鑰證書是CSF1_1_sha256_2048_65537_v3_usr_crt.pem和IMG1_1_sha256_2048_65537_v3_usr_crt.pem,那么對應的私鑰文件就是CSF1_1_sha256_2048_65537_v3_usr_key.pem和IMG1_1_sha256_2048_65537_v3_usr_key.pem,當然,你也可以移除keys文件夾來進行驗證。

2b3281ac-1971-11ed-ba43-dac502259ad0.png圖4

審核編輯:湯梓紅

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

    關注

    0

    文章

    150

    瀏覽量

    35954
  • 啟動流程
    +關注

    關注

    0

    文章

    14

    瀏覽量

    6503

原文標題:消失的私鑰-HAB boot

文章出處:【微信號:MCU頻道,微信公眾號:MCU頻道】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    u-boot啟動流程分析

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

    U-BOOT啟動流程分享

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

    U-boot的完整啟動流程是怎樣的?

    U-boot的完整啟動流程是怎樣的?
    發表于 03-03 06:18

    為什么U-boot顯示的HAB事件數據不符合HAB的數據表?

    HAB 狀態:0x00 u-boot=> hab_status安全啟動已禁用HAB 配置:0x00,H
    發表于 03-16 07:42

    i.MX8M Mini安全啟動HAB錯誤怎么解決?

    ,是 imx8mm-evk-qca-wifi 機器)。我已經到達步驟 1.8“驗證 HAB 事件”。我執行hab_status命令,但出現 HAB 錯誤: U-
    發表于 03-28 08:35

    IMX8M沒有HAB事件,而SRK_HASH未定義是為什么?

    我正在 IMX8M 上試驗 HAB,我正在使用我想在啟動時驗證的 U-boot 映像。HAB 激活后,hab_status命令會生成 4 個
    發表于 04-03 07:26

    如何在imx6q實現HAB

    大家好, 目前我在 imx6q 板上工作。試圖在其中實現 HAB,所以我在 u-boot 的配置文件中總結了 CONFIG_IMX_HAB 。使用 CST 工具創建簽名的 u-
    發表于 04-04 08:44

    imx6q安全啟動HAB錯誤的原因?

    大家好, 我正在使用 imx6q 設備來實現安全啟動。我已經簽署了 u-boot 并按照以下步驟操作。但是出現 6 個錯誤..安全啟動已禁用
    發表于 04-06 06:49

    U-Boot啟動及移植分析

    bootloader 開發是嵌入式系統必不可少而且十分重要的部分,U-Boot 為功能強大的bootloader 開發軟件。本文詳細分析了U-Boot啟動流程,并結合其源碼,闡述了
    發表于 09-01 16:34 ?27次下載

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

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

    串行SPI Nor Flash啟動流程

    關于外部Flash的代碼安全問題和代碼在外部執行對整個系統性能的影響,RT105x的加密啟動HAB)功能和32KB的L1 ICache/DCache是可以解決的,只是本文先從RT105x的啟動
    的頭像 發表于 03-16 09:32 ?2.1w次閱讀
    串行SPI Nor Flash<b class='flag-5'>啟動</b><b class='flag-5'>流程</b>

    Spring Boot啟動 Eureka流程

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

    安全啟動Secure Boot流程

    安全啟動-Secure Boot 除了NSPE和SPE兩個環境的溝通流程之外,secure boot也是Trusted Firmware很重要的設計環節。 Secure
    的頭像 發表于 11-02 16:45 ?1503次閱讀
    安全<b class='flag-5'>啟動</b>Secure <b class='flag-5'>Boot</b><b class='flag-5'>流程</b>

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

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

    springboot啟動流程

    。 Spring Boot啟動流程可以分為以下幾個步驟:初始化啟動環境、加載自動配置類、創建 Spring 上下文、
    的頭像 發表于 11-22 16:04 ?688次閱讀
    主站蜘蛛池模板: 亚洲成人免费网站 | 天天夜夜狠狠一区二区三区 | 在线亚洲日产一区二区 | 亚洲狼色专区 | 2018天天弄| 色多多免费在线观看 | 男人和女人做爽爽视频在线观看 | 五月天婷五月天综合网在线 | 国产玖玖在线 | 天天舔天天爱 | 亚洲精品久久久久久婷婷 | 婷婷综合五月中文字幕欧美 | 不卡一区在线观看 | 一级黄色录像毛片 | 黄色片免费看视频 | 超薄肉色丝袜精品足j福利 超黄视频在线观看 | 亚洲综合香蕉 | 亚洲国产欧美在线人成aaa | 日韩免费高清一级毛片在线 | 在线jlzzjlzz免费播放 | 亚洲午夜免费视频 | 欧美就是色 | 亚洲日本欧美日韩高观看 | 欧美成人午夜精品免费福利 | 美女视频网站色软件免费视频 | 上课被同桌摸下面做羞羞 | 亚洲人成毛片线播放 | 午夜性视频| 欧美一区二区三区免费看 | 91亚洲视频在线 | 国产精品四虎在线观看免费 | 青草精品视频 | 久久精品人人爽人人爽快 | 夜夜爽天天操 | 美女视频黄色的免费 | 久久亚洲国产欧洲精品一 | 在线色视频网站 | www.色婷婷.com | 四只虎免费永久观看 | 色婷婷中文字幕 | 激情网页 |