Generare și verificare JWT
Fă un token semnat din datele tale sau verifică dacă un token primit e autentic și încă valabil. Cheile rămân în browserul tău.
Generează
Scrie payload-ul ca JSON, alege algoritmul și dă cheia: secretul comun pentru HS256/384/512, cheia privată pentru RS (RSA), PS (RSA-PSS) sau ES (ECDSA pe curbele P-256, P-384, P-521). Header-ul se pune singur (alg și typ), iar iat și exp se adaugă la cerere, în secunde de la 1970, cum cere RFC 7519.
Pentru încercări, Generează chei de test face o pereche nouă: cheia privată ajunge în câmpul de semnare, cea publică dedesubt, gata de dat celui care verifică.
Verifică
Lipește tokenul și cheia: secretul, cheia publică (PEM PUBLIC KEY) sau un JWK. Algoritmul e luat din header-ul tokenului; none și algoritmii pe care nu-i cunoaștem sunt refuzați, nu „trecuți”. Pe lângă semnătură vezi și dacă tokenul a expirat (exp) sau încă nu e valabil (nbf).
Ca să vezi doar ce conține un token, fără cheie, e mai simplă decodarea JWT.
Cheile rămân la tine
Semnarea și verificarea se fac în browserul tău, cu Web Crypto: nici cheile, nici tokenurile nu sunt trimise nicăieri. Cheile de test nu sunt păstrate: dispar când închizi pagina.
Întrebări frecvente
Ce format trebuie să aibă cheia privată?
PEM PKCS#8 („BEGIN PRIVATE KEY”) sau JWK. O cheie în formatul vechi „BEGIN RSA PRIVATE KEY” se convertește cu openssl pkcs8 -topk8 -nocrypt -in cheie.pem.
HS256 sau RS256?
HS256 folosește același secret pentru semnare și verificare, deci oricine verifică poate și semna. RS256 și ES256 semnează cu cheia privată și verifică cu cea publică, pe care o poți da oricui.