Tools

Documentation · Playgrounds

Back to tool

JWT Encoder / Inspector

Encode, decode, inspect, and verify JWT tokens in the browser. Header, payload, and signature are handled locally — the token is never sent to a server.

Everything runs on your device. Still: do not paste production tokens or real secrets into any site (including this one) unless you trust the environment.

Tabs

TabWhat it does
InspectShows header, payload, time claims, and lets you verify the signature
DecodeOnly reads the token (Base64URL → JSON), without validating the signature
EncodeCreates a JWT signed with HMAC (HS256 / HS384 / HS512)

Decode vs verify

  • Decode only interprets the content. A forged or invalid token can still “open” if the Base64 is intact.
  • Verify checks the signature with the key you provide. Only then can you claim the token was not tampered with.

Decoding ≠ authentication. Without signature verification, treat the payload as untrusted data.

Supported algorithms

UseAlgorithms
EncodeHS256, HS384, HS512 (HMAC)
VerifyHMAC (HS*), RSA (RS*), and ECDSA (ES*) — with the matching key

The tool does not sign with RSA/ECDSA (it only verifies with a public key). Tokens with alg: none are not treated as a valid signature.

How to use (summary)

  1. Paste the token in Inspect or Decode.
  2. To verify: provide an HMAC secret or a public key (PEM / JWK, depending on format).
  3. In Encode, build header/payload and an HMAC secret to create a test token.

Technology used

  • @noble/hashes for HMAC (SHA-256 / 384 / 512) in the browser.
  • Web Crypto API for RSA and ECDSA verification.
  • Base64URL encoding with no server involved.

Search tools

Search tools by name, description, or tag.