0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0
Ortamlar
HS256, HS384, HS512, RS256 ve RS512 algoritmalarıyla JSON Web Token'larını (JWT) oluşturur ve çözer. Generate, JSON yükünü ve gizli anahtarını tamamlayarak token oluşturulur. Read, mevcut bir tokenı yapıştırarak başlığını, yükünü inceleyin ve imzası doğrulayın.

HMAC ile SHA-256. Paylaşılan simetrik anahtar. Genel kullanım için önerilir.

Gizli Anahtar
Giriş

Nasıl çalışır

Bir JSON Web Token (JWT), iki taraf arasında bilgi (claim) taşıyan derli toplu, imzalı bir belirteçtir. Noktalarla ayrılmış üç bölümden oluşur —başlık, yük ve imza—, her biri Base64URL ile kodlanır.

Oluştur modunda başlığı ve yükü JSON olarak tanımlar ve gizli bir anahtarla (HMAC) veya özel bir anahtarla (RSA/ECDSA) imzalarsınız. Oku modunda mevcut bir belirteci yapıştırarak içeriğini inceler ve imzayı doğrularsınız.

Yük şifrelenmez: herkes Base64URL'yi çözerek okuyabilir. İmza yalnızca belirtecin değiştirilmediğini garanti eder, onu gizlemez. Bir JWT'ye asla hassas veri koymayın.

Örnekler

header{"alg":"HS256","typ":"JWT"} → eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9
payload{"sub":"1234567890","name":"John Doe","iat":1516239022} → eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ
tokeneyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5cİmza (üçüncü bölüm) algoritmaya ve anahtara bağlıdır; bu örnek "your-256-bit-secret" anahtarıyla HS256 kullanır.

Kullanım senaryoları

  • API'lerde kullanıcıları kimlik doğrulamak: sunucu imzalı bir belirteç verir ve oturum saklamadan her istekte doğrular.
  • Kimlik doğrulama belirteçlerini inceleyip hata ayıklamak; taleplerini (sub, exp, roller) ve tarihlerini görmek için.
  • Bir belirtecin imzasını gizli anahtar veya açık anahtarla doğrulayarak kurcalanmadığını teyit etmek.
  • Bir kimlik doğrulama akışı geliştirirken farklı algoritmalarla (HMAC, RSA, ECDSA) test belirteçleri oluşturmak.

Sık sorulan sorular

Bir JWT'nin içeriği şifreli mi?

Hayır. Başlık ve yük yalnızca Base64URL ile kodlanmıştır ve herkes bunu çözebilir. İmza gizliliği değil, bütünlüğü (değiştirilmediğini) garanti eder.

HS256 ile RS256 arasındaki fark nedir?

HS256, imzalamak ve doğrulamak için tek bir paylaşılan gizli anahtar kullanır (HMAC). RS256 asimetriktir: özel anahtarla imzalar ve açık anahtarla doğrular; birçok hizmetin belirteç üretemeden doğrulaması gerektiğinde idealdir.

iat, exp ve nbf talepleri ne anlama gelir?

Bunlar standart zaman damgalarıdır: iat (verilme zamanı), exp (son geçerlilik) ve nbf (şu andan önce geçersiz). 1970'ten (Unix epoch) bu yana saniye cinsinden ifade edilir.

"none" algoritması neden önerilmez?

Çünkü imzasız bir belirteç üretir: herkes yükü değiştirebilir ve yine de kabul edilir. Yalnızca test için işe yarar, üretimde asla.

Belirtecim bir sunucuya gönderiliyor mu?

Hayır. Oluşturma, çözme ve doğrulama tamamen tarayıcınızda yapılır; belirteç ve anahtarlar cihazınızdan hiç ayrılmaz.