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 強化版開放是全新的 WFA 安全性標準,以隨機式無線加密 (OWE) 為基礎。能在咖啡廳、飯店、餐廳和圖書館等領域,為不受密碼保護的開放網路提供加密與隱私。增強型開啟不會提供驗證機制。
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 雜湊元素 (H2E) 驗證交換。詳情請參閱 WPA3 規格。
只有在用戶端模式才支援 WPA3 和 Wi-Fi 強化開放功能。
導入作業
如要支援 WPA3 和 Wi-Fi 強化版開放,請實作供應器 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 kernel 修補程式
- cfg80211
- nl80211
wpa_supplicant
,支援 SAE、SUITEB192 和 OWE支援 SAE、SUITEB192 和 OWE 的 Wi-Fi 驅動程式
支援 SAE、SUITEB192 和 OWE 的 Wi-Fi 韌體
支援 WPA3 和 OWE 的 Wi-Fi 晶片
Android 10 提供公用 API 方法,可讓應用程式判斷哪些裝置支援這些功能:
WifiManager#isWpa3SaeSupported
WifiManager#isWpa3SuiteBSupported
WifiManager#isEnhancedOpenSupported
WifiConfiguration.java
包含新的金鑰管理類型,以及配對加密、群組加密、群組管理加密,以及 OWE、WPA3-Personal 和 WPA3-Enterprise 所需的套件 B 加密。
啟用 WPA3 和 Wi-Fi 強化開啟功能
如要在 Android 架構中啟用 WPA3-Personal、WPA3-Enterprise 和 Wi-Fi Enhanced 公開功能,請按照下列指示操作:
WPA3-Personal:在
wpa_supplicant
設定檔中加入CONFIG_SAE
編譯選項。# WPA3-Personal (SAE) CONFIG_SAE=y
WPA3-Enterprise:在
wpa_supplicant
設定檔中加入CONFIG_SUITEB192
和CONFIG_SUITEB
編譯選項。# WPA3-Enterprise (SuiteB-192) CONFIG_SUITEB=y CONFIG_SUITEB192=y
Wi-Fi 強化版開放:在
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 強化開放,使用者將無法手動新增、掃描或連線至這些類型的網路。
驗證
如要測試實作成果,請執行下列測試。
單元測試
執行 SupplicantStaIfaceHalTest
驗證 WPA3 和 OWE 功能旗標的行為。
atest SupplicantStaIfaceHalTest
執行 WifiManagerTest
驗證這項功能的公用 API 行為。
atest WifiManagerTest
VTS 測試
如果已實作 HIDL 介面,請執行以下指令:
atest VtsHalWifiSupplicantV1_3TargetTest
如果已實作 AIDL 介面,請執行:
atest VtsHalWifiSupplicantStaIfaceTargetTest