HS256
What this is
HS256 signs the header.payload with HMAC-SHA-256 and a shared secret. Anyone who can verify can also mint. Use it for first-party APIs on one server, not for tokens an untrusted client must verify. Same-service session tokens, internal job queues, demos. Secret must be high-entropy (≥256 bits).
Open the decoder and paste a HS256 token. Verification stays in the browser.
FAQ
- Can the browser verify HS256 safely?
- Only if the secret is already in that app (you are the issuer). Never ship an HS256 secret to a SPA that only needs to read claims — use RS256/ES256 and the public key.
- alg confusion?
- A token labeled HS256 that you verify with an RSA public key interpreted as an HMAC secret is a classic attack. Pin allowed algorithms on the verifier.