Merkle kökü nasıl oluşturulur?
Bloktaki her işlemin kimliğiyle başla. Bu kimlik, kendisi de çift SHA-256 hash'idir. İşlemleri coinbase işlemi ilk sırada olacak şekilde sırala. Yan yana olanları ikili gruplar hâlinde birleştir ve her grubu hash'le. Böylece hash sayısı yarıya iner. Tek bir hash kalana kadar tekrarla. Bu, Merkle köküdür.
Bir seviyede tek sayıda hash varsa, son hash kendisiyle eşleştirilir. Bir işlemi tek bir satoshi bile değiştirsen, o işlemin en üst seviyeye giden yolundaki tüm hash'ler ve Merkle kökü değişir. Yukarıdaki demoda dene.
Neden tek bir büyük hash değil de ağaç?
Kanıtlar. Bir işlemin bir blokta olduğunu göstermek için tüm bloğa değil, yalnızca işlem dalındaki hash'lere ihtiyacın var. Yaklaşık 4.000 işlem içeren bir blok için bunlardan yalnızca 12 tanesi gerekir; bu da birkaç yüz bayt eder. Satoshi'nin teknik dokümanında, ödemeleri bu şekilde doğrulayan ve yalnızca blok başlıklarını saklayan hafif cüzdanlar anlatılır.
Bu, madencilik için de önemlidir. Bir madenci coinbase işlemindeki ek nonce'u değiştirdiğinde Merkle kökü değişir ve blok başlığı, denenecek yeni nonce'lar alır.
Kaynaklar
- Bitcoin: A Peer-to-Peer Electronic Cash System · Satoshi Nakamoto, 2008
- Blok zinciri referansı: başlıklar, Merkle ağaçları, hedef · Bitcoin geliştirici dokümantasyonu
- Merkle ağacı · Bitcoin Wiki
Bu sayfadaki canlı veriler CloudMineCrypto API'sinden ve halka açık zincir verilerinden alınır, düzenli olarak yenilenir ve kullanıldıkları yerde etiketlenir. Yalnızca eğitim amaçlıdır, finansal tavsiye değildir.