Cryptology Engine

Parola Hashleme & KDF

PBKDF2, bcrypt, scrypt, Argon2 (parola hashleme) ve HKDF (anahtar türetme) algoritmaları

Parola Hashleme & KDF Nedir?

Parola hashleme, kullanıcı parolalarını güvenli bir şekilde saklamak için kullanılan özel bir hashleme türüdür. Normal hash algoritmalarından farklı olarak, parola hashleme algoritmaları kasıtlı olarak yavaştır ve "salt" (tuz) adı verilen rastgele veri ekler. Bu sayede, bir saldırgan parola veritabanını çalsa bile, parolaları kırması çok zor ve zaman alıcı olur. Modern parola hashleme algoritmaları, brute-force saldırılarına karşı koruma sağlar ve güvenli parola saklama için kritik öneme sahiptir.

Kullanım Alanları

  • Web uygulama parola saklama
  • Kullanıcı kimlik doğrulama sistemleri
  • Veritabanı güvenliği
  • Mobil uygulama güvenliği
  • API kimlik doğrulama
  • Parola yönetim sistemleri
Temel Özellikler
  • Kasıtlı yavaşlık (brute-force koruması)
  • Tuz zorunlu, pepper opsiyonel
  • Tek-yönlüdür
  • Yapılandırılabilir zorluk
  • Bellek zorlu algoritmalar (Argon2)
  • Güvenli parola saklama
  • Yeni sistemler için Argon2id önerilir; minimum parametreler: m≥64–128 MiB, t≥2–3, p≥1
  • Uyumlulukta PBKDF2-HMAC-SHA256, iterasyon ≥100k+
Algoritma Karşılaştırması
Algoritma
Güvenlik
Hız
Kullanım Alanları
PBKDF2 (HMAC-SHA256/512 seçilebilir)YüksekYavaş
Genel amaçlı parola hashlemeUyumluluk gerektiren sistemlerUyumlulukta PBKDF2-HMAC-SHA256, iterasyon ≥100k+
bcryptYüksekYavaş
Web uygulamalarıOrta seviye güvenlik gereksinimleri
Argon2idÇok YüksekYavaş
Yeni sistemler için önerilirYüksek güvenlik gerektiren uygulamalarModern sistemlerMinimum parametreler: m≥64–128 MiB, t≥2–3, p≥1

* Karşılaştırmalar 64-bit CPU'da referans/donanım hızlandırmasına göre

PBKDF2

NIST tarafından önerilen, yaygın kullanılan parola hashleme algoritması. HMAC-SHA256/512 seçilebilir.

bcrypt

Blowfish tabanlı parola hashleme algoritması.

scrypt

Bellek zorlu parola hashleme algoritması.

Argon2

Modern, bellek zorlu parola hashleme algoritması. Yeni sistemler için önerilir.

HKDF (Anahtar Türetme)

Parola hashleme için değil, zaten güvenli anahtar malzemesinden anahtar türetmek için kullanılan KDF. TLS, IPsec ve protokol tasarımında kullanılır.

İlgili Standartlar
  • NIST SP 800-132
  • RFC 8018
  • RFC 2898
  • Password Hashing Competition