🔧Toolify

JWT Çözücü (başlık, yük, imza, son kullanma)

Başlığı ve yükü anında JSON olarak çözmek için bir JWT yapıştırın. Standart talepleri (iat, exp, nbf) tanır ve Unix zaman damgalarını ISO 8601'e dönüştürür. Süresi dolmuş veya henüz geçerli olmayan token'ları işaretler.

Tamamen tarayıcınızda çözülür. Token ağ üzerinden iletilmez.

Başlık

{
  "alg": "HS256",
  "typ": "JWT"
}

Yük

{
  "sub": "1234567890",
  "name": "Jane Doe",
  "iat": 1730000000,
  "exp": 4886000000
}
İmza mevcut
Verilme zamanı (iat)
2024-10-27T03:33:20.000Z
Son kullanma zamanı (exp)
2124-10-30T22:13:20.000Z

Nasıl çalışır

JWT nasıl görünür

Bir JWT, nokta ile birleştirilmiş üç Base64url kodlu bölümden oluşur: başlık.yük.imza. Her bölüm, URL güvenli iletim için kodlanmış bir JSON nesnesidir. Başlık imzalama algoritmasını bildirir, yük talepleri (konu, son kullanma, özel veri) taşır ve imza, alıcının anahtar varsa bütünlüğü doğrulamasını sağlar.

Bu çözücü yalnızca ilk iki bölümü okur. İmza üçüncü bölümdür ancak doğrulanması gizli/genel anahtar gerektirir — burada bu işlemi gerçekleştirmiyoruz.

Bilinmesi gereken standart talepler

iss (veren): token'ı kimin oluşturduğu. iat (verilme zamanı): ne zaman, Unix zaman damgası olarak. exp (son kullanma): ne zaman geçersiz hale geldiği, yine Unix. nbf (önce değil): karşılanması gereken en erken zaman. sub (konu): temsil ettiği varlık, genellikle kullanıcı ID. aud (kitle): token'ın kime yönelik olduğu, genellikle bir servis URL'si.

Hepsi zorunlu değildir; minimal JWT'ler genellikle yalnızca sub + iat + exp içerir. Özel talepler başka her şeydir — yükteki standartların yanında yer alırlar.

Çözme ≠ doğrulama

Herkes bir JWT'yi çözebilir — başlık ve yük yalnızca Base64 kodlu JSON'dur. Bu yüzden 'yüke asla sır koymayın' deriz: bunlar efektif olarak herkese açıktır.

Doğrulama, imzayı gizli anahtarla (HMAC) veya genel anahtarla (RSA/ECDSA) karşılaştırmak demektir. Doğrulama olmadan, yük içindeki hiçbir talebe güvenemezsiniz — bir saldırgan istediği yükü oluşturabilir.

Bu aracı hata ayıklama sırasında token'ları incelemek için kullanın. Üretimde doğrulamak için sunucunuzda bir JWT kütüphanesi kullanın.

Sık sorulan sorular

İmzayı burada doğrulayabilir miyim?

Hayır — doğrulama gizli veya genel anahtar gerektirir ve bu anahtar asla güvenilir bir ortamdan çıkmamalıdır. Sunucu tarafı JWT kütüphanesi kullanın (Node için jsonwebtoken, Python için PyJWT, vb.).

Token tarayıcımdan çıkıyor mu?

Hiçbir zaman. Çözme yerel olarak çalışır; onu almak için bir sunucu uç noktamız yoktur.

Token'ım neden 'geçersiz'?

Yaygın nedenler: kopyala-yapıştır boşluk ekledi/kaldırdı, üç bölümden biri eksik veya bir bölüm hatalı Base64url. Kırp ve tekrar deneyin.

Base64url ile Base64 arasındaki fark nedir?

Base64url, '+' yerine '-', '/' yerine '_' koyar ve '=' dolgusunu kaldırır; böylece kodlanmış dize URL'lerde ve HTTP başlıklarında güvenlidir. JWT'ler her zaman Base64url kullanır.

Unicode yükümde neden bozuk metin görünüyor?

Standart olan UTF-8'i çözüyoruz. Yük farklı şekilde kodlandıysa JSON.parse başarısız olabilir. Çoğu JWT vericisi doğru biçimde UTF-8 kodlar.

HS256 güvenli mi?

Gizli yeterince uzunsa (≥256 bit) ve gizli tutulursa evet. Yaygın HS256 güvenlik açıkları zayıf gizliler ve alg='none' içeren token'ları kabul etmektir. ≥32 karakterli rastgele gizliler kullanın ve 'none' algoritmasını açıkça reddedin.

RS256 neden HS256'dan tercih edilir?

RS256 (asimetrik RSA), imza anahtarını gizli tutarken doğrulama için genel anahtar yayınlamanızı sağlar. HS256 (simetrik HMAC), gizlinin her doğrulayıcıyla paylaşılmasını gerektirir. Çok servisli mimariler için RS256 daha güvenlidir.

Büyük token'ları çözebilir miyim?

Pratik sınır yaklaşık 10 MB giriştir; ötesinde tarayıcı yavaşlayabilir. JWT'ler genellikle 4 KB'ın altındadır; sizinkisi daha büyükse taleplerde çok fazla veri depolayıp depolamadığınızı düşünün.

İlgili araçlar

Son güncelleme:

AI promptlarımızı deneyin →