Dekoder JWT
Tempel JSON Web Token dan dekode header serta payload-nya seketika — sepenuhnya di peramban Anda, tidak ada yang diunggah
JSON Web Token
Tentang alat ini
Dekoder JWT membaca JSON Web Token dan menampilkan apa yang ada di dalamnya. JWT memiliki tiga bagian yang dipisahkan titik — header, payload, dan tanda tangan — dan dua bagian pertama hanyalah JSON yang dikodekan Base64URL. Alat ini mendekodenya menjadi JSON yang terbaca dan terformat sehingga Anda dapat memeriksa algoritme, tipe token, dan setiap klaim. Klaim waktu standar seperti exp (kedaluwarsa), iat (diterbitkan pada), dan nbf (tidak sebelum) diubah dari detik UNIX mentah menjadi tanggal yang mudah dibaca, dan token kedaluwarsa ditandai untuk Anda. Yang terpenting: alat ini tidak pernah memverifikasi tanda tangan dan tidak meminta kunci rahasia atau publik; mendekode hanya butuh token itu sendiri. Karena itu semuanya terjadi secara lokal di peramban Anda dan tidak ada yang diunggah, sehingga aman memeriksa token tanpa membocorkannya ke server.
Cara menggunakan
- 1 Tempel JSON Web Token (header.payload.signature) Anda di kotak masukan, atau klik Muat contoh untuk mencoba.
- 2 Header dan payload langsung didekode dan ditampilkan sebagai JSON terformat.
- 3 Periksa lencana alg dan typ, lalu baca exp / iat / nbf sebagai tanggal; token kedaluwarsa disorot merah.
- 4 Gunakan tombol salin untuk mengambil header atau payload yang didekode. Apa pun yang Anda tempel tidak pernah meninggalkan peramban.
Cara kerjanya
JWT ditulis sebagai tiga string Base64URL yang disambung titik: header.payload.signature. Base64URL mirip Base64 standar tetapi memakai - dan _ alih-alih + dan /, dan biasanya menghilangkan padding = di akhir. Dekoder memulihkan karakter tersebut, menambahkan padding yang hilang, menjalankan atob untuk mendapatkan byte mentah, lalu menafsirkannya sebagai UTF-8 agar klaim non-ASCII tampil benar. Header dan payload lalu diurai sebagai JSON dan dirapikan. Klaim numerik exp, iat, dan nbf adalah stempel waktu UNIX dalam detik, jadi dikalikan 1000 dan diubah menjadi tanggal; jika exp di masa lalu, token ditandai kedaluwarsa. Segmen tanda tangan ditampilkan utuh dan tidak pernah divalidasi, itulah sebabnya tidak perlu kunci dan seluruh proses tetap di perangkat Anda.
Pertanyaan yang sering diajukan
Apakah alat ini memverifikasi tanda tangan JWT?
Tidak. Alat ini hanya mendekode header dan payload agar Anda dapat membacanya. Memverifikasi tanda tangan membutuhkan kunci rahasia atau publik penanda tangan, yang sengaja tidak pernah diminta alat ini. Dengan begitu semuanya tetap lokal dan Anda dapat memeriksa isi token dengan aman tanpa membocorkan kunci apa pun.
Apakah token saya dikirim ke server?
Tidak. Semua pendekodean terjadi di peramban Anda dengan JavaScript. Token Anda tidak pernah diunggah, dicatat, atau disimpan, dan alat tetap bekerja luring setelah halaman dimuat. Aman menempelkan token sensitif di sini.
Apa arti bidang exp, iat, dan nbf?
Itu adalah klaim waktu standar yang dinyatakan sebagai stempel waktu UNIX dalam detik. exp adalah kapan token kedaluwarsa, iat kapan diterbitkan, dan nbf waktu paling awal token valid. Alat ini mengubah setiap nilai menjadi tanggal yang terbaca dan menandai token kedaluwarsa ketika exp di masa lalu.
Bisakah saya membaca JWT tanpa kunci rahasia?
Bisa. Header dan payload JWT hanya dikodekan Base64URL, bukan dienkripsi, sehingga siapa pun dapat membacanya tanpa kunci apa pun. Kunci rahasia atau publik hanya dibutuhkan untuk memverifikasi tanda tangan, yang membuktikan token tidak diubah, tetapi tidak pernah untuk melihat isinya.
Mengapa token saya menampilkan teks kacau atau galat?
JWT harus memiliki tepat tiga bagian yang dipisahkan titik, masing-masing Base64URL yang valid, dan dua bagian pertama harus terdekode menjadi JSON yang valid. Jika sebuah bagian hilang, terpotong, atau Anda tidak sengaja menempel JWE terenkripsi alih-alih JWS bertanda tangan, dekoder melaporkan galat alih-alih menebak.
Alat terkait dan penggunaan
Padukan dekoder JWT dengan alat Base64 untuk memeriksa segmen secara manual, pemformat JSON untuk merapikan payload yang disalin, dan konverter stempel waktu Unix untuk memeriksa waktu exp/iat/nbf. Pengembang memakainya saat men-debug alur autentikasi, token OAuth/OpenID Connect, gerbang API, dan single sign-on, di mana membaca klaim token dengan cepat adalah bagian dari pekerjaan sehari-hari.