Depanator / decodor JWT

Se lipește orice JWT pentru a decoda cele trei părți separate prin punct — antetul, payload-ul și semnătura în base64url sunt afișate ca JSON formatat, iar revendicările înregistrate (exp, iat, nbf și altele) sunt convertite la ora locală. Semnătura poate fi apoi verificată cu API-ul WebCrypto: HMAC (HS256/384/512) cu un secret, sau RSA/ECDSA (RS256/384/512, ES256/384/512) cu o cheie publică PEM. Un token HS256 de probă este disponibil dintr-un clic, pentru experimente. Totul rulează local — tokenurile, secretele și cheile nu sunt trimise nicăieri.
Token JWT Format: header.payload.signature (trei segmente base64url).
Avertisment: acest token declară alg:none, ceea ce înseamnă că nu este semnat. Serviciile reale trebuie să respingă tokenurile nesemnate — se consideră că nu sunt de încredere.
RevendicareValoareInterpretare
Secret
crypto.subtle nu este disponibil în acest context, deci verificarea semnăturii este dezactivată. Se deschide pagina prin https: sau dintr-un fișier local pentru a o activa. Decodarea funcționează în continuare.
Cum se citește rezultatul: antetul conține de obicei alg (algoritmul de semnare) și typ. Revendicările înregistrate afișate cu conversie la ora locală sunt iat (emis la), nbf (nu înainte de) și exp (expirare) — o insignă roșie înseamnă că tokenul a expirat, iar una galbenă înseamnă că expiră în mai puțin de 24 de ore. Verificarea semnăturii calculează același MAC pe care l-ar calcula emitentul sau verifică cheia publică RSA/ECDSA introdusă, apoi marchează tokenul ca VALID sau INVALID. Se pot verifica doar algoritmii pe care îi implementează stratul WebCrypto al browserului; orice altceva este raportat ca neacceptat, fără a fi ghicit.

Revendicări înregistrate frecvente: sub (subiectul) este utilizatorul sau entitatea la care se referă tokenul — în exemplul dat este doar un ID numeric, dar serviciile pun adesea aici un e-mail, un nume de utilizator sau un UUID. iss indică emitentul, aud indică audiența vizată, iar jti este un ID unic al tokenului, folosit pentru a preveni reluarea. Aceste revendicări nu sunt criptate; oricine are tokenul le poate citi, deci parolele sau secretele nu trebuie puse niciodată în payload-ul JWT.

Confidențialitate: decodarea și verificarea au loc integral în această pagină, cu API-ul WebCrypto — tokenul, secretul și orice cheie publică nu sunt transmise niciodată. Pentru un token cu alg:none, pagina afișează un avertisment clar: tokenurile nesemnate nu ar trebui acceptate niciodată de un API real.