Генератор TOTP (коды 2FA)

Создавайте временные одноразовые пароли (TOTP) из секрета Base32 с SHA-1/256/512, 6–8 цифрами и любым периодом. Обратный отсчёт, векторы RFC 6238 проверены.

Ключ, который сервис показывает при настройке 2FA. Пробелы и строчные буквы допустимы.

Оставьте пустым, чтобы использовать текущее время.

TOTP (RFC 6238) вычисляет HOTP со счётчиком T = floor(время Unix / период). Большинство приложений используют SHA-1, 6 цифр и 30 секунд. Часы устройства должны быть точными. Ключ не покидает браузер, но обращайтесь с ним как с паролем.

Работает полностью в вашем браузере. Ваши данные никуда не загружаются.

Что такое Генератор TOTP (2FA)?

Инструмент вычисляет те же 6–8-значные коды, что показывают приложения-аутентификаторы, из секретного ключа Base32. Он обновляется вживую с обратным отсчётом, показывает также предыдущий и следующий коды и может вычислить код для любого времени Unix для тестирования серверов.

Как пользоваться Генератор TOTP (2FA)

  1. Вставьте Секретный ключ (Base32) или нажмите Новый случайный ключ.
  2. Задайте Алгоритм, Цифр и Период (секунд) по параметрам сервиса (обычно SHA-1, 6, 30).
  3. Прочитайте текущий код и оставшиеся секунды.
  4. При желании введите Время Unix (необязательно), чтобы вычислить код для конкретного момента.

Пример

Ввод
Secret GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ, SHA-1, 8 digits, Unix time 59
Вывод
94287082

Тестовый вектор из приложения B RFC 6238 (секрет это ASCII 12345678901234567890 в Base32).

Когда использовать Генератор TOTP (2FA)

Используйте для тестирования реализации 2FA, восстановления кодов на компьютере при наличии секрета или чтобы понять, как работает TOTP. Не храните настоящие секреты аккаунтов во вкладках браузера; используйте приложение-аутентификатор или менеджер паролей.

Как работает Генератор TOTP (2FA)

TOTP (RFC 6238) вычисляет HOTP (RFC 4226) со счётчиком T = floor(время Unix / период): HMAC-SHA-1/256/512 от 8-байтового счётчика в big-endian с ключом из декодированного Base32-секрета, затем динамическое усечение (смещение = последний полубайт) и остаток по модулю 10^цифр. HMAC считается через Web Crypto API. Все тестовые векторы из приложения B RFC 6238 воспроизводятся точно.

Распространенные Случаи Использования

  • Тестирование входа по TOTP в разрабатываемом веб-приложении
  • Проверка расхождения часов сервера по сравнению кодов
  • Воспроизведение тестовых векторов RFC 6238
  • Создание кодов для тестовой учётной записи в документации CI

Примечание по Безопасности

Секрет TOTP так же чувствителен, как пароль: любой, кто им владеет, может создавать ваши коды.

Часто Задаваемые Вопросы

Почему мои коды не совпадают с приложением?

Проверьте, что алгоритм, число цифр и период совпадают и что часы компьютера точны; разница часов в 30 секунд меняет код.

Отправляется ли мой секрет куда-либо?

Нет. HMAC вычисляется в вашем браузере через Web Crypto.

Какой алфавит Base32 используется?

RFC 4648: A–Z и 2–7. Пробелы, дефисы, строчные буквы и дополнение = принимаются и игнорируются.

Другие категории