那曲檬骨新材料有限公司

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

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

3天內不再提示

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

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 作者:黃工的嵌入式技術 ? 2020-02-04 15:03 ? 次閱讀

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

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

www.st.com/stm32trust

二、基礎介紹

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

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

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

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

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

三、安裝STM32Trust生成器

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

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

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

四、SFI固件生成過程

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

生成過程生產主要過程見下圖:

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

IV = nonce + Area Index

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

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

這些領域分不同的類型:

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

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

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

P和R區域與常規SFI區域:

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

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

五、SMI固件生成過程

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

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

生成過程生產主要過程見下圖:

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

?128位AES加密密鑰

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

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

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

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

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

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

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

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

?SMI圖像

?Lib數據

SMI格式布局如下:

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

    關注

    7

    文章

    319

    瀏覽量

    21130
  • SMIC
    +關注

    關注

    0

    文章

    21

    瀏覽量

    19975
  • STM32Trust
    +關注

    關注

    0

    文章

    6

    瀏覽量

    2241
收藏 人收藏

    評論

    相關推薦

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

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

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

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

    使用C2000?嵌入式模式生成器(EPG)進行設計

    電子發燒友網站提供《使用C2000?嵌入式模式生成器(EPG)進行設計.pdf》資料免費下載
    發表于 09-14 10:13 ?1次下載
    使用C2000?嵌入式模式<b class='flag-5'>生成器</b>(EPG)進行設計

    Freepik攜手Magnific AI推出AI圖像生成器

    近日,設計資源巨頭Freepik攜手Magnific AI,共同推出了革命性的AI圖像生成器——Freepik Mystic,這一里程碑式的發布標志著AI圖像創作領域邁入了一個全新的高度
    的頭像 發表于 08-30 16:23 ?1211次閱讀

    CDCM6208V1F具有小數分頻器的2:8時鐘生成器/抖動消除器數據表

    電子發燒友網站提供《CDCM6208V1F具有小數分頻器的2:8時鐘生成器/抖動消除器數據表.pdf》資料免費下載
    發表于 08-20 09:13 ?0次下載
    CDCM6208V1F具有小數分頻器的2:8時鐘<b class='flag-5'>生成器</b>/抖動消除器數據表

    具有小數分頻器的CDCM6208 2:8時鐘生成器/抖動消除器數據表

    電子發燒友網站提供《具有小數分頻器的CDCM6208 2:8時鐘生成器/抖動消除器數據表.pdf》資料免費下載
    發表于 08-20 09:07 ?0次下載
    具有小數分頻器的CDCM6208 2:8時鐘<b class='flag-5'>生成器</b>/抖動消除器數據表

    TSMaster 測試報告生成器操作指南

    用戶在基于TSMaster軟件開發測試用例時,或需要使用TSMaster生成HTML報告時,需要使用TSMaster測試報告生成器。1Test_Report說明Test_Report是目前
    的頭像 發表于 08-03 08:21 ?582次閱讀
    TSMaster 測試報告<b class='flag-5'>生成器</b>操作指南

    生成對抗網絡(GANs)的原理與應用案例

    相互競爭的神經網絡——生成器(Generator)和判別器(Discriminator),實現了高效、靈活的數據生成能力。本文將從GANs的原理、核心算法、以及多個應用案例入手,深入探討這一前沿技術的內涵與應用。
    的頭像 發表于 07-09 11:34 ?1331次閱讀

    ESP-IDF中能否加密應用固件?

    描述:我啟動了flahs加密,這樣物理上可以防止數據的讀取和篡改。但在進行https-OTA時,從服務器傳輸固件到設備的過程中,可能會泄露固件。正常使用ESP-IDF編譯生成
    發表于 06-11 06:50

    如何編譯OTA時的加密固件?

    main->CMakeLists.txt中添加以下生成加密OTA固件的命令。第一次編譯時能夠生成加密
    發表于 06-05 08:28

    Adobe發布Lightroom人工智能新功能:生成消除和鏡頭模糊預覽

    Adobe此次公布的新功能包括生成式消除(Generative Remove)與鏡頭模糊預設(Lens Blur presets)兩項人工智能技術。前者名為“Firefly”的人工智能圖像生成器將為生成式消除提供有力支持。
    的頭像 發表于 05-22 12:09 ?994次閱讀

    微軟Edge瀏覽器將引入AI主題生成器,為用戶提供獨特的主頁設計

    根據微軟的365產品規劃,他們計劃在Edge瀏覽器中添加人工智能主題生成器。這項創新功能允許用戶通過文字描述來創建個性化主題,人工智能系統將生成一系列預覽圖片,并將其作為瀏覽器主題。
    的頭像 發表于 05-13 15:16 ?790次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-在線二維碼生成器

    在線二維碼生成器允許用戶將文本、網址、圖片或其他數據轉換為二維碼形式。二維碼是一種特殊類型的條形碼,它可以通過掃描來快速識別和讀取信息。在線二維碼生成器使用特定的算法將這些信息編碼成二維碼,用戶可以
    發表于 04-24 17:00

    Minitab 交互式表格生成器

    生成器
    MinitabUG
    發布于 :2024年04月03日 15:58:54

    深度學習生成對抗網絡(GAN)全解析

    GANs真正的能力來源于它們遵循的對抗訓練模式。生成器的權重是基于判別器的損失所學習到的。因此,生成器被它生成的圖像所推動著進行訓練,很難知道生成的圖像是真的還是假的。
    發表于 03-29 14:42 ?4754次閱讀
    深度學習<b class='flag-5'>生成</b>對抗網絡(GAN)全解析
    赌场百家乐官网网站| 大余县| 百家乐官网街机游戏下载| 百家乐官网佛牌| 百家乐节目视频| 旧金山百家乐的玩法技巧和规则 | 真人百家乐官网娱乐场开户注册 | 云鼎娱乐城怎么存钱| 真人百家乐官网导航| 百家乐视频游戏盗号| 单机棋牌游戏| 百家乐官网赌场彩| 澳门百家乐一把决战输赢| 六合彩开奖记录| 百家乐官网网络赌博网| 太阳神百家乐的玩法技巧和规则| 陆河县| 澳门百家乐官网技巧| 百家乐最全打法| 大发888促销代码| 太阳城百家乐官网杀猪吗| 北京百家乐网上投注| 奇博| 黄金城百家乐官网手机用户| 百家乐侧牌器| 百家乐官网官网下载| 百家乐视频官方下载| 全迅网百家乐的玩法技巧和规则| 香河县| 百家乐投注平台| 娱乐城注册送奖金| 百家乐官网完美一对| 威尼斯人娱乐网代理| 百家乐官网过两关| 百家乐套利| 百家乐官网二十一点游戏| 在线百家乐博彩网| 宜兰市| 网上百家乐开户送现金| 宜城市| 菲律宾百家乐娱乐场|