Esta página aún no está traducida al español, así que la mostramos en inglés.

HMAC Generator — SHA-256, SHA-512 & SHA-1

Compute keyed HMAC signatures for API requests and webhooks, and check whether a received signature is valid — using your browser’s Web Crypto API.

Actualizado el
Algorithm

🔒 Runs locally with your browser’s Web Crypto API — nothing you type is sent to a server.

Tus datos nunca salen de tu ordenador. Todo se procesa localmente en tu navegador.

Cómo usar: HMAC Generator

  1. Paste the message exactly as it is signed — the raw request body for webhooks.
  2. Enter the secret key and pick its encoding.
  3. Choose the hash algorithm; the HMAC updates instantly.
  4. Paste a received signature into Expected signature to verify it.

What is HMAC?

HMAC (Hash-based Message Authentication Code, RFC 2104) combines a secret key with a hash function to produce a signature. Anyone with the key can compute the same value; anyone without it cannot forge one. APIs use HMAC to sign requests (AWS Signature v4, many payment gateways) and webhooks use it so you can prove a callback really came from the sender.

Verifying webhooks

ServiceHeaderAlgorithm / encoding
GitHubX-Hub-Signature-256HMAC-SHA256, hex, prefixed sha256=
StripeStripe-SignatureHMAC-SHA256 hex of timestamp.body
ShopifyX-Shopify-Hmac-Sha256HMAC-SHA256, Base64
SlackX-Slack-SignatureHMAC-SHA256 hex of v0:timestamp:body

The most common reason a signature does not match is that the body was changed before signing — parsed and re-serialized JSON, different whitespace or line endings. Always sign the raw bytes you received. The verifier above accepts hex (with or without sha256=), Base64 and Base64url.

HMAC vs plain hashes

A plain SHA-256 hash proves integrity but not authenticity: anyone can recompute it after changing the message. HMAC includes the secret, so only key holders can produce a valid value. Use a key of at least as many random bytes as the hash output (32 for SHA-256). In server code, compare signatures with a constant-time function such as crypto.timingSafeEqual.

For unkeyed hashes, use the hash generator; for signed tokens, the JWT encoder.

También se busca como: hmac sha256, hmac online, hmac sha256 online, webhook signature, hmac sha512, verify hmac.

Herramientas que combinan con: HMAC Generator

  • Decodificador JWT — Pega un token web JSON para examinar su encabezado y su carga útil, comprobar cuándo caduca y verificar su firma.
  • Codificación y descodificación Base64 — Convierte texto a Base64 y viceversa con compatibilidad total con UTF-8 (acentos, emojis), cambia a Base64 compatible con URL o arrastra un archivo para obtener su cadena Base64 o su URI de datos.
  • AES Encrypt & Decrypt — Protect a note, secret or config value with a password using AES-256 — or decrypt text produced by openssl enc.
  • IBAN Validator — Check whether an IBAN is valid before you send money or save it: the country, the length for that country, the account format and the mod-97 checksum.

Preguntas frecuentes

Why does my HMAC not match the webhook signature?
Usually the message differs: the body must be the raw bytes received, not JSON that was parsed and re-stringified. Also check the algorithm, the key encoding and any prefix like sha256=.
Is HMAC-SHA1 still secure?
HMAC-SHA1 is still considered secure for authentication, unlike plain SHA-1 for signatures, but new systems should use HMAC-SHA256.
Is my secret key sent anywhere?
No. The HMAC is computed in your browser with the Web Crypto API.
What is the difference between hex and Base64 output?
They encode the same bytes differently. Hex is 64 characters for SHA-256; Base64 is 44 characters. Use whatever the receiving system expects.
¿Puedo instalar HMAC Generator como aplicación web y utilizarla sin conexión?
Sí. HMAC Generator es una aplicación web instalable (PWA): se instala desde el navegador, no se descarga desde una tienda de aplicaciones. Haz clic en «Instalar aplicación» en la parte superior de esta página en Chrome o Edge (Windows, macOS, Linux, ChromeOS) o, en Android, utiliza «Compartir» → «Añadir a la pantalla de inicio» en iPhone y iPad, o «Archivo» → «Añadir al Dock» en Safari 17+ en un Mac. A continuación, se abrirá en su propia ventana con su propio icono y, como se ejecuta íntegramente en tu navegador, seguirá funcionando sin conexión. Firefox en el ordenador de sobremesa no permite instalar aplicaciones web. Cómo funciona la instalación.

Herramientas relacionadas