Generador HMAC

Debugge las firmas de webhook y la autenticación de API mediante el cálculo de HMAC de la familia SHA desde mensaje y secreto, con salida hexadecimal o Base64.

Read the full guide: JWT Security Basics: Decodificar, Verificar y Errores Comunes →

Privacidad: procesado localmente, nunca cargado.

↓ Pega en el área de entrada de abajo para ver los resultados al instante

消息与密钥

输入消息和共享密钥,HMAC 会随内容实时更新。

密钥
算法
输出格式

Salida

HMAC 结果

0e8d0d54851504630d2d9d46e991b6c226f66812a81416f7d4ae95d5193e345e

Notas

HMAC 说明

HMAC 用密钥对消息做认证摘要,常用于 API 签名与 Webhook 校验。密钥请勿泄露或硬编码在客户端。

Debugge las firmas de webhook y la autenticación de API mediante el cálculo de HMAC de la familia SHA desde mensaje y secreto, con salida hexadecimal o Base64.

Inicio rápido

  1. Introduzca mensaje y secreto

    No hay salida cuando el secreto está vacío.

  2. Algoritmo de selección y formato

    Preferir SHA-256; MD5/SHA-1 solo para sistemas antiguos.

Usos comunes

GitHub, Stripe y webhooks similares usan HMAC para verificar la integridad de la carga útil.

Flujo de trabajo típico

Al desarrollar características que requieren la verificación de la integridad del mensaje, el generador HMAC valida rápidamente las coincidencias de firma. Por ejemplo, al recibir webhooks, copiar el mensaje bruto y la clave secreta del servidor, generar el HMAC y compararlo con la firma en el encabezado de la solicitud para detectar la manipulación.

Al depurar la autenticación de la API, primero compare el HMAC generado localmente con ejemplos de documentación para confirmar la consistencia del algoritmo. A continuación, reemplace con los datos de prueba para verificar las respuestas del servidor. Esto elimina la escritura de scripts temporales, ideal para depurar rápidamente. Asegúrese de que la clave secreta coincida con la contraparte, siendo SHA256 el algoritmo más común.

Webhook verification

Stripe, GitHub, Slack sign raw bodies with HMAC-SHA256. Reproduce digests here—body must be byte-identical. json-formatter changes bodies; verify with raw bytes.

Secrets live in headers (X-Signature), not bodies. Leaked HMAC secrets enable forgery—rotate and audit.

Security

Never paste production webhook secrets into browser tools—use staging or fake keys.

Compare wrong-secret digests with hash-generator against official examples.

Ejemplos

Ejemplo

Input

message=Towalles, secret=secret-key, SHA-256

Output

Hex digest

FAQ

¿Diferencia con el generador de hash?

Los hashes no tienen una clave. HMAC requiere un secreto compartido para los resumens autenticados.

¿Por qué el HMAC difiere del resultado del servidor?

Causas comunes: 1) Incompatibilidad de la clave (comprobar espacios / codificación); 2) Procesamiento de mensajes diferentes (por ejemplo, cortes de línea); 3) Discrepancia del algoritmo; 4) Formato de salida (Hex vs Base64 son equivalentes pero parecen diferentes).

Which algorithms?

Common HMAC-SHA256/512—see tool UI options.

Hex or base64?

Follow integrator docs—Stripe often uses hex.

Sort JSON keys?

Only if docs require canonical JSON—most use raw body.

Secret uploaded?

No—local computation.