為什麼需要安全開機?
隨著車輛聯網功能的普及,ECU 面臨著被惡意軟體篡改的風險。攻擊者可能嘗試刷寫被修改過的韌體,以繞過安全機制或控制車輛功能。安全開機 (Secure Boot) 是防止此類攻擊的基石,它確保 ECU 僅執行經過授權 (簽名) 的軟體。
信任鏈 (Chain of Trust)
安全開機依賴於一條從硬體到應用層的信任鏈:
- Root of Trust (RoT): 通常儲存在 HSM (Hardware Security Module) 或受保護的 One-Time Programmable (OTP) 記憶體中的公鑰雜湊值 (Public Key Hash)。這是信任的起點,不可被篡改。
- Bootloader 驗證: MCU 重置後,硬體首先驗證 Bootloader 的數位簽章。如果驗證失敗,ECU 將拒絕啟動。
- Application 驗證: Bootloader 啟動後,再驗證 Application Software 的數位簽章。
實作技術
數位簽章 (Digital Signature)
通常使用非對稱加密演算法 (如 RSA-2048 或 ECC-256)。
- 私鑰 (Private Key): 用於在開發環境中對軟體映像檔 (Image) 進行簽名。必須嚴格保管。
- 公鑰 (Public Key): 燒錄在 ECU 中,用於驗證簽名。
Vector vFlash 與 Security Manager
Vector 提供了完整的安全刷寫解決方案:
- vFlash: 支援透過 CAN/Ethernet 進行高速刷寫,並自動處理安全解鎖 (Security Access) 與簽名驗證流程。
- Security Manager: 用於管理 OEM 的憑證與金鑰,確保生產與售後環節的安全性。
常見挑戰
- 啟動時間: 簽名驗證涉及複雜的數學運算,可能會增加 ECU 的啟動時間。使用硬體加速器 (HSM/SHE) 是必要的優化手段。
- 金鑰管理: 如何在供應鏈中安全地分發與更新金鑰,是實施 Secure Boot 的最大挑戰。
透過落實安全開機,車廠可以有效防止未經授權的軟體修改,保障車輛的功能安全與資訊安全。