La mayoría de las cuentas con autenticación de dos factores (2FA) le brindan códigos de respaldo para usar en caso de pérdida o robo de su teléfono. Por ejemplo, Google proporciona una lista de 10 códigos de respaldo al configurar 2FA. Estos códigos deben almacenarse de forma segura , pero también deben ser accesibles . Si alguien puede obtener los códigos 2FA, puede omitir 2FA en mi cuenta.
Algunas personas han sugerido imprimir los códigos y guardarlos en su equipaje. En cambio, he estado colocando los códigos de respaldo en una tienda de criptografía digital con una clave única que solo yo conozco. Estoy utilizando el cifrado del lado del cliente que requiere un software especial al que tal vez no tenga acceso mientras viajo.
Como mi teléfono es el único dispositivo informático que tengo cuando viajo, estoy tratando de eliminar los requisitos para el software de descifrado. También me gustaría mantener el control de mis claves, por lo que una bóveda con conocimientos clave (Dropbox, Google Drive, etc.) también está fuera de discusión.
Por lo tanto, estoy considerando otra opción. En lugar de almacenar los códigos de respaldo en una bóveda digital que requiere software para el descifrado, ¿qué sucede si los cifro con el método manual del teclado de un solo uso (texto char + tecla char, luego mod 26) y hago públicos los cifrados? Cuando pierdo mi teléfono, puedo descifrar los cifrados a mano con la clave que memorizo sin necesidad de un software especial.
Esto proporciona un par de beneficios adicionales:
- Puedo almacenar los códigos de respaldo encriptados en varias ubicaciones, como mi billetera, mi equipaje y en una página web de acceso público.
- Solo necesito memorizar una clave para todos mis códigos de respaldo en varias cuentas.
- No importa si los cifrados de mi código de respaldo se pierden o son robados.
Mi pregunta es: ¿Es este un método seguro para almacenar códigos de respaldo 2FA? ¿Cuáles son los riesgos de seguridad? ¿Qué estoy pasando por alto?