Esta es la primera parte de nuestra serie sobre claves de acceso. La parte 2, sobre privacidad, está aquí.
En 2023 empieza a estar disponible una nueva técnica de inicio de sesión: la passkey (o llave de acceso). La passkey promete solucionar el phishing y evitar la reutilización de contraseñas. Pero mucha gente inteligente y orientada a la seguridad está confundida sobre qué es exactamente una passkey. Hay una buena razón para ello. En cierto sentido, una passkey es una de dos (o tres) cosas diferentes, dependiendo de cómo se almacene.
En primer lugar: ¿una llave de acceso es una de esas cositas de plástico que se meten en el puerto USB para la autenticación de dos factores? No, es una clave de seguridad. Más sobre claves de seguridad en un minuto. Una llave de acceso tampoco es algo que puedas teclear; no es una contraseña, un código de acceso, una frase de acceso ni un PIN.
Una llave de acceso son aproximadamente 100-1400 bytes de datos aleatorios[1], generados en tu dispositivo (como tu teléfono, portátil o llave de seguridad) con el propósito de iniciar sesión en un sitio web específico. Una vez generada la contraseña, el navegador la registra en el sitio web y se almacena en un lugar seguro (por ejemplo, tu gestor de contraseñas). A partir de ese momento, puedes utilizar esa llave para acceder a ese sitio web sin necesidad de introducir una contraseña. Cuando vayas a la página de inicio de sesión de un sitio web, tendrás la opción de "Iniciar sesión con una llave de acceso". Si eliges esa opción, recibirás un aviso de confirmación de tu gestor de contraseñas, y se iniciará la sesión después de confirmar. Para que todo esto funcione, es necesario que el sitio web, el navegador, el gestor de contraseñas y, normalmente, el sistema operativo sean compatibles con la contraseña.
Puedes crear varias claves de acceso: cada llave de acceso desbloquea una única cuenta en un único sitio web. Si tienes varias cuentas en un mismo sitio web, puedes tener varias claves para ese sitio web. Por ejemplo, si tienes una cuenta en una red social para uso personal y otra para uso profesional, tendrás diferentes claves para cada cuenta.
Normalmente puedes tener tanto una contraseña como una llave de acceso en tu cuenta[2], y puedes iniciar sesión con cualquiera de ellas. Iniciar sesión con una clave de acceso suele ser más rápido, ya que el gestor de contraseñas te ofrecerá hacerlo con un solo clic, en lugar de los múltiples clics que suele requerir iniciar sesión con una contraseña. Además, iniciar sesión con una clave de acceso normalmente te permite omitir tu tradicional autenticació de dos factores (SMS, aplicación de autenticación o clave de seguridad).
¿Por qué es seguro que passkeys omita la autenticación tradicional de dos factores? por qué la tecnologia de Passkeys incorpora un segundo factor. Cada vez que utilices la llave de acceso para iniciar sesión, es posible que el navegador o el sistema operativo te pidan que vuelvas a introducir el PIN de desbloqueo del dispositivo. Si utilizas una huella dactilar o el reconocimiento facial para desbloquear el dispositivo, es posible que el navegador te pida que vuelvas a introducir tu huella dactilar o que muestres tu cara para confirmar que eres tú quien te está pidiendo que inicies sesión. Esto supone dos factores de autenticación el dispositivo que almacena tu llave de acceso es algo que tienes, y va acompañado de algo que sabes (el PIN) o de algo que eres (una huella dactilar o un rostro).
Almacenamiento y copias de seguridad
Una clave almacenada en un solo ordenador o teléfono no es tan útil. ¿Y si quieres iniciar sesión desde otro dispositivo? ¿Y si el dispositivo se cae al inodoro? Hay al menos tres soluciones y son muy diferentes, lo que explica en parte por qué las claves de acceso son en la práctica tres cosas muy diferentes.
- Solución 1: Las claves de acceso se almacenan en el gestor de contraseñas, que las cifra, hace una copia de seguridad en la nube y te ayuda a copiarlas en todos tus dispositivos.
- Solución 2a: Las claves de acceso se crean y almacenan en una llave de seguridad física que se conecta por USB[3]. Para iniciar sesión en otro dispositivo, conecta la llave de seguridad cuando se te pida. Las claves creadas de esta forma no se pueden copiar. Sólo las llaves de seguridad de fabricación reciente admiten esta opción.
- Solución 2b: Las claves de acceso se crean y almacenan en un chip de alta seguridad integrado en tu ordenador o teléfono (por ejemplo, un TPM o Secure Enclave, disponible en la mayoría de los dispositivos fabricados en los últimos años). Al igual que la solución 2, estas claves no se pueden copiar.
Las soluciones 2a y 2b son menos convenientes (y la solución 2a cuesta un poco de dinero, para comprar una clave de seguridad). Pero ofrecen un mayor nivel de seguridad contra el robo de tus dispositivos. Con la solución 1, alguien que robe tu ordenador podría copiar las claves si tu gestor de contraseñas está desbloqueado.
Además, las soluciones 2a y 2b no resuelven realmente el problema de que "el dispositivo se caiga en el inodoro". Si estás usando una de esas soluciones, deberías tener varias claves almacenadas en diferentes dispositivos como copia de seguridad. De lo contrario, puedes acabar confiando en la recuperación de cuentas basada en el correo electrónico.
Si utilizas la solución 1, confías en tu gestor de contraseñas para mantener tus claves seguras. Ten en cuenta también que, por lo general, los gestores de contraseñas no te permiten exportar una copia de tus claves para realizar copias de seguridad sin conexión.
¿Cómo evitan las claves de acceso el phishing?
Cada llave de acceso contiene un registro del nombre de dominio para el que se creó. Si alguien te envía un enlace a una página de inicio de sesión en un nombre de dominio parecido, puede que te engañen, pero tu navegador no lo hará, ya que los navegadores pueden comprobar fácilmente si hay una coincidencia exacta. Por lo tanto, su navegador no enviará la llave de acceso al nombre de dominio similar y usted estará a salvo.
Sin embargo, mientras tengas una contraseña memorizada además de tu llave de acceso, un sitio web de imitación podría decirte que tu llave de acceso no funciona y que tienes que introducir la contraseña en su lugar. Si introduces la contraseña, el ataque de phishing tendrá éxito. Por tanto, el phishing sigue siendo posible, pero es más probable que alguien que suele iniciar sesión en un sitio determinado con una clave sospeche cuando se le pide que introduzca una contraseña, lo que proporciona cierta protección, aunque no sea completa.
¿Debo utilizar passkeys?
Como todos los temas de seguridad y privacidad, la respuesta es "depende". Pero para la mayoría de la gente, las passkeys son una buena idea. Si ya utilizas un gestor de contraseñas, generas contraseñas largas y únicas para cada sitio web y utilizas siempre las funciones de autorrelleno para iniciar sesión (es decir, no copias-pegas las contraseñas), las passkeys te proporcionarán un nivel de seguridad ligeramente superior con una comodidad significativamente mayor.
Si aún no utilizas un gestor de contraseñas, las passkeys supondrán un enorme aumento de la seguridad (y también te obligarán a empezar a utilizar un gestor de contraseñas).
Para los sitios en los que utilices la autenticación de dos factores (2FA), las claves de acceso te resultarán mucho más cómodas y pueden ser más seguras. Los métodos 2FA por SMS o aplicación de autenticación son vulnerables a los ataques de phishing, ya que un sitio falso puede pedirte el código de un solo uso y pasarlo al sitio real junto con tu contraseña falsificada. Las claves de acceso son más seguras que los SMS o las aplicaciones de autenticación 2FA porque no son vulnerables a la suplantación de identidad; tu navegador sabe exactamente a qué sitio corresponde cada llave de acceso y no se deja engañar por sitios web falsos.
La clave de seguridad 2FA tampoco es vulnerable al phishing, por lo que cambiar de la clave de seguridad 2FA a una clave de paso es principalmente una cuestión de comodidad; significa un paso menos durante el inicio de sesión, y una contraseña menos que recordar. Si almacenas tus passkeys en una llave de seguridad (protegida con un PIN o biométrico), conseguirás resultados similares a los de la clave de seguridad 2FA. Si en cambio almacenas tus claves en un gestor de contraseñas, es un poco menos seguro, porque cualquiera que acceda a tu gestor de contraseñas puede utilizar tus claves, sin necesidad de acceder físicamente a tu clave de seguridad.
A finales de 2023, el soporte para llaves de acceso es muy desigual, sobre todo para la sincronización. Por ejemplo, Adam Langley afirma que "Windows Hello no se sincroniza en absoluto, Google Password Manager solo puede sincronizarse entre dispositivos Android y iCloud Keychain solo funciona en dispositivos Apple." Incluso una vez resueltos esos problemas, la sincronización entre ecosistemas (por ejemplo, entre iOS y Windows) seguirá siendo un gran problema. Los gestores de contraseñas de terceros 1Password, Bitwarden y Dashlane admiten claves de acceso y pueden sincronizarse entre ecosistemas. Pero aún no son necesariamente compatibles con todas las plataformas (por ejemplo, 1Password no ha sido totalmente compatible con llaves de acceso en Android hasta octubre de 2023). Si quieres probar llaves de acceso en una cuenta desechable, puedes crear una en passkeys.io o webauthn.io.
Si te gusta ser un "early adopter", no dudes en probar las passkeys. Puede que te encuentres tropiezos por el camino y tengas que volver a recurrir a esa antigua y asediada herramienta que es la contraseña.
Más información sobre las claves de acceso en la parte 2, Claves de acceso y privacidad.
[1]: Un par criptográfico public/criptográfica pública/privada key pair.
[2]: Esto es cierto en 2023, aunque si las claves de acceso se adoptan de forma generalizada, algunos sitios web podrían permitirte registrarte generando una llave de acceso y no necesitar nunca una contraseña.
[3]: O, menos comúnmente, conectarse a través de NFC o Bluetooth Low-Energy (BLE).