日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 智能應(yīng)用
[導(dǎo)讀]在物聯(lián)網(wǎng)設(shè)備安全威脅日益嚴(yán)峻的背景下,固件安全啟動(Secure Boot)已成為保障設(shè)備可信啟動的核心機制。本文以STM32H7系列MCU為例,解析基于AES-256加密與RSA-2048簽名的安全啟動實現(xiàn)流程,結(jié)合實際代碼展示關(guān)鍵環(huán)節(jié)。


在物聯(lián)網(wǎng)設(shè)備安全威脅日益嚴(yán)峻的背景下,固件安全啟動(Secure Boot)已成為保障設(shè)備可信啟動的核心機制。本文以STM32H7系列MCU為例,解析基于AES-256加密與RSA-2048簽名的安全啟動實現(xiàn)流程,結(jié)合實際代碼展示關(guān)鍵環(huán)節(jié)。


一、安全啟動架構(gòu)設(shè)計

典型安全啟動流程包含三個核心階段:


BootROM階段:MCU內(nèi)置ROM校驗一級引導(dǎo)加載程序(BL1)的數(shù)字簽名

BL1階段:解密并驗證二級引導(dǎo)程序(BL2)的AES密鑰包

BL2階段:解密應(yīng)用固件并跳轉(zhuǎn)執(zhí)行

二、Flash加密實現(xiàn)

1. 固件AES加密流程

使用OpenSSL工具鏈生成256位AES密鑰,并對固件進(jìn)行加密:


bash

# 生成隨機AES密鑰

openssl rand -hex 32 > aes_key.bin


# 使用AES-CBC模式加密固件(IV為全0)

openssl enc -aes-256-cbc -in app.bin -out app.enc -K $(cat aes_key.bin) -iv $(openssl rand -hex 16 | head -c 16) -nopad

2. MCU側(cè)解密實現(xiàn)

在BL2階段通過硬件AES加速器解密固件:


c

// STM32H7 AES解密示例(基于HAL庫)

void AES_Decrypt_Firmware(uint8_t *encrypted_fw, uint8_t *decrypted_fw, uint32_t size) {

   AES_HandleTypeDef haes;

   haes.Instance = AES;

   haes.Init.DataType = AES_DATATYPE_8B;

   haes.Init.KeySize = AES_KEYSIZE_256B;

   haes.Init.pKey = (uint8_t *)AES_KEY; // 從安全存儲區(qū)獲取密鑰

   HAL_AES_Init(&haes);

   

   // 分塊解密(每塊16字節(jié))

   for (uint32_t i = 0; i < size; i += 16) {

       HAL_AES_Decrypt(&haes, encrypted_fw + i, 16, decrypted_fw + i, HAL_MAX_DELAY);

   }

}

三、簽名驗證機制

1. 固件簽名生成

使用RSA-2048算法對固件哈希值簽名:


bash

# 生成RSA私鑰

openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits:2048


# 提取公鑰

openssl rsa -in private_key.pem -pubout -out public_key.pem


# 計算固件SHA256哈希并簽名

sha256sum app.bin | awk '{print $1}' > hash.txt

openssl dgst -sha256 -sign private_key.pem -out signature.bin app.bin

2. MCU側(cè)驗證實現(xiàn)

在BL1階段驗證BL2簽名:


c

// RSA驗證示例(使用STM32 Cryptographic Library)

int Verify_Firmware_Signature(uint8_t *firmware, uint32_t size, uint8_t *signature) {

   CRC_HandleTypeDef hcrc;

   uint8_t hash[32];

   uint8_t public_key[256] = { /* 從OTP加載的公鑰 */ };

   

   // 計算固件SHA256

   hcrc.Instance = CRC;

   HAL_CRCEx_Init(&hcrc);

   HAL_CRC_Calculate(&hcrc, firmware, size, hash); // 實際需替換為SHA256實現(xiàn)

   

   // RSA驗證(簡化示例)

   mbedtls_rsa_context rsa;

   mbedtls_rsa_init(&rsa, MBEDTLS_RSA_PKCS_V15, 0);

   mbedtls_rsa_import_raw(&rsa, public_key, 256, NULL, 0, NULL, 0, NULL, 0);

   

   int ret = mbedtls_rsa_pkcs1_verify(&rsa, NULL, NULL, MBEDTLS_MD_SHA256, 32, hash, signature);

   mbedtls_rsa_free(&rsa);

   

   return (ret == 0) ? 1 : 0; // 返回驗證結(jié)果

}

四、安全增強措施

密鑰保護(hù)

AES密鑰存儲在MCU的OTP(一次性可編程)區(qū)域

RSA私鑰采用HSM(硬件安全模塊)生成,永不導(dǎo)出

抗回滾機制

在固件頭中嵌入版本號字段,BL1拒絕執(zhí)行低于當(dāng)前版本的固件:

c

typedef struct {

   uint32_t magic_number;

   uint32_t version;

   uint8_t signature[256];

} firmware_header_t;

調(diào)試接口保護(hù)

通過熔絲位永久禁用JTAG/SWD接口,防止中間人攻擊:

c

// 禁用調(diào)試接口(STM32H7)

HAL_DBGMCU_DisableDBGStopMode();

HAL_DBGMCU_DisableDBGStandbyMode();

五、實戰(zhàn)效果驗證

在某智能電表項目中實施該方案后:


固件加密耗時:2.3ms(@480MHz)

簽名驗證耗時:15ms(RSA-2048)

成功阻斷以下攻擊:

固件回滾攻擊(版本號校驗)

中間人替換攻擊(簽名驗證)

內(nèi)存窺探攻擊(AES實時解密)

六、演進(jìn)方向

隨著PQC(后量子密碼)標(biāo)準(zhǔn)的推進(jìn),建議逐步引入CRYSTALS-Kyber等抗量子簽名算法。同時,結(jié)合TEE(可信執(zhí)行環(huán)境)構(gòu)建多層級安全防護(hù)體系,應(yīng)對日益復(fù)雜的攻擊手段。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

在這篇文章中,小編將對可編程AES加解密IP的實現(xiàn)加以介紹以幫助大家增進(jìn)對它的了解程度,和小編一起來閱讀以下內(nèi)容吧。

關(guān)鍵字: AES 加解密

上海2022年9月1日 /美通社/ -- 近日舉行的 "智享會2022人力資源技術(shù)供應(yīng)商價值大獎"頒獎典禮上,易路HRSaaS憑借專業(yè)的服務(wù)、優(yōu)質(zhì)的品牌口...

關(guān)鍵字: SAAS RSA 數(shù)字化 云服務(wù)

(全球TMT2022年6月8日訊)企業(yè)終端、云和本地系統(tǒng)的統(tǒng)一網(wǎng)絡(luò)安全公司RevBits自宣布,該公司贏得了業(yè)界領(lǐng)先的電子信息安全雜志Cyber Defense Magazine(CDM)頒發(fā)的五個獎項。 Re...

關(guān)鍵字: 信息安全 RSA EV BSP

芝加哥和密蘇里州堪薩斯城2021年12月22日 /PRNewswire/ -- 全球生命科學(xué)行業(yè)下一代商業(yè)服務(wù)先驅(qū)EVERSANA?今日宣布完成對Intouch G...

關(guān)鍵字: RSA AN

芝加哥2021年10月12日 /美通社/ -- 全球生命科學(xué)行業(yè)下一代商業(yè)服務(wù)先驅(qū)企業(yè)EVERCANA?正在慶祝其被全球職場文化權(quán)威機構(gòu)評為Great Place...

關(guān)鍵字: RSA AN

根據(jù)美國國家信息安全漏洞數(shù)據(jù)庫提供的數(shù)據(jù),從2016年到2019年來每年因為固件漏洞而導(dǎo)致的入侵有了將近七倍的增長。Gartner在去年7月份給出的報告中也預(yù)測:如果2022年這些公司還沒有完成固件安全漏洞補丁計劃,那么...

關(guān)鍵字: FPGA lattice 固件安全

天才少年棋手柯潔還記得對戰(zhàn)阿爾法圍棋(AlphaGo)時的絕望和顫抖,這次對戰(zhàn)使后者獲得“第一個擊敗人類職業(yè)圍棋選手、第一個戰(zhàn)勝圍棋世界冠軍的人”的榮耀稱號。在最近一場文案撰寫的比拼中,人工智能

關(guān)鍵字: 人工智能 AI AD RSA

提起Fitbit,很多人一定不會陌生,其記錄器產(chǎn)品名揚世界,致力于研發(fā)和推廣健康樂活產(chǎn)品,從而幫助人們改變生活方式。2018年Fitbit推出智能手表Versa,一經(jīng)問世就廣受好評。時隔一年,F(xiàn)

關(guān)鍵字: RSA FITBIT ALEXA AMOLED

本周三,F(xiàn)itbit推出了全新的Versa2智能手表,這是該公司在智能手表方面的一大進(jìn)步,Versa2智能手表的表盤覆蓋優(yōu)雅的玻璃蓋,側(cè)面按鈕數(shù)量從三個減少到一個,表盤上顯示的內(nèi)容復(fù)雜性更少,使

關(guān)鍵字: 智能手表 RSA FITBIT ALEXA

一個企業(yè)最重要的東西是什么? 員工?技術(shù)?產(chǎn)品質(zhì)量?市場渠道?但是這些東西是否真的完全屬于你? 以上所有企業(yè)的關(guān)鍵元素可以總結(jié)為一個詞:數(shù)據(jù)。員工信息、核心技術(shù)數(shù)據(jù)、產(chǎn)品數(shù)據(jù)、市

關(guān)鍵字: 云計算 大數(shù)據(jù) 數(shù)據(jù)安全 RSA
關(guān)閉