İçeriğe atla
TextArray

Bir JWT'nin kodu güvenli bir şekilde nasıl çözülür ve orijinalliği nasıl doğrulanır?

Blog /

JSON Web Belirteçleri (JWT'ler) her yerde (kimlik doğrulama, API istekleri ve güvenli veri alışverişinde) kullanılır, ancak birçok geliştirici bunları şeffaf olmayan kara kutular olarak ele alır. JWT'nin kodunu çözmek basittir ancak doğrulama olmadan ona güvenmek bir güvenlik riskidir. Bu kılavuz size jetonları güvenli bir şekilde nasıl inceleyeceğinizi ve gerçekte neyle çalıştığınızı nasıl anlayacağınızı gösterir.

JWT nedir?

JWT, noktalarla ayrılmış üç base64 kodlu bölümden oluşur: header.payload.signature. Başlık, belirteç türünü ve algoritmayı açıklar, yük, talepleri (kullanıcı verileri) içerir ve imza, belirtecin tahrif edilmediğini kanıtlar. Yükün kodu çözüldükten sonra insan tarafından okunabilir, ancak bu onun güvenilir olduğu anlamına gelmez; içindeki verilerde herkes sahtecilik yapabilir veya değişiklik yapabilir.

Kod çözme neden tek başına yeterli değil?

Saldırganlar geçerli görünen bir JWT oluşturabilir ve içindeki iddiaları değiştirebilir. Geçerli JSON olarak kod çözen bir belirteç, yanlış izinler verebilir veya başka bir kullanıcının kimliğine bürünebilir. Kritik adım, imzanın sunucunun gizli anahtarına göre doğrulanmasıdır; bu kontrol olmadan, kodu çözülmüş bir jeton size gerçekte neyin doğru olduğunu değil, jetonun ne iddia ettiğini söyler.

Bir JWT'nin kodu nasıl çözülür?

Şunu kullanın: JWT kod çözücü herhangi bir jetonu incelemek için. Belirteci yapıştırdığınızda hemen başlığın, yükün ve imzanın ayrılmış olduğunu göreceksiniz. Yük genellikle base64url kodludur ve Base64 araç, gerekirse ek verilerin kodunu çözmenize yardımcı olabilir. Bu görsel döküm, tokenın hangi bilgileri içerdiğini ve kullanım amacı açısından anlamlı olup olmadığını netleştirir.

İmzanın doğrulanması

Kodu çözdükten sonra jetonun orijinal olduğunu doğrulamanız gerekir. Bu, sunucunun gizli anahtarını veya genel anahtarını (asimetrik algoritmalar için) gerektirir. Bir imzayı yeniden hesaplayarak manuel olarak doğrulayabilirsiniz; başlığı ve veriyi alın, aynı algoritma ve anahtarla imzalayın ve sonucu signature bölüm. A karma oluşturucu doğrulamaların çoğu gerçek uygulamalarda sunucu tarafında gerçekleşse de, kriptografik imzaların nasıl oluşturulduğunu anlamanıza yardımcı olabilir.

Gizlilik ve güvenlik

Bir JWT'nin kodunu çözdüğünüzde JWT kod çözücü, tüm süreç tarayıcınızda gerçekleşir. Jetonunuz asla cihazınızdan ayrılmaz, hiçbir zaman bir sunucuya ulaşmaz ve hiçbir zaman hiçbir yere kaydedilmez. Araç, sayfa yüklendikten sonra çevrimdışı çalışır, böylece hassas belirteçleri ağa maruz kalmadan güvenli bir şekilde inceleyebilirsiniz. Bu önemlidir çünkü JWT'ler genellikle kullanıcı kimliklerini, izinleri veya üçüncü taraflara iletilmesini istemediğiniz diğer verileri içerir.

Kaçınılması gereken yaygın hatalar