在對等 Android SDV VM 的驗證程序中,最基本的步驟是判斷該對等 VM 是否在「信任的裝置」上執行。只有在受信任裝置上執行已驗證軟體的 VM,才能加入 SDV 安全網格。如要瞭解對等軟體驗證程序的詳細資料,請參閱 DICE 的 SDV 設定檔。
就裝置信任而言,Android SDV 定義了兩個不同的授權單位,兩者具有不同的權力:
指派裝置信任度:只有 OEM 具有這項授權。
定義一組裝置,這些裝置的 VM 會構成車輛的 SDV 安全網格。 OEM 必須指派及控管存取權,更換零件的人員擁有這項授權。
以下各節說明網狀網路裝置成員資格和裝置信任的詳細資料。
uds_pubs 檔案
裝置會透過各自的專屬裝置密鑰 (UDS) 公開金鑰明確識別。
當 Android SDV VM 加入 SDV 安全網格時,我們從概念上來說,執行該 VM 的裝置已加入 SDV 安全網格。
uds_pubs 檔案包含所有符合資格加入 SDV 安全網狀網路的裝置 UDS 公開金鑰。這個檔案是在工廠佈建流程中建立,並在零件更換流程中更新。
這個檔案位於 vvmtruststore 分割區。
這份清單僅列出部分範例,不代表我們信任這些應用程式。如要讓裝置加入 SDV 安全網狀網路,必須符合下列兩項條件:
- UDS 公開金鑰必須位於
uds_pubs中。 - 必須是信任的裝置。
裝置信任方法
如要讓 Android SDV VM 信任執行對等 Android SDV VM 的裝置,有兩種方法:
- 裝置攜帶 UDS 憑證。(建議做法)。
- 裝置在原廠佈建流程中會永久綁定。這會以 VVMFactoryTrust 表示。如果 OEM 在車輛組裝線 (或之前) 無法提供 UDS 憑證給裝置,可以改用這個方法。
UDS 認證
對等 Android SDV VM 可以提供 UDS 公開金鑰的 UDS 憑證。
UDS 根佈建授權單位的公開金鑰定義於 vvmconfig 檔案中,是裝置驗證的最終信任錨點。
虛擬機本身的 UDS 憑證會儲存在 vvmtruststore 分區的 uds_certs 檔案中。
必須支援這項裝置信任方法。
使用 VVMFactoryTrust 將裝置繫結在一起
一起佈建的裝置可以永久繫結,建立不依賴 UDS 憑證的信任群組。這樣就不需要相關的公開金鑰基礎架構來產生這些憑證。這種固有信任感是該群組特有的。因此,如果這個繫結群組中的任何裝置遭到更換,整個群組的信任關係就會遭到撤銷。
這項永久繫結是透過 VVMFactoryTrust 達成,這是儲存在一次性可程式化 (OTP) 記憶體中的 uds_pubs 檔案雜湊值。
具體來說,這是儲存 uds_pubs SHA256 的 32 位元組值,與佈建期間的值相同。該值會以核心參數的形式傳遞至 Android SDV。如果儲存的 VVMFactoryTrust 與 uds_pubs 的雜湊值相符,系統就會信任這些 UDS 公開金鑰所識別的裝置。
為確保授權執行零件更換作業的人員不會獲得指派裝置信任度的權限,他們應只收到 VVMFactoryTrust 無法寫入的裝置。如果沒有採取這項預防措施,車廠技師在更換車輛裝置時,可能會混用正版和非正版裝置。
這項硬體信任方法為選用功能,只有在車輛組裝線無法 (或無法及時) 佈建 UDS 憑證時,才需要實作。