Seguridad Informática
5. Cifrado (Criptografía)
5.9. FIDO 2 ( Informativo)
FIDO2 (del inglés Fast IDentity Online 2) es un estándar abierto de autenticación sin contraseñas, desarrollado por la FIDO Alliance y el W3C (World Wide Web Consortium).
Su objetivo principal es eliminar el uso de contraseñas tradicionales y reemplazarlas por métodos más seguros y fáciles de usar, como huellas digitales, reconocimiento facial, PINs locales o llaves de seguridad físicas (por ejemplo, YubiKey).
Componentes principales de FIDO2
FIDO2 está compuesto por dos especificaciones:
-
WebAuthn (Web Authentication API)
-
Estándar del W3C.
-
Permite que los navegadores web (Chrome, Firefox, Edge, Safari, etc.) se comuniquen con autenticadores FIDO2 (hardware o software).
-
Se usa en el lado cliente → servidor web.
-
-
CTAP2 (Client to Authenticator Protocol 2)
-
Desarrollado por la FIDO Alliance.
-
Define cómo el dispositivo (PC, teléfono, navegador) se comunica con el autenticador físico o integrado (ej. llave USB, NFC, sensor biométrico).
-
Se usa en el lado cliente → autenticador.
-
Cómo funciona FIDO2
El proceso se basa en criptografía de clave pública (public key cryptography), sin compartir contraseñas entre el usuario y el servidor.
🔸 Etapa 1: Registro
-
El usuario accede a un sitio web que soporta FIDO2 y elige “registrar un nuevo método de autenticación”.
-
El autenticador (por ejemplo, una llave de seguridad o el lector de huellas del teléfono) genera un par de claves: pública y privada.
-
La clave pública se envía al servidor del sitio web y se asocia con la cuenta del usuario.
La clave privada se guarda localmente en el dispositivo y nunca se transmite.
🔸 Etapa 2: Autenticación
-
En el siguiente inicio de sesión, el sitio web envía un reto criptográfico (challenge) al cliente.
-
El autenticador usa la clave privada para firmar digitalmente el reto.
-
El servidor valida la firma usando la clave pública almacenada.
-
Si la firma es válida, se autentica al usuario.
➡️ No hay contraseñas transmitidas ni almacenadas.
➡️ El servidor nunca tiene la clave privada del usuario.
Ventajas principales
| Ventaja | Descripción |
|---|---|
| 🔒 Alta seguridad | No hay contraseñas que robar o filtrar. Evita phishing, keyloggers y ataques de reutilización de contraseñas. |
| ⚡ Rapidez y usabilidad | Ingreso inmediato con huella, PIN o llave de seguridad. |
| 🌐 Estandarización | Funciona en todos los navegadores modernos y sistemas operativos. |
| 🪪 Privacidad | Cada sitio recibe una clave pública distinta (no rastrea usuarios entre sitios). |
Ejemplos de uso
-
Autenticación sin contraseña en Google, Microsoft, GitHub, AWS, Dropbox, etc.
-
Uso de llaves FIDO2 por USB, NFC o Bluetooth (como YubiKey, Google Titan, etc.).
-
Integración en Windows Hello, Android, Apple Passkeys (que también usa FIDO2 como base).
Resumen Gráfico:
Usuario
↓
Autenticador (biométrico, PIN o llave)
↓ (CTAP2)
Navegador / Sistema Operativo
↓ (WebAuthn)
Servidor web (valida con clave pública)
Relación con otros estándares
| Estándar | Rol |
|---|---|
| FIDO U2F (Universal 2nd Factor) | Versión anterior, usada como segundo factor (2FA) |
| FIDO2 | Evolución que permite autenticación passwordless (sin contraseña) |
| Passkeys (Apple/Google) | Implementación práctica de FIDO2 en ecosistemas móviles |
Resumen:
FIDO2 es el estándar actual para autenticación sin contraseñas, basado en criptografía de clave pública y autenticadores locales (biométricos o físicos), diseñado para reemplazar completamente las contraseñas por métodos más seguros, rápidos y privados.