Генератор HMAC
Генерация HMAC (код аутентификации сообщений на основе хэша) с несколькими алгоритмами
Генератор HMAC
Сравнение HMAC
Примеры использования
Аутентификация API
Генерация HMAC-подписей для аутентификации API-запросов, широко используемая в REST API.
Верификация вебхуков
Проверка полезной нагрузки вебхуков путём сравнения HMAC-подписей от сервисов вроде Stripe или GitHub.
Подпись JWT
Создание HMAC-SHA256 подписей для подписания полезной нагрузки JSON Web Token (JWT).
Возможности
Несколько алгоритмов
Поддержка HMAC-SHA256, HMAC-SHA384, HMAC-SHA512 и HMAC-SHA1
Сравнение HMAC
Сравнение сгенерированного HMAC с ожидаемым значением для проверки целостности сообщения
Несколько форматов вывода
Вывод в шестнадцатеричном или Base64-формате для различных задач интеграции
Web Crypto API
Использование нативного Web Crypto API для безопасной генерации HMAC в браузере
Как пользоваться?
Введите сообщение и ключ
Введите или вставьте сообщение и укажите секретный ключ в соответствующих полях.
Выберите алгоритм
Выберите алгоритм HMAC (SHA-256, SHA-384, SHA-512 или SHA-1) и формат вывода.
Сгенерируйте и скопируйте
Нажмите «Сгенерировать HMAC» и скопируйте результат. При необходимости сравните с ожидаемым HMAC.
Часто задаваемые вопросы
Что такое HMAC?
HMAC расшифровывается как Hash-based Message Authentication Code (код аутентификации сообщений на основе хэша). Он комбинирует криптографическую хэш-функцию (вроде SHA-256) с секретным ключом для создания подписи, которая подтверждает и целостность, и подлинность сообщения. В отличие от обычного хэша, HMAC гарантирует, что только тот, кто знает секретный ключ, мог создать этот код — поэтому HMAC лежит в основе аутентификации API, верификации вебхуков и подписи JWT.
Где используется HMAC
Если вы интегрировались со Stripe, GitHub или AWS — вы уже использовали HMAC. Stripe подписывает полезную нагрузку вебхуков с помощью HMAC-SHA256, чтобы вы могли убедиться, что они действительно от Stripe. AWS использует HMAC-SHA256 в Signature Version 4 для подписи API-запросов. JWT с алгоритмом HS256 — это буквально HMAC-SHA256 под капотом. Этот инструмент позволяет генерировать и проверять такие подписи без написания кода.
HMAC против обычного хэширования
SHA-256 хэш от «hello» всегда одинаков, кто бы его ни вычислял. HMAC-SHA256 от «hello» различается для каждого секретного ключа — поэтому он подтверждает и то, что сообщение не было изменено, И то, что оно создано тем, кто знает ключ. В этом критическая разница: хэширование обеспечивает целостность, HMAC обеспечивает целостность плюс аутентификацию.
Выбор правильного алгоритма
HMAC-SHA256 — отраслевой стандарт, и его стоит использовать, если нет конкретных причин для другого выбора. HMAC-SHA384 и HMAC-SHA512 создают более длинный вывод для большего запаса безопасности. HMAC-SHA1 поддерживается для обратной совместимости со старыми системами, но не должен использоваться в новых реализациях. Выбор алгоритма не влияет на принцип работы HMAC — он лишь определяет базовую хэш-функцию.
Безопасность и конфиденциальность
Инструмент полностью работает в браузере через Web Crypto API — ту же криптографическую реализацию, которая обрабатывает TLS. Ваш секретный ключ никогда не попадает на сервер. Можете убедиться, запустив инструмент без интернета. В продакшене всегда храните HMAC-ключи в переменных окружения или системах управления секретами, никогда в клиентском коде.