硬件安全模塊(Hardware Security Module,意思硬件縮寫HSM)是安全一種用于保護和管理強認證系統所使用的密鑰,并同時提供相關密碼學操作的模塊計算機硬件設備。
典型的意思硬件加解密計算時間超過信號處理函數計算時間的數量級,實時性能和加密方法開銷的要求相互沖突,僅僅通過軟件無法解決。故汽車電子網絡安全的安全實現需要軟件和硬件的共同支持, 因此奧迪和寶馬等廠商合作制定了SHE (Secure Hardware Extension,安全硬件擴展)針對于硬件模塊的安全規范,主要內容為密碼模塊的通用軟硬件接口。
硬件密碼模塊是模塊以基于硬件的安全機制為目標, EVITA(E-safety Vehicle Intrusion Protected Applications)在SHE規范的基礎上提出了HSM (Hardware Security Module,硬件安全模塊) 硬件安全規范, 針對不同的安全硬件能力,分為Full HSM, Medium HSM和Light HSM。意思硬件這個分類也被廣泛應用于汽車網絡信息安全領域,安全其關鍵信息總結如下表。模塊Full和Medium的意思硬件主要差別在于是否硬件支持非對稱加密的加速。而Medium和Light主要差別在于是安全否有獨立的計算存儲資源以及是否具有隨機數生成器

圖片來自于網絡
面向汽車硬件安全模塊的基本通用結構如圖所示,圖中 ECU 的模塊應用 CPU 附帶擁有一個密碼協處理器HSM作為信任根, HSM承擔的功能作用主要是對所有密碼應用的執行操作,其中包括基于對稱密鑰和非對稱密鑰的加密解密運算、完整性校驗、意思硬件消息認證碼的安全生成與校驗、數字簽名的模塊生成與驗證,以及基礎的真隨機數生成功能。
HSM能夠訪問主機的所有硬件,在運行時實現系統的安全、認證啟動或主機監測。專用數據閃存可以用來存儲密鑰, 主機系統無法隨意訪問。這意味著主機可以請求 HSM 執行加密操作,而密鑰無需離開 HSM。由于 HSM 通常是公鑰基礎設施(PKI)或網上銀行一類關鍵基礎設施的一部分,一般會同時使用多個HSM以實現高可用性。

EVITA架構
在汽車電子領域談軟件或者固件,就不得不提AUTOSAR。AUTOSAR包含密碼基本軟件的規范-在后來的版本中對適當的規范進行了修訂和微調。在這種情況下,所謂的加密服務管理器(Crypto Service Manager, CSM)為應用程序提供加密服務:

AUTOSAR 4.3系統中的安全模塊
CSM是其他軟件模塊調用加解密模塊的第一接口。應用層SWC通過RTE訪問CSM,而其他底層軟件(BSW)或者復雜驅動(CDD)則可以直接調用CSM。同時CSM也負責安全相關任務的隊列管理,即優先級管理(Job Processor: key management job/crypto job/boot&download job etc)。CryIf是CSM往下調用的接口模塊,每一個CryIf中的加密基元都會與CSM中的一個服務相對應。而且CryIf支持分發相關任務,進一步調用不同的驅動(軟件和硬件,對稱和非對稱等)。Crypto Driver是驅動模塊,訪問相關部件,實現加解密操作,例如訪問加解密加速器或者隨機數生成器等。Host和HSM通過共享內存來傳輸CryptoJob等數據,host通過中斷來請求hsm處理job,hsm也可以通過中斷來響應host。以Vector HSM為例,HSM與Host通過IPC(Inter-Process Communication)進行通信,在接受到Host端的Job請求后,HSM固件根據Job類型進行相應的處理,能夠支持密鑰以及重要數據的安全存儲、硬件加速算法以及軟件實現的算法以及安全啟動等功能。

Vector HSM 架構

Data and service flow
Secure Boot實例時序圖:
