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 oferece um método simples e seguro para:

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

O bootstrap 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 de banda, por exemplo, usando BLE ou NFC.

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

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

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

O Android 10 é compatível com 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 é suportado apenas no modo cliente (o modo SoftAP não é suportado).

Implementação

Para oferecer suporte ao Wi-Fi Easy Connect, implemente a linguagem de design de interface HAL suplicante (HIDL) fornecida no Android Open Source Project (AOSP) em hardware/interfaces/wifi/supplicant/1.2/ ou uma versão posterior.

O seguinte é necessário para dar suporte ao DPP:

  • Patches do kernel do 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

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

Ativando o Wi-Fi Easy Connect

Para habilitar 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

Execute VtsHalWifiSupplicantV1_2Host para testar o comportamento do suplicante HAL v1.2.

vts-tradefed run commandAndExit vts --skip-all-system-status-check --primary-abi-only --skip-preconditions --module VtsHalWifiSupplicantV1_2Host