İçeriğe geç

JWT çözümleyici

Bir JWT yapıştırın: başlık ve yük biçimli JSON olarak açılır, zaman alanları okunur hale gelir, bilinen alanlar açıklanır ve zayıf ayarlar işaretlenir. Çözümleme tarayıcıda yapılır, belirteç hiçbir yere gönderilmez. Araç imzayı doğrulamaz; yalnızca isteğe bağlı olarak HS256/384/512 imzasını gizli anahtarınızla denetler.

Ücretsiz araç · Entegrasyon

Gerçek ve canlı bir belirteç yapıştırmayın

Süresi dolmamış bir erişim belirteci, onu ele geçiren herkesin sizin adınıza işlem yapmasına yeter. Bu araç belirteci göndermese de canlı sistemlerden alınmış belirteçler yerine test ortamı ya da süresi dolmuş belirteçler kullanın.

İmza doğrulanmaz

Burada görünen içerik yalnızca kodunun çözülmüşüdür; belirtecin gerçek olduğu anlamına gelmez. Yük şifreli değildir, kimse tarafından değiştirilmemiş olması da yalnızca imza doğrulanırsa bilinir. İsteğe bağlı denetim yalnızca HS256/384/512 içindir; RS, ES ve PS imzaları için genel anahtar gerekir ve bu araçta doğrulanmaz.

Üç bölümlü belirteç (başlık.yük.imza). Başındaki "Bearer ", tırnaklar ve satır sonları otomatik atılır.

Çözümleme tarayıcınızda yapılır; belirteç ve gizli anahtar hiçbir yere gönderilmez, saklanmaz.

Alıcıda doğrulama için

  • İmzayı her zaman doğrulayın ve algoritmayı belirtecin alg alanından değil, sabit bir izin listesinden alın; alg=none ve algoritma değiştirme saldırılarını bu kapatır.
  • exp ve nbf'yi kısa bir tolerans (ör. 30–60 sn) ile denetleyin; iss ve aud'u beklenen değerlerle birebir eşleştirin.
  • Yüke gizli bilgi koymayın: JWT şifrelenmez, kodlanır. Belirteçleri günlüklere ve adres satırına yazmayın.
  • Kısa ömürlü erişim belirteci ve ayrı bir yenileme belirteci kullanın; çıkışta ya da şüphede iptal yolunuz (jti listesi, anahtar döndürme) olsun.

Bu araç yalnızca belirteci çözer ve bilinen yapılandırma sorunlarını işaretler; imza ve içerik doğrulaması, yetkilendirme kararı ya da güvenlik denetimi yerine geçmez. Uyarı listesi tüm riskleri kapsamaz. Canlı sistem belirteçlerini ve üretim anahtarlarını bir web sayfasına yapıştırmaktan kaçının.

Kimlik doğrulama, API güvenliği ve sistemler arası entegrasyonu birlikte tasarlamak ister misiniz? Belirteç ömrü, anahtar döndürme ve yetki modelini konuşabiliriz.

Görüşme talep edin

01

Nasıl kullanılır

  1. A

    Test ortamından aldığınız JWT'yi yapıştırın (canlı sistem belirteci değil); başlık ve yük anında açılır.

  2. B

    Zaman alanlarına, geçerlilik durumuna ve uyarı listesine bakın; alg=none, anahtar adresi alanları ve eksik exp işaretlenir.

  3. C

    Belirteç HS256/384/512 ise isteğe bağlı olarak test gizli anahtarını girip imzanın eşleşip eşleşmediğini görün.

02

JWT neyden oluşur?

JWT (JSON Web Token), noktalarla ayrılmış üç bölümdür: başlık (algoritma ve tür), yük (alanlar, yani claim'ler) ve imza. İlk iki bölüm JSON'un base64url ile kodlanmış halidir; imza ise başlık ile yükün gizli ya da özel anahtarla imzalanmış özetidir.

Kodlama şifreleme değildir: yükü herkes okuyabilir. İmza yalnızca içeriğin değiştirilmediğini ve belirteci anahtarın sahibinin ürettiğini kanıtlar; gizlilik sağlamaz.

03

Bu araç neyi yapar, neyi yapmaz

Araç her bölümü base64url'den çözer, UTF-8 olarak okur ve JSON olarak ayrıştırır; hata varsa hangi bölümde ve hangi satır/sütunda olduğunu söyler. exp, nbf ve iat saniye cinsinden tarihlerdir; araç bunları UTC ve yerel saatle gösterir ve tarayıcı saatine göre belirtecin süresinin dolup dolmadığını hesaplar.

İmza varsayılan olarak doğrulanmaz. İsteğe bağlı denetim yalnızca HS256, HS384 ve HS512 içindir: gizli anahtarla HMAC hesaplanır ve başlık.yük metni üzerinden sabit-zamanlı karşılaştırılır. RS, ES, PS ve EdDSA için genel anahtar ve ayrı bir doğrulama gerekir.

04

En sık görülen belirteç hataları

alg=none kabulü, algoritmanın belirteçten okunması, exp'siz uzun ömürlü belirteçler, gizli bilgilerin yüke yazılması ve iss/aud denetiminin atlanması en sık görülen sorunlardır. Başlıktaki jku, x5u ve jwk alanları da anahtar kaynağını belirteç sahibine bıraktığı için güvenilmemelidir.

Süre sorunlarının çoğu saat kaymasından ya da milisaniye/saniye karışıklığından çıkar: exp saniyedir; JavaScript'in Date.now() değeri milisaniyedir ve 1000'e bölünmelidir.

Sık sorulanlar

Belirtecim bir yere gönderiliyor mu?
Hayır. Çözümleme ve isteğe bağlı HMAC hesabı tarayıcınızda yapılır; belirteç ve gizli anahtar sunucuya gönderilmez ya da saklanmaz. Yine de süresi dolmamış gerçek bir belirteç, sahibini taklit etmeye yeter; canlı belirteçleri herhangi bir web sayfasına yapıştırmayın, test belirteci kullanın.
Bu araç imzayı doğruluyor mu?
Varsayılan olarak hayır. Yalnızca HS256/384/512 imzalı belirteçlerde, gizli anahtarı kendiniz girerseniz imza hesaplanıp karşılaştırılır. RS256, ES256 gibi genel anahtarlı imzalar bu araçta doğrulanmaz. Çözülmüş bir yükün görünmesi belirtecin gerçek olduğu anlamına gelmez.
alg=none neden tehlikeli?
alg=none imzasız belirteç demektir. Bir alıcı algoritmayı belirteçten okuyup none'ı kabul ederse, saldırgan yükü istediği gibi yazıp imzasız gönderebilir. Çözüm, alıcıda kabul edilen algoritmaları sabit bir listeyle sınırlamaktır.
exp değeri neden "yıllar sonrası" ya da çok büyük görünüyor?
NumericDate saniyedir (1970-01-01'den bu yana). Değer 13 haneliyse büyük olasılıkla milisaniye yazılmıştır ve alıcılar onu çok uzak bir gelecek tarihi sayar. Üretirken Date.now() değerini 1000'e bölün.
Yükteki bilgiler gizli mi?
Hayır. JWT imzalı olabilir ama şifreli değildir; yükü base64url'den çözen herkes okur. Parola, kimlik numarası gibi hassas verileri yüke koymayın. Gizlilik gerekiyorsa şifreli JWE kullanılır (beş bölümlü belirteç); bu araç onları çözemez.
Yerel saat ile UTC arasında fark görüyorum, hangisi doğru?
İkisi de aynı anı gösterir. JWT zamanları saat diliminden bağımsız bir andır; araç hem UTC'yi hem tarayıcınızın saat dilimindeki karşılığını verir. Geçerlilik hesabı anlar arasındaki farktan yapıldığı için saat dilimi sonucu değiştirmez.

Kimlik doğrulamayı ve entegrasyonları güvenli kuralım

CRM, ERP ve üçüncü taraf sistemler arasındaki API kimlik doğrulamasını, belirteç ömrünü ve anahtar yönetimini birlikte tasarlıyoruz. Ücretsiz keşif görüşmesinde mevcut akışınızı konuşalım.