Unter Android 10 werden die Standards Wi-Fi Protected Access Version 3 (WPA3) und Wi-Fi Enhanced Open der Wi-Fi Alliance (WFA) unterstützt. Weitere Informationen finden Sie auf der WFA-Website unter Security.
WPA3 ist ein neuer WFA-Sicherheitsstandard für private und Unternehmensnetzwerke. Ziel ist es, die allgemeine WLAN-Sicherheit durch die Verwendung moderner Sicherheitsalgorithmen und stärkerer Chiffresammlungen zu verbessern. WPA3 besteht aus zwei Teilen:
- WPA3-Personal:Verwendet die Simultaneous Authentication of Equals (SAE) anstelle des Pre-Shared Key (PSK) und bietet Nutzern so einen besseren Schutz vor Angriffen wie Offline-Wörterbuchangriffen, Schlüsselwiederherstellung und Nachrichtenfälschung.
- WPA3-Enterprise:Bietet stärkere Authentifizierungs- und Link-Layer-Verschlüsselungsmethoden sowie einen optionalen 192-Bit-Sicherheitsmodus für sensible Sicherheitsumgebungen.
Wi‑Fi Enhanced Open ist ein neuer WFA-Sicherheitsstandard für öffentliche Netzwerke, der auf Opportunistic Wireless Encryption (OWE) basiert. Es bietet Verschlüsselung und Datenschutz in offenen, nicht passwortgeschützten Netzwerken in Bereichen wie Cafés, Hotels, Restaurants und Bibliotheken. Enhanced Open bietet keine Authentifizierung.
WPA3 und Wi‑Fi Enhanced Open verbessern die allgemeine WLAN-Sicherheit und bieten einen besseren Datenschutz und eine höhere Robustheit gegen bekannte Angriffe. Da viele Geräte diese Standards noch nicht unterstützen oder noch keine Software-Upgrades erhalten haben, um diese Funktionen zu unterstützen, hat die WFA die folgenden Übergangsmodi vorgeschlagen:
- WPA2-/WPA3-Übergangsmodus:Der Access Point unterstützt gleichzeitig die WPA2- und WPA3-Standards. In diesem Modus verwenden Geräte mit Android 10 WPA3 für die Verbindung und Geräte mit Android 9 oder niedriger WPA2 für die Verbindung zum selben Access Point.
- WPA2/WPA3-Enterprise-Übergangsmodus:Der Access Point unterstützt gleichzeitig die Standards WPA2-Enterprise und WPA3-Enterprise.
- OWE-Übergangsmodus:Der bereitstellende Zugangspunkt unterstützt sowohl OWE als auch offene Standards gleichzeitig. In diesem Modus verwenden Geräte mit Android 10 OWE für die Verbindung und Geräte mit Android 9 oder niedriger stellen eine Verbindung zum selben Zugangspunkt ohne Verschlüsselung her.
Android 12 unterstützt die Anzeige „Transition Disable“, einen Mechanismus, der ein Gerät anweist, WPA2 nicht zu verwenden und stattdessen WPA3 zu verwenden. Wenn ein Gerät diese Anzeige erhält, verwendet es WPA3, um eine Verbindung zu einem WPA3-Netzwerk herzustellen, das einen Übergangsmodus unterstützt. Android 12 unterstützt auch den WPA3-Authentifizierungsaustausch „Hash-to-Element“ (H2E). Weitere Informationen finden Sie in der WPA3-Spezifikation.
WPA3 und Wi‑Fi Enhanced Open werden nur im Clientmodus unterstützt.
Implementierung
Implementieren Sie die Supplicant-HAL-Schnittstelle, um WPA3 und Wi-Fi Enhanced Open zu unterstützen.
Ab Android 13 wird für die HAL-Definition die Android Interface Definition Language (AIDL) verwendet. In Versionen vor Android 13 werden Schnittstellen und Anbieterpartitionen mit der HAL Interface Definition Language (HIDL) definiert. Die HIDL-Schnittstelle befindet sich in hardware/interfaces/wifi/supplicant/1.3/ und die AIDL-Schnittstelle in hardware/interfaces/wifi/supplicant/aidl/.
Folgendes ist erforderlich, um WPA3 und OWE zu unterstützen:
- Linux-Kernel-Patches zur Unterstützung von SAE und OWE
- cfg80211
- nl80211
wpa_supplicantmit Unterstützung für SAE, SUITEB192 und OWE- WLAN-Treiber mit Unterstützung für SAE, SUITEB192 und OWE
- WLAN-Firmware mit Unterstützung für SAE, SUITEB192 und OWE
- WLAN-Chip mit Unterstützung für WPA3 und OWE
In Android 10 sind öffentliche API-Methoden verfügbar, mit denen Apps die Geräteunterstützung für diese Funktionen ermitteln können:
WifiManager#isWpa3SaeSupportedWifiManager#isWpa3SuiteBSupportedWifiManager#isEnhancedOpenSupported
WifiConfiguration.java enthält neue Arten der Schlüsselverwaltung sowie paarweise Chiffren, Gruppenchiffren, Gruppenverwaltungschiffren und Suite B-Chiffren, die für OWE, WPA3-Personal und WPA3-Enterprise erforderlich sind.
WPA3 und Wi-Fi Enhanced Open aktivieren
So aktivieren Sie WPA3-Personal, WPA3-Enterprise und Wi-Fi Enhanced Open im Android-Framework:
WPA3-Personal:Fügen Sie die Kompilierungsoption
CONFIG_SAEin die Konfigurationsdateiwpa_supplicantein.# WPA3-Personal (SAE) CONFIG_SAE=yWPA3-Enterprise:Fügen Sie die Kompilierungsoptionen
CONFIG_SUITEB192undCONFIG_SUITEBin die Konfigurationsdateiwpa_supplicantein.# WPA3-Enterprise (SuiteB-192) CONFIG_SUITEB=y CONFIG_SUITEB192=yEnhanced Open für WLAN:Fügen Sie die Kompilierungsoption
CONFIG_OWEin die Konfigurationsdateiwpa_supplicantein.# Opportunistic Wireless Encryption (OWE) # Experimental implementation of draft-harkins-owe-07.txt CONFIG_OWE=y
Wenn WPA3-Personal, WPA3-Enterprise oder Wi-Fi Enhanced Open nicht aktiviert sind, können Nutzer diese Arten von Netzwerken nicht manuell hinzufügen, scannen oder sich damit verbinden.
Zertifizierungsstufe
Führen Sie die folgenden Tests aus, um Ihre Implementierung zu testen.
Einheitentests
Führen Sie SupplicantStaIfaceHalTest aus, um das Verhalten der Capability-Flags für WPA3 und OWE zu prüfen.
atest SupplicantStaIfaceHalTestFühren Sie WifiManagerTest aus, um das Verhalten der öffentlichen APIs für diese Funktion zu überprüfen.
atest WifiManagerTestVTS-Tests
Wenn die HIDL-Schnittstelle implementiert ist, führen Sie Folgendes aus:
atest VtsHalWifiSupplicantV1_3TargetTestWenn die AIDL-Schnittstelle implementiert ist, führen Sie Folgendes aus:
atest VtsHalWifiSupplicantStaIfaceTargetTest