Blokzincirler, içerisine işlenecek her verinin şifrelendiği ve belirli zaman aralıklarında blok adı verilen yapının içerisinde saklanarak her yeni blokta bir önceki bloğa ait bir özetin bulunduğu ve tüm bu verilerin birden çok veri depolama noktasında saklandığı yapılardır. Her blokzincir bir fikir birliği (konsensüs) mekanizmasına sahiptir. En sık kullanılan fikir birliği (konsensüs) mekanizmaları da Proof of Work (İş İspatı) ve Proof of Stake (Pay İspatı)’tir. Bu yazımızdaki konumuz Proof of Work (İş İspatı) konsensüsüdür. Blokzincirlerle ilgili detaylı bilgi almak için “Blokzincir Nedir” yazımızı buraya tıklayarak okuyabilirsiniz.
Proof of Work fikri ilk olarak 1990’ların başında ortaya atılmıştır. İlk amacı birçok farklı adrese tek bir yerden gönderilen “spam” e-postaları engellemek olmuştur. Buradaki temel fikir bilgisayarların e-posta göndermeden önce küçük bir iş yapmasını sağlamaktadır. Bu şekilde normal e-posta gönderimlerinde hiçbir sorun yaşanmazken, toplu e-posta gönderimlerinde yüksek kaynak ve işlemci gücü ihtiyacı duyulmuştur. Ancak 2008 yılında Satoshi Nakamoto yayımladığı Bitcoin İzahnamesi’nde Proof of Work fikir birliği mekanizmasını Bitcoin için uygulamıştır.
Blokzincirde bloklar, işlemlerin sıra ile bir araya gelmiş işlem ve işlem gruplarından oluşmaktadır. Fikir birliği mekanizmasında, madenciler bir iş (work) gerçekleştirerek şifrelenmiş olarak verilen bir sonraki blokları çözmek için donanım gücü harcamaktadırlar. Doğrulayıcılar ağın yazılımını çalıştıran bilgisayarlardır. Blokzincir üzerinde gerçekleşen işlemler doğrulayıcılar tarafından ağa aktarılır ve şifrelenmesinin ardından blokzincirinde kalıcı olarak yerini alır. Doğrulayıcılar, blokzinciri üzerindeki geçmiş verileri indirerek madencilerin kendilerine ilettikleri işlemlerin blokzincirin protokolüne uygun olup olmadığını kontrol eder. Bu doğrulayıcılar blokzincirde işlenmiş bir önceki bloğa atıfta bulunur ve her biri blokzincirin güncel bir kopyasını kaydeder.
Proof of Work’de madencilerin bir iş gerçekleştirerek sıradaki bloklara ait işlemleri çözmek için donanım gücü harcadığından bahsetmiştik. Madenciler bulundukları blokzincir ağına ait kurallara uygun, geçerli blokları çözmek için hesaplama gücü harcamaktadırlar. Bir blok için binlerce madenci aynı anda verilen matematiksel problemleri en hızlı ve doğru şekilde çözmek için rekabete girmektedirler. Bu işlem sonunda başarılı olan madenci ödül kazanmaktadır. Madenciler bunu yapmak için “hash” adı verilen rastgele sayı dizileri oluşturmaktadır. Kazanan hash daha sonra diğer madencilerin çözümün doğru olup olmadığını onaylaması için ağa yayılmaktadır. Eğer çözüm doğruysa veri blokzincire işlenir ve madenci ödülünü alır. İlk doğru sonuç kabul edilmekte ve onaylanmaktadır. Ödül ağ tarafından kabul edilen kripto para cinsi türünden ödenmektedir. Örneğin, bu Bitcoin Blokzinciri için Bitcoin’dir. Günümüzde madencilik işlemlerinin büyük çoğunluğu artık beş büyük Mining pool (Madencilik havuzu) tarafından gerçekleştirilmektedir. Bu da %51 saldırısı adını verdiğimiz olaylara sebep olabilmesi açısından blokzincirler için zararlıdır. %51 saldırısı madencilik gücünün bir kullanıcı ya da kullanıcı grubu tarafından kontrol edildiği durumlardır. Madenciler ne kadar çok farklı bölgelerde ve birbirinden bağımsız halde olursa, bu blokzincirler için verilerin doğruluğu açısından daha sağlıklı olacağı anlamına gelmektedir.