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

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

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

什么是Secure Boot以及三種模式

科技綠洲 ? 來(lái)源:立功科技 ? 作者:立功科技 ? 2022-06-27 17:07 ? 次閱讀

S32K3的安全啟動(dòng)用于確保設(shè)備僅使用受原始設(shè)備制造商(OEM)信任的軟件進(jìn)行啟動(dòng)。當(dāng)設(shè)備復(fù)位后啟動(dòng),HSE安全子系統(tǒng)將會(huì)檢查軟件片段的有效性,若檢查有效,則設(shè)備將啟動(dòng),否則將執(zhí)行相應(yīng)制裁。

Secure boot簡(jiǎn)介

Secure Boot是驗(yàn)證應(yīng)用域內(nèi)的一個(gè)/多個(gè)應(yīng)用CPU子系統(tǒng)執(zhí)行的一個(gè)/多個(gè)應(yīng)用程序映像的完整性和真實(shí)性(多應(yīng)用核和多內(nèi)存段),驗(yàn)證策略由用戶(hù)定義,包括:被驗(yàn)證的內(nèi)容、驗(yàn)證方式、驗(yàn)證結(jié)果分析處理。

三種Secure boot模式

共有三種安全啟動(dòng),如表1:

基本安全啟動(dòng)(BSB):通過(guò)解析APPBL頭,確定APPBL代碼的起始地址和大小。

高級(jí)安全啟動(dòng)方式(ASB):使用SMR(Secure Memory Region)和CR(Core Reset)實(shí)現(xiàn)的。

基于SHE的安全啟動(dòng)(SSB):同樣是使用SMR以及CR實(shí)現(xiàn),其與ASB不同的是這種安全啟動(dòng)模式只使用SMR#0和CR#0,是ASB的一種特殊用法。

表1 安全啟動(dòng)的區(qū)別

pYYBAGK5cuWAT6YIAABPDbDKhwk273.png

在介紹安全啟動(dòng)模式之前,給大家介紹APPBL、SMR、CR是什么?如圖1所示,APPBL主要提供APP起始地址、APP內(nèi)容大小、認(rèn)證標(biāo)簽。

pYYBAGK5cvSAWrhxAAChrhDU47U098.png

圖1 APPBL介紹

如圖 2所示,SMR是一段安全內(nèi)存區(qū)域的描述符,描述需要驗(yàn)證內(nèi)容的起始地址、大小、驗(yàn)證內(nèi)容的方式(MAC/SIGN)等。

pYYBAGK5cv-AKzkFAACWwBCCvJE495.png

圖2 SMR介紹CR表指的是內(nèi)核復(fù)位表,該表關(guān)聯(lián)對(duì)應(yīng)的Core與最多8個(gè)SMR關(guān)聯(lián)起來(lái),關(guān)聯(lián)的SMR驗(yàn)證成功,HSE將釋放對(duì)應(yīng)的Core,使其正常運(yùn)行App程序;驗(yàn)證失敗則進(jìn)行相應(yīng)的制裁:禁用密鑰、復(fù)位內(nèi)核等。

(一) 基礎(chǔ)安全啟動(dòng)模式 – BSB

如圖 3所示,BSB是一種簡(jiǎn)化的啟動(dòng)方式,與ASB不同,不基于SMR;

① 在使能安全啟動(dòng)功能之前,進(jìn)行相應(yīng)的配置;

② 使用AES-GMAC、密鑰為ADK/P,計(jì)算GMAC;

③ 把計(jì)算出來(lái)的MAC碼存儲(chǔ)在flash中,作為初始值;

④ 使能安全啟動(dòng)功能,并執(zhí)行復(fù)位;

⑤ 復(fù)位后,進(jìn)入安全啟動(dòng)流程,同樣執(zhí)行②,把計(jì)算結(jié)果和初始值對(duì)比驗(yàn)證;

⑥ 驗(yàn)證結(jié)果一致則執(zhí)行APP代碼,否則進(jìn)入recovery模式。

poYBAGK5cwqAXMJ8AABnqCE8S9k465.png

圖 3 基礎(chǔ)安全啟動(dòng)模式(二) 高級(jí)安全啟動(dòng)模式 - ASB如圖 4所示,ASB是通過(guò)SMR和CR表實(shí)現(xiàn),并支持多種認(rèn)證方案(MAC、Sign)來(lái)驗(yàn)證App映像:

① 在使能安全啟動(dòng)功能之前,進(jìn)行相應(yīng)的配置;

② 格式化NVM和RAM的密鑰,并導(dǎo)入需要用到的對(duì)稱(chēng)/非對(duì)稱(chēng)的密鑰;

③ 安裝SMR和CR表:

SMR:驗(yàn)證內(nèi)容的起始地址,大小、驗(yàn)證方式、驗(yàn)證密鑰、驗(yàn)證tag存儲(chǔ)位置等;

CR:關(guān)聯(lián)需要驗(yàn)證的SMR、復(fù)位地址、制裁方式等。

④ 根據(jù)SMR配置,執(zhí)行相應(yīng)計(jì)算方式(MAC/Sign),把計(jì)算結(jié)果存儲(chǔ)在對(duì)應(yīng)得位置;

⑤ 使能安全啟動(dòng)功能,并執(zhí)行復(fù)位;

⑥ 復(fù)位后,進(jìn)入安全啟動(dòng)流程,啟動(dòng)流程中把計(jì)算結(jié)果和初始值對(duì)比驗(yàn)證;

⑦ 驗(yàn)證結(jié)果一致則執(zhí)行APP代碼,否則執(zhí)行CR定義的制裁。

pYYBAGK5cyCABLWvAABRETm1r9w001.png

圖 4 高級(jí)安全啟動(dòng)

(三) 基于SHE安全啟動(dòng)模式 – SSB(ASB)

如圖 5所示,SSB和ASB的啟動(dòng)流程是很相似的,異同點(diǎn)如下:

① HSE固件同樣通過(guò)使用SMR和CR表來(lái)進(jìn)行執(zhí)行SSB的啟動(dòng);

② SSB是ASB的一種特殊用法,與ASB的區(qū)別:

SSB只是用SMR#0;

密鑰使用的是SHE BOOT_MAC_KEY;

校驗(yàn)方式是CMAC。

poYBAGK5cyyAelurAABT5np5DIc478.png

圖 5 基于SHE安全啟動(dòng)模式

以上內(nèi)容講解了S32K3 SecureBoot的全部?jī)?nèi)容,主要介紹了什么是Secure Boot以及三種模式,也便于后續(xù)大家需要用到S32K3的安全啟動(dòng),奠定一定的基礎(chǔ)。

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

    關(guān)注

    68

    文章

    10772

    瀏覽量

    210446
  • 軟件
    +關(guān)注

    關(guān)注

    69

    文章

    4614

    瀏覽量

    86993
  • APP
    APP
    +關(guān)注

    關(guān)注

    33

    文章

    1562

    瀏覽量

    72273
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    37

    文章

    3223

    瀏覽量

    57506
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    請(qǐng)問(wèn)zstack的三種安全模式有什么區(qū)別?

    ,ZG_SECURITY_SE_STANDARD,這三種模式有什么區(qū)別?在不同應(yīng)用中該怎樣選擇?2、ZG_SECURE_DYNAMIC 有什么用,什么情況下需設(shè)為1?
    發(fā)表于 08-17 07:32

    啟動(dòng)Spring Boot項(xiàng)目應(yīng)用的三種方法

    基礎(chǔ)。我們知道了Spring Boot是個(gè)什么了,那么我們又該如何啟動(dòng)Spring Boot應(yīng)用呢?這里小編給大家推薦常用的三種方法。分別是IDEA編輯器啟動(dòng)、命令啟動(dòng)、java命令jar文件啟動(dòng)。下面
    發(fā)表于 01-14 17:33

    STM32的三種啟動(dòng)模式

    一、啟動(dòng)模式Boot modes)閱讀:STM32中文參考手冊(cè)_V10.pdf 查看啟動(dòng)配置(Boot modes)。在STM32F10xxx里,可以通過(guò)BOOT[1:0]引腳選擇
    發(fā)表于 08-05 07:25

    STM32的三種啟動(dòng)模式

    系統(tǒng)復(fù)位后,SYSCLK的第4個(gè)上升沿,BOOT引腳的值將被鎖存。用戶(hù)可以通過(guò)BOOT[1:0]引腳選擇三種不同的啟動(dòng)模式。從待機(jī)狀態(tài)退出模式
    發(fā)表于 08-05 08:10

    STM32三種啟動(dòng)模式對(duì)應(yīng)的存儲(chǔ)介質(zhì)

    STM32三種啟動(dòng)模式對(duì)應(yīng)的存儲(chǔ)介質(zhì)均是芯片內(nèi)置的,它們是:用戶(hù)閃存: BOOT1=xBOOT0=0芯片內(nèi)置的Flash。SRAM:BOOT1=1B
    發(fā)表于 08-05 08:14

    STM32有三種啟動(dòng)模式

    01STM32的三種啟動(dòng)模式STM32有三種啟動(dòng)模式:FLASH啟動(dòng)、SRAM啟動(dòng)和系統(tǒng)存儲(chǔ)器啟動(dòng),通常三種啟動(dòng)方式由外部引腳
    發(fā)表于 08-18 07:52

    STM32的三種Boot模式有何差異呢

    STM32的三種Boot模式有何差異呢?如何去驗(yàn)證這種差異呢?
    發(fā)表于 11-26 07:15

    什么是Boot模式?STM32三種Boot模式有什么差異?

    什么是Boot模式?STM32三種Boot模式有什么差異?怎么實(shí)現(xiàn)STM匯編程序設(shè)計(jì)?
    發(fā)表于 11-29 06:04

    STM32的三種boot模式介紹

    淺識(shí)STM32的三種boot模式文章目錄淺識(shí)STM32的三種boot模式任務(wù)摘要一、認(rèn)識(shí)
    發(fā)表于 12-10 07:46

    STM32的三種Boot模式及驗(yàn)證資料分享

    STM32的三種Boot模式一、BOOT模式簡(jiǎn)介1. 三種B
    發(fā)表于 12-10 06:54

    STM32的三種Boot模式的差異

    如有錯(cuò)誤,歡迎指正,謝謝!目錄一、STM32的三種Boot模式的差異二、創(chuàng)建基于MDK創(chuàng)建純匯編語(yǔ)言的STM32工程模板、匯編基本語(yǔ)法的學(xué)習(xí)四、編程練習(xí)一、STM32的
    發(fā)表于 12-20 07:54

    STM32三種BOOT啟動(dòng)方式的設(shè)置與應(yīng)用

    如何在不同的下載方式中選擇STM32的啟動(dòng)模式呢?STM32三種BOOT啟動(dòng)方式的設(shè)置與應(yīng)用分別是什么?
    發(fā)表于 01-18 07:01

    STM32的三種Boot模式及驗(yàn)證

    STM32的三種Boot模式一、BOOT模式簡(jiǎn)介1. 三種B
    發(fā)表于 11-26 19:51 ?89次下載
    STM32的<b class='flag-5'>三種</b><b class='flag-5'>Boot</b><b class='flag-5'>模式</b>及驗(yàn)證

    secure boot相關(guān)的基本概念和框架

    secure boot是指確保在一個(gè)平臺(tái)上運(yùn)行的程序的完整性的過(guò)程或機(jī)制。secure boot會(huì)在固件和應(yīng)用程序之間建立一信任關(guān)系。在啟
    的頭像 發(fā)表于 09-13 14:20 ?1521次閱讀

    安全啟動(dòng)Secure Boot流程

    安全啟動(dòng)-Secure Boot 除了NSPE和SPE兩個(gè)環(huán)境的溝通流程之外,secure boot也是Trusted Firmware很重要的設(shè)計(jì)環(huán)節(jié)。
    的頭像 發(fā)表于 11-02 16:45 ?1215次閱讀
    安全啟動(dòng)<b class='flag-5'>Secure</b> <b class='flag-5'>Boot</b>流程