Генератор кодов TOTP 🔒 Работает локально в браузере — ничего не загружается.

Генерируйте живые коды 2FA-аутентификации из TOTP-секрета в Base32.

Введите или сгенерируйте секрет Base32, чтобы увидеть код в реальном времени.

URI otpauth://

  

⚠ Только для тестирования и разработки — например, для проверки собственной реализации TOTP по известным секретам. Введённые здесь секреты остаются только в этой вкладке браузера и никуда не отправляются. Не вставляйте реальный рабочий секрет 2FA ни в один онлайн-инструмент, включая этот, если вы не доверяете ему полностью и не понимаете риски.

Об этом инструменте

TOTP (одноразовый пароль на основе времени, RFC 6238) — это алгоритм, лежащий в основе шестизначных кодов, которые показывают Google Authenticator, Microsoft Authenticator, Authy и большинство настроек двухфакторной аутентификации по принципу «отсканируйте этот QR-код». Он работает, объединяя общий секретный ключ с текущим временем, округлённым вниз до фиксированного окна (обычно 30 секунд), и пропуская результат через HMAC — та же конструкция, что используется в HOTP из RFC 4226, только со счётчиком, производным от времени, вместо инкрементного. Поскольку обе стороны (ваше устройство и сервер) знают секрет и могут читать часы, они независимо вычисляют один и тот же код, никогда его не передавая.

Этот инструмент выполняет полный алгоритм RFC 6238 на стороне клиента, используя нативную реализацию HMAC браузера (WebCrypto): вставьте (или сгенерируйте) секрет в кодировке Base32, и он выведет текущий код в реальном времени, обновляя его каждую секунду и переключая ровно в момент окончания 30-секундного окна. Он предназначен для разработчиков, проверяющих реализацию TOTP, тестирующих процесс регистрации или желающих понять, как на самом деле вычисляются коды аутентификатора — а не для хранения реальных секретов 2FA ваших аккаунтов.

Частые вопросы

Это тот же алгоритм, что и в Google Authenticator?

Да — здесь реализован TOTP согласно RFC 6238 с SHA-1 (по умолчанию), это именно то, что используют Google Authenticator, Authy, Microsoft Authenticator и большинство 2FA-приложений. При одинаковом секрете этот инструмент и эти приложения будут выдавать одинаковые коды в один и тот же момент.

Почему мой код перестал совпадать с приложением-аутентификатором?

Две самые частые причины: часы вашего устройства рассинхронизированы (TOTP основан на времени, поэтому обеим сторонам нужны точные часы — синхронизируйте системное время), или вы немного неверно ввели/вставили Base32-секрет. Перепроверьте секрет посимвольно, поскольку у TOTP нет встроенного способа обнаружить опечатку в самом секрете.