UltKit

JWT Çözücü

Bir JSON Web Token yapıştırın; başlığını ve payload'ını biçimlendirilmiş JSON olarak okuyun. Son kullanma ve oluşturulma zamanları tarih olarak gösterilir, token'ın şu anda geçerli olup olmadığı da belirtilir. Çözme işlemi tamamen tarayıcınızda yapılır; token etkin bir kimlik bilgisiyse bu önemlidir.

0 karakter · 0 kelime · 0 satır

0 karakter · 0 kelime · 0 satır

Tamamen bu tarayıcı sekmesinde çalışır. Metniniz asla yüklenmez veya saklanmaz.

Kayıtlı talepler

RFC 7519 §4.1'de tanımlı yedi talep adı. Hepsi isteğe bağlıdır; zamanlar 1970-01-01 UTC'den itibaren saniyedir.

TalepAnlamı
issYayıncı: belirteci oluşturan ve imzalayan
subKonu: belirtecin ilgili olduğu kullanıcı veya varlık
audHedef kitle: belirtecin kimin için olduğu
expBitiş zamanı: bu andan sonra belirteci reddet
nbfBaşlangıç zamanı: bu andan önce belirteci reddet
iatDüzenlenme zamanı: belirtecin oluşturulduğu an
jtiJWT kimliği: tekrar saldırılarını önlemek için benzersiz tanımlayıcı

Yaygın alg değerleri

alg değeriAnlamı
HS256SHA-256 ile HMAC; tek ortak sır hem imzalar hem doğrular
RS256SHA-256 ile RSA PKCS#1 v1.5 imzası; özel anahtar imzalar, açık anahtar doğrular
PS256SHA-256 ile RSA-PSS
ES256SHA-256 ile P-256 eğrisinde ECDSA; kısa imzalar
EdDSAEd25519 veya Ed448 imzaları
noneİmzasız belirteç; sunucular reddetmelidir

JSON Web Token'ın içinde neler var

JWT, RFC 7519'da (Mayıs 2015) tanımlanmıştır ve bu belge İngilizcedeki "jot" sözcüğü gibi okunmasını önerir. Yaygın imzalı biçim, noktalarla birleştirilmiş üç Base64url dizesinden oluşur: header.payload.signature. Header (başlık), alg alanında HS256 veya RS256 gibi imza algoritmasını, çoğu zaman da kid alanında bir anahtar kimliğini belirtir. Payload (yük), talepleri (claim) taşır; bunlar sub (kullanıcı), iss (düzenleyen), aud (hedef kitle) ile exp, nbf ve iat gibi JSON alanlarıdır. exp, nbf ve iat, 1 Ocak 1970 UTC'den itibaren geçen saniye cinsinden zamanlardır. Çözücü bu üç değeri yerel saatinize ve ISO 8601 biçimine çevirir; ayrıca belirtecin süresinin dolup dolmadığını, henüz geçerli olmadığını veya geçerlilik aralığı içinde olduğunu gösterir.

Base64url bir kodlamadır, şifreleme değildir; bu yüzden belirtece sahip herkes yükünü tam olarak bu sayfadaki gibi okuyabilir. Taleplere asla parola, kart numarası veya başka gizli bilgi koymayın. Noktalarla ayrılmış beş bölümlü belirteç, şifrelenmiş bir belirteç olan JWE'dir; içeriği anahtar olmadan okunamaz ve çözücü bunu size bildirir. Authorization başlığından kopyalanan baştaki "Bearer " ifadesi otomatik olarak kaldırılır.

İmza neden burada doğrulanmıyor

İmza, başlık ve yükün anahtarı elinde tutan biri tarafından üretildiğini ve sonradan değiştirilmediğini kanıtlar. Doğrulamak için o anahtar gerekir: HS256 gibi HMAC algoritmalarında paylaşılan gizli anahtar, RS256, ES256 veya EdDSA'da ise düzenleyenin açık anahtarı. Üretim ortamındaki imza anahtarını herhangi bir web sayfasına yapıştırmak kötü bir fikirdir; anahtarsız bir belirteci güvenilir gösteriyormuş gibi davranan bir çözücü de yanlış bir güven duygusu verir. Bu yüzden bu araç imzayı gösterir ama doğrulamaz. Gördüklerinizi gerçek değil, belirtecin ileri sürdüğü bir talep olarak değerlendirin.

Doğrulama sunucunuzda, beklenen algoritma sabitlenmiş ve bakımı yapılan bir kitaplıkla yapılmalıdır. İki eski hata nedeni açıklar: imzasız bir belirteci herkesin sahtelemesine izin veren alg "none" değerini kabul etmek ve RS256 bekleyen bir sunucunun, açık anahtarı HMAC gizli anahtarı sayarak HS256 imzasını doğrulamaya kandırıldığı algoritma karışıklığı. Çözücü hata ayıklama içindir: sağlayıcının hangi talepleri verdiğini görmek, yanlış aud değerini fark etmek veya bir oturumun exp süresi bir dakika önce dolduğu için başarısız olduğunu anlamak gibi. Base64url bölümlerini ham olarak okumak için Base64 çözücü aracını kullanın.

Sık sorulan sorular

Gerçek bir erişim token'ını JWT çözücüye yapıştırmak güvenli mi?
Bu sayfada belirteç tarayıcınızdan hiç çıkmaz. Yine de geçerli bir belirteç, süresi dolana kadar parola gibi çalışır; bu yüzden süresi dolmuş veya test belirteçlerini tercih edin, canlı olanları ekran görüntülerinden ve sohbetlerden uzak tutun.
Token'ım yeni oluşturulmasına rağmen neden süresi dolmuş görünüyor?
Önce cihazınızın saatini kontrol edin. Bazı düzenleyiciler erişim belirteçlerine yalnızca birkaç dakikalık ömür verir ve bir günlükten kopyalanan belirteç göründüğünden eski olabilir. exp değerinin saniye yerine milisaniye olarak yazılması ise tersine etki eder ve binlerce yıl sonrasına denk gelir.
Başkası JWT'imin payload'ını değiştirebilir mi?
Belirteci düzenleyip yeniden kodlayabilirler, ancak imza artık eşleşmez. İmzaları doğru anahtar ve algoritmayla doğrulayan bir sunucu, değiştirilmiş belirteci reddeder.
JWS ile JWE arasındaki fark nedir?
JWS (RFC 7515) imzalıdır, üç bölümlüdür ve herkes okuyabilir. JWE (RFC 7516) şifrelidir, beş bölümlüdür ve yükü yalnızca anahtar sahibi okuyabilir.
Oturumu kapatmak JWT'yi geçersiz kılar mı?
Tek başına hayır. Sunucu bir yasaklı listesi tutmuyor veya oturum kaydını kontrol etmiyorsa imzalı bir JWT, exp zamanına kadar geçerli kalır; erişim belirteçlerine genellikle bu yüzden kısa ömür verilir.