首次使用信任 (TOFU)

對於運行 Android 13 或更高版本的設備,Android 支持首次使用信任 (TOFU) 身份驗證方法 ( RFC7435 ),該方法允許用戶通過安裝服務器使用的根 CA 並將其域名設置為一個企業網絡來信任企業 (EAP) 網絡保存的網絡。 TOFU 允許設備在用戶首次連接到企業網絡時獲取未經身份驗證的公鑰,並保留該密鑰以供後續連接使用。

背景

與只需要密碼的個人網絡相比,企業網絡使用公鑰基礎設施(PKI)身份驗證,這需要客戶端預先安裝證書。在 Android 11 或更低版本中,用戶可以在網絡設置中為服務器 CA 證書選擇不驗證選項,從而繞過服務器端證書的驗證。但是,為了加強安全性並遵守 WPA R2 規範,Android 12 引入了對企業網絡進行服務器證書驗證的要求。這一附加要求為用戶製造了障礙,因為他們需要為此類網絡安裝 CA 證書。 TOFU 為用戶提供了一種通過簡單地接受其根 CA 來連接到基於 PKI 的企業網絡的方法。

特徵行為

當用戶連接到尚未安裝經過身份驗證的公鑰的企業網絡時,支持 TOFU 的設備會顯示以下行為。

通過 Wi-Fi 選擇器連接到新網絡

  1. 在 Wi-Fi 選擇器中選擇一個新的企業網絡。

    設備會顯示一個對話框(圖 1)以確認網絡是否可信。

  2. 點擊是,連接以接受網絡連接,或點擊否,不連接以拒絕。

    • 如果點擊是,連接,設備將自動配置安全參數、連接到網絡並為網絡啟用自動連接。

    • 如果您點擊否,不連接,設備會斷開網絡連接並禁用網絡自動連接。

    TOFU 功能對話框

    圖 1. TOFU 功能的對話框

連接到啟用自動連接的現有網絡

當連接到啟用了自動連接但沒有有效 CA 證書的企業網絡時,設備會自動連接,然後顯示粘性(不可關閉)通知。

  1. 點擊通知。

    設備會顯示一個對話框(圖 1)以確認網絡是否可信。

  2. 點擊是,連接以接受網絡連接,或點擊否,不連接以拒絕。

    • 如果點擊是,連接,設備將自動配置安全參數、連接到網絡並為網絡啟用自動連接。

    • 如果您點擊否,不連接,設備會斷開網絡連接並禁用網絡自動連接。

執行

要支持 TOFU 功能,請在/hardware/interfaces/wifi/supplicant/aidl/android/hardware/wifi/supplicant中實施 Android 開源項目 (AOSP) 中提供的請求方 HAL。

Android 13 中提供以下公共 API 供應用使用:

驗證

要驗證 TOFU 在您的設備上的實施,請使用以下測試:

  • CTS: CtsWifiTestCases
  • VTS: VtsHalWifiSupplicantStaNetworkTargetTest