Kriptografi & Veri

Özetleme (Hashing)

👤 Güvenlik Uzmanı1/35 dk
İnteraktif sahne yükleniyor…
🎯 Neden önemli?

Bir parolayı veritabanına asla düz metin olarak yazmazsınız; bunun yerine geri döndürülemez bir "parmak izi" saklarsınız — işte bu parmak izini üreten teknik özetleme (hashing) dir.

Anlatım

NEDİR? Özetleme (hashing), herhangi bir uzunluktaki veriyi (parola, dosya, mesaj) sabit uzunlukta tek-yönlü bir "özet" (hash / digest) değerine dönüştüren matematiksel işlemdir. Aynı girdi her zaman aynı özeti üretir; ancak özetten geri dönüp orijinal veriyi hesaplamak pratikte imkânsızdır. Bu yönüyle özetleme şifrelemeden (encryption) farklıdır: şifreleme anahtarla geri çözülebilir (iki yönlü), özetleme ise geri döndürülemez (tek yönlü). Yaygın algoritmalar: SHA-256, SHA-3, BLAKE2 (genel amaçlı) ve bcrypt, scrypt, Argon2 (özellikle parolalar için). NASIL ÇALIŞIR? 1) Girdi alınır (ör. "Parola123" veya bir dosyanın tüm baytları). 2) Algoritma veriyi bloklara böler ve karıştırma/sıkıştırma turlarından geçirir. 3) Çıktı olarak sabit uzunlukta bir özet üretilir (SHA-256 her zaman 256 bit = 64 onaltılık karakter). 4) Girdideki tek bir bitin değişmesi bile çıktının yaklaşık yarısını değiştirir (çığ etkisi / avalanche effect). Doğrulama yapılırken veri tekrar özetlenir ve saklanan özetle karşılaştırılır; eşleşiyorsa veri değişmemiş/parola doğru kabul edilir. NEDEN ÖNEMLİ / İŞ YERİNDE? • Parola saklama: Parolalar asla düz metin tutulmaz; özetleri saklanır. Saldırgan veritabanını çalsa bile orijinal parolaları doğrudan göremez. • Bütünlük (integrity) kontrolü: İndirilen bir dosyanın özeti yayıncının verdiği özetle aynıysa dosya bozulmamış/değiştirilmemiştir. • Dijital imza ve sertifikalar: İmzalanan içeriğin önce özeti alınır, imza bu özet üzerine atılır. • Tekilleştirme (deduplication) ve hızlı arama: Aynı içeriğin tekrarını özet karşılaştırarak bulmak. DİKKAT / İYİ UYGULAMA • MD5 ve SHA-1 kırılmıştır (çakışma/collision üretilebilir) — yeni sistemlerde KULLANMAYIN. • Parolalarda düz SHA-256 yetmez; her parolaya rastgele bir "tuz" (salt) ekleyin ve bcrypt/scrypt/Argon2 gibi yavaş, iş-faktörü ayarlanabilir algoritmalar kullanın (kaba kuvvet ve gökkuşağı tablosu saldırılarını yavaşlatır). • Özetleme veriyi gizlemez, yalnızca tek yönlü dönüştürür; gizlilik gerekiyorsa şifreleme kullanılır.

📌 Senaryolar
📌 Örnek 1 (Parola doğrulama): Bir kullanıcı kayıt olurken sistem parolasını saklar. Açıklama: Düz metin "Parola123" saklanmaz; rastgele bir salt eklenip bcrypt ile özetlenir (ör. $2b$12$... ile başlayan değer) ve yalnızca bu özet veritabanına yazılır. Giriş anında girilen parola aynı salt ile yeniden özetlenir; üretilen özet saklananla eşleşirse giriş kabul edilir. Sistem orijinal parolayı hiçbir zaman bilmez.
📌 Örnek 2 (Dosya bütünlüğü): Bir yazılım dağıtım sitesi indirme bağlantısının yanında "SHA-256: a3f5..." değerini yayımlar. Açıklama: Kullanıcı dosyayı indirdikten sonra kendi bilgisayarında dosyanın SHA-256 özetini hesaplar (ör. `sha256sum dosya.iso`). Hesaplanan değer sitedeki değerle birebir aynıysa dosya indirme sırasında bozulmamış veya kötü amaçlı olarak değiştirilmemiştir; tek bir bit farklı olsaydı özet tamamen değişirdi.
📌 Örnek 3 (Veri sızıntısı sonrası savunma): Bir şirketin kullanıcı tablosu çalınır. Açıklama: Parolalar Argon2 ile tuzlanarak özetlenmiş olduğundan saldırgan özetlerden orijinal parolaları doğrudan okuyamaz. Tuz (salt) her kullanıcıda farklı olduğu için tek bir gökkuşağı tablosuyla toplu çözüm yapılamaz ve Argon2'nin yavaşlığı kaba kuvvet denemelerini ciddi şekilde zorlaştırır. Bu, sızıntının zararını sınırlayan kritik bir savunma katmanıdır.
Özet

• Özetleme, veriyi sabit uzunlukta, geri döndürülemez (tek yönlü) bir özete çevirir. • Şifrelemeden farklıdır: şifreleme anahtarla geri çözülür, özetleme çözülemez. • Parola saklama, dosya bütünlüğü ve dijital imzalarda kullanılır. • Parolalarda salt + bcrypt/scrypt/Argon2 kullanın; MD5/SHA-1 kırık olduğundan kaçının.

✅ Mini-Test (3)
1.Özetleme (hashing) ile şifreleme (encryption) arasındaki temel fark hangisidir?
2.Aşağıdaki algoritmalardan hangisi günümüzde KIRILMIŞ kabul edilir ve yeni sistemlerde önerilmez?
3.Parolaları güvenli saklamak için her parolaya rastgele bir tuz (salt) eklemek iyi bir uygulamadır.
← Tüm sözlük terimleri · Farkındalık eğitimi