JWT Decoder & Security Analyzer
Decode dan periksa JWT token secara instan langsung di browser. Lihat header, payload,
dan dapatkan analisis keamanan otomatis: algoritma, expiry, klaim penting, serta potensi
kerentanan seperti alg:none atau secret HMAC yang lemah.
Gunakan Tool
Hasil Decode
Header
Payload
Klaim Penting (Decoded)
Security Analysis
Signature (Raw)
Memahami Struktur JWT
JSON Web Token (JWT) adalah format token yang terdiri dari tiga bagian dipisahkan titik
(.), masing-masing di-encode Base64url:
- Header — metadata token: algoritma signing (
alg) dan tipe (typ). - Payload — klaim yang dibawa token: user ID, role, waktu berlaku, issuer, dll.
- Signature — tanda tangan kriptografis yang membuktikan header dan payload tidak dimodifikasi.
Penting dipahami: Base64url bukan enkripsi. Siapa pun yang memegang token bisa membaca isi header dan payload. Jangan simpan data rahasia (password, secret) di dalam JWT payload.
Kerentanan JWT yang Paling Umum
- Algorithm Confusion (
alg: none) — server yang tidak memvalidasi nilaialgbisa menerima token tanpa tanda tangan sama sekali. - Weak HMAC Secret — secret
HS256yang pendek atau mudah ditebak bisa di-bruteforce dengan hashcat dalam hitungan menit. - Missing
expClaim — token tanpa expiry berlaku selamanya, artinya jika dicuri tidak ada cara alami untuk membuatnya invalid. - Algorithm Switching Attack — library yang memperbolehkan klien memilih algoritma bisa ditipu untuk memverifikasi token RSA menggunakan public key sebagai HMAC secret.
FAQ
Apakah aman mem-paste token production di sini?
Semua proses berjalan di browser Anda (client-side JavaScript). Token tidak dikirim ke server manapun. Buka DevTools → tab Network saat menggunakan tool ini untuk memverifikasi sendiri bahwa tidak ada request keluar.
Apakah tool ini bisa memverifikasi signature JWT?
Tidak. Verifikasi signature membutuhkan secret key (untuk HMAC) atau public key (untuk RSA/ECDSA) yang tidak boleh pernah diserahkan ke pihak luar. Tool ini fokus pada decode dan analisis struktur — bukan verifikasi integritas kriptografis.
Kenapa HS256 dianggap lebih berisiko dari RS256?
HS256 menggunakan satu shared secret untuk signing dan verifikasi. Jika secret ini bocor atau lemah (terlalu pendek, kata umum), penyerang bisa memalsukan token. RS256 memisahkan private key (untuk signing) dan public key (untuk verifikasi), sehingga kebocoran public key tidak membahayakan integritas token.
Apa itu JWT ID (jti) dan kapan harus digunakan?
jti adalah identifier unik untuk setiap token — seperti nonce. Berguna untuk
mencegah replay attack: server bisa menyimpan daftar jti yang sudah digunakan
dan menolak token dengan jti yang sama jika muncul lagi.