女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

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

將引導(dǎo)代碼存儲(chǔ)在安全的NOR閃存中

星星科技指導(dǎo)員 ? 來源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Zhi Feng ? 2022-06-30 11:14 ? 次閱讀

電子系統(tǒng)在我們的生活中發(fā)揮著至關(guān)重要的作用。無論是通過智能手機(jī)進(jìn)行通信,還是駕駛配備高級(jí)駕駛員輔助系統(tǒng) (ADAS) 的汽車,我們都依靠電子設(shè)備來簡(jiǎn)化甚至執(zhí)行我們的日常任務(wù)。這些系統(tǒng)很容易被黑客入侵,而且它們相互連接的事實(shí)放大了威脅。隨著可信情報(bào)承擔(dān)關(guān)鍵活動(dòng)(例如,個(gè)人醫(yī)療監(jiān)控),網(wǎng)絡(luò)攻擊和破壞的后果會(huì)增長(zhǎng)到包括人身傷害甚至死亡。在這個(gè)新的現(xiàn)實(shí)中,構(gòu)建能夠抵御此類攻擊的電子系統(tǒng)勢(shì)在必行。

安全啟動(dòng)是構(gòu)建安全電子系統(tǒng)的基礎(chǔ)。隨著微控制器的工藝尺寸不斷縮小,板載嵌入式閃存正逐漸被外部 NOR 閃存所取代。這種架構(gòu)演變通過暴露的總線接口、克隆可能性等創(chuàng)造了更大的攻擊面。解決這一日益嚴(yán)重的漏洞的一種方法是使用安全 NOR 閃存進(jìn)行設(shè)計(jì)以保護(hù)存儲(chǔ)并幫助 MCU 在啟動(dòng)時(shí)建立安全的信任鏈。

安全啟動(dòng)——安全系統(tǒng)的基礎(chǔ)

通電時(shí),每個(gè)電子系統(tǒng)都會(huì)啟動(dòng)。對(duì)于嵌入式系統(tǒng),這通常通過運(yùn)行存儲(chǔ)在非易失性存儲(chǔ)器中的引導(dǎo)代碼來實(shí)現(xiàn)。要啟用安全啟動(dòng),系統(tǒng)需要建立信任根,從原始硬件存儲(chǔ)啟動(dòng),并使用原始受信任啟動(dòng)代碼啟動(dòng)(參見圖 1)。

建立信任根

當(dāng) MCU 開始啟動(dòng)時(shí),它必須從受信任的位置運(yùn)行。這通常通過小型內(nèi)部 ROM 或受信任的嵌入式閃存來實(shí)現(xiàn)。此代碼必須是不可變的,以便系統(tǒng)可以從本質(zhì)上信任它。它作為信任根層次結(jié)構(gòu)的基礎(chǔ)。從這里系統(tǒng)可以通過驗(yàn)證硬件和驗(yàn)證存儲(chǔ)內(nèi)容將信任擴(kuò)展到外部存儲(chǔ)。

非對(duì)稱密鑰算法

為了建立信任根,ROM 代碼通常依賴于預(yù)先存儲(chǔ)的密鑰。如果使用非對(duì)稱密鑰算法,該密鑰通常是公鑰。MCU 使用此公鑰來驗(yàn)證第二階段引導(dǎo)加載程序的簽名,該引導(dǎo)加載程序駐留在外部閃存設(shè)備上。與實(shí)際引導(dǎo)加載程序一起存儲(chǔ)的簽名是引導(dǎo)加載程序的摘要值,并使用與公鑰加密配對(duì)的私鑰進(jìn)行簽名。如果 MCU 使用公鑰成功驗(yàn)證了引導(dǎo)加載程序簽名并從當(dāng)前引導(dǎo)加載程序計(jì)算出相同的摘要值,則可以確定引導(dǎo)加載程序代碼沒有被更改。這樣,信任根就建立起來了?,F(xiàn)在可以安全地執(zhí)行這個(gè)經(jīng)過驗(yàn)證的第二階段引導(dǎo)加載程序。

對(duì)稱密鑰算法

通常,對(duì)稱密鑰算法的執(zhí)行速度比對(duì)稱算法慢。出于這個(gè)原因,在啟動(dòng)時(shí)間很關(guān)鍵的應(yīng)用程序中,用戶經(jīng)常選擇對(duì)稱密鑰算法。使用對(duì)稱密鑰,主機(jī) MCU 和外部閃存共享相同的密鑰??梢栽诂F(xiàn)場(chǎng)部署之前(即在制造期間)在安全環(huán)境中提前建立此共享秘密。隨后,共享密鑰可用于通過在軟件上使用基于密鑰的哈希來快速驗(yàn)證第二階段引導(dǎo)加載程序。

poYBAGK9FTeAG9LIAAEzWYLrIx4860.png

圖 1:建立信任根

從原始硬件存儲(chǔ)啟動(dòng)

如果整個(gè)啟動(dòng)代碼都存儲(chǔ)在 MCU 內(nèi)的嵌入式閃存中,那么從原始硬件存儲(chǔ)啟動(dòng)可能不是主要問題。這是因?yàn)樵诓粨p壞 MCU 主機(jī)的情況下更換嵌入式閃存可能是不可能的。然而,隨著行業(yè)向 22-nm MCU 發(fā)展,在 MCU 中嵌入閃存變得越來越困難。超過 28nm 的技術(shù)可能會(huì)被迫將引導(dǎo)代碼存儲(chǔ)在外部閃存中。因此,為了安全啟動(dòng),主機(jī)必須考慮是否更換了外部閃存。

為了防止黑客使用原始內(nèi)存內(nèi)容克隆硬件,主機(jī)MCU可以在制造過程中與引導(dǎo)存儲(chǔ)設(shè)備執(zhí)行配對(duì)過程。之后,只有這個(gè)配對(duì)的存儲(chǔ)設(shè)備才能提供啟動(dòng)代碼進(jìn)行啟動(dòng)。因此,必須在設(shè)備上使用安全的硬件標(biāo)識(shí)符來提供這種配對(duì)能力。標(biāo)識(shí)符可以是非常強(qiáng)的設(shè)備 ID,不能被篡改或克隆。因此,配對(duì)后的認(rèn)證過程可以基于這樣的標(biāo)識(shí)符。

使用原始的、受信任的引導(dǎo)代碼進(jìn)行引導(dǎo)

在識(shí)別出原始硬件存儲(chǔ)之后,下一步是驗(yàn)證啟動(dòng)代碼,以確保它沒有被篡改或修改。有多種方法可以做到這一點(diǎn),每種方法都需要不同的處理能力并提供相應(yīng)的安全級(jí)別。

簡(jiǎn)單保護(hù)

與大多數(shù)傳統(tǒng)的 NOR 閃存一樣,用戶可以在引導(dǎo)代碼所在的內(nèi)存范圍內(nèi)啟用基于塊或扇區(qū)的保護(hù)。這種保護(hù)也可以防止意外寫入并從受保護(hù)區(qū)域中擦除。簡(jiǎn)單保護(hù)中沒有安全元素,因此這種保護(hù)對(duì)于更改代碼的故意攻擊很弱。黑客可以輕松發(fā)出命令來取消對(duì)該區(qū)域的保護(hù)并修改啟動(dòng)代碼。即使保護(hù)方案包括密碼,由于密碼本質(zhì)上是靜態(tài)的,它也可能被復(fù)雜的攻擊破解。

校驗(yàn)和驗(yàn)證

如果已從原始引導(dǎo)代碼計(jì)算出校驗(yàn)和,則可以在后續(xù)引導(dǎo)中使用它來驗(yàn)證代碼未被修改。這個(gè)過程必須由宿主完成;因此,它要求主機(jī)從引導(dǎo)設(shè)備讀取整個(gè)引導(dǎo)代碼并計(jì)算校驗(yàn)和,然后才能開始運(yùn)行它。請(qǐng)注意,主機(jī)不能依賴存儲(chǔ)設(shè)備來提供校驗(yàn)和值,因?yàn)檫@可能會(huì)在攻擊期間被修改。

使用加密存儲(chǔ)引導(dǎo)代碼

加密的引導(dǎo)代碼可以使用密鑰存儲(chǔ)在 NOR 閃存中。MCU 內(nèi)部可能有硬件在啟動(dòng)時(shí)透明地解密數(shù)據(jù)。由于引導(dǎo)代碼純文本不會(huì)暴露在總線上,因此無法竊聽。只要用于加密的密鑰不被泄露,這種方法就是安全的。但是,如果加密密鑰被泄露,則必須重新刷新外部閃存上的引導(dǎo)代碼內(nèi)容。這個(gè)過程可能很乏味,甚至不可能在已經(jīng)在現(xiàn)場(chǎng)的設(shè)備上實(shí)施。

閃存設(shè)備輔助驗(yàn)證

如果設(shè)備提供此類功能,則可以將驗(yàn)證任務(wù)卸載到 NOR 閃存,而不是 MCU 將整個(gè)引導(dǎo)加載程序讀取到 RAM 以進(jìn)行驗(yàn)證。在對(duì)引導(dǎo)時(shí)間敏感的系統(tǒng)中,卸載驗(yàn)證任務(wù)可以幫助 MCU 更快地開始執(zhí)行引導(dǎo)加載程序。看門狗定時(shí)器可用于在驗(yàn)證失敗的情況下重置系統(tǒng)。使用這種方法,MCU 可以在閃存設(shè)備驗(yàn)證代碼時(shí)開始處理一些緊急任務(wù)。當(dāng)然,在驗(yàn)證完成之前,只能運(yùn)行非安全功能。這意味著主機(jī)必須實(shí)現(xiàn)一個(gè)安全的中斷處理程序,該處理程序可以通過中斷事件從 NOR 閃存獲取驗(yàn)證結(jié)果。

安全 NOR 閃存

傳統(tǒng)的 NOR 閃存能夠提供簡(jiǎn)單的數(shù)據(jù)保護(hù),無論是否有密碼。這使得使用傳統(tǒng) NOR 閃存實(shí)現(xiàn)安全啟動(dòng)功能變得困難。賽普拉斯等公司提供的下一代安全 NOR 閃存集成了安全功能,可實(shí)現(xiàn)更高級(jí)別的安全啟動(dòng)。

設(shè)備識(shí)別復(fù)合引擎 (DICE)

由可信計(jì)算組 (TCG) 指定的 DICE 提供了一種方法,用于根據(jù)每個(gè)設(shè)備的唯一設(shè)備機(jī)密來獲取強(qiáng)大且安全的設(shè)備 ID。使用存儲(chǔ)引導(dǎo)代碼的設(shè)備上的 DICE,系統(tǒng)可以在引導(dǎo)時(shí)建立信任根基礎(chǔ)。

DICE 建立在唯一設(shè)備密鑰 (UDS) 之上。UDS 是每個(gè)設(shè)備上的真正隨機(jī)數(shù),沒有任何關(guān)聯(lián)。UDS 在客戶的設(shè)施中生成并存儲(chǔ)在設(shè)備上的一個(gè)秘密位置,一旦寫入,就無法讀取 UDS。由證書提供的設(shè)備標(biāo)識(shí)源自 UDS。因此,一旦 MCU 與特定的閃存設(shè)備配對(duì),就不可能克隆包含相同 UDS 的設(shè)備。

安全存儲(chǔ)區(qū)域

可以將安全 NOR 閃存配置為在設(shè)備內(nèi)具有多個(gè)獨(dú)立的安全區(qū)域。具有不同訪問級(jí)別的區(qū)域可用于存儲(chǔ)可能需要不同安全級(jí)別的固件或軟件。個(gè)別區(qū)域也可以配置為一般數(shù)據(jù)的非安全存儲(chǔ)。隨著安全級(jí)別的提高,設(shè)備的讀取吞吐量會(huì)因加密措施而降低。通過提供各種訪問級(jí)別,用戶可以決定系統(tǒng)每個(gè)部分的性能和安全性之間的權(quán)衡。

如果固件引導(dǎo)加載程序存儲(chǔ)在配置為需要身份驗(yàn)證的區(qū)域中,則用戶可以確定固件未被任何未經(jīng)授權(quán)的方修改。如果固件包含用戶不想暴露在 SPI 總線上的敏感數(shù)據(jù),則可以將其存儲(chǔ)在需要加密的區(qū)域中,這樣只有加密的數(shù)據(jù)才會(huì)傳輸?shù)娇偩€上。

快速安全啟動(dòng)

某些應(yīng)用程序(例如汽車系統(tǒng))需要及時(shí)安全地啟動(dòng)。在現(xiàn)代復(fù)雜系統(tǒng)中,引導(dǎo)代碼或應(yīng)用軟件可能非常龐大,以至于 MCU 需要大量時(shí)間來讀取和驗(yàn)證整個(gè)軟件。在這種情況下,安全 NOR 閃存可以在啟動(dòng)期間卸載 MCU,以驗(yàn)證存儲(chǔ)在設(shè)備上的軟件。這是通過提前在 MCU 和設(shè)備之間存儲(chǔ)共享秘密信息來實(shí)現(xiàn)的。在啟動(dòng)過程中,可以快速驗(yàn)證此共享密鑰,以確保設(shè)備和存儲(chǔ)軟件的原創(chuàng)性。該設(shè)備還可以在 MCU 開始處理一些基本任務(wù)時(shí)驗(yàn)證軟件應(yīng)用程序代碼。因此,可以縮短整個(gè)啟動(dòng)時(shí)間,以滿足汽車應(yīng)用的嚴(yán)格要求。

汽車、工業(yè)和通信領(lǐng)域的現(xiàn)代電子系統(tǒng)需要高度安全的閃存存儲(chǔ)。設(shè)計(jì)人員面臨著構(gòu)建能夠抵御網(wǎng)絡(luò)攻擊的安全系統(tǒng)的挑戰(zhàn)。賽普拉斯串行和并行NOR 閃存等安全存儲(chǔ)器實(shí)現(xiàn)了安全功能,使外部存儲(chǔ)能夠支持快速安全的啟動(dòng)。

審核編輯:郭婷

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

    關(guān)注

    146

    文章

    17889

    瀏覽量

    361715
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7640

    瀏覽量

    166636
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    昂科燒錄器支持Macronix旺宏電子的串行NOR閃存存儲(chǔ)器MX25U51245G

    近期,芯片燒錄領(lǐng)域的領(lǐng)導(dǎo)者昂科技術(shù)推出其燒錄軟件的重大版本更新。新版本發(fā)布之際,公司同步宣布新增多款兼容芯片型號(hào),其中包括旺宏電子開發(fā)的MX25U51245G串行NOR閃存存儲(chǔ)器。該
    的頭像 發(fā)表于 05-20 16:27 ?158次閱讀
    昂科燒錄器支持Macronix旺宏電子的串行<b class='flag-5'>NOR</b><b class='flag-5'>閃存</b><b class='flag-5'>存儲(chǔ)</b>器MX25U51245G

    為什么無法MIMXRT1170-EVK上調(diào)試XIP NOR閃存

    Winbond NOR 閃存 (W25Q256JVEIQ) 安裝在 RT1170 定制板上。 但是,在此狀態(tài)下,使用 MCU Expresso IDE 24.9.25 進(jìn)行調(diào)試寫入過程
    發(fā)表于 04-14 07:32

    NXP MCU RT1166如何使用JTAG/SWD工具數(shù)據(jù)存儲(chǔ)到內(nèi)部閃存?

    我需要使用 JTAG 數(shù)據(jù)存儲(chǔ)到內(nèi)部閃存。我能夠使用 JTAG/SWD 工具 ARM J-Link 將它們存儲(chǔ)
    發(fā)表于 04-01 06:54

    EE-132:使用VisualDSPC代碼和數(shù)據(jù)模塊放入SHARC存儲(chǔ)

    電子發(fā)燒友網(wǎng)站提供《EE-132:使用VisualDSPC代碼和數(shù)據(jù)模塊放入SHARC存儲(chǔ).pdf》資料免費(fèi)下載
    發(fā)表于 01-07 13:55 ?0次下載
    EE-132:使用VisualDSP<b class='flag-5'>將</b>C<b class='flag-5'>代碼</b>和數(shù)據(jù)模塊放入SHARC<b class='flag-5'>存儲(chǔ)</b>器<b class='flag-5'>中</b>

    羅徹斯特電子為傳統(tǒng)應(yīng)用提供卓越的內(nèi)存支持 為并行NOR Flash提供持續(xù)供貨支持

    ,得以繼續(xù)生產(chǎn)4Mb和8Mb 5V的NOR Flash產(chǎn)品。 閃存帶給電子行業(yè)的影響是巨大的,基于并行NOR Flash技術(shù)的初始設(shè)備成為板載代碼
    發(fā)表于 12-17 10:33 ?275次閱讀

    MSP430?閃存器件引導(dǎo)加載程序(BSL)

    電子發(fā)燒友網(wǎng)站提供《MSP430?閃存器件引導(dǎo)加載程序(BSL).pdf》資料免費(fèi)下載
    發(fā)表于 11-18 14:40 ?2次下載
    MSP430?<b class='flag-5'>閃存</b>器件<b class='flag-5'>引導(dǎo)</b>加載程序(BSL)

    求助,如何將定制的2級(jí)引導(dǎo)加載程序上傳到指定的2級(jí)引導(dǎo)區(qū)?

    如何將定制的 2 級(jí)引導(dǎo)加載程序上傳到指定的 2 級(jí)引導(dǎo)區(qū)? 我的設(shè)備從 SPI 閃存啟動(dòng)。 閃存
    發(fā)表于 09-26 06:54

    物聯(lián)網(wǎng)行業(yè)存儲(chǔ)方案詳解_SPI NOR Flash

    SPI NOR FLASH存儲(chǔ)初始響應(yīng)和啟動(dòng)時(shí)提供高可靠性,并具有低時(shí)延。這一特性對(duì)于物聯(lián)網(wǎng)設(shè)備至關(guān)重要,因?yàn)槲锫?lián)網(wǎng)設(shè)備通常需要快速啟動(dòng)并穩(wěn)定運(yùn)行,以確保數(shù)據(jù)的實(shí)時(shí)傳輸和處理。 2、直接執(zhí)行
    的頭像 發(fā)表于 09-24 14:39 ?1014次閱讀
    物聯(lián)網(wǎng)行業(yè)<b class='flag-5'>存儲(chǔ)</b>方案詳解_SPI <b class='flag-5'>NOR</b> Flash

    創(chuàng)建自定義的基于閃存引導(dǎo)加載程序(BSL)

    電子發(fā)燒友網(wǎng)站提供《創(chuàng)建自定義的基于閃存引導(dǎo)加載程序(BSL).pdf》資料免費(fèi)下載
    發(fā)表于 09-19 10:50 ?0次下載
    創(chuàng)建自定義的基于<b class='flag-5'>閃存</b>的<b class='flag-5'>引導(dǎo)</b>加載程序(BSL)

    NAND閃存NOR閃存有什么區(qū)別

    NAND閃存NOR閃存是兩種常見的閃存存儲(chǔ)器技術(shù),它們多個(gè)方面存在顯著的差異。以下將從技術(shù)原
    的頭像 發(fā)表于 08-10 16:14 ?6026次閱讀

    閃存的哪些扇區(qū)可用于用戶數(shù)據(jù)存儲(chǔ)?

    有 2 個(gè) ESP8266 模塊被磚砌了(無法使用下載工具下載任何應(yīng)用程序)。 我非常感謝完整的內(nèi)存映射和一些示例代碼,解釋了如何安全地使用板載閃存
    發(fā)表于 07-12 08:13

    NAND Flash與NOR Flash:壞塊管理需求的差異解析

    NOR Flash和NAND Flash是兩種不同類型的閃存技術(shù),它們存儲(chǔ)單元的連接方式、耐用性、壞塊管理等方面存在差異。
    的頭像 發(fā)表于 07-10 14:25 ?3185次閱讀
    NAND Flash與<b class='flag-5'>NOR</b> Flash:壞塊管理需求的差異解析

    RTOS SDK1.5引導(dǎo)加載程序完成之后,扇區(qū)1閃存數(shù)據(jù)都會(huì)損壞,為什么?

    問題。 問題是,每次引導(dǎo)加載程序完成之后,在用戶程序以某種未知的方式啟動(dòng)之前,扇區(qū) 1 (address=0x1000) 閃存數(shù)據(jù)都會(huì)損壞。 眾所周知,rBoot 使用兩個(gè)
    發(fā)表于 07-10 07:10

    FX3第二階段引導(dǎo)加載程序需要第二微秒延遲,否則SPI閃存讀取失敗,為什么?

    我使用的 FX3 配置了 SPI 啟動(dòng)和IS25WP128閃存。 我可以用它成功啟動(dòng)第二階段引導(dǎo)加載程序。 我的第二階段引導(dǎo)加載程序,它
    發(fā)表于 07-03 08:22

    安全服務(wù)加密存儲(chǔ)代碼怎么查

    安全服務(wù)加密存儲(chǔ)代碼的查詢與實(shí)現(xiàn)是一個(gè)復(fù)雜的過程,涉及到多個(gè)方面,包括數(shù)據(jù)加密、密鑰管理、訪問控制等。 1. 引言 隨著云計(jì)算的快速發(fā)展,越來越多的企業(yè)和個(gè)人數(shù)據(jù)
    的頭像 發(fā)表于 07-02 09:28 ?689次閱讀