Header Ads Widget

Ticker

6/recent/ticker-posts

Introducción a FIDO2 para la autenticación biométrica

 

En estos tiempos de separación y trabajo remoto para todos, nuestra dependencia de dispositivos móviles y de mano para mantenernos en contacto nunca ha sido más importante. A medida que el uso de dispositivos continúa evolucionando, el papel de la biometría para la autenticación también se está volviendo cada vez más común.

Identificar al usuario con una huella digital, rostro o voz brinda beneficios de seguridad y mejora la experiencia del usuario. Este acoplamiento ha sido reforzado por regulaciones tales como estándares técnicos para la Autenticación Sólida de Clientes dentro de PSD2 , que incluye la “Inherencia” como un factor aceptable en cómo nos autenticamos.

La biometría se ha convertido en la piedra angular de muchas aplicaciones y será fundamental en la futura economía digital. Sin embargo, no existen muchos estándares abiertos globales para la autenticación biométrica e, históricamente, los datos biométricos se han vinculado a sistemas operativos o aplicaciones específicos.

En esta publicación, echamos un vistazo al proyecto FIDO2 y al estándar de autenticación web  (WebAuthn), estándares abiertos emergentes que tienen el potencial de cambiar significativamente la forma en que se obtienen las pruebas de autenticación biométrica. Veremos cómo funcionan los estándares, qué mejoras ofrecen y cómo esto podría mejorar los enfoques biométricos existentes.

¿Qué son FIDO2 y WebAuthn?

Como habrás adivinado, FIDO2 no es la segunda versión del perro favorito de alguien. La Alianza FIDO ( F ast ID entity O nline) es una organización cuya misión es erradicar las contraseñas en favor de formas de autenticación más fuertes. FIDO creó el Proyecto FIDO2 , que utiliza dos nuevas especificaciones:

  • La especificación de autenticación web (WebAuthn) , que está definida por W3C y permite el uso de la autenticación FIDO a través de una API estándar implementada en los navegadores.
  • El protocolo de cliente a autenticador (CTAP), que permite que dispositivos externos, como teléfonos móviles, funcionen con navegadores compatibles con WebAuthn.

Webauthn.io proporciona muchos recursos para realizar demostraciones e implementar la especificación WebAuthn.

Estos estándares pretenden hacer realidad la autenticación sin contraseña ampliando los casos de uso que ofrecen los protocolos FIDO existentes como U2F y UAF. ¿Por qué sin contraseña? Bueno, los beneficios son bastante obvios; Renunciar a las credenciales secretas es el núcleo de la mayoría de los ataques de phishing . Las credenciales a las que solo se puede acceder con un biométrico de usuario en el dispositivo de un usuario son intrínsecamente más seguras. Mediante el uso de credenciales criptográficas, y una arquitectura que respalda la separación de preocupaciones y escalabilidad, derrotar el phishing está en el centro de lo que FIDO2 se propone lograr.

La biometría como factor de autenticación obviamente ha estado disponible durante algún tiempo y es una característica importante de los sistemas operativos móviles. Las aplicaciones pueden delegar la autenticación a la plataforma, lo que permite a los usuarios beneficiarse de una mejor experiencia al autenticarse utilizando las credenciales biométricas integradas. Una característica importante de WebAuthn es que lo desacopla del sistema operativo móvil. En lugar de confiar en el resultado de esa delegación, generalmente a través de una respuesta de estilo booleano, el protocolo define los medios para proporcionar pruebas de autenticación sólidas afirmadas criptográficamente que pueden ser verificadas por una parte que confía mientras se mantiene el registro biométrico subyacente altamente seguro.Esto significa que WebAuthn permite un grado mucho mayor de portabilidad, con las mismas pruebas de autenticación admitidas en computadoras de escritorio con un dispositivo de entrada biométrica y en todos los dispositivos a través de CTAP.

Todo muy bien, se podría decir, pero esto es solo una especificación. ¿Quién lo está implementando realmente? Bueno, aquí viene el punto interesante: Google, Apple, Microsoft y muchos otros gigantes tecnológicos forman parte de la Alianza FIDO . Con soporte para iPhone y iPad como autenticador en iOS 14 , WebAuthn se está preparando para el gran momento. Aún así, la especificación seguirá evolucionando: el estándar de “Nivel 2” aún se encuentra en una etapa de Borrador de Trabajo y, de acuerdo con los niveles de certificación propuestos , serán especificaciones de hasta 3+. Sin embargo, el Nivel 1 básico está ahí y está respaldado por implementaciones del mundo real.

Cómo funciona

El número de participantes en la Alianza FIDO da a entender que hay varias partes móviles en el funcionamiento de WebAuthn. El proceso para obtener un gesto biométrico y recibir las pruebas de autenticación resultantes se basa en varios componentes:

  • Parte de confianza de WebAuthn : La parte de confianza de WebAuthn (WRP) es la entidad que se basa en las pruebas de autenticación creadas por el autenticador cuando el usuario proporciona su gesto biométrico. El WRP implementará tanto un Cliente en JavaScript en un dominio determinado, al que está vinculada una credencial, como un Servidor responsable de verificar las pruebas de autenticación y cualquier otra cosa que se considere "segura".
  • API de WebAuthn : esto se implementa en el navegador y proporciona acceso a las capacidades biométricas subyacentes del dispositivo local o remoto, llamado Autenticador.
  • Autenticador : este dispositivo contiene la clave privada vinculada a una credencial determinada y es responsable de solicitar al usuario que proporcione su gesto biométrico. Puede ser un teléfono, tableta o dispositivo USB que haya pasado por la certificación FIDO y se puede acceder "en la plataforma" o mediante CTAP a través de Bluetooth o NFC.
  • Ser humano (también conocido como El Usuario) : El usuario de una determinada aplicación y titular del gesto biométrico que interactúa con el Autenticador.

Si bien existen algunas idiosincrasias que dependen de la combinación de componentes y cómo los WRP implementan su software, trabajan juntos para obtener un gesto biométrico del ser humano. El proceso consta de varios pasos:

Tenga en cuenta que el diagrama y la descripción tienen la intención de ser un esquema general y no describen la secuencia en detalle explícito y exacto.

  1. Asignar credencial humana a biométrica . El usuario navega a un sitio web que requiere autenticación, que está alojado por el WRP en un dominio determinado. Han creado previamente una credencial en este dominio, y esta credencial está vinculada a ella; solo se puede usar aquí.
  2. Realizar solicitud de autenticación web : según el WRP y los comportamientos admitidos en el Autenticador (específicamente una función llamada Claves residentes), el WRP solicita una credencial o el Autenticador puede detectar las credenciales que funcionan para el dominio. La solicitud de autenticación se realiza en la API de WebAuthn utilizando el navigator.credentials.getmétodo. La solicitud incluye un desafío aleatorio generado por el WRP en su servidor.
  3. Solicitar al usuario un gesto : al invocar la API, el autenticador se hace cargo y solicita al usuario el gesto biométrico asociado a la credencial vinculada al WRP.
  4. Verificar la afirmación de autenticación : el usuario responde, tras lo cual el autenticador crea una afirmación de autenticación. Esta afirmación incluye varios atributos que describen el evento de autenticación, que se firma con la clave privada asociada a la credencial. El Authenticator responde a la API de WebAuthn, que devuelve la respuesta al WRP, quien luego puede verificar la firma. Esta verificación generalmente ocurre en el servidor FIDO del WRP en un contexto suficientemente seguro, lejos de miradas indiscretas en el navegador.
  5. On Your Way, Ciudadano : Con el usuario debidamente autenticado, el WRP puede proporcionar contenido privilegiado al usuario.

Estos pasos muestran los niveles significativos de desacoplamiento en la especificación. Significa que, con la certificación adecuada de FIDO, los componentes se pueden aprovisionar en aplicaciones y dispositivos ubicuos. Todos los navegadores importantes ahora tienen soporte de alguna forma para la API de WebAuthn, y todos los principales proveedores de plataformas, como Android, iOS y Windows Hello, funcionan como autenticadores. Es probable que esta disponibilidad genere algunos casos de uso muy interesantes. Como ejemplo, veremos la Autorización del dispositivo.

FIDO2 en el mundo real: autorización del dispositivo

La autorización de dispositivos es un escenario del mundo real en el que WebAuthn podría proporcionar un valor significativo. Es una actividad que los consumidores realizan con frecuencia; por ejemplo, compre un nuevo televisor, Fire TV Stick o Chromecast, instale algunas aplicaciones y, en algún momento, autentíquese para iniciar sesión en Plex, Netflix, Disney + o cualquiera que sea su aplicación favorita para la transmisión.

El mecanismo de autenticación varía según la aplicación, pero con frecuencia usan una URL personalizada y un código de acceso único para iniciar sesión desde un dispositivo más capaz con un navegador (para evitar el inicio de sesión con contraseña a través de un control remoto de TV, por ejemplo). Ha habido intentos de formalizar este enfoque a través de la concesión de autorización de dispositivo bajo OAuth 2.0. Pero, como señala el borrador de la especificación, existen varias consideraciones de seguridad, como el phishing remoto, que deben tenerse en cuenta al implementar este tipo de concesión.

El tipo de concesión de autorización de dispositivo se debatió en nuestra Cumbre de plataforma 2019. Descubra 3 formas poderosas de aprovechar al máximo OAuth 2.0 .

Una forma de mejorar la seguridad sería agregar un paso de autenticación estandarizado. Pero, ¿y si esa autenticación se basara en WebAuthn, donde el proveedor de la aplicación permite al usuario autenticarse biométricamente? En este escenario:

  • En la instalación, la aplicación muestra un código QR que el usuario escanea usando su teléfono celular.
  • El código QR está codificado con una URL que dirige al usuario al sitio web de la aplicación, que es el WRP. El usuario ha registrado previamente su biométrico, con su teléfono celular como autenticador, en el WRP.
  • El usuario proporciona su gesto biométrico, que es verificado por el WRP.
  • En el backend, el WRP le indica a la aplicación (ya sea a través de un webhook o mediante un sondeo desde la aplicación) que la instalación puede completarse. Finalmente, se muestra la página de inicio del usuario, con todas sus preferencias.

Hay varias ventajas notables de este enfoque:

  • Es altamente resistente a los ataques de phishing, lo que significa que solo las personas autorizadas para acceder a la cuenta pueden iniciar sesión y permitir la instalación.
  • Es excelente para hacer cumplir los controles parentales: no más niños instalando aplicaciones después de descubrir la contraseña "secreta" de mamá o papá.
  • WebAuthn permite una experiencia de usuario fluida sin la necesidad de instalar una aplicación complementaria en el dispositivo de confianza, pero con suficiente fricción para que el ser humano confíe en lo que está sucediendo. Visite la URL en su teléfono celular (que también es su Autenticador), ya sea ingresada o mediante un código QR como sugiere el estándar , y simplemente presente su gesto biométrico para autorizar la instalación.
  • La propia implementación de WebAuthn también mejora la seguridad de la transferencia entre el proveedor de la aplicación y la plataforma de destino. Por ejemplo, la aplicación puede proporcionar pruebas de autenticación sólidas a la plataforma, lo que permite que la plataforma se convierta en un punto de cumplimiento y proporcione una solidez en profundidad. Esto podría hacerse de forma nativa utilizando la Aserción de autenticación codificada en CBOR altamente compacta o envolviendo las pruebas en un protocolo como OpenID Connect que está orientado hacia la federación de identidad.
¿Tienes curiosidad por saber más sobre OpenID Connect? Lea nuestro  manual de OpenID Connect .

WebAuthn, en este contexto, por lo tanto, puede proporcionar factores de autenticación más fuertes y pruebas de autenticación para respaldar una experiencia de usuario mejorada que solo se inhibe de manera positiva. También proporciona una base para mejoras adicionales, por ejemplo, para realizar la autorización de pago en la aplicación, que pueden proporcionar un valor significativo en el futuro.

Pensamientos finales

La biometría juega un papel importante en la forma en que se diseñan las aplicaciones, lo que ya se refleja en la ubicuidad de los métodos de autenticación de huellas dactilares o reconocimiento facial utilizados en la economía de las aplicaciones móviles. A medida que esta tecnología mejore, el papel de la biometría será cada vez más significativo.

Sin embargo, en un mundo conectado construido sobre estándares abiertos y API, comunicar pruebas de que se ha realizado la autenticación biométrica, sin comprometer los datos biométricos en sí, será fundamental para construir sistemas distribuidos y seguros.

Si bien FIDO2 ayuda con las pruebas de autenticación para el evento biométrico, con el tiempo, la comunidad debería buscar combinarlo con otros estándares como OpenID Connect . Por ejemplo, esto podría lograrse con un perfil que defina las reclamaciones de token de identificación estándar que representan las propiedades de la afirmación de autenticación.

Además, la Alianza FIDO también está extremadamente enfocada en demostrar los beneficios para la experiencia del usuario que WebAuthn puede ofrecer. Ha creado un repositorio de Github dedicado a resaltar las características clave. Las integraciones entre estándares y un enfoque en cómo autenticarse biométricamente solo pueden servir para fortalecer las pruebas de autenticación y ayudar a los proveedores de plataformas a construir soluciones seguras que brinden una excelente experiencia de usuario para seres humanos reales.

Publicar un comentario

0 Comentarios