Generador HMAC (HMAC-SHA256 en el navegador)

Una página de generación HMAC SHA256 sin red para cálculo rápido de HMAC y verificación de firmas.

Todo se ejecuta localmente en su navegador. Las claves y los mensajes nunca se transmiten ni se guardan.

Cálculo local Sin almacenamiento Hex y Base64
Sin transmisión por red

Cómo usar (cómo crear una firma HMAC)

  1. Introduzca la clave. Si la especificación de su API proporciona bytes binarios de clave, elija formato de entrada Hex o Base64.
  2. Introduzca el mensaje o payload a firmar.
  3. Elija el formato de salida (Hex / Base64 / Base64URL) y copie el resultado.
HMAC trabaja con bytes, no con texto visual. La codificación UTF-8, las diferencias de salto de línea y los espacios extra cambiarán el resultado.

Ejemplos (vectores de prueba)

Ejemplo 1 (comprobación corta)

Entrada: Clave = secret (UTF-8), Mensaje = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

Ejemplo 2 (frase común)

Entrada: Clave = key, Mensaje = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Errores habituales

  • Las diferencias entre saltos de línea LF y CRLF producen firmas distintas.
  • Recortar espacios iniciales/finales puede romper la coincidencia de firmas API.
  • Base64URL suele significar + por -, / por _ y padding = omitido. Revise la especificación de su API.
  • Si una clave se distribuye como bytes Hex/Base64, tratarla como texto plano provoca discrepancias.

Preguntas frecuentes

¿Se guarda mi clave?

No. Esta herramienta calcula en su navegador y no envía entradas de clave/mensaje a ningún servidor.

¿Base64 o Hex?

Ambos son habituales. Puede elegir salida Hex / Base64 / Base64URL para adaptarla a la especificación de su API.

¿Qué codificación de caracteres se usa (UTF-8)?

La entrada de texto se codifica como UTF-8 antes del cálculo HMAC. Para valores binarios, use entrada Hex/Base64.

¿Cuál es la diferencia entre HMAC y hash SHA-256?

SHA-256 es un hash simple. HMAC añade una clave secreta para autenticación de mensajes.

Mi salida no coincide. ¿Qué debo revisar?

Revise la interpretación de la clave (texto vs bytes), el tratamiento de saltos de línea, el recorte de espacios y las reglas Base64URL.

Complemento

¿Qué es HMAC?

HMAC es un código de autenticación de mensajes basado en hash y clave secreta, usando una función hash.

Diferencia respecto a SHA-256

SHA-256 por sí solo no tiene clave secreta. HMAC-SHA256 requiere una clave compartida y se usa para firmas.

Casos de uso típicos

Firmas de solicitudes API, verificación de webhooks y comprobación de integridad de tokens.