Apa yang ditampilkan oleh JWT decoder
Sebuah JSON Web Token, atau JWT, adalah format token ringkas yang umum digunakan dalam autentikasi, otorisasi, sesi API, dan alur identitas. Sebuah JWT biasanya memiliki tiga bagian yang dipisahkan titik: header, payload, dan signature. Header dan payload adalah JSON yang dikodekan dengan base64url, yang berarti mereka dapat didekode dan dibaca tanpa kunci rahasia.
JWT decoder ini berfokus pada inspeksi. Ia memformat header dan payload, mengekstrak klaim umum, menampilkan segmen mentah, dan menjelaskan klaim berbasis waktu seperti iat, nbf, dan exp. Itu berguna saat men-debug alur login, panggilan API, lingkungan pengujian, integrasi OAuth, atau masalah masa berlaku token.
- Baca algoritma token dan tipe dari header.
- Periksa issuer, subject, audience, dan klaim payload kustom.
- Konversi klaim NumericDate menjadi tanggal yang dapat dibaca.
- Salin header yang didekode, payload yang didekode, atau segmen token mentah.
Dekode bukanlah verifikasi
Mendekode JWT memberi tahu Anda apa isi token. Itu tidak membuktikan siapa yang membuatnya, apakah payload telah dimodifikasi, apakah signature cocok, atau apakah aplikasi Anda harus menerimanya. Verifikasi signature membutuhkan secret yang benar, public key, atau konfigurasi JWKS dan harus sesuai dengan algoritma yang diharapkan oleh aplikasi.
Bagian signature berbeda dari header dan payload. Itu adalah nilai kriptografis atas header dan payload yang dikodekan, bukan objek JSON lain untuk didekode. Halaman ini menampilkan signature di output segmen mentah ketika ada, tetapi tidak meminta kunci penandatanganan atau memverifikasi nilainya.
Perlakukan halaman ini sebagai alat inspeksi, bukan otoritas. Token yang didekode masih bisa palsu, kedaluwarsa, tidak bertanda tangan, ditandatangani dengan kunci yang tidak terduga, atau ditolak oleh layanan yang menerbitkannya.
Klaim JWT umum
| Claim | Meaning | Kegunaan tipikal |
|---|---|---|
iss | Issuer | Layanan atau penyedia identitas yang menerbitkan token. |
sub | Subject | Pengguna, akun, klien, atau entitas yang menjadi subjek token. |
aud | Audience | API, aplikasi, atau layanan yang harus menerima token. |
iat | Diterbitkan pada | Kapan token dibuat. |
nbf | Tidak sebelum | Token tidak boleh diterima sebelum waktu ini. |
exp | Kedaluwarsa pada | Token tidak boleh diterima setelah waktu ini. |
Kebiasaan debugging yang aman
- Gunakan token pengujian bila memungkinkan daripada token pengguna produksi.
- Jangan menempelkan secret penandatanganan, private key, atau kredensial API ke dalam decoder.
- Periksa bahwa algoritma sesuai dengan yang diharapkan oleh aplikasi Anda.
- Compare
issandaudbandingkan dengan layanan yang sedang Anda debug. - Ingat bahwa waktu pada browser dan waktu pada server dapat berbeda saat men-debug masalah kedaluwarsa.
Alat lokal terkait
- Gunakan Base64 Encoder Decoder ketika Anda perlu memeriksa string base64 biasa. JWT menggunakan base64url, jadi JWT decoder ini tetap lebih aman untuk token penuh.
- Gunakan JSON Beautifier ketika Anda ingin memformat objek payload yang disalin di luar konteks token.
- Gunakan Unix Timestamp Converter ketika Anda membutuhkan pemeriksaan timestamp khusus untuk nilai NumericDate seperti
iat,nbf, atauexp.
Pertanyaan yang Sering Diajukan
Apakah JWT decoder ini memverifikasi signature?
Tidak. Ini mendekode header dan payload sehingga Anda dapat memeriksanya, tetapi tidak memverifikasi signature atau membuktikan bahwa token dapat dipercaya. Verifikasi membutuhkan secret penerbit, public key, atau konfigurasi JWKS. Signature tidak ditampilkan sebagai panel JSON yang didekode karena itu adalah nilai kriptografis, bukan data klaim yang dapat dibaca; alat ini hanya menampilkannya di output segmen mentah.
Bisakah siapa pun mendekode JWT?
Ya, header dan payload dikodekan, bukan dienkripsi, kecuali sistem Anda menggunakan format token terenkripsi terpisah. Jangan menaruh secret di payload JWT.
Apa arti JWT yang kedaluwarsa?
Jika klaim exp berada di masa lalu, server seharusnya menolak token tersebut. Halaman ini dapat menampilkan cap waktu, tetapi server adalah otoritas akhir.
Mengapa alat menerima prefiks Bearer?
Pengembang sering menyalin token dari header Authorization: Bearer ... Authorization: Bearer ... alat ini menghapus prefiks sebelum mendekode isi token.