Autenticación FIDO

Una representación de entidades involucradas en la autenticación: un servidor, un navegador web y un dispositivo.

La autenticación FIDO (Fast IDentity Online) es un conjunto de estándares para una autenticación rápida, simple y sólida.

Estos estándares son desarrollados por FIDO Alliance, una asociación de la industria con representantes de una variedad de organizaciones, incluidas Google, Microsoft, Mozilla y Yubico. Los estándares permiten la autenticación multifactor, sin contraseña y resistente al phishing. Mejoran la experiencia de usuario en línea al hacer que la autenticación sólida sea más fácil de implementar y usar.

Algunas de las herramientas y aplicaciones más populares de la web ya utilizan la autenticación FIDO, incluidas las cuentas de Google, Dropbox, GitHub, Twitter y Yahoo Japón.


  • Los usuarios ganan. Los usuarios se benefician de los flujos de autenticación que son rápidos y seguros.

  • Los desarrolladores ganan. Los desarrolladores de aplicaciones y web pueden utilizar API sencillas para autenticar a los usuarios de forma segura.

  • Las empresas ganan . Los propietarios de sitios y los proveedores de servicios pueden proteger a sus usuarios de forma más eficaz.

¿Cómo funciona la autenticación FIDO?

En un flujo de autenticación FIDO, una parte que confía usa API para interactuar con el autenticador de un usuario.

Fiesta de confianza

Representación de un enlace seguro entre una aplicación web y un servidor web.

La parte que confía es su servicio, compuesto por un servidor back-end y una aplicación front-end.

Solicitud

Durante un flujo de autenticación o registro, la aplicación utiliza API del lado del cliente como WebAuthn y FIDO2 para Android para crear y verificar las credenciales de usuario con el autenticador .

Esto implica pasar un desafío criptográfico del servidor al autenticador y devolver la respuesta del autenticador al servidor para su validación.

Servidor

El servidor almacena la información de la cuenta y la credencial de clave pública del usuario.

Durante un flujo de autenticación o registro, el servidor genera un desafío criptográfico en respuesta a una solicitud de la aplicación. Luego evalúa la respuesta al desafío.

La Alianza FIDO mantiene una lista de productos de terceros certificados, incluidas las soluciones de servidor. También están disponibles varios servidores FIDO de código abierto; consulte WebAuthn Awesome para obtener más información.

Autenticador

Un usuario está a punto de iniciar sesión en una aplicación web en un dispositivo móvil.

Un autenticador FIDO genera credenciales de usuario. Una credencial de usuario tiene un componente de clave pública y privada. La clave pública se comparte con su servicio, mientras que el autenticador mantiene en secreto la clave privada.

Un autenticador puede ser parte del dispositivo del usuario o una pieza externa de hardware o software.

El autenticador se utiliza en dos interacciones básicas: registro y autenticación .

Registro

En un escenario de registro, cuando un usuario se registra para obtener una cuenta en un sitio web, el autenticador genera un nuevo par de claves que solo se puede usar en su servicio. La clave pública y un identificador de la credencial se almacenarán con el servidor.

Autenticación

En un escenario de autenticación, cuando un usuario regresa al servicio en un nuevo dispositivo, o después de que expira su sesión, el autenticador debe proporcionar una prueba de la clave privada del usuario. Lo hace respondiendo a un desafío criptográfico emitido por el servidor.

Para verificar la identidad del usuario, algunos tipos de autenticadores utilizan datos biométricos como huellas dactilares o reconocimiento facial. Otros usan un PIN. En algunos casos, se utiliza una contraseña para verificar al usuario y el autenticador solo proporciona autenticación de segundo factor.

Próximos pasos

Toma un laboratorio de código:

Aprender más sobre: