Passkeys y llaves de seguridad
Módulo 2: Contraseñas e inicio de sesión · Tiempo de lectura: 10 minutos
Objetivo de aprendizaje: Después de esta lección podrá explicar por qué los passkeys y las llaves de seguridad son resistentes al phishing, nombrar la diferencia entre passkeys sincronizados y vinculados a un dispositivo, y determinar cuándo utilizarlos.
Conceptos clave: passkey, FIDO2, WebAuthn, clave pública y privada, vinculado al dominio, llave de seguridad, passkey sincronizado, passkey vinculado al dispositivo
El problema con todo lo que se teclea
En la lección 2.3 vio que un código de una aplicación o sms no protege contra un buen sitio falso. Usted teclea el código en rnijnbank.example, el estafador lo reenvía en pocos segundos a mijnbank.example y ya está dentro. El punto débil es siempre el mismo: usted debe juzgar si está en el sitio real. Una persona con prisa o que ve una página convincente comete ese error tarde o temprano.
Los passkeys y las llaves de seguridad le quitan esa decisión a usted. No es usted quien comprueba la dirección, sino su navegador y su dispositivo. Y no hay nada que teclear ni reenviar.
Qué es un passkey
Un passkey es un método de inicio de sesión que sustituye a una contraseña. La FIDO Alliance, la organización responsable del estándar, lo describe como un sustituto de la contraseña que usted desbloquea de la misma manera que su dispositivo: con su huella dactilar, su rostro o su código PIN.
Técnicamente, un passkey es un par de claves:
- una clave privada que permanece en su dispositivo (o en su gestor de contraseñas, véase más abajo) y que nunca se envía al sitio web;
- una clave pública que el sitio web conserva.
Lo que se firma con la clave privada puede comprobarse con la clave pública. Pero con la clave pública usted mismo no puede firmar nada. Si se filtra la base de datos del sitio web, el atacante solo obtiene claves públicas, y con eso no puede iniciar sesión. Así que no hay nada que descifrar, a diferencia de las contraseñas filtradas de la lección 2.1.
La tecnología se llama FIDO2. La parte que está en su navegador se llama WebAuthn, un estándar del W3C (el consorcio que elabora los estándares web). La parte entre su ordenador y una llave de seguridad independiente se llama CTAP.
Así funciona el inicio de sesión
- En
mijnbank.exampleelige usted «Iniciar sesión con passkey». - El sitio web envía un desafío aleatorio: un número que solo se usa una vez.
- Su navegador transmite ese desafío a su dispositivo, junto con el dominio en el que se encuentra.
- Su dispositivo le pide que lo desbloquee: dedo, rostro o PIN. Esa comprobación ocurre en su dispositivo. Su huella dactilar nunca llega al sitio web; el sitio web solo recibe la confirmación de que la comprobación se realizó correctamente.
- Su dispositivo firma el desafío con la clave privada correspondiente a
mijnbank.example. - El sitio web comprueba la firma con su clave pública. Si coincide, ha iniciado sesión.
Por qué un passkey no funciona en un sitio falso
Al crearse, un passkey se vincula al dominio del sitio web. En WebAuthn esto se llama el Relying Party ID: el passkey pertenece a mijnbank.example (y, en su caso, a sus subdominios) y a nada más. El navegador determina qué dominio figura en la solicitud, no el sitio web. Un sitio falso no puede falsificar eso.
Si llega a través de un correo de phishing a https://rnijnbank.example o https://mijnbank.example.inlog-check.example, ocurre lo siguiente:
- El sitio falso solicita un passkey.
- Su navegador busca un passkey para ese dominio concreto. No existe.
- Usted recibe un aviso como «no hay ningún passkey para este sitio» o una lista de selección vacía.
No hay nada que pueda aprobar o teclear por error. Aunque usted no se dé cuenta de que es un sitio falso, el passkey no funciona allí. Eso es lo que queremos decir con resistente al phishing. El NIST también lo afirma: la resistencia al phishing requiere autenticación criptográfica; las contraseñas, los códigos que se teclean y los avisos de aprobación no lo son.
¿En un sitio donde siempre inicia sesión con un passkey de repente solo aparece un campo de contraseña, o se le pide «un código de su aplicación»? Eso es una señal de alarma. Fíjese en la dirección.
Sincronizado o vinculado al dispositivo
Existen dos tipos de passkeys. La diferencia está en dónde reside la clave privada.
| Passkey sincronizado | Passkey vinculado al dispositivo | |
|---|---|---|
| ¿Dónde está la clave privada? | En un proveedor de passkeys: el llavero de su sistema operativo o su gestor de contraseñas, que la copia de forma cifrada a sus otros dispositivos | En un único dispositivo, por ejemplo una llave de seguridad, y no puede salir de ahí |
| ¿Teléfono nuevo? | El passkey le acompaña al iniciar sesión con su proveedor | Debe crear un nuevo passkey en el nuevo dispositivo |
| ¿Dispositivo perdido? | No hay problema mientras su cuenta de proveedor esté segura | Sin reserva, se queda fuera |
| Punto débil | La cuenta con su proveedor: quien acceda a ella tiene todos sus passkeys | La pérdida; necesita una llave de reserva |
| Adecuado para | Casi todas las cuentas habituales | Cuentas de administrador, alojamiento, registro de dominios, banco, la propia cuenta del proveedor |
En el estándar WebAuthn, un passkey sincronizado se llama «multi-device credential». La FIDO Alliance considera que los passkeys vinculados a un dispositivo en una llave de seguridad son la forma con mayor nivel de garantía, y también recomienda una llave de seguridad como método de recuperación si pierde el acceso a sus dispositivos sincronizados.
Si utiliza passkeys sincronizados, proteja especialmente bien la cuenta de su proveedor: contraseña segura, verificación en dos pasos (2FA) y, preferiblemente, también una llave de seguridad propia.
Llaves de seguridad
Una llave de seguridad es un pequeño dispositivo que se conecta a un puerto usb o se acerca al teléfono (NFC). Contiene passkeys vinculados al dispositivo. Para iniciar sesión basta con tocar la llave, a menudo con un PIN de la propia llave o una huella dactilar en la llave.
Hay varios fabricantes; al elegir, fíjese en la compatibilidad con FIDO2, el conector que necesita (USB-A, USB-C, NFC) y si admite PIN o huella dactilar.
La regla más importante: registre siempre al menos dos llaves. La segunda es su llave de reserva. La vincula a cada servicio, igual que la primera, y la guarda en un lugar distinto, por ejemplo en casa en un cajón o en una caja fuerte. Si pierde su llave de uso diario, inicia sesión con la de reserva, elimina la llave perdida de sus cuentas y compra una nueva segunda llave. Una llave no se puede copiar; esa es precisamente la idea.
Iniciar sesión en otro ordenador
Quiere iniciar sesión en un portátil, pero su passkey está en su teléfono. En ese caso, el navegador suele ofrecer mostrar un código QR. Lo escanea con su teléfono y lo desbloquea allí. La FIDO Alliance llama a esto cross-device authentication. El teléfono comprueba mediante Bluetooth si realmente está cerca del portátil. Así, alguien que solo tenga una foto del código QR no puede usarlo para iniciar sesión a distancia.
Trampas y cuándo utilizarlos
Los passkeys son un gran avance, pero no son magia:
- La contraseña a menudo sigue existiendo. Muchos servicios le permiten, además del passkey, iniciar sesión con contraseña más código. Un estafador probará entonces esa vía. Si es posible, desactive los métodos de inicio de sesión antiguos o haga que la contraseña sea larga y única.
- La recuperación es el eslabón más débil. Si alguien puede evitar su passkey mediante un correo de «contraseña olvidada» o una llamada al servicio de asistencia, su cuenta es tan segura como esa vía de recuperación. Compruebe qué datos de recuperación están configurados (lección 2.5).
- No todos los servicios lo admiten. En ese caso, utilice una aplicación de autenticación.
- Las cuentas compartidas encajan mal con passkeys en un único dispositivo personal. Es mejor dar a cada persona su propia cuenta con su propio passkey (módulo 7).
- Un dispositivo desbloqueado es una puerta abierta. Proteja su teléfono y su portátil con un buen bloqueo de pantalla (módulo 5).
¿Por dónde empezar? Por las cuentas con mayor daño si son tomadas: su correo, su gestor de contraseñas o proveedor de passkeys, alojamiento y registro de dominios, banco y contabilidad. Si alguno de esos servicios ofrece passkeys o llaves de seguridad, actívelo allí en primer lugar.
Resumen
- Un passkey es un par de claves: la clave privada permanece con usted, el sitio web solo tiene la clave pública. Una filtración en el sitio web no da nada que descifrar.
- El navegador vincula el passkey al dominio real. En un sitio falso no hay passkey, así que no hay nada que robar ni que aprobar.
- Los passkeys sincronizados le acompañan a sus otros dispositivos; los passkeys vinculados al dispositivo (llave de seguridad) permanecen en un único dispositivo.
- Registre siempre una llave de reserva y guárdela en un lugar distinto.
- Un passkey es tan seguro como la vía de recuperación y los métodos de inicio de sesión antiguos que sigan activos.
Cuestionario
Ejercicio
Ejercicio D2.4: Su primera passkey o llave de seguridad. Averigüe cuáles de sus cuentas más importantes admiten passkeys o llaves de seguridad, configure al menos una y organice una reserva. Marque la lista de comprobación y responda las preguntas de reflexión.
Ejercicio D2.4: Su primera passkey o llave de seguridad
Así lo aborda: (1) Compruebe en sus cuentas más importantes (correo, gestor de contraseñas o proveedor de passkeys, alojamiento, registro de dominio, banco, contabilidad) en la configuración de seguridad si admiten passkeys o llaves de seguridad. (2) Elija por cuenta: passkey sincronizada (en su sistema operativo o gestor de contraseñas) o vinculada a un dispositivo (llave de seguridad). Para la gestión del alojamiento, los dominios y su proveedor de passkeys, preferiblemente una llave de seguridad. (3) Configure una passkey o llave en al menos una cuenta. (4) Organice una reserva: una segunda llave registrada y guardada en otro lugar, o en el caso de una passkey sincronizada, un segundo dispositivo y una buena protección de la cuenta de su proveedor. (5) Compruebe si el método de inicio de sesión anterior (contraseña con SMS o código) sigue activo. Desactívelo si es posible, o haga que la contraseña sea larga y única. (6) Pruebe una vez el inicio de sesión en un segundo dispositivo (por ejemplo, con el código QR y su teléfono).
Sus marcas y notas se quedan solo en este navegador; no las enviamos a ningún sitio. Si ha iniciado sesión, en Mis cursos solo guardamos que ha realizado el ejercicio.
Para seguir leyendo
- FIDO Alliance, Passkeys (en inglés): https://fidoalliance.org/passkeys/
- W3C, Web Authentication Level 3 (en inglés, el estándar): https://www.w3.org/TR/webauthn-3/
- passkeys.dev, Terms (en inglés, glosario de miembros de la FIDO Alliance y el W3C): https://passkeys.dev/docs/reference/terms/
- NIST SP 800-63B-4, apartado sobre resistencia al phishing y autenticadores sincronizables (en inglés): https://pages.nist.gov/800-63-4/sp800-63b.html
- INCIBE, recursos de ciberseguridad para empresas (fuente neerlandesa de referencia sobre métodos de autenticación multifactor): https://www.incibe.es/empresas
