WPA3 和 Wi-Fi 強化版開放

Android 10 支援 Wi-Fi Alliance (WFA) Wi-Fi 保護存取權第 3 版 (WPA3) 和 Wi-Fi 強化版開放標準。詳情請參閱 WFA 網站上的安全性

WPA3 是個人和企業網路適用的全新 WFA 安全性標準。其目的是透過使用新式安全演算法和更強大的密碼組合,改善整體 Wi-Fi 安全性。WPA3 包含兩個部分:

  • WPA3-Personal:使用等於 (SAE) 的同步驗證,而非預先共用金鑰 (PSK),為使用者提供更強大的安全保護措施,防範離線字典攻擊、金鑰復原和訊息竊取等攻擊。
  • WPA3-Enterprise:提供更強大的驗證和連結層加密方法,對於敏感安全環境也可選用 192 位元安全模式。

Wi-Fi Enhanced Open 是一種新的 WFA 安全標準,適用於以機會性無線加密 (OWE) 為基礎的公用網路。在咖啡廳、飯店、餐廳和圖書館等地點,這項功能可在未受密碼保護的開放網路上提供加密和隱私權。增強型開啟功能不會提供驗證。

WPA3 和 Wi-Fi Enhanced Open 可提升整體 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 Enhanced Open

如要在 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