Генератор HMAC (HMAC-SHA256 в браузере)

Страница генерации HMAC SHA256 без сети для быстрого расчета HMAC и проверки сигнатур.

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

Локальные вычисления Без хранения Hex и Base64
Без сетевой передачи

Как использовать (HMAC signature)

  1. Введите ключ. Если спецификация вашего API задает двоичные байты ключа, выберите формат ввода Hex или Base64.
  2. Введите сообщение (payload), которое нужно подписать.
  3. Выберите формат вывода (Hex / Base64 / Base64URL) и скопируйте результат.
HMAC работает с байтами, а не с визуальным текстом. Кодировка UTF-8, различия в переводах строк и лишние пробелы меняют результат.

Примеры (test vectors)

Пример 1 (короткая проверка)

Ввод: Ключ = secret (UTF-8), Сообщение = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

Пример 2 (известная фраза)

Ввод: Ключ = key, Сообщение = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Типичные ошибки

  • Различия между переводами строк LF и CRLF дают разные подписи.
  • Обрезка пробелов в начале/конце может нарушить совпадение сигнатуры API.
  • Base64URL часто означает замену + на -, / на _ и отсутствие padding =. Проверьте спецификацию API.
  • Если ключ распространяется как байты Hex/Base64, интерпретация его как обычного текста приведет к несовпадению.

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

Мой ключ сохраняется?

Нет. Этот инструмент вычисляет все в вашем браузере и не отправляет ни ключ, ни сообщение ни на какой сервер.

Base64 или Hex?

Оба формата распространены. Вы можете выбрать вывод Hex / Base64 / Base64URL в соответствии со спецификацией API.

Какая кодировка используется (UTF-8)?

Текстовый ввод кодируется как UTF-8 перед вычислением HMAC. Для двоичных значений используйте ввод Hex/Base64.

Чем HMAC отличается от SHA-256 hash?

SHA-256 — это обычный хэш. HMAC добавляет секретный ключ для аутентификации сообщения.

Результат не совпадает. Что проверить?

Проверьте интерпретацию ключа (текст или байты), обработку переводов строк, обрезку пробелов и правила Base64URL.

Дополнение

Что такое HMAC?

HMAC — это код аутентификации сообщения на основе хэш-функции и секретного ключа.

Отличие от SHA-256

У SHA-256 самого по себе нет секретного ключа. HMAC-SHA256 требует общий ключ и используется для подписей.

Типичные сценарии

Подпись API-запросов, проверка webhook и контроль целостности токенов.