WPA3 y Wi-Fi mejorado abierto

Android 10 presenta compatibilidad con los estándares Wi-Fi Protected Access versión 3 (WPA3) y Wi-Fi Enhanced Open de Wi-Fi Alliance (WFA). Para obtener más información, consulte Seguridad en el sitio de WFA .

WPA3 es un nuevo estándar de seguridad WFA para redes personales y empresariales. Su objetivo es mejorar la seguridad general de Wi-Fi mediante el uso de algoritmos de seguridad modernos y conjuntos de cifrado más potentes. WPA3 tiene dos partes:

  • WPA3-Personal: utiliza autenticación simultánea de iguales (SAE) en lugar de clave precompartida (PSK), lo que brinda a los usuarios protecciones de seguridad más sólidas contra ataques como ataques de diccionario fuera de línea, recuperación de claves y falsificación de mensajes.
  • WPA3-Enterprise: ofrece métodos de autenticación y cifrado de capa de enlace más sólidos, y un modo de seguridad opcional de 192 bits para entornos de seguridad sensibles.

Wi-Fi Enhanced Open es un nuevo estándar de seguridad WFA para redes públicas basado en cifrado inalámbrico oportunista (OWE). Proporciona cifrado y privacidad en redes abiertas, sin contraseña, en áreas como cafeterías, hoteles, restaurantes y bibliotecas. Enhanced Open no proporciona autenticación.

WPA3 y Wi-Fi Enhanced Open mejoran la seguridad general de Wi-Fi, brindando mayor privacidad y solidez contra ataques conocidos. Como muchos dispositivos aún no son compatibles con estos estándares o aún no han tenido actualizaciones de software para admitir estas funciones, WFA ha propuesto los siguientes modos de transición:

  • Modo de transición WPA2/WPA3: el punto de acceso de servicio admite los estándares WPA2 y WPA3 simultáneamente. En este modo, los dispositivos con Android 10 usan WPA3 para conectarse y los dispositivos con Android 9 o versiones anteriores usan WPA2 para conectarse al mismo punto de acceso.
  • Modo de transición WPA2/WPA3-Enterprise: el punto de acceso de servicio admite los estándares WPA2-Enterprise y WPA3-Enterprise simultáneamente.
  • Modo de transición OWE: el punto de acceso de servicio admite estándares abiertos y OWE simultáneamente. En este modo, los dispositivos con Android 10 usan OWE para conectarse y los dispositivos con Android 9 o versiones anteriores se conectan al mismo punto de acceso sin ningún cifrado.

Android 12 admite la indicación de desactivación de transición, un mecanismo que indica a un dispositivo que no use WPA2 y use WPA3 en su lugar. Cuando un dispositivo recibe esta indicación, utiliza WPA3 para conectarse a una red WPA3 que admita un modo de transición. Android 12 también admite el intercambio de autenticación WPA3 Hash-to-Element (H2E). Para obtener más información, consulte la especificación WPA3 .

WPA3 y Wi-Fi Enhanced Open solo se admiten en modo cliente.

Implementación

Para admitir WPA3 y Wi-Fi Enhanced Open, implemente la interfaz Supplicant HAL. A partir de Android 13, la interfaz utiliza AIDL para la definición de HAL. Para versiones anteriores a Android 13, las interfaces y particiones de proveedores utilizan HIDL. La interfaz HIDL se puede encontrar en hardware/interfaces/wifi/supplicant/1.3/ , y la interfaz AIDL se puede encontrar en hardware/interfaces/wifi/supplicant/aidl/ .

Se requiere lo siguiente para admitir WPA3 y OWE:

  • Parches del kernel de Linux para soportar SAE y OWE

    • cfg80211
    • nl80211
  • wpa_supplicant con soporte para SAE, SUITEB192 y OWE

  • Controlador Wi-Fi compatible con SAE, SUITEB192 y OWE

  • Firmware Wi-Fi compatible con SAE, SUITEB192 y OWE

  • Chip Wi-Fi compatible con WPA3 y OWE

Los métodos API públicos están disponibles en Android 10 para permitir que las aplicaciones determinen la compatibilidad del dispositivo con estas funciones:

WifiConfiguration.java contiene nuevos tipos de administración de claves, así como cifrados por pares, cifrados de grupo, cifrados de administración de grupos y cifrados de Suite B, que son necesarios para OWE, WPA3-Personal y WPA3-Enterprise.

Habilitación de WPA3 y Wi-Fi mejorado abierto

Para habilitar WPA3-Personal, WPA3-Enterprise y Wi-Fi Enhanced Open en el marco de Android:

  • WPA3-Personal: Incluya la opción de compilación CONFIG_SAE en el archivo de configuración wpa_supplicant .

    # WPA3-Personal (SAE)
    CONFIG_SAE=y
    
  • WPA3-Enterprise: incluya las opciones de compilación CONFIG_SUITEB192 y CONFIG_SUITEB en el archivo de configuración wpa_supplicant .

    # WPA3-Enterprise (SuiteB-192)
    CONFIG_SUITEB=y
    CONFIG_SUITEB192=y
    
  • Wi-Fi mejorado abierto: incluya la opción de compilación CONFIG_OWE en el archivo de configuración wpa_supplicant .

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

Si WPA3-Personal, WPA3-Enterprise o Wi-Fi Enhanced Open no están habilitados, los usuarios no podrán agregar, escanear ni conectarse manualmente a estos tipos de redes.

Validación

Para probar su implementación, ejecute las siguientes pruebas.

Pruebas unitarias

Ejecute SupplicantStaIfaceHalTest para verificar el comportamiento de los indicadores de capacidad para WPA3 y OWE.

atest SupplicantStaIfaceHalTest

Ejecute WifiManagerTest para verificar el comportamiento de las API públicas para esta función.

atest WifiManagerTest

Prueba de integración (ACTS)

Para ejecutar una prueba de integración, utilice el archivo Android Comms Test Suite (ACTS), WifiWpa3OweTest.py , ubicado en tools/test/connectivity/acts_tests/tests/google/wifi .

pruebas VTS

Si la interfaz HIDL está implementada, ejecute:

atest VtsHalWifiSupplicantV1_3TargetTest

Si la interfaz AIDL está implementada, ejecute:

atest VtsHalWifiSupplicantStaIfaceTargetTest