2017’de fiyatının da ilginin de zirve yapması ile bitcoin’e olan ilgi gün geçtikçe artıyor. Etrafımızda bitcoin’i duymayan hatta neredeyse kullanmayan kalmadı. Bitcoinle biraz daha içli dışlı olanlar eminim Proof of Work (PoW)’ü de duymuş ve biliyorlardır da.
Nedir bu Proof of Work?
Proof of Work, Türkçede “İş Kanıtı “anlamına gelen aslında BLOCKHAIN teknolojisinin en temel taşıdır. Proof of Work’ü anlamamız için öncesinde Hashcash’i bilmemiz gerekmektedir. Hashcash’i bilmek için de Kriptografik Özet Fonksiyonları (Cryptographic Hash Function) az buçuk da olsa bilmemiz gerekiyor.
Kriptografik Özet Fonksiyonu (Cryptographic Hash Function)
Bu fonksiyon herhangi bir uzunluğu olan giriş bilgisini alıp sabit olan bir özet üretir. Özelliklerinden en önemlisi ve kullanım amacı aslolan özelliği verilen bir giriş bilgisinin özetini üretmek çok kolay yapılırken, verilen bir özetin giriş bilgisini bulmak çok zor hata imkansızdır. Girdileri tek tek elle denemekten başka bir yol bulunmamaktadır. Bunun asıl sebebi özetin sonucunun tamamen rastgele olmasından kaynaklanır. Giriş yapılırken en ufak değişiklik tamamen farklı bir sonuç üretmeye sebebiyet verecektir. 256 bitlik özetleme yapısına sahip SHA256 kullanılır.
Buna bir örnek vermek gerekirse;
selamlar –> SHA256 –> 4c6bcdd55f3153e1939659ab1ec039e4059174dc25abdfcb2f58868849b4d61b
selamlat–> SHA256 –> 8775b90bf257388326499cc40f608b3f49cf5d09288ea8f7b1f6acf2f30c0dfb
Hashcash
Bu mekanizme şu şekilde çalışıyordu: Kullanıcı her e-mail atmak istediğinde, mail sunucusu daha önce hesapladığı ve özetini bildiği bir kriptografik özet fonksiyonunu kullanıcıya hesaplattırır. Suç teşkil etmeyen bir kullanıcı için bu özet fonksiyonun hesaplanması; örnek olarak, bir saniye civarında sürer ve her e-mailden önce bir saniye beklemek meşru kullanıcıyı çok rahatsız etmez. Eğer kötü niyetli bir kullanıcı bir milyar tane spam e-maili atmak isterse 1 milyar defa 1 saniye bekleyecek ve bu çok uzun bir süre alacaktır.
Proof of Work (PoW) nedir? Nasıl çalışır?
Bitcoin’de yukarıda anlattığımız Hashcash temelli Proof of Work kullanılmaktadır. Bu işlem “mining” olarak da bilinir ve işlem şu şekilde gerçekleşmiş olur. Daha önceden belirlenmiş özelliklere sahip bir özeti bulmak için miner’lar olabilecek her türlü girdiyi deneme yanılma yöntemiyle denerler. İstenilen formatı sağlayan özeti ilk bulan miner, blockchain’deki yeni bloğu üretmeye hak kazanır. Gelen işlemleri (transactions) uygunsa, onaylar ve yaptığı işin karşılığı olarak da ödüllendirilir. Özet fonksiyonunun sonucu tamamen rastgele olduğu için bütün minerların ödülü alabilme şansı var fakat kim daha çok girdiyi daha hızlı test edebilirse onun şansı o oranda daha yüksek olur. Şu anda bütün minerlarin bir saniyede hesaplayabildiği özet (Hash Rate) trilyonları bulabilmektedir.