SHA-256 nedir ve neden önemlidir?

SHA-256 her girdiye — bir kelimeye, bir fotoğrafa, 4 GB'lık bir disk imajına — sabit 64 karakterlik bir parmak izi üretir. Görselde tek bir pikseli veya kelimede tek bir harfi değiştirin, parmak izi tamamen değişir. Bu özellik yüzden kriptografik özet denir ve basit sağlama toplamlarının çok ötesinde kullanılır.

SHA-256 özeti aslında ne yapar

Çıktı, girdi ne kadar büyük olursa olsun her zaman 256 bittir ve 64 onaltılık karakter olarak yazılır. Kısa bir kelimeyi de tüm bir işletim sistemi imajını da özetlerseniz yine tam olarak 64 karakter alırsınız. Mümkün çıktıların uzayı sabit olduğu için bir özeti geri çözmek ancak olası tüm girdileri denemekle mümkündür.

İkinci özellik, fonksiyonun belirleyici olması ve değişime çok hızlı yayılmasıdır: girdideki minik bir değişiklik çıktı bitlerinin yaklaşık yarısını tersine çevirir. Bir dosyadan tek bir boşluk çıkarın, özet özgün olanla hiç ilgisi olmayan bir değere dönüşür. Bu yüzden geçerli görünen bir özeti koruyarak veriyi kademeli olarak değiştirmek imkânsızdır.

SHA-256, SHA-2 ailesinin bir üyesidir ve 2001'den beri standarttır. Bu şifreleme değildir. Anahtar yoktur ve sonucu çözerek özgün dosyaya geri dönmenin bir yolu yoktur; özetleme tek yönlü bir özettir, gizli bir kod değil.

  • Girdi boyutundan bağımsız olarak sabit 64 karakterlik çıktı.
  • Tek bir karakter veya piksel değişimi tüm özeti değiştirir.
  • Tek yönlüdür: özgün veri özetten geri elde edilemez.

SHA-256 pratikte nerelerde kullanılır

En sık görülen günlük kullanım indirme doğrulamadır. Linux dağıtımları, tarayıcı eklentileri ve büyük yazılım sürümleri indirmenin yanında bir SHA-256 sağlama toplamı yayımlar. İndirdiğiniz dosyanın özetini hesaplayıp iki diziyi karşılaştırırsınız. Aynıysa dosya eksiksiz gelmiş ve yolda değiştirilmemiştir.

Geliştiriciler bunu dijital imzaların ve sertifikaların içinde de kullanır. Özet bir belgeyi veya çalıştırılabilir dosyayı özetler, özetin kendisi imzalanır ve imza bu özetin gerçek olduğunu kanıtlar. Aynı fikir Git commit'lerinin bütünlüğünü de korur: bir commit içeriğinin ve ebeveyninin özetini saklar; bu, sonrasındaki her özet değiştirilmeden yeniden yazılamayan bir zincir oluşturur.

Üçüncü büyük kullanım parola saklamadır ama önemli bir farkı vardır. Parolanın çızgisel SHA-256 özetini saklamak zayıftır, çünkü parola listeleri denenmeden çok daha hızlı özetlenebilir. Gerçek sistemler parolayı bcrypt, scrypt veya Argon2 gibi bilerek yavaş bir fonksiyondan geçirir. SHA-256 bu yapının bir bileşenidir, tüm yapı değil.

  • İndirilen dosyanın yayımcının sağlama toplamıyla eşleştiğini doğrulamak.
  • Dijital imzalar, TLS sertifikaları ve Git commit bütünlüğü.
  • Yavaş parola karma fonksiyonlarının içinde bileşen olarak — asla tek başına değil.

Bir dosyayı SHA-256 ile nasıl doğrularsınız

Komut satırına ihtiyacınız yok. SHA Hash Generator'ı açın, SHA-256'yı seçin ve özetlemek istediğiniz metni yapıştırın ya da dosyayı yükleyin. Araç özeti tarayıcınızda üretir, yani gizli dosyalar cihazınızdan hiç çıkmaz.

Sonra değeri resmî sitede yayımlanan değerle karşılaştırın. Dikkatlice kopyalayın: yanlış yazılmış tek bir karakter tamamen farklı bir özet üretir ve yanlış alarm verir. İkisi eşleşiyorsa dosya, yayımlanan dosyayla bit bit aynıdır.

Aynı işlem kısa metinler için de geçerlidir. Yapıştırdığınız her metni özetleyebilirsiniz; bu, commit imzası üretirken veya sabit, tekrarlanabilir bir değere ihtiyacınız olduğunda işe yarar.

  • SHA Hash Generator'ı açın ve SHA-256'yı seçin.
  • Metni yapıştırın veya dosyayı yükleyin.
  • Sonucu resmî kaynaktaki sağlama toplamıyla karşılaştırın.

Bu rehberde kullanılan araçlar

Tüm rehberler