İş İspatı

İş İspatı

Son güncelleme: Ağustos 16, 2017

“Hashing” ya da Türkçe ifadeyle “hesaba dayalı adresleme” terimine aşina değilseniz, lütfen önce hash ile ilgili makaleyi okuyun.

Bu yazıda, hesaba dayalı adresleme derken “hashing” kastediyor olacağız.

Hesaba dayalı adresleme, “İş İspatı” olarak adlandırılan bazı verilere karşılık gelen belli miktarda bir hesaplamanın yapıldığını ispatlamak için kullanılabilir. Bu, elde edilen hash üzerinde belirli bir kısıtlamayı sağlayan keyfi bir sayı (“nonce” olarak adlandırılır) ile veri ekleyerek yapılır. Örneğin, (aşağıda açıklanan) “Hashcash” sistemi, kendi nonce’ı ile eklenmiş bir e-posta mesajı başlığının, ikili hash sonuçlarının başında yirmi sıfır içermesini gerektirir. Başlangıçta birçok sıfır içeren bir hash çok seyrek olduğu için, böyle bir hash sonuç bulmadan önce yüz milyonlarca farklı değere değmenin denenmesi gerekecektir.

İş İspatı

Somut bir örnek olarak, “hızlı kahverengi tilki tembel köpeği atlar” cümlesini alalım ve cümlenin sonunda, dört sıfırdan başlayan bir hash veren ilk numarayı bulalım. Öncelikle, “hızlı kahverengi tilki tembel köpeğin üstüne atlar1” başlayıp, herhangi bir sıfır ile başlamayan bir MD5 hash değeri olan e48c7b8bfcdc4efe97e08c43ae387524 olan “hızlı kahverengi tilki tembel köpeği2 atlar” sonra da 3, 4,5 ve benzeri… Hiçbir sonuç 0000fc25d6614bf1636577c532e86788 hash değeri olan cümlenin sonunda sayı 49609’a kadar ulaşana kadar sonuçta dört sıfır ile başlamaz. Bu numarayı bulabilmemizin tek yolu, bu gibi dört önde gelen sıfırdan oluşan bir hash değerini veren, verilen sayıları rastgele hesaplamaya devam etmek veya herhangi bir sayım yapmaktır, kısa yol kullanmak değildir, ve yapmak zorunda olduğumuz bir iştir.

Ancak 49609 numaramızın bu sıfırları verdiğini kanıtlayacak bir başkası için (bizim nonce geçerlidir), sadece “hızlı kahverengi tilki tembel köpeğin üzerinden atlar” 49609 hash’ini elde etmeniz gerekir; Linux’ta bunu şu şekilde yapabilirsiniz:

echo “hızlı kahverengi tilki tembel köpeğin üzerinden atlar49609” | md5sum

bu da size şu sonucu verir:

0000fc25d6614bf1636577c532e86788 –

Aynı şekilde, bir veriye bir nonce formunda bir “İş İspatı” eşlik edebilir, böylece bu işin gerçekten yapıldığını doğrulamak isteyen bir müşteri, veriyi nonce değeri eklenmiş verileri basitçe karışık hale getirip kontrol edebilir.

Bakınız: Bitcoin nasıl çalışır

Bir Cevap Yazın