Generate and verify HMAC signatures for API payloads without leaving the browser. Switch algorithms, choose output encodings, test canonical strings, and compare expected signatures when debugging webhook auth or signed requests.
Paste the exact string your backend signs. For example: raw body, timestamp + '.' + body, or a canonical request string.
AlgorithmSHA-256
Encodinghex
Message bytes0
Signature length0
Output & verification
Client-side onlyNo verification yet
Generate a signature first, then compare it against an expected value.
Encoding notes
• Hex is most common for backend logs and CLI checks.
• Base64 is common in signed headers and SDK output.
• Base64URL is useful for URL-safe transport.
• Secret format matters: raw text vs decoded base64/hex can completely change the signature.
Common mismatch causes
• Signing parsed JSON instead of the raw request body
• Missing timestamp prefix or wrong separator
• Trailing newline in payload or secret
• Wrong output encoding
• Secret provided in base64 but treated as plain text