Google Authenticator es un autenticador basado en software de Google . Implementa servicios de autenticación multifactor utilizando la contraseña de un solo uso basada en el tiempo (TOTP; especificada en RFC 6238) y la contraseña de un solo uso basada en HMAC (HOTP; especificada en RFC 4226), para autenticar a los usuarios de aplicaciones de software. [ 5 ]
Al iniciar sesión en un sitio web compatible con Authenticator (incluidos los servicios de Google) o al utilizar aplicaciones de terceros compatibles con Authenticator, como gestores de contraseñas o servicios de alojamiento de archivos , Authenticator genera una contraseña de un solo uso de seis a ocho dígitos que los usuarios deben introducir además de sus datos de inicio de sesión habituales.
Google proporciona versiones de Authenticator para Android , [ 6 ] BlackBerry e iOS . [ 7 ]
Existe una bifurcación oficial de código abierto de la aplicación de Android disponible en GitHub . [ 8 ] Sin embargo, esta bifurcación se archivó el 6 de abril de 2021 y ahora es de solo lectura. [ 9 ]
Las versiones de software actuales son software gratuito propietario . [ 10 ]
Caso de uso típico


La aplicación se instala primero en un smartphone para usar Authenticator. Debe configurarse para cada sitio web en el que se vaya a utilizar: el sitio proporciona al usuario una clave secreta compartida a través de un canal seguro, que se almacena en la aplicación Authenticator. Esta clave secreta se utilizará para todos los inicios de sesión futuros en el sitio.
Para iniciar sesión en un sitio o servicio que utiliza autenticación de dos factores y es compatible con Authenticator, el usuario proporciona un nombre de usuario y una contraseña. El sitio calcula (pero no muestra) la contraseña de un solo uso requerida, de seis a ocho dígitos , y le pide al usuario que la ingrese. El usuario ejecuta la aplicación Authenticator, que calcula y muestra de forma independiente la misma contraseña, la cual el usuario ingresa para autenticar su identidad.
Con este tipo de autenticación de dos factores, el simple conocimiento del nombre de usuario y la contraseña es insuficiente para acceder a la cuenta de un usuario; el atacante también necesita conocer la clave secreta compartida o tener acceso físico al dispositivo que ejecuta la aplicación Authenticator. Una ruta de ataque alternativa es un ataque de intermediario (man-in-the-middle) : si el dispositivo utilizado para el proceso de inicio de sesión se ve comprometido por malware , las credenciales y la contraseña de un solo uso pueden ser interceptadas por el malware, que luego puede iniciar su sesión de inicio de sesión en el sitio, o monitorear y modificar la comunicación entre el usuario y el sitio. [ 11 ]
Descripción técnica
Durante la configuración, el proveedor de servicios genera una clave secreta de 80 bits para cada usuario (mientras que RFC 4226 §4 requiere 128 bits y recomienda 160 bits). [ 12 ] Esto se transfiere a la aplicación Authenticator como una cadena base32 de 16, 24 o 32 caracteres , o como un código QR .
Posteriormente, cuando el usuario abre la aplicación Authenticator, esta calcula un valor hash HMAC - SHA1 utilizando esta clave secreta. El mensaje puede ser:
- El número de períodos de 30 segundos desde la época Unix ( TOTP ) como un entero big endian de 64 bits; o
- Un contador que se incrementa con cada nuevo código (HOTP).
Se extrae una parte del HMAC y se muestra al usuario como un código de seis a ocho dígitos; el último nibble (4 bits) del resultado se utiliza como puntero a un entero de 32 bits en la matriz de bytes del resultado, y enmascara el bit 31.
Licencia
La aplicación Google Authenticator para Android era originalmente de código abierto, pero posteriormente se convirtió en propietaria. [ 10 ] Google puso a disposición el código fuente anterior de su aplicación Authenticator en su repositorio de GitHub ; la página de desarrollo asociada indicaba:
"Este proyecto de código abierto permite descargar el código que impulsó la versión 2.21 de la aplicación. Las versiones posteriores contienen flujos de trabajo específicos de Google que no forman parte del proyecto." [ 13 ]
La última versión de código abierto se publicó en 2020. [ 8 ]
Véase también
Notas
Referencias
- ↑ "Google hace que tu cuenta sea mucho más segura con la autenticación de dos pasos - TechCrunch" . TechCrunch . 2010-09-20 . Consultado el 2016-03-12 .
- ↑ "Google Authenticator" . Google Play . Consultado el 16 de julio de 2026 .
- ↑ "Google Authenticator 7.2" . APKMirror . 26 de junio de 2026. Consultado el 16 de julio de 2026 .
- ↑ "Google Authenticator" . App Store . Consultado el 16 de julio de 2026 .
- ↑ "GitHub - google/google-authenticator: Versión de código abierto de Google Authenticator (excepto la aplicación para Android)" . GitHub . 18 de mayo de 2022.
Estas implementaciones admiten el algoritmo de contraseña de un solo uso basada en HMAC (HOTP) especificado en RFC 4226 y el algoritmo de contraseña de un solo uso basada en el tiempo (TOTP) especificado en RFC 6238.
- ↑ "Google Authenticator - Aplicaciones en Google Play" .
- ↑ "Google Authenticator" . App Store . 3 de diciembre de 2020.
- 1 2 "google/google-authenticator-android: bifurcación de código abierto de la aplicación Google Authenticator para Android" . GitHub . 16 de mayo de 2022.
- ↑ "google-authenticator/mobile en master · google/google-authenticator" . GitHub .
- 1 2 Willis, Nathan (22 de enero de 2014). " Autenticación multifactor FreeOTP ". LWN.net . Recuperado el 10 de agosto de 2015.
- ↑ Umawing, Jovi (6 de enero de 2022). "Interceptando la autenticación de dos factores: se detectaron más de 1200 kits de herramientas de phishing de intermediario" . www.malwarebytes.com . Consultado el 27 de abril de 2023 .
- Papez, Neko (25 de abril de 2023). "El arte de eludir la MFA: cómo los atacantes superan regularmente la autenticación de dos factores" . menlosecurity.com . Consultado el 27 de abril de 2023 .
- ^ m'Raihi, D.; Bellaré, M.; Hoornaert, F.; Naccache, D.; Ranen, O. (15 de febrero de 2005). "RFC 4226: HOTP: un algoritmo de contraseña de un solo uso basado en HMAC" . Editor RFC. doi : 10.17487/RFC4226 . Consultado el 25 de marzo de 2019 .
- ↑ "google-authenticator - Verificación en dos pasos - Google Project Hosting" . 18 de mayo de 2022.
Enlaces externos
- Autenticador de Google en la Ayuda de Google
- Código fuente heredado de Google Authenticator (Android) y Google Authenticator (otros) en GitHub
- Código fuente del módulo PAM de Google Authenticator en GitHub
- Implementación de Google Authenticator en Python en Stack Overflow
- Implementación de Django-MFA con Google Authenticator : Django-MFA es un paquete sencillo para añadir una capa adicional de seguridad a tu aplicación web Django. Proporciona a tu aplicación web una contraseña que cambia aleatoriamente como protección adicional.
- Autenticación
- Servicios de Google
- Propiedades de Internet establecidas en 2010