Hash (Özet) Fonksiyonu Nedir, Ne İçin Kullanılır?
Hash (özet) fonksiyonu, girdisi ister tek bir karakter ister birkaç gigabaytlık bir dosya olsun, her zaman sabit uzunlukta bir çıktı — özet değeri — üreten tek yönlü bir matematiksel işlemdir. Bu özellik deterministiktir: aynı girdi, hangi cihazda veya ne zaman çalıştırılırsa çalıştırılsın her zaman aynı özeti verir; ama girdideki tek bir karakterin değişmesi bile (çığ etkisi sayesinde) tamamen farklı, ilk hâliyle hiçbir benzerlik taşımayan bir hash ile sonuçlanır.
Kritik ayrım: Hash, şifreleme DEĞİLDİR. Şifrelemede bir anahtarla veriyi geri açan bir "çöz" işlemi vardır; hash fonksiyonlarında böyle bir geri dönüş tanımlı değildir — özetten orijinal veriye dönmenin matematiksel bir yolu yoktur. Bu yüzden hash'ler bir şeyi "gizlemek" için değil, bir verinin bütünlüğünü doğrulamak veya benzersiz bir parmak izi çıkarmak için kullanılır.
En yaygın kullanım alanı dosya bütünlüğü kontrolüdür: bir yazılımı indirdiğinizde sitede yayınlanan resmi hash değeriyle kendi hesapladığınız değeri karşılaştırarak dosyanın indirme sırasında bozulmadığını veya kötü niyetle değiştirilmediğini teyit edebilirsiniz. Ayrıca versiyon kontrol sistemlerinde (Git commit kimlikleri), büyük veri kümelerinde tekrarlayan içeriği tespit etmede (deduplication), ve bir dosyanın "parmak izini" alıp sonradan değişip değişmediğini izlemede de yaygın olarak kullanılır.
Güvenlik notu: MD5 ve SHA-1 artık kriptografik olarak kırık kabul edilir — araştırmacılar farklı iki girdinin aynı hash'i üretmesini sağlayan pratik çakışma saldırıları buldu. Dosya bütünlüğü gibi zararsız kullanımlar için hâlâ sorun değildir, ama parola saklama veya dijital imza gibi güvenlik açısından kritik işlerde SHA-256 veya üstü tercih edilmelidir. Bu araçta SHA-1/256/512 hesaplamaları tarayıcının yerleşik Web Crypto API'si (crypto.subtle), MD5 SparkMD5, Web Crypto'nun desteklemediği SHA-224 ve RIPEMD-160 ise crypto-js kütüphanesiyle yapılır — girdiniz hiçbir aşamada sunucuya gönderilmez.
Bunu da Dene
İşin bitti mi? Sırada bunlar olabilir.
Sık Sorulan Sorular
Son güncelleme: