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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

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

安全引導(dǎo)的作用和原理是什么

麥辣雞腿堡 ? 來源:TrustZone ? 作者:TrustZone ? 2023-11-07 15:21 ? 次閱讀

安全引導(dǎo)可用于保證系統(tǒng)的完整性,防止系統(tǒng)中重要鏡像文件被破壞或替換。

一般情況下,安全引導(dǎo)需要保護(hù)

? 系統(tǒng)的BootLoader鏡像文件、

? TEE鏡像文件、

? Linux內(nèi)核鏡像文件、

? Recover鏡像文件

? 以及在ARMv8中使用的ATF鏡像文件。

將TEE鏡像文件的加載操作加入安全引導(dǎo)功能中可阻止黑客通過替換TEE鏡像文件的方式來竊取被TEE保護(hù)的重要資料。

當(dāng)前使用ARM芯片的系統(tǒng)中大部分使能了安全引導(dǎo)功能,該功能對于用戶的最直接感受就是,當(dāng)用戶非法刷入其他廠商ROM手機(jī)無法正常啟動,這是因?yàn)榉欠ㄋC(jī)將導(dǎo)致系統(tǒng)中的重要鏡像文件被替換,系統(tǒng)在啟動過程中對鏡像文件的電子驗(yàn)簽失敗,如果BootLoader驗(yàn)證失敗,則系統(tǒng)在進(jìn)入BootLoader階段之前就會掛死。

(信任根這個(gè)詞語此時(shí)有沒有在你的腦子里包含)

安全引導(dǎo)的原理

安全引導(dǎo)功能的原理就是采用鏈?zhǔn)津?yàn)簽的方式啟動系統(tǒng),也就是在系統(tǒng)啟動過程中,在加載下一個(gè)階段的鏡像之前都會對需要被加載的鏡像文件進(jìn)行電子驗(yàn)簽,只有驗(yàn)簽操作通過后,該鏡像才能被加載到內(nèi)存中,然后系統(tǒng)才會跳轉(zhuǎn)到下一個(gè)階段繼續(xù)執(zhí)行,整個(gè)驗(yàn)簽鏈中的任何一環(huán)驗(yàn)簽失敗都會導(dǎo)致系統(tǒng)掛死,系統(tǒng)啟動過程中的第一級驗(yàn)簽操作是由ChipRom來完成的。

只要芯片一出廠,用戶就無法修改固化在芯片中的這部分代碼,因此無法通過修改第一級驗(yàn)簽結(jié)果來關(guān)閉安全引導(dǎo)功能。

而且驗(yàn)簽操作使用的RSA公鑰或者哈希值將會被保存在OTP/efuse中,該區(qū)域中的數(shù)據(jù)一般只有ChipRom和TEE能夠讀取且無法被修改。RSA公鑰或者哈希值將會在產(chǎn)品出廠之前被寫入到OTP/efuse中,而且不同廠商使用的密鑰會不一樣。

本質(zhì)上也就是說Rom拿來校驗(yàn)后級第一部分的內(nèi)容所用到的密鑰是來自O(shè)TP里面,而這種是在出廠就確認(rèn)好了的,無法修改的。ChipRom和OTP的配合讓這個(gè)安全啟動的最開始具備了靈活性和安全性兼顧。

在谷歌的安全引導(dǎo)功能白皮書中提出了安全引導(dǎo)功能實(shí)現(xiàn)方案的設(shè)計(jì)建議。

谷歌建議將鏡像文件的電子簽名信息和驗(yàn)簽使用的RSA公鑰保存在電子證書中,系統(tǒng)在啟動的過程中首先會驗(yàn)證電子證書的合法性,如果驗(yàn)證通過則需從電子證書中獲取簽名信息和RSA公鑰,然后再利用它們對鏡像文件進(jìn)行驗(yàn)證。整個(gè)驗(yàn)證過程就是先驗(yàn)證證書,驗(yàn)證證書通過后再去驗(yàn)證鏡像文件的合法性。

但是在實(shí)際實(shí)現(xiàn)過程中,大多數(shù)芯片廠商是將簽名信息與需要被驗(yàn)簽的鏡像文件打包在一起,而RSA公鑰則會被打包到執(zhí)行驗(yàn)證操作的鏡像文件中。

(但是動態(tài)TA的事情)

不同廠商可能會對鏡像文件進(jìn)行加密操作,使保存在設(shè)備中的鏡像文件都是以密文的形式存在。

在啟動過程中,首先會驗(yàn)證密文鏡像文件的合法性然后再進(jìn)行解密鏡像文件的操作,這些都完成后才會將明文的鏡像文件加載到內(nèi)存中然后再執(zhí)行跳轉(zhuǎn)操作。

先驗(yàn)證,再解密,簽名的是加密的文件哦。

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

    關(guān)注

    4

    文章

    549

    瀏覽量

    85566
  • 鏡像
    +關(guān)注

    關(guān)注

    0

    文章

    159

    瀏覽量

    10678
  • 系統(tǒng)
    +關(guān)注

    關(guān)注

    1

    文章

    1005

    瀏覽量

    21273
收藏 人收藏

    評論

    相關(guān)推薦

    PSOC 5安全引導(dǎo)程序怎么實(shí)現(xiàn)

    我想在PSoC 5上實(shí)現(xiàn)一個(gè)安全引導(dǎo)加載程序。我的意思是,應(yīng)用程序接收新的二進(jìn)制文件,將其存儲在MCU的閃存中,并且只有在上傳完成后,才將控制轉(zhuǎn)移到替換現(xiàn)有應(yīng)用程序并重新啟動MCU的加載器。這有
    發(fā)表于 11-13 15:15

    請問NORflash的燒寫和引導(dǎo)啟動作用是什么?

    TL提供了NAND FLASH的基于仿真器的使用AIS文件的燒寫方法??墒菍τ跓龑懞?b class='flag-5'>引導(dǎo)啟動在這些步驟中所處的位置和作用完全不明白,TMS320C6748 C6746 C6742
    發(fā)表于 05-28 10:33

    安全廣播的原理及應(yīng)用是什么?有什么作用?

    安全廣播的原理及應(yīng)用是什么?安全廣播的作用是什么?安全廣播在CMMB終端的實(shí)現(xiàn)方法
    發(fā)表于 06-02 06:25

    怎樣使用基于安全引導(dǎo)加載程序構(gòu)建的應(yīng)用程序運(yùn)行調(diào)試會話

    我正在嘗試使用基于安全引導(dǎo)加載程序構(gòu)建的構(gòu)建應(yīng)用程序運(yùn)行調(diào)試會話。注意:出于調(diào)試目的,所有安全機(jī)制都被禁用。問題似乎是組合的 elf 文件。使用調(diào)試器加載它,目標(biāo)啟動進(jìn)入引導(dǎo)加載程序。
    發(fā)表于 12-06 08:10

    STM32MP1部件號具有像STM32MP157C/F這樣的安全引導(dǎo)選項(xiàng)嗎?

    是否可以使用 OTP WORD 24 到 31 而不啟用安全引導(dǎo),STM32MP1 部件號沒有像 STM32MP157A/D 這樣的安全引導(dǎo)選項(xiàng)?與上述相同,但 STM32MP1 部件
    發(fā)表于 12-27 08:56

    LS1046AFRWY需要做什么才能使用安全引導(dǎo)架構(gòu)進(jìn)行引導(dǎo)?

    我正處于我的應(yīng)用程序的開發(fā)階段,并希望利用安全啟動過程至少啟動到 U-Boot。我將啟用 RCW 中的 SB_EN 位并重建 bl2_emmc.pbl 但在我完成之后,我還需要做什么才能使用安全引導(dǎo)
    發(fā)表于 03-31 08:06

    iMXRT MCU是否能夠支持安全引導(dǎo)加載程序?qū)嵤?/a>

    大家好,我們正在使用 MIMXRT1062xxx5A 和 NOR 閃存,我們計(jì)劃實(shí)施安全引導(dǎo)加載程序。 基本上,從 POR 開始,在執(zhí)行 ROM 引導(dǎo)加載程序后,接下來將執(zhí)行安全
    發(fā)表于 04-03 08:12

    Arm CryptoCell-312生成和驗(yàn)證安全引導(dǎo)安全調(diào)試證書鏈指南

    安全引導(dǎo)安全調(diào)試是CryptoCell(CC)引導(dǎo)服務(wù)的基本功能。 安全引導(dǎo)
    發(fā)表于 08-24 06:09

    通過安全引導(dǎo)安全下載認(rèn)證保護(hù)IoT設(shè)備

    討論惡意攻擊如何感染當(dāng)今許多IoT設(shè)備或基于微控制器的設(shè)備中普遍存在的嵌入式固件。您將會了解到攻擊者利用設(shè)備內(nèi)部漏洞的途徑,以及通過安全引導(dǎo)和下載驗(yàn)證產(chǎn)品固件真實(shí)性和完整性的重要性。關(guān)于安全認(rèn)證背后的技術(shù),請觀看本系列視頻的下一
    的頭像 發(fā)表于 10-10 03:06 ?3272次閱讀

    DS28C36安全認(rèn)證器的安全引導(dǎo)安全下載

    本系列視頻的第2部分進(jìn)一步介紹嵌入式系統(tǒng)安全中的技術(shù)。了解Maxim安全認(rèn)證器的加密工具如何幫助驗(yàn)證分發(fā)到IoT設(shè)備的固件的真實(shí)性和完整性。關(guān)于高成效、基于硬件的IoT安全方案的具體應(yīng)用,請觀看系列視頻的下一節(jié):“
    的頭像 發(fā)表于 10-09 04:07 ?4520次閱讀

    怎樣引導(dǎo)區(qū)塊鏈應(yīng)用走上正軌

    引導(dǎo)區(qū)塊鏈在金融領(lǐng)域穩(wěn)妥探索和應(yīng)用,引導(dǎo)其在解決實(shí)體經(jīng)濟(jì)發(fā)展的難點(diǎn)、痛點(diǎn)方面發(fā)揮更有益的作用
    發(fā)表于 11-23 09:13 ?529次閱讀

    EE-366:Blackfin+?和SHARC+?處理器的安全引導(dǎo)指南

    EE-366:Blackfin+?和SHARC+?處理器的安全引導(dǎo)指南
    發(fā)表于 05-21 09:50 ?1次下載
    EE-366:Blackfin+?和SHARC+?處理器的<b class='flag-5'>安全</b><b class='flag-5'>引導(dǎo)</b>指南

    wolfBoot安全引導(dǎo)加載程序

      wolfBoot 安全引導(dǎo)加載程序 1.7.1 版在開源 GPLv2 許可下可用,可從www.wolfssl.com/download下載。wolfSSL 還在Github 上提供了許多 wolfBoot 示例。
    發(fā)表于 06-27 11:30 ?1176次閱讀

    ATECC608A安全引導(dǎo)入門用例

    電子發(fā)燒友網(wǎng)站提供《ATECC608A安全引導(dǎo)入門用例.pdf》資料免費(fèi)下載
    發(fā)表于 09-21 10:38 ?3次下載
    ATECC608A<b class='flag-5'>安全</b><b class='flag-5'>引導(dǎo)</b>入門用例

    ARMv7安全引導(dǎo)的過程

    對于安全引導(dǎo)功能的實(shí)現(xiàn)和驗(yàn)證過程各家芯片公司的方案都不一樣,這是由該芯片的啟動流程以及啟動所需鏡像文件來決定的,但都會遵循鏈?zhǔn)津?yàn)簽啟動的原則。 ARMv7架構(gòu)并沒有使用ATF,系統(tǒng)的啟動流程與以前
    的頭像 發(fā)表于 11-07 15:25 ?707次閱讀
    ARMv7<b class='flag-5'>安全</b><b class='flag-5'>引導(dǎo)</b>的過程