Cara Mendekode Token JWT (Header, Payload, Signature)

Diterbitkan pada April 18, 2026

Ringkasan cepat

Pelajari cara mendekode token JWT, memahami header, payload, dan signature, serta arti klaim iat, nbf, dan exp. Bedakan dekode vs verifikasi. 100% sisi klien.

Topik: Alat developer

JWT (JSON Web Token) adalah string terdiri dari tiga bagian yang dipisahkan titik — header.payload.signature — di mana header dan payload dikodekan Base64URL. Mendekode JWT berarti membaca isi header dan payload sebagai JSON, sedangkan verifikasi memerlukan secret atau kunci publik untuk memvalidasi signature. Gunakan Decoder JWT NeatForge untuk mendekode token dengan aman langsung di browser Anda.

Apa itu JWT?

JWT adalah standar terbuka (RFC 7519) untuk meneruskan klaim antara pihak secara kompak dan aman. JWT sering dipakai untuk:

  • Otentikasi stateless setelah login
  • Pertukaran informasi pengguna antara microservice
  • Otorisasi API (header Authorization: Bearer <token>)

JWT ringan karena server tidak perlu menyimpan sesi — semua klaim ada di dalam token itu sendiri.

Tiga bagian JWT

Setiap JWT memiliki tiga bagian yang dipisahkan titik:

  • Header — algoritma tanda tangan (mis. HS256) dan tipe token (JWT).
  • Payload — klaim data seperti sub (subject), iat, exp, dan klaim kustom.
  • Signature — hasil dari menandatangani header.payload dengan secret/kunci.

Contoh struktur: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyIn0.signature. Header dan payload hanyalah Base64URL, jadi siapa pun bisa membacanya — jangan pernah menyimpan data sensitif di payload.

Apa arti klaim iat, nbf, dan exp?

Tiga klaim standar mengatur masa berlaku token:

  • iat (issued at) — kapan token dibuat (timestamp Unix detik).
  • nbf (not before) — waktu paling awal token mulai valid.
  • exp (expiration) — kapan token berhenti valid.

Token yang exp sudah lewat harus ditolak server dan memicu refresh. Token dengan nbf di masa depan belum aktif. Ketiga klaim disimpan sebagai angka detik sejak epoch Unix.

Dekode vs verifikasi: perbedaan penting

Dekode dan verifikasi adalah dua hal berbeda:

  • Dekode — membaca isi Base64URL header dan payload. Siapa pun bisa melakukannya; tidak membuktikan keaslian token.
  • Verifikasi — memeriksa signature menggunakan secret (untuk HMAC) atau kunci publik (untuk RSA/ECDSA). Hanya server yang punya secret yang bisa memverifikasi.

Karena header dan payload hanyalah Base64URL, penyerang dapat membuat token palsu dengan klaim apa pun. Selalu verifikasi signature di sisi server sebelum mempercayai klaim. Untuk memahami Base64URL lebih lanjut, lihat panduan cara encode dan decode Base64.

Cara mendekode JWT dengan aman

  1. Buka Decoder JWT.
  2. Tempel token JWT ke kotak input.
  3. Header dan payload muncul sebagai JSON yang dicetak cantik.
  4. Periksa status klaim iat, nbf, dan exp — token kedaluwarsa ditandai merah.
  5. Salin header atau payload jika diperlukan.

Catatan privasi

Dekoding terjadi sepenuhnya di browser Anda. Token tidak pernah dikirim ke server atau dicatat. Meski demikian, hindari menempel JWT ke situs yang tidak tepercaya, dan jangan pernah membagikan token dalam tangkapan layar atau tiket dukungan — siapa pun yang memiliki token aktif dapat menggunakannya hingga kedaluwarsa.

FAQ

Apakah dekoding JWT sama dengan verifikasi? Tidak. Dekode hanya membaca payload. Verifikasi memerlukan secret/kunci untuk memastikan signature valid.

Apakah aman menempel JWT di alat ini? Ya, karena semua pemrosesan bersifat lokal. Namun untuk token sangat sensitif, pertimbangkan alat offline.

Apakah payload JWT terenkripsi? Tidak. Payload Base64URL dapat dibaca siapa pun. Untuk kerahasiaan, gunakan JWE (JSON Web Encryption), bukan JWT biasa.

→ Buka Decoder JWT gratis

Iklan

Jelajahi topik ini

Alat developer

Baca lebih banyak panduan di cluster ini dan temukan alat terkait lebih cepat.

Lihat panduan topik

Alat terkait

Panduan Terkait