Acceso sin contraseña con llaves de acceso

Llaves de acceso

Introducción

Las llaves de acceso son una alternativa más segura y sencilla a las contraseñas. Con las llaves de acceso, los usuarios pueden acceder a apps y sitios web con un sensor biométrico (como una huella dactilar o el reconocimiento facial), un PIN o un patrón, lo que evita que tengan que recordar y administrar contraseñas.

Tanto los desarrolladores como los usuarios odian las contraseñas: brindan una experiencia del usuario deficiente, agregan inconvenientes en las conversiones y generan responsabilidades de seguridad tanto para los usuarios como para los desarrolladores. El Administrador de contraseñas de Google en Android y Chrome reduce las complicaciones con el autocompletado. Para los desarrolladores que buscan aún más mejoras en la conversión y la seguridad, las llaves de acceso y la federación de identidades son los enfoques modernos de la industria.

Una llave de acceso puede cumplir con los requisitos de autenticación de varios factores en un solo paso, mediante el reemplazo de una contraseña y una OTP (p.ej., un código de SMS de 6 dígitos) para brindar una protección sólida contra los ataques de suplantación de identidad (phishing) y evitar los problemas de UX de los SMS o las contraseñas de un solo uso basadas en apps. Dado que las llaves de acceso están estandarizadas, una única implementación permite una experiencia sin contraseña en todos los dispositivos de un usuario, en diferentes navegadores y sistemas operativos.

Las llaves de acceso son más fáciles:

  • Los usuarios pueden seleccionar una cuenta para acceder. No es obligatorio escribir el nombre de usuario.
  • Los usuarios pueden autenticarse con el bloqueo de pantalla del dispositivo, como un sensor de huellas dactilares, el reconocimiento facial o un PIN.
  • Una vez que se crea y registra una llave de acceso, el usuario puede cambiar sin problemas a un nuevo dispositivo y usarlo de inmediato sin necesidad de volver a inscribirse (a diferencia de la autenticación biométrica tradicional, que requiere configuración en cada dispositivo).

Las llaves de acceso son más seguras:

  • Los desarrolladores solo guardan una clave pública en el servidor en lugar de una contraseña, lo que significa que tiene mucho menos valor para una persona que actúa de mala fe hackear los servidores y mucho menos limpieza en caso de incumplimiento.
  • Las llaves de acceso protegen a los usuarios de los ataques de suplantación de identidad (phishing). Las llaves de acceso solo funcionan en las apps y los sitios web registrados; no se puede engañar a los usuarios para que se autentiquen en un sitio engañoso porque el navegador o el SO se encargan de la verificación.
  • Las llaves de acceso reducen los costos de envío de SMS, lo que las convierte en un medio de autenticación de dos factores más seguro y rentable.

¿Qué son las llaves de acceso?

Una llave de acceso es una credencial digital vinculada a una cuenta de usuario y un sitio web o aplicación. Las llaves de acceso permiten que los usuarios se autentiquen sin tener que ingresar un nombre de usuario ni una contraseña, o proporcionar cualquier factor de autenticación adicional. El objetivo de esta tecnología es reemplazar los mecanismos de autenticación heredados, como las contraseñas.

Cuando un usuario quiere acceder a un servicio que usa llaves de acceso, su navegador o sistema operativo lo ayudará a seleccionar y usar la llave de acceso correcta. La experiencia es similar a cómo funcionan las contraseñas guardadas actualmente. Para asegurarse de que solo el propietario legítimo pueda usar una llave de acceso, el sistema le pedirá que desbloquee su dispositivo. Esto se puede hacer con un sensor biométrico (como una huella dactilar o el reconocimiento facial), un PIN o un patrón.

Para crear una llave de acceso para un sitio web o una app, el usuario primero debe registrarse con ellos.

  1. Ve a la aplicación y accede con el método de acceso existente.
  2. Haz clic en el botón Crear una llave de acceso.
  3. Verifica la información almacenada con la nueva llave de acceso.
  4. Usa el desbloqueo de pantalla del dispositivo para crear la llave de acceso.

Cuando regresen a este sitio web o app para acceder, podrán seguir estos pasos:

  1. Ve a la aplicación.
  2. Presiona el campo del nombre de la cuenta para mostrar una lista de llaves de acceso en un diálogo de autocompletado.
  3. Selecciona su llave de acceso.
  4. Usa el desbloqueo de pantalla del dispositivo para completar el acceso.

El dispositivo del usuario genera una firma basada en la llave de acceso. Esta firma se usa para verificar la credencial de acceso entre el origen y la llave de acceso.

Un usuario puede acceder a los servicios en cualquier dispositivo con una llave de acceso, sin importar dónde esté almacenada. Por ejemplo, una llave de acceso creada en un teléfono celular se puede usar para acceder a un sitio web en otra laptop.

¿Cómo funcionan las llaves de acceso?

Las llaves de acceso están diseñadas para usarse a través de la infraestructura del sistema operativo que permite a los administradores de llaves de acceso crear llaves de acceso, crear copias de seguridad de ellas y ponerlas a disposición de las aplicaciones que se ejecutan en ese sistema operativo. En Android, las llaves de acceso se pueden almacenar en el Administrador de contraseñas de Google, que sincroniza las llaves de acceso entre los dispositivos Android del usuario que accedieron a la misma Cuenta de Google. Las llaves de acceso se encriptan en el dispositivo antes de sincronizarlas y requieren desencriptarlas en dispositivos nuevos. Los usuarios que tengan Android OS 14 o versiones posteriores pueden optar por almacenar sus llaves de acceso en un administrador de contraseñas de terceros compatible.

Los usuarios no están restringidos a usar las llaves de acceso solo en el dispositivo en el que están disponibles. Las llaves de acceso disponibles en los teléfonos se pueden usar cuando acceden a una laptop, incluso si la llave de acceso no está sincronizada con la laptop, siempre que el teléfono esté cerca de ella y el usuario apruebe el acceso en el teléfono. Como las llaves de acceso se compilan según los estándares FIDO, todos los navegadores pueden adoptarlas.

Por ejemplo, un usuario visita example.com en el navegador Chrome en su máquina Windows. Este usuario ya accedió a example.com en su dispositivo Android y generó una llave de acceso. En la máquina con Windows, el usuario elige acceder con una llave de acceso desde otro dispositivo. Los dos dispositivos se conectarán y se le pedirá al usuario que apruebe el uso de su llave de acceso en el dispositivo Android, por ejemplo, con un sensor de huellas dactilares. Después de hacerlo, acceden a la máquina con Windows. Ten en cuenta que la llave de acceso en sí no se transfiere a la máquina con Windows, por lo que, por lo general, example.com ofrecerá crear una llave de acceso nueva allí. De esta manera, no se requerirá el teléfono la próxima vez que el usuario quiera acceder. Consulta Cómo acceder con un teléfono para obtener más información.

¿Quién usa las llaves de acceso?

Varios servicios ya están usando llaves de acceso en sus sistemas.

Pruébalo

Puedes probar las llaves de acceso en esta demostración: https://passkeys-demo.appspot.com/

Consideraciones de privacidad

  • Porque acceder con datos biométricos podría darles a los usuarios una falsa impresión de que se envía información sensible al servidor. En realidad, el material biométrico nunca sale del dispositivo personal del usuario.
  • Las llaves de acceso por sí solas no permiten el seguimiento de usuarios o dispositivos entre sitios. La misma llave de acceso nunca se usa con más de un sitio. Los protocolos de llaves de acceso están cuidadosamente diseñados para que la información compartida con los sitios no se pueda usar como vector de seguimiento.
  • Los administradores de llaves de acceso protegen las llaves de acceso del uso y acceso no autorizados. Por ejemplo, el Administrador de contraseñas de Google encripta los secretos de llave de acceso de extremo a extremo. Solo el usuario puede acceder a ellos y utilizarlos. Aunque se crea una copia de seguridad de estos en los servidores de Google, Google no puede utilizarlos para suplantar la identidad de otros usuarios.

Consideraciones de seguridad

  • Las llaves de acceso usan criptografía de clave pública. La criptografía de claves públicas reduce las amenazas de posibles violaciones de la seguridad de los datos. Cuando un usuario crea una llave de acceso con un sitio o una aplicación, se genera un par de claves pública-privada en el dispositivo del usuario. El sitio solo almacena la clave pública, pero esta por sí sola es inútil para un atacante. Un atacante no puede obtener la clave privada del usuario de los datos almacenados en el servidor, lo que se necesita para completar la autenticación.
  • Como las llaves de acceso están vinculadas a la identidad de un sitio web o app, están a salvo de los ataques de suplantación de identidad (phishing). El navegador y el sistema operativo garantizan que una llave de acceso solo se pueda usar con el sitio web o la app que las creó. De esta manera, se evita que los usuarios se responsabilicen de acceder al sitio web o la app genuinos.

Cómo recibir notificaciones

Suscríbete al boletín informativo para desarrolladores sobre llaves de acceso de Google a fin de recibir notificaciones sobre las actualizaciones de las llaves de acceso.

Próximos pasos