Enkoder i dekoder JWT
Enkoduj i dekoduj tokeny JWT (JSON Web Token). Walidacja podpisu HS256/RS256. Podgląd header, payload, signature. Bezpłatnie.
-
1Wprowadź dane
Wpisz treść, wklej tekst lub załaduj plik z dysku. -
2Kliknij przycisk
Narzędzie natychmiast przetworzy Twoje dane w przeglądarce. -
3Pobierz wynik
Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
return "Wynik gotowy w 0.1s";
}
Oceń to narzędzie:
Powiązane narzędzia
Inne narzędzia, które mogą Ci się przydaćKoder i dekoder JWT — analizuj tokeny JSON Web Token
Koder i dekoder JWT to narzędzie online dla deweloperów umożliwiające dekodowanie, analizowanie i weryfikację tokenów JWT (JSON Web Token). Wklej token, aby natychmiast zobaczyć jego nagłówek, payload i sygnaturę — bez potrzeby pisania kodu.
Czym jest JWT?
JWT (JSON Web Token) to otwarty standard (RFC 7519) definiowania bezpiecznego, kompaktowego sposobu przekazywania informacji między stronami jako obiekt JSON. JWT są powszechnie używane w systemach uwierzytelniania i autoryzacji — szczególnie w architekturach RESTful API i aplikacjach Single Page Application (SPA).
Token JWT składa się z trzech części oddzielonych kropkami: header.payload.signature. Każda część jest zakodowana Base64Url. Header zawiera typ tokenu (JWT) i algorytm szyfrowania (HS256, RS256, ES256). Payload zawiera claims — twierdzenia o użytkowniku (sub, email, role) i tokenie (iat — issued at, exp — expiration). Signature jest podpisem weryfikującym autentyczność tokenu.
Jak używać dekodera JWT?
Wklej token JWT w pole tekstowe. Narzędzie automatycznie dekoduje Base64Url każdej sekcji i wyświetla: zawartość nagłówka (algorytm, typ) w czytelnym JSON, zawartość payload (claims użytkownika i tokenu) z automatycznym parsowaniem dat (iat, exp, nbf z timestamp na czytelną datę), ostrzeżenie o wygaśnięciu tokenu (jeśli exp jest w przeszłości) oraz strukturę sygnatury. Weryfikacja podpisu wymaga klucza sekretnego (HS256) lub klucza publicznego (RS256) — bez nich możemy jedynie zdekodować, nie zweryfikować.
Bezpieczeństwo JWT — co warto wiedzieć?
JWT są podpisane, nie szyfrowane (chyba że używasz JWE). Oznacza to, że payload jest tylko zakodowany Base64Url — każdy, kto ma token, może go zdekodować i odczytać claims. Nigdy nie umieszczaj w JWT poufnych danych (haseł, danych karty kredytowej). Zawsze ustawiaj krótki czas ważności (exp) — tokeny dostępu zazwyczaj 15 minut do 1 godziny, tokeny odświeżania — kilka dni. Używaj HTTPS — token przesyłany przez niezaszyfrowane połączenie może zostać przechwycony.
Typowe claims w JWT
sub (subject) — identyfikator użytkownika. iat (issued at) — czas wystawienia tokenu (Unix timestamp). exp (expiration) — czas ważności tokenu. nbf (not before) — token ważny dopiero od tego momentu. iss (issuer) — wystawca tokenu. aud (audience) — dla kogo przeznaczony. jti (JWT ID) — unikalny identyfikator tokenu.
Najczęściej zadawane pytania
Czy dekodowanie JWT przez to narzędzie jest bezpieczne?
Narzędzie działa po stronie klienta (w przeglądarce) — token nie jest wysyłany na serwer. Dekodowanie Base64 odbywa się lokalnie w JavaScript. Jednak dla tokenów produkcyjnych zawierających wrażliwe dane, zawsze preferuj lokalne narzędzia deweloperskie (np. jwt.io w trybie offline lub narzędzia CLI).
Jaka jest różnica między HS256 a RS256 w JWT?
HS256 (HMAC SHA-256) używa jednego tajnego klucza do podpisywania i weryfikowania — prostszy, ale klucz musi być znany zarówno wystawcy, jak i weryfikatorowi. RS256 (RSA SHA-256) używa pary kluczy: prywatnego do podpisywania i publicznego do weryfikacji — bezpieczniejszy w systemach rozproszonych, gdzie różne serwisy weryfikują tokeny.
Jak sprawdzić, czy token JWT wygasł?
Sprawdź wartość claim exp — jest to Unix timestamp (sekundy od 1970-01-01). Jeśli exp jest w przeszłości (mniejszy niż aktualny timestamp), token wygasł. Nasz dekoder automatycznie konwertuje timestamp na czytelną datę i wyświetla ostrzeżenie, jeśli token wygasł.
Czy można zmienić payload tokenu JWT?
Technicznie tak — można zdekodować, zmodyfikować i ponownie zakodować Base64. Jednak bez znajomości klucza sekretnego (HS256) lub klucza prywatnego (RS256) nie można wygenerować prawidłowej sygnatury. Serwer weryfikujący token odrzuci token z nieprawidłową sygnaturą.
Gdzie przechowywać token JWT w aplikacji webowej?
Najpopularniejsze opcje to: localStorage/sessionStorage (wygodne, ale podatne na ataki XSS), HttpOnly cookies (bezpieczniejsze — niedostępne dla JavaScript, chronione przed XSS), memory (zmienna JS — najbezpieczniejsze, ale token znika po odświeżeniu strony). Dla aplikacji produkcyjnych zalecane są HttpOnly cookies z atrybutem Secure i SameSite=Strict.