2026-08-07
JWT decode vs verify: why decoding is not enough
Decoding shows claims; verification proves integrity. Learn why servers must verify signatures - and how to inspect tokens safely.
Decode and verify are different steps. Mixing them up is a common security mistake: readable claims are not proof that a trusted issuer signed the token.
What decode means
Decoding splits the JWT and turns the header and payload from Base64URL into JSON. Anyone with the token can do this. Public JWT decoders (including Jigglify) are decode-only helpers for debugging.
What verify means
Verification checks the signature with a secret (HMAC) or public key (RSA/ECDSA), and usually validates exp, nbf, audience, and issuer. That must happen in a trusted backend - never in untrusted client code alone for access control.
Why public tools should not claim verification
Verification needs your keys. A third-party page that asks for secrets is a risk. A decoder that never claims "valid signature" is the safer default for inspecting tokens during development.
Practical checklist
- Decode locally to understand claims and expiry while debugging.
- Verify on the server with allow-listed algorithms and the correct key.
- Reject expired tokens and unexpected issuers or audiences.
- Never trust
algalone from an untrusted token.
Inspect a JWT safely - decode only, in your browser, with a clear verify-on-server reminder.
Open the free JWT decoder →
Related: What is a JWT? · How to decode a JWT