Blockchain'de Merkle Ağacı Nedir ve Nasıl Çalışır?

Anahtar teslimatlar:

  • The Merkle ağacı 3 tür düğüme sahip bir ikili karma ağaç türüdür: yaprak düğümler, yaprak olmayan düğümler ve kök düğümler.
  • Merkle ağacı, herhangi bir merkezi olmayan defterde işlem bütünlüğünün doğrulanması ve sürdürülmesi için kullanışlıdır.
  • Merkle ağacı Ethereum'un yanı sıra Bitcoin'de de görülüyor.

Giriş

Kripto paralar artık bilinmeyen bir konu değil ve blockchain, kökenlerinin ardındaki teknoloji. Herhangi bir kripto meraklısı için blockchain yapılarını ve bunların nasıl işlediğini anlamak, kriptoların gerçek doğasını anlamanın ilk adımıdır.

Farklı blockchain yapılarını anlamak Merkle ağaçlarının devreye girdiği yerdir. 1980 yılında Stanford Üniversitesi'nden Ralph Merkle tarafından bir konsept olarak geliştirilen Merkle ağacı eşler arası (P2P) ağlarda bilgi işlem gücü ve bellek alanı gereksinimlerini karşılamak için yaygın olarak kullanılır. Merkle ağaçlarının blockchain teknolojisini büyük bir başarıya dönüştürdüğünü söylemek abartı olmaz. O halde hadi Merkle ağacının arkasındaki anlama ve nasıl çalıştığına dalalım.

https://www.youtube.com/watch?v=YIc6MNfv5iQ

Merkle ağacına genel bakış

Basitçe söylemek gerekirse Merkle ağacı, verilerin amaca yönelik olarak yapılandırılma şeklini temsil eder. Bir blok zincirindeki geniş miktardaki bilginin hızlı ve etkili bir şekilde doğrulanmasına olanak tanır. Daha önce de belirtildiği gibi, Ralph Merkle farkında olmadan bunu “Sertifikalı Dijital İmza” başlıklı makalesinde bir konsept olarak yarattı. Ancak kimse bunun gelecekte merkezi olmayan bir defterin önemli bir bileşeni haline gelmesini beklemiyordu.

Merkle ağacı, başlangıcından bu yana kriptografi dünyasını geliştirdi. Ancak Bitcoin'in gizemli yaratıcısının bunu BTC'nin temel kodunda kullanmasının ardından kripto para birimleri için hayati önem kazandı. Bundan sonra Ethereum ve diğer kripto para birimleri de Merkle ağaçlarını benimsedi.

Bitcoin ağında Merkle ağaçları, verilerin doğrulanması için büyük boyutlu bilgi dosyası yerine karmaları kullanan etkili bir bileşendir. Merkle ağacı, düğümler ve düzeyleri arasındaki ilişkileri tanımlamak için benzersiz tanımlayıcı terminoloji kullanır.

Blockchain içindeki her bir blok bir dizi işlem içerir. Tüm bu işlemleri saklamak ve hangi belirli işlemlerin hangi bloğa ait olduğunu bulmak sinir bozucu derecede pahalı işler olabilir. Ek olarak, bir blockchain'in verimliliğini olumsuz yönde etkileyebilir. Ancak Merkle ağaçlarıyla tüm işlemler verimli bir şekilde düzenlenir, bu da doğrulama için daha az veri kullanılmasına ve CPU işleminin azaltılmasına neden olur.

Merkle ağacının blockchain'de nasıl çalıştığını anlamak

Bu kavramı açıklığa kavuşturmak için basit bir örnek: 

merkeltree

Yukarıda gösterilene benzer 4 işleme sahip bir veri bloğu düşünün: L1, L2, L3 ve L4. Bu işlemleri saklamak için, her işlemin karmasını hesaplayarak Merkle ağacı konseptini uygulayabiliriz. Sonrasında hesaplama, Hash L1, Hash L2, Hash L3 ve Hash L4'ü alıyoruz.

Her işlemin bu karmaları, Merkle ağacının genellikle yaprak düğümü adı verilen bir düğümünde saklanır. Ancak yaprak düğümleri eşleştirerek yaprak olmayan düğümler oluşturmamız gerektiğinden çalışmalarımız devam ediyor. Hesaplamanın ardından, L0, L1, L1 ve L2 karmalarının ana düğümleri veya yaprak olmayan düğümleri olarak adlandırılan Hash 3 ve Hash 4'i elde ederiz.

Son olarak Hash 1 ve Hash 2'nin hash'i eşleştirilerek hesaplanır ve Merkle kökü olan kök düğüme ulaşırız. Bu örnek sayesinde Merkle ağaçlarının, yapı içinde tekil bir karma kalana kadar alt düğümleri tekrar tekrar karma hale getirerek çalıştığını anlıyoruz.

Bu şekilde Merkle ağacı, ağacın yalnızca kökünü kontrol ederek bir işlemin ağacı etkileyip etkilemediğini size tam olarak söyler. Merkle kökü blok başlığında saklanır, bu da onu kurcalamaya karşı dayanıklı hale getirir ve merkezi olmayan bir defterde güveni ve bütünlüğü artırır. Merkle ağaçlarının tek yönlü bir karma işlevi kullandığını ve bu karma işleminin, verilerin kanıtını verilerden ayırana kadar devam edeceğini belirtmek önemlidir.

Blockchain için Merkle ağaçlarının gerekliliği

Artık Merkle ağacının ne olduğunu ve nasıl çalıştığını tartıştığımıza göre geriye kalan tek şey bunun blockchain için neden önemli olduğunu anlamaktır. Merkle ağacının birçok avantajı onu blockchain teknolojisi ve hatta kripto platformları için bir zorunluluk haline getiriyor. Bu faydalardan bazıları şunlardır:

Verilerin aktarılması, hesaplanması ve aktarılması söz konusu olduğunda gecikmelere izin verilmez. Bu nedenle birçok blockchain, veri aktarımı sırasında ağı her türlü gecikmeden uzak tutmak için Merkle ağacını kullanır. Merkle ağaçları, verilerin bütünlüğünü ve geçerliliğini kanıtlamak için gereken bellek miktarını azaltarak blockchain'in önemli bir parçası haline gelir.

Dağıtılmış bir P2P olan Bitcoin blok zincirinde, P2P ağına bağlı her bilgisayarda aynı veriler mevcut olduğundan tutarsızlıklar ve hatta verilerde değişiklik yapılabilir. Bu durumda Merkle ağacı, madencilerin işlemlerdeki her türlü tutarsızlığı veya kurcalamayı tespit etmesini kolaylaştırır.

Bu konseptin kullanılmaması durumunda tüm verilerin ağın her yerine aktarılması gerekecek, bu da ağın yavaşlamasına, verimliliğin azalmasına ve gereksiz harcamalara neden olacaktır. Pratik hesaplama gücü ve bant genişliği ile hızlı veri doğrulamaya olanak tanıyan Merkle ağaçlarının yardımıyla böyle bir senaryonun önüne geçilebilir.

Nihai düşünceler

Merkle ağaçları karmaşık bir kavram gibi görünse de blockchain teknolojisinin ve kripto para birimlerinin çok önemli bir bileşenidir. Bu kavram olmasaydı Bitcoin, Ethereum ve madencilikte kullanılan güvenilmez bir sistem olmazdı.

SSS:

S1. Merkle ağaçları neyi başarmak için tasarlandı?
Merkle ağacı, bilgisayarların daha hızlı çalışmasını sağlamak amacıyla verileri doğrulamaya yönelik bir süreç olarak tasarlandı.
Q2. Merkle ağacı ile Ethereum arasındaki bağlantı nedir?
Merkle ağacı, yalnızca Ethereum'un değil, Bitcoin'in ve kripto madenciliği sürecinin de arkasında yer alan bir tür blockchain yapısıdır. Ancak Ethereum, genellikle Merkle Patricia ağacı olarak bilinen Merkle ağacının değiştirilmiş bir versiyonunu kullanır.
S3. Merkle ağacı nasıl uygulanır
Merkle ağaçlarını uygulamak için, yaprak olmayan her düğümün iki alt düğümün karması olduğu ikili ağaçlarla başlanılması gerekir. Bu yapraklar ya verileri içerebilir ya da verilerin karması.
S4. Merkle ağacının bazı faydaları nelerdir?
Merkle ağacı, blockchain içerisinde ölçeklenebilirliği artıran hafif bir yapı olduğundan gereksiz verilerden kurtularak verimliliği artırabilir. Hem madenciler hem de kullanıcılar Merkle ağacından yararlanabilir; çünkü bu ağaç, blokların ayrı ayrı bölümlerini doğrular, karmaları kullanarak işlemleri kontrol eder ve ayrıca işlemleri alırken karmaları hesaplar.
 

 

Kaynak: https://coingape.com/education/explained-what-is-a-merkle-tree-in-blockchain-and-how-does-it-work/