Güvenli Özetleme (Secure Hash) Algoritmaları

Güvenli Özetleme (Secure Hash) Algoritmaları

Özetleme (Hash) algoritması nedir? Çakışma (collision) nasıl oluşur? Özetleme algoritmaları özellikleri nelerdir?

Matematiksel işlemleri kullanarak farklı boyutlardaki verilerden sabit uzunlukta özet veriler oluşturulmasıdır. Oluşan özet verinin boyutu tamamen özetlenen veriden bağımsızdır. Örnek vermek gerekirse, bu yazının tamamı ile "Blockchain" kelimesini ayrı ayrı SHA-1 algoritmasıyla özetlersek her ikisi için de çıkacak sonuç 160bit uzunluğunda olacaktır.

Hash fonksiyonunun aynı uzunlukta özet veri ortaya koymasından dolayı farklı verilerden aynı değerlerin oluşması olasıdır. Buna "çakışma (collision)" adı verilir. Ancak SHA-256 algoritmasını ele alacak olursak, özetlenen veri 256bit uzunluğunda bir sonuç üretecektir bu da 2^256 farklı değerden oluşabilir. Hal böyle olunca göz ardı edilir.

Özetleme algoritmaları;

  • Tek yönlüdür. Hash değerinden bir daha özetlenen veriye ulaşılamaz.
  • Aynı veri için her zaman aynı hash değeri oluşturulur.
  • Hızlı gerçekleşirler.
  • Özetlenen veri üzerinde yapılan en ufak bir değişiklikte bile farklı hash değerleri ortaya çıkar. Bu duruma "çığ etkisi" adı verilir.
Veri Özet veri (16'lık sayı sistemi)
Blockchain 625da44e4eaf58d61cf048d168aa6f5e492dea166d8bb54ec06c30de07db57e1
blockchain ef7797e13d3a75526946a3bcf00daec9fc9c9c4d51ddc7cc5df888f74dd434d1
Oluşan özet verinin boyutu tamamen özetlenen veriden bağımsızdır. 93921cacf8e368220639361e363d45452d92a0d6a8c692e1bd8ca4c173d6cd13

Üst tarafta görmüş olduğunuz tabloda veri ve SHA-256 değerleri yer alıyor. Okunabilirlik için 16'lık sayı sisteminde ile gösterilmiştir.

154