WPA3 i Enhanced Open w sieci Wi-Fi

Android 10 wprowadza obsługę standardów Wi-Fi Protected Access w wersji 3 (WPA3) i Wi-Fi Enhanced Open opracowanych przez Wi-Fi Alliance (WFA). Więcej informacji znajdziesz w sekcji Bezpieczeństwo na stronie WFA.

WPA3 to nowy standard zabezpieczeń WFA dla sieci osobistych i firmowych. Ma na celu zwiększenie ogólnego bezpieczeństwa sieci Wi-Fi dzięki wykorzystaniu nowoczesnych algorytmów zabezpieczeń i silniejszych pakietów szyfrujących. WPA3 składa się z 2 części:

  • WPA3-Personal: zamiast klucza wstępnego (PSK) używa jednoczesnego uwierzytelniania równorzędnego (SAE), co zapewnia użytkownikom większe bezpieczeństwo i lepszą ochronę przed atakami, takimi jak ataki słownikowe offline, odzyskiwanie kluczy i fałszowanie wiadomości.
  • WPA3-Enterprise: zapewnia silniejsze metody uwierzytelniania i szyfrowania warstwy łącza oraz opcjonalny 192-bitowy tryb zabezpieczeń dla środowisk o wysokich wymaganiach w zakresie bezpieczeństwa.

Wi-Fi Enhanced Open to nowy standard zabezpieczeń WFA dla sieci publicznych oparty na oportunistycznym szyfrowaniu bezprzewodowym (OWE). Zapewnia szyfrowanie i prywatność w otwartych sieciach bez hasła w takich miejscach jak kawiarnie, hotele, restauracje i biblioteki. Ulepszone otwieranie nie zapewnia uwierzytelniania.

WPA3 i Wi-Fi Enhanced Open zwiększają ogólne bezpieczeństwo Wi-Fi, zapewniając lepszą prywatność i odporność na znane ataki. Wiele urządzeń nie obsługuje jeszcze tych standardów lub nie ma jeszcze aktualizacji oprogramowania, które by je obsługiwały. WFA zaproponowała te tryby przejścia:

  • Tryb przejścia WPA2/WPA3: punkt dostępu obsługuje jednocześnie standardy WPA2 i WPA3. W tym trybie urządzenia z Androidem 10 używają protokołu WPA3, a urządzenia z Androidem 9 lub starszym używają protokołu WPA2 do łączenia się z tym samym punktem dostępu.
  • Tryb przejścia WPA2/WPA3-Enterprise: punkt dostępu obsługuje jednocześnie standardy WPA2-Enterprise i WPA3-Enterprise.
  • Tryb przejścia OWE: punkt dostępu obsługuje jednocześnie standardy OWE i otwarte. W tym trybie urządzenia z Androidem 10 używają do łączenia się protokołu OWE, a urządzenia z Androidem 9 lub starszym łączą się z tym samym punktem dostępu bez szyfrowania.

Android 12 obsługuje wskazanie wyłączenia przejścia, mechanizm, który nakazuje urządzeniu nie używać WPA2, a zamiast tego używać WPA3. Gdy urządzenie otrzyma tę informację, użyje WPA3 do połączenia się z siecią WPA3, która obsługuje tryb przejściowy. Android 12 obsługuje też wymianę uwierzytelniającą WPA3 Hash-to-Element (H2E). Więcej informacji znajdziesz w specyfikacji WPA3.

WPA3 i Wi-Fi Enhanced Open są obsługiwane tylko w trybie klienta.

Implementacja

Aby obsługiwać WPA3 i Wi-Fi Enhanced Open, zaimplementuj interfejs HAL Supplicant. Od Androida 13 interfejs używa AIDL do definiowania HAL. W przypadku wersji starszych niż Android 13 interfejsy i partycje dostawców korzystają z HIDL. Interfejs HIDL znajdziesz w hardware/interfaces/wifi/supplicant/1.3/, a interfejs AIDL – w hardware/interfaces/wifi/supplicant/aidl/.

Aby obsługiwać WPA3 i OWE, musisz spełnić te wymagania:

  • Poprawki jądra systemu Linux obsługujące SAE i OWE

    • cfg80211
    • nl80211
  • wpa_supplicant z obsługą SAE, SUITEB192 i OWE

  • Sterownik Wi-Fi z obsługą SAE, SUITEB192 i OWE

  • Oprogramowanie układowe Wi-Fi z obsługą SAE, SUITEB192 i OWE

  • Chip Wi-Fi z obsługą WPA3 i OWE

W Androidzie 10 dostępne są publiczne metody interfejsu API, które umożliwiają aplikacjom określanie, czy urządzenie obsługuje te funkcje:

WifiConfiguration.java zawiera nowe typy zarządzania kluczami, a także szyfry parowe, szyfry grupowe, szyfry zarządzania grupami i szyfry Suite B, które są wymagane w przypadku OWE, WPA3-Personal i WPA3-Enterprise.

Włącz WPA3 i Wi-Fi Enhanced Open

Aby włączyć WPA3-Personal, WPA3-Enterprise i Wi-Fi Enhanced Open w ramach Androida:

  • WPA3-Personal: dodaj opcję kompilacji CONFIG_SAE do wpa_supplicant pliku konfiguracji.

    # WPA3-Personal (SAE)
    CONFIG_SAE=y
    
  • WPA3-Enterprise: w pliku konfiguracji wpa_supplicant uwzględnij opcje kompilacji CONFIG_SUITEB192CONFIG_SUITEB.

    # WPA3-Enterprise (SuiteB-192)
    CONFIG_SUITEB=y
    CONFIG_SUITEB192=y
    
  • Wi-Fi Enhanced Open: w pliku konfiguracji wpa_supplicant uwzględnij opcję kompilacji CONFIG_OWE.

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

Jeśli te protokoły nie są włączone, użytkownicy nie będą mogli ręcznie dodawać, skanować ani łączyć się z tego typu sieciami.

Weryfikacja

Aby przetestować wdrożenie, przeprowadź te testy.

Testy jednostkowe

Uruchom SupplicantStaIfaceHalTest , aby sprawdzić zachowanie flag funkcji WPA3 i OWE.

atest SupplicantStaIfaceHalTest

Uruchom WifiManagerTest aby sprawdzić działanie publicznych interfejsów API tej funkcji.

atest WifiManagerTest

Testy VTS

Jeśli interfejs HIDL jest zaimplementowany, uruchom to polecenie:

atest VtsHalWifiSupplicantV1_3TargetTest

Jeśli interfejs AIDL jest zaimplementowany, uruchom:

atest VtsHalWifiSupplicantStaIfaceTargetTest