chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

如何使用STM32Trust生成器生成的SFI和SMI加密固件

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 作者:黃工的嵌入式技術 ? 2020-02-04 15:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

昨天文章《最近STM32CubeMX、IDE、Programmer都更新了些什么內(nèi)容》講述了ST最近在這些工具上的動作。 今天講述的內(nèi)容是STM32生態(tài)中,STM32Trust下面的一部分內(nèi)容。 (本文參考應用筆記文檔:AN5054) 一、回顧STM32Trust什么是STM32Trust? STM32Trust是一套STM32解決方案,提供完整的代碼保護和執(zhí)行保護工具套件,如下圖:

今天講述的就是代碼保護中,使用STM32TrustedPackageCreator生成SFI和SMI加密固件。 STM32Trust官方網(wǎng)址:

www.st.com/stm32trust

二、基礎介紹

SFI:Secure Firmware Installation,安全固件安裝解決方案。

SMI:Secure Module Install,安全模塊安裝。

OEM:Original Equipment Manufacturer,原始設備制造商(或原廠);

SFI格式是由ST公司創(chuàng)建的固件加密格式,它使用帶有128位密鑰的AES-GCM算法將固件(Elf、Hex、Bin或Srec格式)轉(zhuǎn)換為SFI格式的加密和認證固件。

SMI格式是ST公司創(chuàng)建的一種格式,旨在保護合作伙伴的軟件(軟件模塊和庫)。

三、安裝STM32Trust生成器

STM32TrustedPackageCreator安全包生成器工具屬于STM32CubeProgrammer編程工具中的一部分(附加的工具)。

所以,在安裝STM32CubeProgrammer工具時,集成有STM32TrustedPackageCreator這個工具,只是默認不安裝,需要手動勾選。

打開STM32TrustedPackageCreator工具,在主界面你就會看到一些我們之前說的SFI、SMI、HSM內(nèi)容。

四、SFI固件生成過程

主要過程如下框圖,由原廠固件、隨機數(shù)、密鑰,經(jīng)過STM32TrustedPackageCreator工具加密成SFI格式固件。

生成過程生產(chǎn)主要過程見下圖:

在執(zhí)行AES-GCM加密一個區(qū)域之前,我們計算初始化向量(IV)為:

IV = nonce + Area Index

該工具將固件映像劃分為幾個加密的部分,這些部分對應于不同的內(nèi)存區(qū)域。

這些附加到相應描述符(由工具生成的未加密的描述性頭部)的加密部分稱為區(qū)域。

這些領域分不同的類型:

F:固件區(qū)域(輸入固件中的常規(guī)段) M:模塊區(qū)域(用于SFI-SMI組合圖像生成,對應于來自SMI模塊的輸入) C:配置區(qū)域(用于選擇字節(jié)配置) P:表示“暫?!眳^(qū)域 R:回復區(qū)域

區(qū)域“P”和“R”并不代表真正的固件區(qū)域,而是在SFI映像被分割成幾個部分時創(chuàng)建的,這是在SFI映像的全局大小超過用戶在創(chuàng)建SFI映像期間預定義的允許RAM大小時的情況。

下面RAM大小和CT地址輸入用于SFI:

P和R區(qū)域與常規(guī)SFI區(qū)域:

此生成過程的最終輸出是單個文件,該文件是經(jīng)過加密和驗證的SMI格式固件。SFI格式布局如下:

當SFI圖像在生成過程中被分割時,“P”和“R”區(qū)域出現(xiàn)在SFI圖像布局中,如圖下圖所示:

五、SMI固件生成過程

SMI同樣是一種加密固件,只是這里面加密的是針對模塊和庫。

SMI加密過程和SFI有點類似,如下圖:

生成過程生產(chǎn)主要過程見下圖:

AES-GCM加密使用以下輸入:

?128位AES加密密鑰

?輸入nonce作為初始化向量(IV)

?作為附加身份驗證數(shù)據(jù)的安全版本(AAD)

在創(chuàng)建SMI映像文件之前,對SMI映像有效性進行PCROP檢查:

?PCROP部分必須在Flash字(256位)上對齊,否則將顯示警告

?該區(qū)域的大小必須至少為2個Flash單詞(512位),否則將顯示警告

?該部分必須在Flash單詞邊界(256位單詞)上結(jié)束,否則將顯示警告

?如果緊隨PCROP部分之后的部分的起始地址與PCROP部分的最后一個Flash單詞重疊(在執(zhí)行PCROP對齊約束之后),則生成失敗并出現(xiàn)錯誤消息。

如果一切正常,在指定的路徑下創(chuàng)建兩個輸出:

?SMI圖像

?Lib數(shù)據(jù)

SMI格式布局如下:

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

    關注

    7

    文章

    322

    瀏覽量

    22491
  • SMIC
    +關注

    關注

    0

    文章

    21

    瀏覽量

    20926
  • STM32Trust
    +關注

    關注

    0

    文章

    6

    瀏覽量

    2389
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    如何通過地址生成器實現(xiàn)神經(jīng)網(wǎng)絡特征圖的padding?

    ,從而使卷積輸出特征圖結(jié)果滿足我們的需求,這種補零的操作稱之為padding,如下圖所示。 關于padding的實現(xiàn),一般有兩種操作,第一種是使用稀疏地址生成器,尋找padding數(shù)據(jù)地址的規(guī)律,當
    發(fā)表于 10-22 08:15

    非對稱密鑰生成和轉(zhuǎn)換規(guī)格詳解

    生成 以字符串參數(shù)生成RSA密鑰,具體的“字符串參數(shù)”由“RSA密鑰類型”和“素數(shù)個數(shù)”使用符號“|”拼接而成,用于在創(chuàng)建非對稱密鑰生成器時,指定密鑰規(guī)格。 說明:生成RSA非對稱密
    發(fā)表于 09-01 07:50

    PanDao:實際約束條件下成像系統(tǒng)的初始結(jié)構(gòu)的生成

    的平均RMS光斑尺寸約為55 μm,色差校正效果中等?;谕纫?guī)格與約束,我們采用自主研發(fā)的FTR初始透鏡生成器,在數(shù)分鐘內(nèi)即創(chuàng)建出多個更加優(yōu)質(zhì)的設計方案。圖1展示了由FTR程序生成的五類不同透鏡系統(tǒng)
    發(fā)表于 05-07 08:57

    使用s32ds軟件時,無法生成是怎么回事?

    使用s32ds軟件時,無法生成,并顯示以下錯誤消息。 請幫忙。 生成器:錯誤:錯誤:LinStackCfg.npf 行:5 “bus_clock” - 語法錯誤
    發(fā)表于 04-04 08:04

    “Quantum Origin”成首個獲NIST驗證的軟件量子隨機數(shù)生成器

    -Quantinuum的“Quantum Origin”成為首個通過NIST驗證的軟件量子隨機數(shù)生成器 Quantum Origin獲得NIST SP 800-90B對其驗證熵源的批準 增強了聯(lián)邦
    的頭像 發(fā)表于 04-03 15:22 ?642次閱讀

    EB Tresos狀態(tài)顯示無法運行生成器是什么原因?qū)е碌模?/a>

    我正在嘗試集成 MCAL 包,但在生成過程中收到如下驗證錯誤:“無法為模塊”Dio_TS_T40D2M20I0R0“運行生成器
    發(fā)表于 04-02 08:06

    如何將Keyring用于CAAM分區(qū)加密的密鑰?

    我正在按照此方法加密我的 emmc 分區(qū) - 1. 生成密鑰: keyname=dm_trust KEY=“$(keyctl add trusted $KEYNAME \'new 32\' @s
    發(fā)表于 03-20 06:40

    STM32CubeIDE為什么無法生成工程和代碼?

    各位大佬好,我是一名新手小白,當我在使用STM32CubeIDE時,出現(xiàn)了1圖彈窗,顯示我缺少必要固件包,而導致我無法生成工程和代碼,但我已經(jīng)正常登錄,且在創(chuàng)建工程時STM32Cube
    發(fā)表于 03-12 06:00

    DLP寄存器該如何配置,如何生成自己的固件、用DLP的燒錄工具軟件進行固件合成燒寫?

    DLP寄存器該如何配置,如何生成自己的固件、用DLP的燒錄工具軟件進行固件合成燒寫?
    發(fā)表于 02-28 07:09

    STM32CubeMX用于STM32配置和初始化C代碼生成

    電子發(fā)燒友網(wǎng)站提供《STM32CubeMX用于STM32配置和初始化C代碼生成.pdf》資料免費下載
    發(fā)表于 02-26 17:32 ?677次下載

    Python中的迭代器與生成器

    Python迭代器與生成器 列表生成式 列表生成式也叫做列表推導式,它本身還是列表,只不過它是根據(jù)我們定義的規(guī)則來生成一個真實的列表。 ? ? list2 = [x for x in
    的頭像 發(fā)表于 02-20 10:43 ?660次閱讀

    開源隨機數(shù)生成器庫OpenRNG助力實現(xiàn)移植到Arm平臺時的最佳性能

    OpenRNG 實現(xiàn)了多種生成器和分布方式。生成器算法可生成“看似隨機”并具有某些統(tǒng)計特性的序列,我們將在下文進行討論。分布方式會將序列映射到常見的概率分布概念,如高斯分布或二項分布
    的頭像 發(fā)表于 02-08 09:24 ?1776次閱讀
    開源隨機數(shù)<b class='flag-5'>生成器</b>庫OpenRNG助力實現(xiàn)移植到Arm平臺時的最佳性能

    超詳細!FMU生成器用戶手冊來啦~

    FMU生成器是TSMaster中用于將模型打包生成FMU文件的一個工具,目前支持FMI3.0和FMI2.0版本,F(xiàn)MU類型僅支持Co-Simulation(CS),即聯(lián)合仿真FMU。本文將介紹FMU
    的頭像 發(fā)表于 01-17 20:02 ?1595次閱讀
    超詳細!FMU<b class='flag-5'>生成器</b>用戶手冊來啦~

    EE-322:面向SHARC處理器的專家代碼生成器

    電子發(fā)燒友網(wǎng)站提供《EE-322:面向SHARC處理器的專家代碼生成器.pdf》資料免費下載
    發(fā)表于 01-07 14:04 ?0次下載
    EE-322:面向SHARC處理器的專家代碼<b class='flag-5'>生成器</b>

    對稱加密技術有哪些常見的安全漏洞?

    對稱加密技術在實際應用中可能面臨的安全漏洞主要包括: 實現(xiàn)不當: 錯誤的加解密實現(xiàn)、弱隨機數(shù)生成器或其他邏輯錯誤都可能導致安全漏洞。 漏洞利用: 利用已知的弱點或攻擊手段,如理論上可行的分組攻擊或側(cè)
    的頭像 發(fā)表于 12-16 13:59 ?1091次閱讀