Kriptografik Hash Fonksiyonu-Cryptographic Hash Function

Orta Seviye

Kriptografik hash fonksiyonu, değişken boyutlu bir işlem girdisinden sabit boyutlu bir karma değer üretir. Bir kriptografik hash fonksiyonu, değişken uzunluktaki rastgele bir veri dizisini karma adı verilen sabit bir uzunluk ve biçimden birine dönüştürmek için kullanılabilen bir algoritmadır, yani tekrarlanabilir belirli eylemler dizisidir.


Hash fonksiyonunun en basit örneklerinden biri, tek basamaklı bir çıktı kalana kadar bir sayıdaki basamakları toplamaktır. Örneğin, giriş 49 ise, 4 ve 9'un eklenmesi 13 verir, 1 ve 3 rakamları daha sonra tekrar 4'ün çıktısını vermek üzere toplanır. Giriş numarasının uzunluğundan bağımsız olarak, çıkış her zaman tek olacaktır. Ancak bu iyi bir algoritma değildir, çünkü işlevlerini iyi bir şekilde yerine getirebilmesi için bir özet işlevinin birkaç özelliğe sahip olması gerekir:

  • Herhangi bir girdi için bir çıktıyı hesaplamak kolay olmalı, ancak süreci tersine çevirmek ve bilinen bir çıktının girdisini hesaplamak neredeyse imkansız olmalıdır.
  • Determinizm: Algoritmaya belirli bir girdiyi beslemek her zaman aynı çıktıyı üretmelidir.
  • Çarpışma direnci: İki farklı girdinin aynı çıktıyı üretme olasılığı çok düşük olmalıdır;
  • Çığ etkisi: Girdideki tek bir veri bitinin bile değiştirilmesi, çılgınca farklı bir çıktıyla sonuçlanmalıdır.


Hash fonksiyonları, birçok kullanım durumunda, örneğin bilgisayar dosyalarının uzun süreli depolamanın iletilmesinden sonra bütünlüğünü doğrulamak için sağlama toplamları olarak veya işlevleri rastgele hale getirirken uygulanır.


Ayrıca, SHA-256 karma işlevini kullanan Bitcoin (BTC) gibi iş kanıtı kripto para birimlerinin madenciliğinde de önemli bir bileşendir. Blok zincirine yeni bir blok eklemek ve yeni çıkarılan Bitcoin ödüllerini talep etmek için madencilerin öncelikle hedef adı verilen belirli bir eşiğin altında bir hash değeri üretmeleri gerekir.


Fonksiyonların sözde rastgele olması ve herhangi bir girdinin çıktısını hash işlevinden geçirmeden önce tahmin etmenin imkansız olması, madencilerin yoktan yeni Bitcoin basamamasını ve yaptıkları işi kanıtlamalarını sağlar.