Antoine Pitrou <anto...@python.org>: > I don't know what security experts think, but the idea of having to > print and keep around recovery codes (for each and every website I > enable 2FA on!) sounds completely braindead to me. > Do you expect to be able to find back a random piece of paper in 5 > years? I certainly don't.
The basic idea of 2FA is to cumulate something you know and something you have. Recovery codes are on the "something you have" side, they are not a secret, they are a possession, so it's completly OK to keep your recovery codes in your wallet. It's even a good practice to keep them in your wallet: You know where they are and they're accessible. If you break the "thing you have" you can still identify yourself even if you're out of your house. If you loose your wallet, (got it stolen, dropped in the ocean, whatever), it's no big deal: just regenerate the codes, nobody know your password, your security is not broken. In other words, the thief stealing a wallet is not the guy stealing password, so everything's good, and you have to regereate your recovery codes faster than they can meet (should be easy). To reply to you other answer, it's not really OK to store your password and your 2FA generating program on the same hardware, it breaks the "something you know and something you have" separation, it's reduced to something you have, it does no longer need two clearly separated steps to be broken. -- Julien Palard https://mdk.fr _______________________________________________ python-committers mailing list python-committers@python.org https://mail.python.org/mailman/listinfo/python-committers Code of Conduct: https://www.python.org/psf/codeofconduct/