Принцип работы приложений двухфакторной аутентификации, например Google Authenticator, следующий: 4
- Сервис, в котором происходит аутентификация, и приложение запоминают секретный ключ. 4 Он содержится в QR-коде, с помощью которого подключают аутентификацию для сервиса в приложении. 4
- В дальнейшем на основе этого числа и текущего времени по одинаковому алгоритму генерируются одноразовые коды — одновременно и на стороне аутентификатора, и на стороне сервиса. 4
- Пользователь вводит код, который сгенерировало приложение, и сервис сравнивает его с тем, что сгенерировал он сам. 4 Если коды совпадают, пользователя пускают в аккаунт, если нет — нет. 4
В Google Authenticator через определённое время (каждые 30 секунд) генерируется новый цифровой код, который пользователь должен ввести в дополнение к обычным логину и паролю. 1