La autenticación basada en contraseñas ha sido el modo predeterminado durante muchos años. Pero, ¿quién quiere recordar las contraseñas de todos los sitios web en los que se registra? La mayoría de las personas utilizan la misma contraseña en muchos lugares, algo fácil de recordar. Los administradores de contraseñas facilitan el llenado automático de credenciales, pero no pueden superar los problemas de seguridad presentes en el sistema de autenticación basado en contraseñas por diseño. Entonces aparecen las claves de acceso. Son más seguras y fáciles de usar, y brindan una nueva visión en el espacio de la autenticación sin contraseña que parece prometedora.
Como ocurre con todo, las claves de acceso también tienen sus ventajas y desafíos que analizaremos en este artículo junto con una idea de cómo funciona este modo de autenticación, qué tan seguro es y mucho más.
Las claves de acceso utilizan criptografía de clave pública para generar un flujo de autenticación en lugar de depender de una contraseña basada en una única cadena. El dispositivo del usuario genera un par de claves pública/privada y envía la clave pública al servidor, que la almacena y luego la utiliza para autenticar al usuario; la clave privada se almacena en el dispositivo del usuario.
Flujo de registro
Flujo de autenticación
Puntos a tener en cuenta
Una mayor seguridad suele implicar una menor facilidad de uso, pero esto no es así en el caso de las claves de acceso. Son más fáciles de usar una vez que se ha completado la fase de registro. No es necesario recordar las contraseñas y la autenticación es rápida, sencilla y segura.
Las claves de acceso reducen la superficie de ataque y eliminan algunas amenazas comunes a las contraseñas. Las contraseñas suelen almacenarse en forma cifrada en una base de datos. Cuando se utiliza una contraseña de texto simple para iniciar sesión en un servicio web, se genera el mismo texto cifrado y se compara con el que ya se tiene; así es como se autentican los usuarios. Esto nos deja con dos amenazas más comunes.
Las violaciones de las bases de datos son habituales y, cuando se roban los datos de un servicio, suelen venderse en la red oscura. Los actores maliciosos que tienen acceso a los datos pueden intentar romper el cifrado sin conexión y, con la potencia informática disponible en la actualidad, esto podría llevar desde semanas hasta meses, dependiendo del cifrado. Las claves de acceso eliminan esta amenaza, ya que no hay contraseñas que almacenar. En caso de fuga, solo se expone la clave pública, que no es de mucha utilidad para los actores maliciosos.
En los ataques de phishing, se crea un clon del sitio web de destino y se engaña al usuario para que introduzca sus credenciales confundiéndolo con un sitio genuino. Sin embargo, esto tampoco funciona con claves de acceso, ya que no hay credenciales que robar. Los sofisticados ataques de phishing combinados con Man in the Middle pueden seguir siendo operativos, pero la superficie de ataque se reduce en gran medida.
Como ya aprendimos en la sección anterior, las claves de acceso se pueden sincronizar entre dispositivos, por lo que sabemos que son portátiles. Puedes usar las claves de acceso en todos tus dispositivos siempre que hayas iniciado sesión con el proveedor (Google, iCloud). Esto nos lleva a la pregunta de cómo vamos a usar las claves de acceso en un dispositivo que no te pertenece, tal vez la computadora de un amigo o la biblioteca, básicamente cualquier dispositivo que solo quieras usar una sola vez. Las claves de acceso también cubren este caso, la forma en que esto funciona es si dos sistemas admiten claves de acceso, pueden comunicarse entre sí a través de Bluetooth para compartir el acceso. Veamos el tutorial paso a paso de cómo funciona.
Las claves de acceso se basan en los estándares FIDO2, que combinan el protocolo de cliente a autenticador (CTAP) con la API de autenticación web (WebAuthn), y es un proyecto conjunto entre la alianza FIDO y el W3C. Estos esfuerzos de estandarización tienen como objetivo aumentar la adopción y la implementación adecuada. Empresas como Google, Apple y Microsoft han incorporado soporte nativo para claves de acceso a nivel de sistema operativo y navegador, lo que contribuye en gran medida a fomentar la adopción de claves de acceso.
Debido a la larga dependencia de las contraseñas en la industria, adoptar claves de acceso no es solo un desafío técnico, sino también psicológico. Los usuarios finales pueden sentirse inicialmente incómodos con las claves de acceso simplemente porque están acostumbrados a la familiaridad de los sistemas basados en contraseñas. Si bien las claves de acceso son más seguras y fáciles de usar que las contraseñas, la comodidad con las opciones conocidas gana en la mayoría de los casos. Es necesario educar a los usuarios para que las claves de acceso se adopten a gran escala; inicialmente, surgirán preguntas sobre la recuperación y la facilidad de uso.
Por otra parte, las empresas pueden mostrarse reacias a ofrecer autenticación con clave de acceso si no ven una adopción suficiente por parte de los usuarios. En el sector público, los gobiernos pueden fomentar la adopción mediante cambios de políticas.
Las claves de acceso tienen el potencial de transformar el espacio de autenticación. Son seguras y más fáciles de usar. Eliminan las amenazas comunes que existen con la autenticación basada en contraseñas, sin embargo, también traen consigo desafíos y limitaciones. La recuperación de cuentas y la portabilidad de credenciales son algunas cuestiones que deben abordarse adecuadamente. Creo que el siguiente paso es utilizar un modo híbrido de autenticación, es decir, el uso de claves de acceso junto con las contraseñas. A medida que aumenta la adopción en el mundo real, veremos que se presentan más argumentos que serían un mejor punto para decidir hacia dónde avanzar, antes de pasar a un futuro completamente sin contraseñas.
**