Wi-Fi Easy Connect

Android 10 est compatible avec le protocole Wi-Fi Easy Connect, également appelé protocole de provisionnement d'appareil (DPP). La fonctionnalité Wi-Fi Easy Connect a été introduite par la Wi-Fi Alliance (WFA) comme alternative à la configuration Wi-Fi protégée (WPS). Le WPS est obsolète dans Android 9.

Wi-Fi Easy Connect offre une méthode simple et sécurisée pour :

  • Intégrez des appareils Wi-Fi embarqués (y compris des appareils sans écran) à un réseau sans saisir de mot de passe.
  • Rejoignez des réseaux Wi-Fi sans connaître ni saisir de mot de passe.

L'amorçage et l'authentification sont configurés à l'aide d'un URI, qui est obtenu en scannant un code QR (à l'aide d'un appareil photo) ou qui est configuré hors bande, par exemple à l'aide de BLE ou de NFC.

Wi-Fi Easy Connect utilise un canal chiffré pour envoyer les identifiants Wi-Fi entre les appareils. De plus, comme des trames d'action publiques sont utilisées, les appareils peuvent utiliser les points d'accès existants.

Android 10 n'est compatible avec Wi-Fi Easy Connect qu'en mode initiateur (le mode répondeur n'est pas compatible). Les modes de fonctionnement suivants sont acceptés :

  • Initiateur-configurateur : envoie les identifiants réseau à un nouvel appareil en scannant son code QR.
  • Initiateur-Participant : rejoignez un réseau en scannant son code QR.

Android 10 est compatible avec le protocole de clé pré-partagée (PSK) pour WPA2 et avec le protocole d'authentification simultanée des égaux (SAE) pour WPA3.

Wi-Fi Easy Connect n'est compatible qu'avec le mode client (le mode SoftAP n'est pas compatible).

Implémentation

Pour prendre en charge Wi-Fi Easy Connect, implémentez l'interface de demandeur fournie dans le projet Android Open Source (AOSP). Selon l'interface implémentée, cela se trouve à l'emplacement suivant :

Les éléments suivants sont requis pour prendre en charge DPP :

  • Correctifs du noyau Linux pour prendre en charge DPP :

    • cfg80211
    • nl80211
  • wpa_supplicant avec prise en charge de DPP

  • Pilote Wi-Fi compatible avec DPP

  • Micrologiciel Wi-Fi compatible avec DPP

Les API publiques suivantes sont disponibles dans Android 10 pour être utilisées par les applications :

Activer Wi-Fi Easy Connect

Pour activer Wi-Fi Easy Connect dans le framework Android, incluez l'option de compilation CONFIG_DPP dans le fichier de configuration wpa_supplicant, android.config :

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

Validation

Pour tester votre implémentation, exécutez les tests suivants.

Tests unitaires

Exécutez DppManagerTest pour vérifier le comportement des indicateurs de capacité pour DPP.

atest DppManagerTest

Tests VTS

Si l'interface HIDL est implémentée, exécutez VtsHalWifiSupplicantV1_2TargetTest pour tester le comportement du supplicant HAL v1.2.

Si l'interface AIDL est implémentée, exécutez VtsHalWifiSupplicantStaIfaceTargetTest pour tester le comportement du HAL du supplicant.