Hashing Nedir?

Blockhain teknolojisinin en güvenilir dayanaklarından biri hashing yöntemine dayanmasıdır. Hashing yönteminden önce Hash Oranı (Hash Rate)‘nın açıklanması gerekir. Hash oranı, Bitcoin Blockchain’inde gerçekleşen bir işlemin doğrulanabilmesi için saniyeler içinde gerçekleşen deneme sayısı olarak açıklanır. Hash Oranı birim olarak Exahash (EH/s) ile gösterilir. Hash oranının kesin olarak hesaplanması mümkün olmadığı gibi tarihsel gelişimini tahmin eden grafikler bulunur.

Hash oranı tarihsel grafiğini aşağıdaki linkten takip etmek mümkündür.
https://bitinfocharts.com/comparison/bitcoin-hashrate.html#1y

Hashing ise, farklı uzunluktaki girdileri alarak onlardan bir dizi matematiksel çıktı dönüştürme işlemine verilen isimdir. Herhangi bir girdiden çıktı yaratmak kolaydır fakat tersi yönde bir hareket yapmak oldukça zordur. Çıktıdan girdiye doğru ulaşmak ne kadar zorsa, hashing algoritması o kadar güvenilirdir.

Bitcoin’de kullanılan SHA-256 algoritması nedir?

Bitcoin, SHA-256 hash algoritmasını kullanmaktadır. Girdinin herhangi bir kısmındaki en ufak değişiklik çıktıyı da bütünüyle değiştirecektir; bu durum Blockchain teknolojisinin en önemli güvencelerinden biridir.

Örnek hash fonksiyonu

Örneklemek gerekirse,

  • Coinpara 0d11f8c909a1aa6ed1e85907c14a76fs2867931185e96yy2458ed545646tk1
  • Coinpara e12666v1477k856t55ed58914fd00arc2e24t085efs526afe512853fvb515et

Ayrıca bir hash fonksiyonunun güvenli ve etkin olabilmesi için çakışmaya dayanıklı olması gerekir. Çakışma ihtimali çok düşük olsa dahi girilecek girdiler sonsuz iken, çıktıların bir sınırı olacağından dolayı bu ihtimal her zaman söz konusu olacaktır.

Hashing yöntemi verilerin değiştirilemediğini ispatlar. Veriler üzerinde yapılacak en ufak bir değişiklik hash kodunda bir değişiklik doğuracağından Blockchain’in güven mekanizmasında önemli bir yer tutar.

Blockchain’de SHA-256 algoritması nasıl kullanılır?

Bitcoin ağında; kullanıcılar arasında gerçekleşen işlemleri içeren blok numarası ile nonce değeri ve önceki bloka ait olan hash kodu bir araya getirilerek SHA-256 algoritması standardına uygun biçimde hash koduna dönüştürülür.

Anlaşıldığı üzere 2 bin 600’den fazla işlem bilgisi, sadece 64 karakterden oluşan özet bir çıktıya dönüştürülüyor. Böylece blok içinde herhangi bir değişikliğe karşı tüm veriyi incelemek yerine sadece bu özet veri ile kontrol yapmak mümkün olmuş oluyor.

Blockchain sistemi üzerinde girdinin herhangi bir kısmındaki en ufak bir değişiklik, çıktıda oldukça ciddi bir değişikliğe yol açmaktadır. İşte bu anlatıldığı gibi blockchain teknolojisinin en önemli güvencesidir.

Blockchain’in ilk bloğu olarak bilinen Genesis bloğu, oluşturulduğu anda ve onaylandığında eşi benzeri olmayan bir hash değeri meydana getirmiştir. Oluşan bu hash değeri ve ardından işlenen diğer tüm yeni işlemler, daha sonra zincirdeki bir sonraki adımda kullanılan yepyeni bir hash değeri için girdi olarak kullanılır.. Böylece ağdaki nodelar (düğümler) olması gereken hash değeri konusunda anlaşmaya vardığı sürece yapılacak diğer işlemler güvenli bir şekilde eklenebilir.