WPA3 和 Wi-Fi Enhanced Open

Android 10 支援 Wi-Fi 聯盟 (WFA) 的 Wi-Fi 保護存取權第 3 版 (WPA3) 和 Wi-Fi Enhanced Open 標準。詳情請參閱 WFA 網站上的「安全性」

WPA3 是 WFA 為個人和企業網路制定的全新安全標準。這項技術採用新式安全演算法和更強大的加密法套件,可提升整體 Wi-Fi 安全性。WPA3 分為兩部分:

  • WPA3-Personal:使用等值同時驗證 (SAE) 而非預先共用金鑰 (PSK),為使用者提供更強大的安全防護,抵禦離線字典攻擊、金鑰復原和訊息偽造等攻擊。
  • WPA3-Enterprise:提供更強大的驗證和連結層加密方法,以及適用於敏感安全環境的選用 192 位元安全模式。

Wi-Fi Enhanced Open 是 WFA 針對公用網路推出的全新安全標準,採用機會無線加密 (OWE) 技術。在咖啡廳、飯店、餐廳和圖書館等區域,如果使用開放式網路 (未受密碼保護),這項功能可提供加密和隱私權保護。增強型 Open 不提供驗證。

WPA3 和 Wi-Fi 強化開放式可提升整體 Wi-Fi 安全性,提供更完善的隱私權保護,並防範已知攻擊。由於許多裝置尚未支援這些標準,或尚未完成軟體升級來支援這些功能,因此 WFA 提議採用下列轉換模式:

  • WPA2/WPA3 轉換模式:服務存取點同時支援 WPA2 和 WPA3 標準。在此模式下,Android 10 裝置會使用 WPA3 連線,搭載 Android 9 以下版本的裝置則會使用 WPA2 連線至同一個存取點。
  • WPA2/WPA3-Enterprise 轉換模式:服務存取點同時支援 WPA2-Enterprise 和 WPA3-Enterprise 標準。
  • OWE 轉換模式:服務存取點同時支援 OWE 和開放標準。在此模式下,Android 10 裝置會使用 OWE 連線,而搭載 Android 9 以下版本的裝置則會連線至相同存取點,但不會進行任何加密。

Android 12 支援「停用轉移」指示,這項機制會指示裝置不要使用 WPA2,改用 WPA3。裝置收到這項指標後,會使用 WPA3 連線至支援轉換模式的 WPA3 網路。Android 12 也支援 WPA3 Hash-to-Element (H2E) 驗證交換。詳情請參閱 WPA3 規格

WPA3 和 Wi-Fi Enhanced Open 僅支援用戶端模式。

實作

如要支援 WPA3 和 Wi-Fi Enhanced Open,請實作 Supplicant HAL 介面。從 Android 13 開始,介面會使用 AIDL 定義 HAL。在 Android 13 之前的版本中,介面和供應商分區使用 HIDL。HIDL 介面位於 hardware/interfaces/wifi/supplicant/1.3/,AIDL 介面則位於 hardware/interfaces/wifi/supplicant/aidl/

如要支援 WPA3 和 OWE,必須符合下列條件:

  • 支援 SAE 和 OWE 的 Linux 核心修補程式

    • cfg80211
    • nl80211
  • wpa_supplicant 支援 SAE、SUITEB192 和 OWE

  • 支援 SAE、SUITEB192 和 OWE 的 Wi-Fi 驅動程式

  • 支援 SAE、SUITEB192 和 OWE 的 Wi-Fi 韌體

  • 支援 WPA3 和 OWE 的 Wi-Fi 晶片

Android 10 提供公開 API 方法,可供應用程式判斷裝置是否支援下列功能:

WifiConfiguration.java 包含新的金鑰管理類型,以及成對密碼、群組密碼、 群組管理密碼和 Suite B 密碼,這些是 OWE、 WPA3-Personal 和 WPA3-Enterprise 的必要項目。

啟用 WPA3 和 Wi-Fi 增強型開放式安全防護

如要在 Android 架構中啟用 WPA3-Personal、WPA3-Enterprise 和 Wi-Fi Enhanced Open,請按照下列步驟操作:

  • WPA3-Personal:wpa_supplicant 設定檔中加入 CONFIG_SAE 編譯選項。

    # WPA3-Personal (SAE)
    CONFIG_SAE=y
    
  • WPA3-Enterprise:wpa_supplicant 設定檔中加入 CONFIG_SUITEB192CONFIG_SUITEB 編譯選項。

    # WPA3-Enterprise (SuiteB-192)
    CONFIG_SUITEB=y
    CONFIG_SUITEB192=y
    
  • Wi-Fi Enhanced Open:wpa_supplicant 設定檔中加入 CONFIG_OWE 編譯選項。

    # Opportunistic Wireless Encryption (OWE)
    # Experimental implementation of draft-harkins-owe-07.txt
    CONFIG_OWE=y
    

如果未啟用 WPA3-Personal、WPA3-Enterprise 或 Wi-Fi Enhanced Open,使用者就無法手動新增、掃描或連線至這類網路。

驗證

如要測試導入成果,請執行下列測試。

單元測試

執行 SupplicantStaIfaceHalTest,驗證 WPA3 和 OWE 的功能旗標行為。

atest SupplicantStaIfaceHalTest

執行 WifiManagerTest ,驗證這項功能的公開 API 行為。

atest WifiManagerTest

VTS 測試

如果已實作 HIDL 介面,請執行下列指令:

atest VtsHalWifiSupplicantV1_3TargetTest

如果已實作 AIDL 介面,請執行:

atest VtsHalWifiSupplicantStaIfaceTargetTest