Primero, en realidad hay varias formas en que 2FA podría funcionar, la forma más sencilla es recibir un SMS con un código de acceso desde su servicio durante cada uno de sus inicios de sesión. Si bien esto es un poco menos seguro porque podría ser interceptado, de esta manera no debería tener que actualizar la configuración de 2FA si cambia su teléfono mientras mantiene su tarjeta SIM.
Otra forma en que 2FA podría funcionar es mediante la instalación de un generador de token en su teléfono, una aplicación de su proveedor de servicios. Por ejemplo, un generador de contraseña de un solo uso basado en el tiempo. El punto aquí es que su teléfono puede generar un token en cualquier momento, incluso sin acceso a la red.
Dado que dicho generador funciona de la misma manera en todos los teléfonos y es un algoritmo determinista, se requiere algún código o clave en su teléfono para verificar que efectivamente se generó en su teléfono . Si la aplicación usara algo como su número de llamada, cualquiera que lo sepa, podría generar un código válido para su cuenta. También los números de serie de su tarjeta SIM o hardware tienen defectos similares. Por lo tanto, una mejor manera es tener una clave aleatoria solo disponible en su teléfono específico y en algún tipo a su servicio (para verificación). Por lo general, esto no solo hace que la pérdida de su teléfono sea un problema, sino que también elimina solo la aplicación de su generador.
Sin embargo, dicha clave significa que cambiar su teléfono necesariamente significa que tendrá una instalación diferente de esa aplicación en su nuevo teléfono con una nueva clave (o no). Y por razones de seguridad, su antigua clave no debería estar disponible para ningún servicio de sincronización, por lo que no debería haber ningún medio para copiarla.
La razón por la que la recuperación de su cuenta es tan complicada, es que es, por definición, una forma de omitir el 2FA. Eso significa que si había una manera fácil de recuperarla, también hay una manera fácil para que los malos tengan acceso a su cuenta mientras esté usando 2FA. Al negarlo por completo (como Github), garantiza para usted que una vez que haya habilitado 2FA, casi no hay forma de que otros lo pasen por alto.