JWT Hata Ayıklayıcı / Çözücü

Üç nokta ile ayrılmış bölümlerini çözmek için herhangi bir JWT yapıştırın — base64url başlık, yük ve imza, güzelce biçimlendirilmiş JSON olarak gösterilir; kayıtlı talepler (exp, iat, nbf ve benzerleri) yerel saatinize dönüştürülür. Sonra imzayı WebCrypto API ile doğrulayabilirsiniz: bir gizli anahtarla HMAC (HS256/384/512) ya da bir PEM ortak anahtarıyla RSA/ECDSA (RS256/384/512, ES256/384/512). Denemeler için örnek bir HS256 belirteci tek tıkla hazır. Her şey yerel çalışır — belirteçler, gizli anahtarlar ve anahtarlar asla hiçbir yere gönderilmez.
JWT belirteci Biçim: header.payload.signature (üç base64url bölümü).
Uyarı: bu belirteç alg:none bildirir, yani imzalanmamış demektir. Gerçek hizmetler imzasız belirteçleri reddetmelidir — güvenilmez kabul edin.
TalepDeğerYorum
Gizli anahtar
Bu bağlamda crypto.subtle kullanılamıyor, bu yüzden imza doğrulama devre dışı. Etkinleştirmek için sayfayı https: üzerinden ya da yerel bir dosyadan açın. Çözme hâlâ çalışır.
Sonucu nasıl okursunuz: başlık genellikle alg (imzalama algoritması) ve typ içerir. Yerel saat dönüşümüyle gösterilen kayıtlı talepler şunlardır: iat (verilme zamanı), nbf (öncesinde geçerli değil) ve exp (son kullanma) — kırmızı bir rozet belirteçin süresinin dolduğunu, sarı ise 24 saat içinde dolacağını gösterir. İmza doğrulama, verenin hesaplayacağı aynı MAC'i hesaplar ya da yapıştırdığınız RSA/ECDSA ortak anahtarını denetler, sonra belirteci GEÇERLİ ya da GEÇERSİZ olarak işaretler. Yalnızca tarayıcının WebCrypto katmanının uyguladığı algoritmalar doğrulanabilir; diğerleri tahmin edilmek yerine desteklenmiyor olarak bildirilir.

Yaygın kayıtlı talepler: sub (konu) belirtecin ilgili olduğu kullanıcı ya da varlıktır — örneğinizde yalnızca sayısal bir kimliktir, ama hizmetler buraya çoğu zaman bir e-posta, kullanıcı adı ya da UUID koyar. iss veren kuruluşu, aud hedeflenen kitleyi adlandırır ve jti tekrar oynatmayı önlemek için kullanılan benzersiz bir belirteç kimliğidir. Bu talepler şifreli değildir; belirteci elinde bulunduran herkes bunları okuyabilir, bu yüzden bir JWT yükünde asla parola ya da gizli bilgi koymayın.

Gizlilik: çözme ve doğrulama bu sayfanın içinde, WebCrypto API ile tamamen gerçekleşir — belirteç, gizli anahtarınız ve herhangi bir ortak anahtar asla iletilmez. alg:none belirteci için sayfa açık bir uyarı gösterir: imzasız belirteçler gerçek bir API tarafından asla kabul edilmemelidir.