Merkle Tree ve Proof of Reserve Nedir?


0

Borsalardan piyasaya kötü bir haber yayılacak diye adeta yüreğimiz ağzımızda. Borsalar neredeyse Twitter’da bir hesabın asılsız paylaşım yapmasıyla bile çöküşe kadar gidebilecek kadar hassas konuma geldi. Bunu yenmek için borsalar da bu kaotik günlerde Proof of Reserve yani Varlık Kanıtlar’ını açıklayarak kullanıcılarına güven vermek istiyor.

Proof of Reserve Nedir?

Borsalarda tutulan dijital varlıkların, gerçek likidite değeri olan varlıklarla desteklenmesi fikri olan Proof of Reserve kripto para saklama şirketlerinin ya da kripto para borsalarının, sahip olduğunu iddia ettiği rezervlerini halka açık onaya, bir diğer deyişle denetime sunmasıdır. Bu fikir gereği şirketler; kullanıcı bakiyelerini, yükümlülüklerinin bir kanıtı olarak likiditeye çevirebileceği finansal bir varlıkla eşleştirmelidir. Yani içeride milyarlarca dolar hacmim var diyen bir borsa ama cebimde birkaç milyon dolarlık kripto para var diyemez.

Peki Bu Nasıl Mümkün?

Yatırılan ve işlem yapılan varlıkların borsada tutulduğunu ispat etmek isteyen borsalar bunları Merkle Tree yöntemini kullanarak yapıyor. Son günlerde sıkça duyduğumuz ama ne olduğunu tam olarak bilmediğimiz Merkle Tree – Merkle Ağacı yöntemini sizlere anlatmak istiyoruz.

Merkle Ağacı Nedir?

Merkle ağacı yapısı, bir set içindeki verinin bütünlüğünü doğrulamak için kullanılır. Merkle ağaçları özellikle, katılımcıların bilgileri paylaşmasını ve bağımsız olarak doğrulamasını gerektiren eşler arası ağlar bağlamında oldukça ilgi çekici bir kullanıma alanına sahiptir. 1979’da literatüre giren Merkle Tree, Satoshi Nakamoto’nun Bitcoin veri modeli tercihi ile birlikte altın çağını yaşamış ve hala birçok önemli problemi çözmek için kullanılmaktadır. Merkle ağacı kavramı, 80’lerin başında açık anahtar kriptografisi üzerine çalışmalarıyla tanınan bilgisayar mühendisi Ralph Merkle tarafından ortaya atılmıştır.

Merkle Ağacı Nasıl Çalışır?

Büyük bir dosya indirmek istediğinizi düşünün. Genellikle bir açık kaynak yazılımda, indirdiğiniz dosyanın hash’inin geliştiricilerin herkese açık paylaştığı hash’le örtüşüp örtüşmediğini kontrol etmek gerekir. Eğer örtüşüyorsa bilgisayarınızdaki dosyanın orijinal dosya ile birebir aynı olduğunu anlayabilirsiniz. Burada araya girelim ve önce “Hash Nedir” kısaca bahsedelim.

Hash Nedir – Hash Etmek Nedir?

Hash herhangi bir metnin şifrelenerek okunamaz veya önceden tahmin edilemez hale getirilmesi algoritması ve işlemidir. Hash sistemi daima bir algoritmaya bağlı olarak çalışır ve günümüzde Hash’i kullanmak için MD2, MD5, SHA ve SHA-1 benzeri algoritmalardan faydalanılır. 

Hash nedir kısaca bahsettik. Şimdi yazımıza devam edelim.

İndirdiğiniz dosyanızda hash’ler örtüşmüyorsa bir sorun var demektir. Ya yazılım altında gizlenen zararlı bir dosya indirmişizdir ya da dosya doğru şekilde inmemiş dolayısıyla düzgün çalışmayacaktır. İşte indirdiğiniz dosyanın orijinal olup olmadığını Merkle Ağacı yöntemiyle öğrenebiliyoruz. Dosyanızı birçok parçaya böldükten sonra parça parça indirip ardından toplayabilmemiz için kaynak bize Merkle kökü olarak bilinen bir hash sunar. Bu tek hash, dosyanızı oluşturan tüm parçaların bir temsilidir. Merkle kökü veriyi doğrulamayı çok daha kolay hale getirir. Kolay bir yoldan hangi parçanın hatalı olduğunu kontrol edebilir ve tekrar indirerek hatayı giderebiliriz.

Basitçe açıklamak için sekiz parçaya bölünmüş 8GB’lık bir dosya örneğini ele alalım. Parçalara A‘dan H‘ye kadar isim verelim. Daha sonra her parçayı bir hash fonksiyonundan geçirelim ve sekiz farklı hash elde edelim.

Artık elimizde biraz daha anlamlı bir veri var. Tüm parçaların hash’leri elimizde, yani bunlardan biri hatalıysa bile kaynakla karşılaştırarak anlayabiliriz. Ama bu son derece verimsiz olacaktır. Eğer dosya binlerce parçadan oluşuyorsa, bunların her birini hash etmek ve sonuçları teker teker kontrol etmek oldukça zaman alacaktır.

Bunun yerine hash’leri ikili olarak alır ve bu ikilileri birlikte hash ederiz. Yani hA + hBhC + hDhE + hFve hG + hH‘yi hash ederiz. Elimize dört hash geçer. Daha sonra bunları bir tur daha hash ederek iki hash elde ederiz. En nihayetinde, son ikisini de hash ederek ana hash’imiz olan Merkle köküne ulaşırız.

Artık elimizde, indirdiğimiz dosyayı temsil eden Merkle kökü bulunmaktadır. Bu kök hash’i kaynak tarafından sunulan hash ile karşılaştırabiliriz. Eğer eşleşirlerse sorun yok demektir. Ama hash’ler farklıysa verinin üzerinde değişiklik yapıldığından emin olabiliriz. Diğer bir deyişle, parçalardan bir ya da birkaçı farklı bir hash yaratmıştır. Veride yapılacak en küçük bir değişiklik bile tamamen farklı bir Merkle kökünün yaratılmasına neden olur.

Sonuç

Özetle, bir Merkle ağacı verinin birçok parçaya bölünmesi ve daha sonra bir Merkle kökü oluşturmak için bu parçaların tekrar tekrar hash edilmesiyle yaratılır. Böylece veri parçalarında bir hata olup olmadığı kontrol edilebilir. Merkle Tree yöntemi olukça yaygın kullanılmaktadır. Az önce bahsettiğimiz gibi Bitcoin SHA-256 algoritmasını kullanarak verileri hash’ler. Bu algoritmanın oluşturduğu kriptografik şifreleme;  kuantum ölçekli bilgisayarlar tarafından bile kırılamaz çünkü 64 karakterden oluşan bu şifre tekrar edemez.

Borsalar Proof of Reserve’lerini sunmaya devam ediyor. Ancak bir kere güven sarsıldı ise ve halen piyasada korku hakimse bu yeterli gelmez. Borsalar da kullanıcılara bağlı olduğu için ve onları kaybetmemek için PoR’leri açıklıyor.

Bu Yazıya Tepkiniz Ne Oldu?
  • 0
    alk_l_yorum
    Alkışlıyorum
  • 0
    be_endim
    Beğendim
  • 0
    d_nceliyim
    Düşünceliyim
  • 0
    be_enmedim
    Beğenmedim

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bültenimize Katılın

Hemen ücretsiz üye olun ve yeni güncellemelerden haberdar olan ilk kişi olun.