Генератор HOTP
Создавайте одноразовые пароли HOTP для любого счётчика из секрета Base32, с SHA-1/256/512 и 6–8 цифрами. Список ближайших кодов; векторы RFC 4226 проверены.
Ключ, который сервис показывает при настройке 2FA. Пробелы и строчные буквы допустимы.
HOTP (RFC 4226): HMAC 8-байтового счётчика с ключом, динамическое усечение, затем остаток от деления на 10^цифр. Сервер и токен хранят свои счётчики, которые увеличиваются с каждым использованным кодом.
Работает полностью в вашем браузере. Ваши данные никуда не загружаются.
Что такое Генератор HOTP?
HOTP создаёт новый одноразовый пароль при каждом увеличении счётчика, как в YubiKey OATH-HOTP и некоторых аппаратных токенах. Инструмент вычисляет код для любого значения счётчика и перечисляет следующие коды, чтобы можно было пересинхронизировать или протестировать сервер.
Как пользоваться Генератор HOTP
- Вставьте Секретный ключ (Base32) и выберите Алгоритм и Цифр по параметрам сервиса.
- Введите Счётчик и укажите, Сколько кодов показать.
- Скопируйте первый код или прочитайте таблицу «счётчик → код».
Пример
Secret GEZDGNBVGY3TQOJQGEZDGNBVGY3TQOJQ, SHA-1, 6 digits, counter 0
755224 (then 287082, 359152, 969429, 338314 for counters 1–4)
Тестовые значения из приложения D RFC 4226.
Когда использовать Генератор HOTP
Используйте для тестирования реализаций HOTP, пересинхронизации счётчика токена или изучения того, как получаются одноразовые пароли. Для временных кодов, которые использует большинство приложений, используйте генератор TOTP.
Как работает Генератор HOTP
HOTP(K, C) = Truncate(HMAC(K, C)) mod 10^цифр, где C это 8-байтовый счётчик в big-endian. Динамическое усечение берёт 4 байта со смещения, заданного младшими 4 битами последнего байта HMAC, и сбрасывает старший бит. HMAC вычисляется через Web Crypto API; все значения из приложения D RFC 4226 воспроизводятся.
Распространенные Случаи Использования
- Тестирование реализации входа по HOTP
- Поиск счётчика рассинхронизированного аппаратного токена
- Воспроизведение тестовых значений RFC 4226
- Обучение шагу динамического усечения
Часто Задаваемые Вопросы
Чем HOTP отличается от TOTP?
HOTP использует счётчик событий, увеличивающийся с каждым кодом; TOTP использует в качестве счётчика текущее время, делённое на период.
Что будет, если счётчик рассинхронизируется?
Серверы обычно принимают окно опережения в несколько значений счётчика, а затем синхронизируются с совпавшим.
Какой формат секрета ожидается?
Base32 (RFC 4648), тот же формат, что используют URI otpauth:// и экраны настройки аутентификаторов.