Proste połączenie z Wi-Fi

W Androidzie 10 wprowadziliśmy obsługę Wi-Fi Easy Protokół Connect nazywany też protokołem obsługi administracyjnej urządzeń (DPP). Wi-Fi Easy Connect została wprowadzona przez Wi-Fi Alliance (WFA) jako alternatywę dla WPS (Wi-Fi Protected Setup). Protokół WPS został wycofany w Androidzie 9.

Wi-Fi Easy Connect pozwala w prosty i bezpieczny sposób na:

  • wprowadzanie do sieci urządzeń Wi-Fi (w tym urządzeń bez interfejsu graficznego), bez wpisywania hasła.
  • łączyć się z sieciami Wi-Fi bez znajomości i wprowadzania hasła;

Wczytywanie i uwierzytelnianie jest konfigurowane za pomocą identyfikatora URI, który jest pobierany przez zeskanowanie kodu QR (za pomocą aparatu) lub przez skonfigurowanie urządzenia spoza zakresu na przykład za pomocą BLE lub NFC.

Wi-Fi Easy Connect korzysta z zaszyfrowanego kanału do przesyłania danych logowania do Wi-Fi między a ze względu na to, że są używane publiczne ramki działań, punktów dostępu.

Android 10 obsługuje Easy Connect tylko w tych krajach: tryb inicjatora (tryb respondenta to nieobsługiwane). Obsługiwane są następujące tryby działania:

  • Initiator-Configurator: wysyłanie danych logowania do sieci do nowego urządzenia. przez zeskanowanie jej kodu QR.
  • Initiator-enrollee: połącz się z siecią, skanując jej kod QR.

Android 10 obsługuje protokół klucza PSK (PSK) dla WPA2 i protokołu SAE (równoczesnego uwierzytelniania) w przypadku WPA3.

Wi-Fi Easy Connect jest obsługiwane tylko w trybie klienta (tryb SoftAP nie jest obsługiwane).

Implementacja

Aby zapewnić obsługę Wi-Fi Easy Connect, wdróż interfejs dostawcy udostępnione w ramach projektu Android Open Source Project (AOSP). W zależności od wdrożonego interfejsu będzie to:

Do obsługi DPP wymagane są:

  • Poprawki jądra systemu Linux obsługujące DPP:

    • cfG80211
    • nl80211
  • wpa_supplicant z obsługą DPP

  • Sterownik Wi-Fi z obsługą DPP

  • Oprogramowanie Wi-Fi z obsługą DPP

Publiczne interfejsy API są dostępne w Androidzie 10 do użytku przez: Aplikacje:

Włącz Wi-Fi Easy Connect

Aby włączyć Wi-Fi Easy Connect w strukturze Androida, dodaj Kompilacja: CONFIG_DPP w pliku konfiguracji wpa_supplicant, android.config:

# Easy Connect (Device Provisioning Protocol - DPP)
CONFIG_DPP=y

Weryfikacja

Aby sprawdzić implementację, przeprowadź te testy.

Testy jednostkowe

Bieganie DppManagerTest w celu sprawdzenia działania flag możliwości DPP.

atest DppManagerTest

Testy VTS

Jeśli interfejs HIDL jest zaimplementowany, uruchom polecenie VtsHalWifiSupplicantV1_2TargetTest w celu przetestowania działania dodatkowego HAL w wersji 1.2.

Jeśli interfejs AIDL jest zaimplementowany, uruchom polecenie VtsHalWifiSupplicantStaIfaceTargetTest aby przetestować działanie dodatkowego HAL.