HMAC Generator

Enter a secret key and message body to generate an HMAC digest you can compare against provider documentation or incoming request headers.

Result

Ready.

Reproduce provider signatures locally

Webhook verification fails when teams hash pretty-printed JSON instead of the raw body bytes the sender signed. Generating HMAC on the exact string you received isolates whether the bug is secret rotation, encoding, or middleware order.

Canonical message bytes

Some APIs concatenate timestamp, method, and path before hashing. Read the vendor doc for delimiter rules and whether Base64 or hex encoding is expected in the final header value.

Key rotation checklist

When secrets roll, update both the dashboard configuration and your worker environment. A matching HMAC here confirms the new secret before you redeploy verification middleware.

FAQ

Which hash algorithms are available?
Common options include SHA-256, SHA-384, and SHA-512 HMAC variants depending on browser Web Crypto support. Match the algorithm named in your provider's signature spec exactly.
How do webhooks use HMAC?
Providers sign the raw request body with a shared secret and send the digest in a header—GitHub, Stripe, and Shopify each document header names and payload canonicalization rules you must follow byte-for-byte.
Does the secret leave my browser?
No. Key and message stay on-device for the calculation. Still avoid typing production secrets on untrusted machines or during screen sharing.