Básicamente, 2FA se basa en la idea de que, en lugar de simplemente saber algo, el uso de un servicio también requiere algo propio.
Tengo bastante confianza, especialmente cuando se usa en iOS (que tiene una mejor segregación de aplicaciones a nivel de sistema), que esto brinda una seguridad bastante buena. Aunque no estoy seguro de agregar una utilidad 2FA de escritorio.
En mi opinión, un atacante tendría que interceptar mi contraseña (probablemente a través de un keylogger en mi computadora de escritorio donde más registro) y un acceso a mi teléfono, o a la clave almacenada en mi teléfono. Pero es probable que pueda imaginar que alguien capaz de configurar un keylogger podría robar suficiente información para reutilizar cualquier sistema 2FA disponible en mi computadora de escritorio.
Escribiendo esto, entiendo que esto se basa en la percepción de que:
Integridad del equipo < Integridad del teléfono < integridad de iOS
Es más probable que las computadoras se corrompan a través de la pila de basura que estoy instalando y su "apertura" más importante a los cambios del sistema.
Los teléfonos inteligentes tienen un ecosistema más restrictivo y una vida útil más corta, por lo tanto una probabilidad menor de infectarse.
iOS, es comparativamente el ecosistema más cerrado donde, a diferencia de Android, la mayoría de los accesos no se abren en la API y la comprobación de la aplicación es más exhaustiva.