El uso de una aplicación de software como Google Authenticator es un compromiso con la seguridad de la mayoría de los usuarios de One-time-based Protocolo de contraseña de tiempo (TOTP) . Es un compromiso hecho por conveniencia.
TOTP usa una combinación de una clave secreta y el tiempo para generar un código que pueda ser verificado por el servicio con el que se autentica ... y que no puede ser adivinado por alguien que no tiene la clave secreta.
No se requiere comunicación de red para que funcione el Generador de contraseñas de un solo uso, excepto el que puede ser requerido inicialmente para buscar una clave secreta o sincronizar la hora. También notará en Google Authenticator que si tiene varios tokens instalados, la lista completa genera claves constantemente mientras la aplicación está abierta. Por lo tanto, no habría manera de identificar con qué aplicación se está autentificando, excepto para analizar dónde deja su enfoque más tiempo.
En última instancia, debe poder confiar en cualquier aplicación que genere sus Contraseñas únicas. Si no crees que puedas confiar en Google, hay otros fabricantes de aplicaciones TOTP. También hay tokens de hardware (que se presentan aquí como ejemplo ... no es un respaldo de marca). Los tokens de hardware son mucho más seguros, ya que son de un solo propósito y generalmente resistentes a la manipulación, pero tienen el problema clásico de dificultar la distribución de claves secretas en el espacio físico.
Al final, usar TOTP es definitivamente mejor que la autenticación basada en el conocimiento (contraseñas y preguntas secretas) solo, pero requiere que tengas una implementación confiable para generar tus contraseñas desde el secreto compartido y el momento. Google Authenticator es la opción conveniente, pero no la única.