Tested tool guide
Tested browser tools
Checked August 16, 2026
What JWT Debugger does, with a checked example
A compact JWT becomes inspectable as its JOSE header, claims payload, and signature status. The debugger accepts the serialized token, decodes the first two base64url segments into editable JSON, and re-encodes them as the text changes. With the appropriate secret or verification key, it can check whether the third segment matches the signing input. The important surprise is that decoding is not verification: anyone holding a normal signed JWT can read its header and payload, even without the key.
Worked example
A concrete input and expected output from the current implementation.
Input
JWT: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
HMAC secret: your-256-bit-secret
->
Expected output
Header: {"alg":"HS256","typ":"JWT"}
Payload: {"sub":"1234567890","name":"John Doe","iat":1516239022}
Signature: valid The first two segments are the base64url encodings of the displayed JSON objects. Using the literal UTF-8 bytes of "your-256-bit-secret", HS256 produces the signature represented by the third segment, so verification succeeds.