Decode a JSON Web Token, or sign a new one with HS, RS, ES and PS algorithms. Everything runs locally - your tokens and keys never leave your browser.
Decoded locally in your browser. This tool does not verify the signature.
A JSON Web Token (JWT) is a compact, URL-safe token made of three Base64URL parts - a header, a payload of
claims, and a signature. Decode reads the header and payload of any token, including timestamp claims
like exp, iat and nbf. Encode signs a brand-new token with the
algorithm of your choice - HMAC (HS256/384/512) using a secret, or RSA, ECDSA and RSA-PSS (RS, ES, PS) using
a private key. All signing happens in your browser with the Web Crypto API, so secrets and keys are never
sent anywhere.
exp claim.none.iat, nbf and exp.Inspecting what an auth token actually claims while debugging a login, checking whether a token has expired, crafting a test token for a local API, or learning how a given algorithm shapes the signature. Because nothing leaves your browser, it is safe to paste a production token you are troubleshooting.
No. Decoding only Base64URL-decodes the header and payload so you can read them. Verifying means checking the signature against a key, which this decoder does not do.
No. Decoding and signing both run in your browser with the Web Crypto API, so tokens, secrets and private keys never leave your machine.
header.payload.signature, each Base64URL-encoded and joined with dots, as defined in RFC 7519. The header names the algorithm, the payload holds the claims, and the signature authenticates the first two parts.
HMAC (HS256/384/512) with a shared secret, plus RSA (RS), ECDSA (ES) and RSA-PSS (PS) using a PKCS#8 private key, or none for an unsigned token.