#050 · Herramienta para desarrolladores

HMAC Generator

Genera un código HMAC para un mensaje usando una clave secreta y SHA-256, SHA-384 o SHA-512 mediante Web Crypto. HMAC combina un hash criptográfico con una clave compartida para verificar integridad y autenticidad. La clave y el mensaje se procesan localmente en el navegador. La utilidad sirve para vectores de prueba y depuración; evita pegar secretos reales en dispositivos que no controles.

Datos de entrada

Mensaje UTF-8
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Introduce el mensaje.
  2. Escribe una clave secreta de prueba.
  3. Selecciona SHA-256, SHA-384 o SHA-512 y el formato de salida.
  4. Genera el HMAC y compáralo con el valor esperado.

Qué hace esta herramienta para desarrolladores

Importa la clave como material HMAC en Web Crypto y firma los bytes UTF-8 del mensaje. El resultado puede representarse en hexadecimal o Base64 sin modificar el valor binario de la firma.

La clave se importa con crypto.subtle.importKey y se calcula la firma con crypto.subtle.sign. El algoritmo de hash se incorpora a la configuración HMAC.

HMAC requiere que emisor y verificador compartan una clave secreta. No incluyas esa clave en código cliente publicado ni la confundas con un hash sin clave.

Ejemplo

Clave: key
Mensaje: The quick brown fox jumps over the lazy dog
HMAC-SHA-256 (hex):
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Casos de uso

  • Validar firmas de pruebas de APIs.
  • Crear vectores HMAC reproducibles.
  • Depurar diferencias de codificación.
  • Comprobar implementaciones entre lenguajes.

Consejos para obtener resultados fiables

  • Usa exactamente los mismos bytes de clave y mensaje en ambos sistemas.
  • Comprueba si la API espera hexadecimal o Base64.
  • No añadas saltos de línea involuntarios al mensaje.
  • No pegues claves de producción en equipos compartidos.

Detalles del procesamiento

Tanto la clave como el mensaje se convierten a UTF-8. La salida hexadecimal usa dos dígitos por byte; Base64 codifica directamente los bytes de la firma.

No admite claves en hexadecimal o Base64 como entrada ni variantes con truncamiento. La clave se interpreta literalmente como texto UTF-8.

Preguntas frecuentes

¿Cómo generar HMAC-SHA-256 con una clave y un mensaje?

Introduce el mensaje, escribe la clave secreta, selecciona HMAC-SHA-256 y ejecuta la herramienta.

¿Por qué mi HMAC no coincide aunque la clave parece igual?

Comprueba la codificación de la clave y el mensaje, los espacios, saltos de línea y si el sistema espera hexadecimal o Base64.

¿HMAC-SHA-256 es lo mismo que SHA-256?

No. HMAC incorpora una clave secreta al proceso; un SHA-256 simple no autentica quién generó el resumen.

¿Puedo introducir una clave HMAC codificada en Base64?

No directamente. Este generador interpreta la clave como texto UTF-8 literal, no como bytes decodificados desde Base64.

¿Es seguro pegar una clave HMAC de producción en esta herramienta?

El cálculo es local, pero por seguridad operacional conviene usar solo claves de prueba y evitar secretos de producción en herramientas interactivas.

Resumen técnico

HMACSHA-256 / SHA-384 / SHA-512
ClaveTexto UTF-8
MensajeTexto UTF-8
SalidaHex / Base64

Explora la categoría

Consulta más utilidades de hash, identificadores y seguridad en el hub de esta categoría.

Ver categoría