Skip to main content
CheckTown
Dev Tools

Dekoder JWT: Sprawdzaj i debuguj JSON Web Tokens online

Opublikowano 5 min czytania
W tym artykule

Czym jest JWT?

JSON Web Token (JWT) to kompaktowy token bezpieczny dla URL, służący do przekazywania informacji (ang. claims) między dwiema stronami. JWT stanowi fundament nowoczesnych systemów uwierzytelniania i autoryzacji — serwer wystawia go po zalogowaniu, a kolejne żądania API dołączają go jako dowód tożsamości.

JWT składa się z trzech części zakodowanych w Base64URL, oddzielonych kropkami: nagłówka (algorytm i typ tokenu), ładunku (claims/dane) oraz podpisu (weryfikacja integralności). Podpis tworzony jest przy użyciu klucza tajnego lub prywatnego, co sprawia, że modyfikacja tokenu jest wykrywalna.

Jak działa dekodowanie JWT

Dekodowanie JWT ujawnia jego zawartość bez weryfikowania podpisu — przydatne podczas debugowania, ale niewystarczające do podejmowania decyzji bezpieczeństwa.

  • Dekodowanie nagłówka — ujawnia algorytm podpisywania (HS256, RS256 itp.) oraz typ tokenu
  • Dekodowanie ładunku — odsłania wszystkie claims, w tym identyfikator użytkownika, role, czas wygaśnięcia oraz dane niestandardowe
  • Sprawdzenie wygaśnięcia — oblicza, czy token wygasł, na podstawie pola exp

Wypróbuj za darmo — bez rejestracji

Zdekoduj token JWT →

Kiedy używać dekodowania JWT

Dekodowanie JWT jest niezbędne podczas tworzenia API i debugowania.

  • Debugowanie API — sprawdzaj zawartość tokenu, gdy żądania kończą się błędami 401 lub 403
  • Testy integracyjne — weryfikuj, czy serwer autoryzacji umieszcza poprawne claims w wystawianych tokenach
  • Diagnostyka wygaśnięcia tokenu — szybko sprawdzaj, czy błędy uwierzytelniania wynikają z wygasłego tokenu

Często zadawane pytania

Czy mogę ufać zdekodowanej zawartości JWT?

Dekodowanie ujawnia ładunek, ale nie weryfikuje podpisu. Nigdy nie podejmuj decyzji bezpieczeństwa na podstawie zdekodowanej zawartości tokenu bez uprzedniej weryfikacji podpisu przy użyciu właściwego klucza tajnego lub publicznego. Dekoder CheckTown służy wyłącznie do inspekcji.

Czego nigdy nie wolno umieszczać w ładunku JWT?

Nigdy nie przechowuj w ładunku JWT wrażliwych danych, takich jak hasła, numery kart kredytowych czy klucze prywatne. JWT jest kodowany, a nie szyfrowany — każdy, kto przechwyci token, może zdekodować ładunek bez klucza podpisu.

Jaka jest różnica między HS256 a RS256?

HS256 (HMAC-SHA256) używa jednego wspólnego klucza tajnego zarówno do podpisywania, jak i weryfikacji. RS256 (RSA-SHA256) używa klucza prywatnego do podpisywania i klucza publicznego do weryfikacji. RS256 jest preferowany w systemach rozproszonych, gdzie wiele serwisów musi weryfikować tokeny bez dostępu do klucza podpisywania.

Powiązane narzędzia