Semua alat

Dekoder JWT

Token Web JSON adalah tiga segmen Url Base64: header.payload.signature. Tempelkan JWT untuk membaca algoritma (alg), penerbit (iss), subjek (sub), dan kedaluwarsa (exp) tanpa mengirimkan token ke server. Decoder ini tidak memverifikasi tanda tangan — gunakan rahasia aplikasi Anda atau JWKS untuk itu.
Token JWT
Output
{ "header": { "alg": "HS256", "typ": "JWT" }, "payload": { "sub": "1234567890", "name": "Ada", "iat": 1516239022 } }

Cara mendekode JWT

1. Tempel string JWT (format eyJ...).
2. Baca header JSON yang didekode (typ, alg).
3. Baca klaim payload (sub, exp, peran).
4. Periksa exp terhadap waktu saat ini — token yang kedaluwarsa gagal dalam autentikasi API.

Contoh pemeriksaan JWT

Debug 401 Tidak Sah

Dekode token akses — exp mungkin sudah lewat karena jam yang miring atau TTL yang pendek.

Periksa OAuth id_token

Lihat klaim email dan nama yang dikembalikan dari penyedia identitas.

Tinjau perlengkapan uji

Konfirmasi token uji HS256 memiliki peran: klaim admin sebelum uji integrasi.

Kapan mendekode JWT

Saat melakukan debug autentikasi dalam pengembangan dengan token uji.
Saat mempelajari struktur JWT dan klaim standar.
Saat memverifikasi payload sebelum menerapkan RBAC pemeriksaan.

Batas keamanan

Jangan menempelkan token produksi dengan hak istimewa langsung ke situs web yang tidak tepercaya — alat ini bersifat lokal tetapi berhati-hatilah.
Saat Anda memerlukan verifikasi tanda tangan — gunakan kripto sisi server dengan kunci rahasia/publik.
Saat token dienkripsi JWE — format berbeda dari tiga bagian JWS.

Klaim terdaftar standar

iss (penerbit), sub (subjek), aud (audiens), exp (kedaluwarsa), nbf (bukan sebelumnya), iat (dikeluarkan pada), jti (ID JWT). Klaim khusus seperti peran atau tenant_id bersifat khusus aplikasi.

Algoritme tanda tangan

HS256 menggunakan rahasia bersama; RS256 menggunakan pasangan kunci publik/pribadi RSA. Kunci publik dipublikasikan melalui URL JWKS untuk verifikasi.

Kemiringan jam

API sering kali memberikan kelonggaran 30–60 detik pada exp/nbf. Jika valid di dekoder tetapi API menolak, periksa jam dan zona waktu server.

Jangan pernah mempercayai payload sendirian

Dekode sisi klien hanya untuk petunjuk UI — keputusan otorisasi harus memverifikasi tanda tangan di server setiap permintaan.

Pertanyaan yang sering diajukan

Apa saja tiga bagian JWT?

Header (algoritma & tipe), payload (klaim), tanda tangan (verifikasi). Dipisahkan dengan titik.

Apakah decoding memvalidasi token?

Tidak — siapa pun dapat memecahkan kode payload; tanda tangan membuktikan integritas dan penerbit.

Apa yang dimaksud dengan klaim exp?

Stempel waktu Unix detik ketika token kedaluwarsa. Bandingkan dengan waktu UTC saat ini.

Tidak ada serangan algoritme?

Server harus menolak alg:none — decoder mungkin masih menampilkan header untuk diaudit.

Data sensitif dalam payload?

payload JWT adalah Base64 yang tidak dienkripsi — jangan pernah memasukkan kata sandi atau PII tidak perlu.

Pemrosesan lokal?

Ya — token diuraikan di peramban.

Refresh vs token akses?

Keduanya sering kali merupakan JWT — mendekode masing-masing untuk melihat cakupan dan masa pakai yang berbeda.