以下是SE(Secure Element)加密芯片與MCU協同工作的典型流程,綜合安全認證、數據保護及防篡改機制:
一、基礎認證流程(參數保護方案)
密鑰預置?
SE芯片與MCU分別預置相同的3DES密鑰(Key1、Key2)。
參數存儲?
SE芯片預存產品關鍵參數(如Data),存儲格式為離散化Lv結構,數據大小由宏定義控制。
隨機數交換?
MCU生成16字節隨機數Rand1,加密后發送讀指令至SE芯片;
SE生成16字節Rand2,計算臨時密鑰 TempKey = Rand1 ⊕ Rand2。
動態加密傳輸?
SE用Key1加密Rand2得到密文C1,再用TempKey加密Data得到C2;返回復合密文C = C1 || C2 至MCU。
MCU端解密驗證?
MCU通過Key2解密C1獲取Rand2,重構TempKey后解密C2得到Data,完成雙向認證。
二、深度集成方案(算法移植)
核心邏輯移植?
將MCU中關鍵算法(如校驗邏輯、敏感計算)移植到SE芯片內獨立運行。
離散化存儲?
SE芯片內部程序與數據采用離散存儲,通過硬件級防護防止外部讀取。
動態交互驗證?
MCU調用SE芯片執行移植算法,輸入參數并接收加密結果,脫離SE則功能失效。
三、硬件級防護機制
物理防篡改?
SE芯片內置自毀電路,檢測到物理攻擊時自動擦除敏感數據。
唯一標識綁定?
MCU讀取自身唯一ID(如STM32的96位UID);
將ID與密鑰結合生成加密Password,預置至SE芯片;
運行時雙向驗證ID與Password一致性,實現芯片綁定。
四、增強型安全策略
多層加密疊加?:結合SE硬件加密(如AES引擎)與MCU軟件加密(代碼混淆/指令偽裝),提升破解成本。
動態密鑰更新?:通過SE生成臨時會話密鑰,每次通信使用不同密鑰,防止重放攻擊。
聯網認證?(可選):SE芯片接入網絡進行遠程授權驗證,確保程序僅在合法設備運行。
方案選擇建議?
基礎防護?:參數保護方案(開發快,安全性適中);
高安全需求?:算法移植+唯一ID綁定(防抄板最佳實踐);
極端環境?:物理自毀型SE芯片(金融/車載場景)。
典型流程示意圖:
MCU發起請求 → 隨機數加密傳輸 → SE動態生成密鑰 → 參數加密返回 → MCU解密驗證 → 功能執行
此流程確保無絕對比對點,程序執行中無顯式對錯判斷,顯著增加動態分析難度。