Conexão fácil Wi-Fi

O Android 10 apresenta suporte para o protocolo Wi-Fi Easy Connect, também conhecido como protocolo de provisionamento de dispositivo (DPP). O Wi-Fi Easy Connect foi introduzido pela Wi-Fi Alliance (WFA) como uma alternativa ao Wi-Fi Protected Setup (WPS). O WPS foi preterido no Android 9.

O Wi-Fi Easy Connect fornece um método simples e seguro para:

  • Dispositivos Wi-Fi integrados (incluindo dispositivos sem cabeça) a uma rede sem inserir uma senha.
  • Junte-se a redes Wi-Fi sem saber ou digitar uma senha.

O bootstrapping e a autenticação são configurados usando um URI, que é adquirido pela digitalização de um código QR (usando uma câmera) ou configurado fora da banda, por exemplo, usando BLE ou NFC.

O Wi-Fi Easy Connect usa um canal criptografado para enviar credenciais de Wi-Fi entre dispositivos e, como são usados ​​quadros de ação públicos, os dispositivos podem usar pontos de acesso existentes.

O Android 10 oferece suporte ao Wi-Fi Easy Connect apenas no modo iniciador (o modo respondedor não é compatível). Estes modos de operação são suportados:

  • Iniciador-configurador: envie credenciais de rede para um novo dispositivo digitalizando seu código QR.
  • Initiator-Enrollee: Junte-se a uma rede digitalizando o código QR da rede.

O Android 10 suporta o protocolo de chave pré-compartilhada (PSK) para WPA2 e o protocolo de autenticação simultânea de iguais (SAE) para WPA3.

O Wi-Fi Easy Connect é compatível apenas no modo cliente (o modo SoftAP não é compatível).

Implementação

Para oferecer suporte ao Wi-Fi Easy Connect, implemente a interface do suplicante fornecida no Android Open Source Project (AOSP). Dependendo da interface que foi implementada, fica em:

Os itens a seguir são necessários para oferecer suporte ao DPP:

  • Patches do kernel Linux para suportar DPP:

    • cfg80211
    • nl80211
  • wpa_supplicant com suporte para DPP

  • Driver Wi-Fi com suporte para DPP

  • Firmware Wi-Fi com suporte para DPP

APIs públicas estão disponíveis no Android 10 para uso por aplicativos:

Ativando o Wi-Fi Easy Connect

Para ativar o Wi-Fi Easy Connect na estrutura do Android, inclua a opção de compilação CONFIG_DPP no arquivo de configuração wpa_supplicant , android.config :

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

Validação

Para testar sua implementação, execute os testes a seguir.

testes de unidade

Execute DppManagerTest para verificar o comportamento dos sinalizadores de capacidade para DPP.

atest DppManagerTest

Teste de integração (ACTS)

Para executar um teste de integração, use o arquivo Android Comms Test Suite (ACTS), WifiDppTest.py , localizado em tools/test/connectivity/acts_tests/tests/google/wifi .

testes VTS

Se a interface HIDL for implementada, execute VtsHalWifiSupplicantV1_2TargetTest para testar o comportamento do suplicante HAL v1.2.

Se a interface AIDL for implementada, execute VtsHalWifiSupplicantStaIfaceTargetTest para testar o comportamento do suplicante HAL.