記錄下自己對TrustZone的認識,主要分為以下幾個方面:
技術目的: TrustZone 提供運行時安全,包括安全存儲,安全計算,私鑰簽名,指紋對比,身份驗證,授權管理,DRM認證等安全的功能
具體技術介紹: TrustZone是通過硬件和軟件實現安全機制
TrustZone硬件架構:
1. 處理器虛擬化:處理器的架構上每個物理核虛擬為2個核,一個是安全核運行安全世界的代碼,一個是非安全核運行普通世界的os,兩個虛擬核之前通過時間片進行切換執行;
2. 外線/總線隔離技術: 在總線擴展了AWPROT(總線寫事務控制信號)和ARPROT(總線讀事務信號)。當低電平時為安全世界的總線讀寫控制信號,當高電平時為普通世界的讀寫控制信號。
3. 內存隔離結束:采用兩個MMU(內存管理單元),把安全世界和普通世界的內存管理隔離開。
4. 中斷隔離技術:為了區分安全世界和普通世界的中斷,ARM設計了FIQ和IRQ兩種不同的中斷,設計者可以將FIQ用於安全世界的中斷源,將IRQ用於普通世界的中斷源。
TrustZone軟件架構:
1. 安全世界中,采用獨立的安全操作系統,提供統一的服務,Monitor Mode在同一CPU上兩個操作系統間的切換。
2. 不同的安全需求加載不同的安全應用TA(Trusted Application),如支付寶TA。
相關標准: Trust OS基本遵循GP(GlobalPlatform)規范,TA只要使用GPAPI,就可以很容易移植到不同的TEE操作系統上。
市場情況: TrustZone的產業鏈相當廣,在目前市面上大多數智能手機都帶有TrustZone技術的芯片和操作系統。