WPA3 e Wi-Fi Enhanced Open

O Android 10 introduz o suporte à rede Wi-Fi Alliance Wi-Fi Protected Access versão 3 (WPA3) e Wi-Fi Enhanced Open (WFA) de conformidade. Para mais informações, consulte Segurança no site do WFA (em inglês).

O WPA3 é um novo padrão de segurança WFA para usuários redes VPC. O objetivo é melhorar a segurança geral do Wi-Fi usando recursos de segurança modernos algoritmos e pacotes de criptografia mais fortes. O WPA3 tem duas partes:

  • WPA3-Personal:usa a autenticação simultânea de igual (SAE) em vez da chave pré-compartilhada (PSK), oferecendo aos usuários mais segurança proteções contra ataques, como ataques de dicionário off-line, recuperação e falsificação de mensagens.
  • WPA3-Enterprise:oferece autenticação e camadas de link mais fortes. métodos de criptografia e um modo de segurança opcional de 192 bits para e ambientes de segurança.

O Wi-Fi Enhanced Open é um novo padrão de segurança do WFA para baseadas em criptografia sem fio oportunista (OWE, na sigla em inglês). Oferece criptografia e privacidade em redes abertas e não protegidas por senhas em áreas como cafés, hotéis, restaurantes e bibliotecas. O Enhanced Open não oferece autenticação.

O WPA3 e o Wi-Fi Enhanced Open melhoram a segurança geral do Wi-Fi, oferecendo privacidade e resistência contra ataques conhecidos. Como muitos dispositivos ainda não têm suporte esses padrões ou que ainda não tiveram upgrades de software para dar suporte a esses recursos, A WFA propôs os seguintes modos de transição:

  • Modo de transição WPA2/WPA3: o ponto de acesso de exibição é compatível com WPA2 e WPA3 simultaneamente. Neste modo, o Android 10 dispositivos usam WPA3 para se conectar, e outros com Android 9 ou versões anteriores usam WPA2 para se conectar ao mesmo ponto de acesso.
  • Modo de transição WPA2/WPA3-Enterprise:o ponto de acesso de exibição oferece suporte aos padrões WPA2-Enterprise e WPA3-Enterprise simultaneamente.
  • Modo de transição OWE:o ponto de acesso de exibição oferece suporte aos métodos OWE e Open concomitantemente. Neste modo, o Android 10 dispositivos usam OWE para se conectar e dispositivos com Android 9 ou versões anteriores conectam ao mesmo ponto de acesso sem precisar de criptografia.

O Android 12 oferece suporte à indicação de desativação de transição, um mecanismo que instrui um dispositivo a não usar o WPA2 e a usar o WPA3. Quando um dispositivo recebe essa indicação, ele usa WPA3 para se conectar a um WPA3 com suporte para um modo de transição. Android 12 também oferece suporte à troca de autenticação WPA3 Hash-to-Element (H2E). Para mais mais informações, consulte a Especificação do WPA3 (em inglês).

O WPA3 e o Wi-Fi Enhanced Open são compatíveis apenas com o modo cliente.

Implementação

Para oferecer suporte a WPA3 e Wi-Fi Enhanced Open, implemente a interface HAL suplicante. No Android 13 e versões mais recentes, a interface usa a AIDL para a definição da HAL. Para versões anteriores ao Android 13, e partições de fornecedores usam o HIDL. A interface do HIDL pode ser encontrada em hardware/interfaces/wifi/supplicant/1.3/, e a interface AIDL pode ser encontrada em hardware/interfaces/wifi/supplicant/aidl/,

Confira a seguir os requisitos para oferecer suporte a WPA3 e OWE:

  • Patches do kernel do Linux para oferecer suporte a SAE e OWE

    • (cfg80211)
    • nl80211
  • wpa_supplicant com suporte para SAE, SUITEB192 e OWE

  • Driver de Wi-Fi compatível com SAE, SUITEB192 e OWE

  • Firmware de Wi-Fi com suporte para SAE, SUITEB192 e OWE

  • Chip Wi-Fi compatível com WPA3 e OWE

Métodos de API pública estão disponíveis no Android 10 para permitir para determinar o suporte do dispositivo para estes recursos:

WifiConfiguration.java contém novos tipos de gerenciamento de chaves, bem como cifras em pares, cifras de grupo, de gerenciamento de grupos, e as criptografias do Pacote B, que são necessárias para OWE, WPA3-Personal e WPA3-Enterprise.

Ativar WPA3 e Wi-Fi Enhanced Open

Para ativar o WPA3-Personal, o WPA3-Enterprise e o Wi-Fi Enhanced Open no Android framework:

  • WPA3-Personal:inclui a opção de compilação CONFIG_SAE no arquivo de configuração wpa_supplicant.

    # WPA3-Personal (SAE)
    CONFIG_SAE=y
    
  • WPA3-Enterprise:inclua CONFIG_SUITEB192 e CONFIG_SUITEB. opções de compilação no arquivo de configuração wpa_supplicant.

    # WPA3-Enterprise (SuiteB-192)
    CONFIG_SUITEB=y
    CONFIG_SUITEB192=y
    
  • Wi-Fi Enhanced Open: inclui a opção de compilação CONFIG_OWE no wpa_supplicant.

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

Se o WPA3-Personal, o WPA3-Enterprise ou o Wi-Fi Enhanced Open não estiverem ativados, os usuários não poderão adicionar, procurar ou se conectar manualmente a esses tipos de redes.

Validação

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

Testes de unidade

Executar SupplicantStaIfaceHalTest para verificar o comportamento das flags de capacidade para WPA3 e OWE.

atest SupplicantStaIfaceHalTest

Executar WifiManagerTest para verificar o comportamento das APIs públicas desse recurso.

atest WifiManagerTest

Testes VTS

Se a interface HIDL estiver implementada, execute:

atest VtsHalWifiSupplicantV1_3TargetTest

Se a interface AIDL estiver implementada, execute:

atest VtsHalWifiSupplicantStaIfaceTargetTest