HMAC is a keyed hash-based message authentication code. Different keys produce different results for the same message. HMAC can verify data integrity while confirming that the sender possesses the expected secret key, making it widely used for API signatures, Webhook verification, and signed download URLs.
Eight algorithms are supported: HMAC-SHA1, HMAC-SHA256, HMAC-SHA384, HMAC-SHA512, HMAC-SHA3-224, HMAC-SHA3-256, HMAC-SHA3-384, and HMAC-SHA3-512. SHA-1 is marked as not recommended, while SHA-256 is the default. Keys and messages can independently use UTF-8, Hex, or Base64 encoding. Results support Hex and Base64 output.
Verification uses constant-time comparison. Results display digest length, message length, and key length. JWT Base64URL encoding differs from standard Base64 in padding and two characters, so the encoding format must be selected correctly.
Invalid Hex characters or odd-length Hex values, invalid Base64 data, empty keys or messages, and missing expected HMAC values are reported clearly.
Useful for API signature debugging, Webhook verification, cross-language testing with PHP, Java, Go, and Node.js, and testing with randomly generated keys.
All calculations are performed locally in the browser. Keys and messages are not uploaded to a server. Use test keys rather than production secrets during debugging.
Comments 0