JWT Header and Algorithm Checker

Check a JWT header for the alg, typ and kid fields. Find out whether a token is signed with HS256 or RS256 and which key ID to verify with.

Part of the free JWT Decoder. Runs in your browser — nothing is uploaded.

JWT Header and Algorithm Checker

The JWT header says how the token was signed. alg is the algorithm (HS256, RS256, ES256), typ is usually JWT and kid names the key that was used. Decode the header first when signature verification keeps failing.

Worked example: An RS256 token with a key ID

JWT

eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsImtpZCI6ImtleS0yMDI2LTAxIn0.eyJpc3MiOiJodHRwczovL2F1dGguZXhhbXBsZS5jb20iLCJzdWIiOiJ1c2VyXzciLCJpYXQiOjE3NjcyMjU2MDB9.c2lnbmF0dXJl

Decoded header and payload

// HEADER
{
  "alg": "RS256",
  "typ": "JWT",
  "kid": "key-2026-01"
}

// PAYLOAD
{
  "iss": "https://auth.example.com",
  "sub": "user_7",
  "iat": 1767225600
}

// CLAIM TIMES (UTC)
iat: 2026-01-01 00:00:00 UTC

Practical tip

Never trust the alg header to choose how you verify. Pin the expected algorithm in your server code, and reject alg "none".

How to use this JWT Decoder

  1. 1Use the live tool above — it runs entirely in your browser and never uploads your data.
  2. 2Paste the sample from the worked example, or use your own input.
  3. 3Copy the result, then adapt the same steps in your editor, script, or pipeline.

JWT Header and Algorithm Checker FAQs

What is the difference between HS256 and RS256?

HS256 signs with a shared secret, so verifiers need that same secret. RS256 signs with a private key and anyone can verify with the public key.

What is the kid header for?

kid identifies which key signed the token, letting services rotate keys. Look it up in the issuer's JWKS to find the right public key.

More JWT Decoder pages

Open the full JWT Decoder tool →