Вычисляет HMAC-SHA256, HMAC-SHA512, HMAC-SHA384 и HMAC-SHA1 одновременно из одного ввода сообщения и ключа, чтобы вы могли сравнить результаты или выбрать подходящий для вашей задачи.
HMAC обновляются мгновенно по мере ввода — нажимать кнопку не нужно. Удобно для отладки подписей API и проверки webhook, когда нужно быстро протестировать разные комбинации ключа и сообщения.
Переключайтесь между выводом в нижнем регистре hex и Base64 одним щелчком. Большинство API (AWS, Stripe, GitHub) используют hex, некоторые — Base64. Оба формата представляют одно и то же значение HMAC.
Все вычисления HMAC используют Web Crypto API браузера — ваше сообщение и секретный ключ никогда не покидают устройство. Безопасно вычислять подписи API с реальными рабочими ключами.
HMAC (код аутентификации сообщений на основе хеша) — это механизм проверки как целостности, так и подлинности сообщения. Он объединяет криптографическую хеш-функцию (например, SHA-256) с секретным ключом и создаёт подпись фиксированного размера. Воспроизвести тот же HMAC может только тот, у кого есть тот же секретный ключ.
HMAC-SHA256 используется для подписи запросов API (например, AWS Signature v4, вебхуки Stripe, вебхуки GitHub), проверки подписей JWT (HS256), аутентификации WebSocket-соединений и защиты cookie. Это самый распространённый вариант HMAC.
Нет. Обычный хеш (например, SHA-256) может вычислить кто угодно, и он не доказывает подлинность. HMAC требует секретного ключа, поэтому вычислить или проверить код могут только стороны, у которых есть общий ключ. Это делает HMAC пригодным для аутентификации, тогда как обычные хеши используются для целостности и контрольных сумм.
Соедините компоненты, которые нужно подписать (метод, путь, метку времени, хеш тела и т. д.), в каноническую строку, затем вычислите HMAC-SHA256 этой строки с помощью секретного ключа API. Поместите полученное значение в hex или Base64 в заголовок Authorization. В большинстве документаций API указан точный формат канонической строки.