Cara memakai
- Tempel token ke JWT. Token itu memiliki tiga bagian yang dipisahkan titik.
- Baca Algoritma penandatanganan untuk melihat bagaimana token menyatakan dirinya ditandatangani.
- Periksa Kedaluwarsa. Hijau berarti token masih berlaku pada waktu di perangkat Anda.
- Baca Klaim dan Muatan untuk melihat untuk siapa token itu dan apa isinya.
Isi sebuah JWT
JSON Web Token memiliki tiga bagian yang dipisahkan titik. Dua yang pertama adalah objek JSON yang dikodekan dalam base64url: header menyatakan cara token ditandatangani, dan muatan memuat klaim, yaitu pernyataan seperti untuk siapa token itu dan kapan kedaluwarsa. Bagian ketiga adalah tanda tangan.
RFC 7519 mendefinisikan tujuh nama klaim terdaftar: iss, sub, aud, exp, nbf, iat dan jti. Tabel menjelaskan masing-masing, dan ketiga klaim waktu juga ditampilkan sebagai tanggal dalam bahasa Anda.
Mendekode tidak sama dengan memverifikasi
Halaman ini hanya mendekode token. Ia tidak memeriksa tanda tangan, karena itu memerlukan kunci yang dipakai untuk menandatangani token, dan kunci verifikasi bersifat rahasia. Token yang sudah didekode tetap dapat dipalsukan, jadi jangan percaya sebuah klaim hanya karena Anda dapat membacanya di sini.
Untuk memverifikasi token, server atau pustaka Anda harus memeriksa tanda tangan dengan kunci yang benar dan algoritma yang diharapkannya, serta harus menolak token yang tanda tangannya salah.
Cara kedaluwarsa dibaca
Klaim exp adalah angka detik sejak 1 Januari 1970 pukul 00.00 UTC. RFC 7519 bagian 4.1.4 menyatakan bahwa token tidak boleh diterima pada atau setelah saat itu, jadi pada waktu yang tepat ia sudah dihitung kedaluwarsa.
Token tanpa klaim exp tidak pernah kedaluwarsa. Halaman menampilkannya dengan warna merah, karena token yang tidak pernah kedaluwarsa adalah risiko yang perlu diketahui.
Contoh: token contoh RFC 7519
Contoh di RFC 7519 bagian 3.1 memiliki header alg HS256, dan muatan iss joe, exp 1300819380 serta sebuah klaim kustom. Nilai exp adalah 22 Maret 2011 pukul 18.43 UTC, sehingga halaman menampilkan token itu sudah kedaluwarsa. Tanda tangannya tidak diperiksa, jadi hasilnya sama untuk tanda tangan apa pun.
| Klaim | Nilai | Arti |
|---|---|---|
| iss | joe | Penerbit: siapa yang membuat token |
| exp | 1300819380 (22 Maret 2011 pukul 18.43 UTC) | Waktu kedaluwarsa |
| http://example.com/is_root | true | Klaim kustom |
Pertanyaan yang sering diajukan
Apakah token saya dikirim ke server?
Tidak. Token didekode di peramban Anda, dan halaman tidak menyimpan maupun mengirimnya. Anda dapat memeriksanya dengan mendekode token saat koneksi internet dimatikan setelah halaman dimuat.
Apakah halaman ini memeriksa bahwa token itu asli?
Tidak. Ia hanya membaca header dan klaim. Memeriksa tanda tangan memerlukan kunci yang dipakai untuk menandatangani token, dan halaman ini tidak pernah memintanya. Aplikasi Anda harus melakukan pemeriksaan itu.
Mengapa halaman menyatakan token sudah kedaluwarsa padahal aplikasi saya masih menerimanya?
Aplikasi Anda mungkin mengizinkan masa tenggang, atau ia memeriksa kedaluwarsa dengan jamnya sendiri. Halaman membandingkan exp dengan waktu di perangkat Anda, jadi jam perangkat yang salah juga dapat mengubah hasilnya.
Apa arti algoritma none?
Header menyatakan bahwa token tidak memiliki tanda tangan. Siapa pun dapat menulis token seperti itu, jadi layanan tidak boleh menerimanya untuk hal yang penting. Halaman menandainya dengan catatan.
Mengapa sebuah tanggal menampilkan waktu yang tidak saya duga?
Tanggal ditampilkan dalam bahasa dan zona waktu Anda, dengan nama zona di akhir. Angka sebelumnya adalah nilai yang disimpan dalam token: detik sejak 1970 dalam UTC.
Dapatkah halaman ini membaca token terenkripsi?
Tidak. Token terenkripsi memiliki lima bagian, dan isinya tidak dapat dibaca tanpa kunci. Halaman ini hanya membaca token yang ditandatangani, yang memiliki tiga bagian.
Sumber
- RFC 7519: JSON Web Token (JWT) (dalam bahasa Inggris)
- RFC 7518: JSON Web Algorithms, the alg values in section 3.1 (dalam bahasa Inggris)
- RFC 4648: base64url encoding in section 5 (dalam bahasa Inggris)
Angka dan teks terakhir diperiksa pada Selasa, 10 November 2026.