Mimblewimble” kripto para topluluğunun son birkaç yıldır dilinden düşmeyen kavramlardan bir tanesi. Eğer Harry Potter hayranıysanız muhtemelen bu kelimeyi daha önce duymuşsunuzdur. Deathly Hallows serisinden olan bu büyü kişinin dilini bağlayarak büyü yapabilmek için gerekli kelimeleri anlaşılır şekilde söylemesini önleyen bir dil bağlama laneti.
Mimblewimble aynı zamanda piyasada yeni trend olan bir protokole adını verdiği için kripto para topluluğunda da oldukça popüler. Mimblewimble protokolü güçlü kriptografik ilkellere dayanır. Bu nedenle, iyi ölçeklenebilirlik, gizlilik ve değiştirilebilirliğe sahip bir Blockchain ağı için mükemmel bir çerçeve sağlar.
Bugün bu makalemizde bu yenilikçi protokole derinelemesine ele alacağız. Ne olduğu, nasıl çalıştığı, ana uygulamaları ve hali hazırda sektörde zaten bu yeni teknolojiyi projelerinde kullanan sektördeki en iyi oyuncular hakkındaki detayları tartışacağız.
Mimblewimble Nedir?
On yıllardır test edilen Mimblewimble, diğer kriptografi türlerinden daha küçük anahtarlar gerektiren eliptik eğri kriptografisi kullanıyor. Mimblewimble protokolünü kullanan Blokchain ağlarında adres yoktur ve ağın veri depolaması da oldukça verimlidir.
Mimblewimble’ın Bitcoin ağının veri depolama gereksinimlerinin sadece yaklaşık %10’una ihtiyaç duyar. Bu sayede Mimblewimble protokolüyle birlikte Blockchain verileri saklamak için oldukça ölçeklenebilir, önemli ölçüde daha hızlı ve daha az merkezi hale gelir. Ayrıca protokolün anonim doğası gereği kullanıcıların özel işlemler gerçekleştirilmesine olanak sağlar. (bu konu hakkında ileriki kısımlarda daha fazla bilgi verilecektir.)
Mimblewimble’ın Doğuşu
Harry Potter fanları için bir başka sevindirici haberimiz daha var. Mimblewimble Whitepaper’ı ilk olarak 2016 yılının Temmuz ayında Bitcoin araştırma kanalında, Harry Potter serisinin ortaya çıkma nedeni olan kurgusal karakter Voldemort’un Fransızca ismi olan “Tom Elvis Judisor” kullanıcı adı arkasında gizlenen anonim bir yazar tarafından yayınlandı.
Whitepaper’ın yayınlanmasının üzerinden çok kısa bir süre geçmişti ki 2016 yılının sonlarında bu kez de Harry Potter evreninden görünmezlik pelerini gerçek sahibi “Ignotus Peverell” kullanıcı adı arkasında gizlenen anonim bir kullanıcı tarafından Mimblewimble protokolü kullanılarak Github’ta bir proje başlatıldı. Son dönemde de adından çokça bahsettiren bu proje ana ağını (mainnet) 15 Ocak 2019’da yayınlayan Grin. Mimblewimble protokolü kullanılarak geliştirilmiş bir başka popüler proje ise Baem. Bu makalenin ilerleyen bölümlerinde Grin ve Baem projelerini ele alacağız.
Mimblewimble Protokolü Nasıl Çalışır?
Mimblewimble protokolünü anlayabilmek için, önce Bitcoin’in UTXO (harcanmamış işlem çıktısı) modelini açıklamamız gerekecek. Ali ve Mehmet’in fiat para birimlerini kullanarak aralarında bir ödeme işlemi gerçekleştirmek istediğini varsayalım. Eğer Ali, Mehmet’e 1 dolar gönderirse bu işlem şu şekilde görünecektir.
Ali: -1 dolar
Mehmet: +1 dolar
Bitcoin ağında ise işlemler tam olarak bu şekilde ilerlemiyor. Bitcoin’le gerçekleştirilen transfer işlemleri gönderenden alıcıya giden çeşitli giriş ve çıkışlar aracılığıyla yapılıyor. Daha önce yaptığınız Bitcoin transfer işlemlerinizi kontrol ettiyseniz, muhtemelen Blockchain kaşifinde (Blockchain Explorer) hem girdileri hem de çıktıları farketmişsinizdir.
Bitcoin bu girdi ve çıktılar aracılığıyla çalışır. Ali Mehmet’e 1 BTC göndermek istiyorsa ağ, Ali’nin cüzdanından sadece 1 BTC eksiltmek yerine, Ali’nin Mehmet’e gönderdiği parayı dengelemek için Ali’ye gönderilen önceki BTC işlemlerinden çok sayıda girdi topluyor. Bu nedenle Bitcoin’le gerçekleştirilen transferler şu şekilde görünür:
Ali: – (0.1+0.25+0.35+0.3) BTC, burada girdiler A+B+C+D şeklinde ifade edilir.
Bob: + 1 BTC
Yukarıdaki örnekte Ali’nin 1 Bitcoin’inin 4 farklı girdiden oluştuğu görülüyor. Ancak Bitcoin ağında bazen bir işlemin yüzlerce girdisinin olduğu durumlar da vardır. Bu nedenle, girdilerin toplamı işlem tutarından büyükse, aktarım ek bir çıktı oluşturur. Bu şekilde, ilk çıktı alıcıya gidecek kesin miktarı içerecek ve geri kalanı gönderene geri gönderilecektir. Her işlemin cüzdan yazılımı tarafından ayrı ayrı imzalanması gerektiğinden, Bitcoin ağının tonlarca veriyi işlemesi gerekir. Bu nedenle süreç oldukça verimsizdir.
Gizli İşlemler (Confidential Transactions)
Mimblewimble protokolü işte tam da bu noktada devreye giriyor. Daha önce de belirttiğimiz üzere, Mimblewimble protokolü giriş ve çıkışları ortadan kaldırarak Blockchain’i çok daha verimli bir ağa dönüştürür. Mimblewimble protokolünde UTXO (harcanmamış işlem çıktısı) Gizli İşlemler (Confidential Transactions) ile değiştirilir ve tüm giriş ve çıkışlar için tek bir çoklu imza kullanılır. Böylelikle Ali, Mehmet’e kripto para göndermek istediğinde, hem Ali hem de Mehmet, işlemi doğrulamak için kullanılan çoklu imzalı bir anahtar oluşturur.
Gizli İşlemler, Pedersen Bağlılık şemasını (Pedersen Commitment scheme) kullanır; hiçbir şekilde adreslere ihtiyaç duyulmaz. Bunun yerine taraflar kör edici faktör (blinding factor) paylaşmaktadırlar. Kör edici faktör, işlemin girdi ve çıktılarını her iki tarafın ortak ve özel anahtarlarıyla birlikte şifreler. Bu kör edici faktör, işlem yapan iki taraf arasında bir sır olarak paylaşılmaktadır. Kripto paralarla işlem yaparken kullandığımız adreslerin yerine kullanılan kör edici faktör sayesinde işlem detaylarını sadece işleme dahil olan taraflar bilir. Böylece ağın gizliliği en yüksek seviyede tutumun olur.
Pedersen Bağlılık şeması aşağıdaki gibi çalışır. Full node’lar hem girdilerden sonra hem de çıktılardan sonra cüzdan bakiyesini günceller. Bu sayede cüzdanlardaki bakiyelerin yoktan var edilmediğini kanıtlayan bir dengeleme denklemi oluşur. Ayrıca tüm süreç boyunca node’lar işlemin gerçek tutarını asla bilemez.
Mimblewimble protokolünde gerekli olan tek doğrulama, yeni paraların yoktan var edilip edilmediğini ve işleme katılan tarafların anahtarlarının sahibi olup olmadığını kontrol etmektir. Her iki doğrulama işlemi de işlem değerini gizli tutmak için kör edici faktörü kullanır. Süreci kısaca anlatmak gerekirse işlemler şu şekilde gerçekleşir:
5+5=10 — 5+5-10=0
Yukarıdaki basit örnek, yeni bakiyenin oluşturulmadığını ve net bakiyenin sıfır olduğunu gösteriyor.
5(10)+5(10)=10(10)
Bu hesaplamaya tüm değişkenlerle çarpılan gizli bir sayı (10) kör edici faktör olarak eklenir. Bu, orijinal değerleri gizlemek için kullanılır.
50+50=100
Bu denklemde, hem ikinci denklemde 10 olan kör edici faktör, gerçek değerler gizli kalırken ağdaki katılımcıların işlemde yeni paraların oluşturulup oluşturulmadığını doğrulamasına izin verir.
Mimblewimble’da, kör edici faktör genel ve özel anahtarların bir kombinasyonudur. Bu sayede, hiçbir yeni para oluşturulmadığını kanıtlamanın yanı sıra, taraflar da anahtarlarının gerçek sahibi olduklarını kanıtlayabilirler.
İşlemin gerçekleşmesiyle birlikte, işlemin taraflarına çoklu imzalı bir bağlantı gönderilir. Bu çoklu imzalı bağlantı, birleştirilen işlemlerin tüm girdi ve çıktılarından oluşur.
Cut-Through
Mimblewimble protokolünün ölçeklenebilirlik ile ilgili en önemli özelliğinin Cut-Through olduğu söylenebilir. Tek bir blok yüzlerce işlemin yanı sıra blok zincirinde saklanması gereken bol miktarda bilgiden oluşur. Bununla birlikte, bu bloklar Mimblewimble’ın Cut Through özelliği ile sıkıştırılabilir, çünkü bilginin büyük bir kısmı Blockchain ağının güvenliği riske girmeden bloklardan çıkarılabilir.
İşte bu duruma basit bir örnek:
- Ali, Mehmet’e 1 Bitcoin gö
- Mehmet, Ahmet’e 1 BTC gö
Bu işlemin gerçekleştirildiği tipik bir blokta normalde iki farklı UTXO bulunur. İlk UTXO, 1 Bitcoin’in Ali’ye nasıl geldiğini gösteren girdiyi barındıracak, böylece Bitcoin’in şimdi Mehmete’e ait olduğu doğrulanabilecek. İlk UTXO’nun çıktısı Bitcoin’in şimdi Ali’ye değil de Mehmet’e ait olduğunu doğrulayan işlemin sonucudur. İkinci UTXO ise ise ilk UTXO’nun çıktısından ve Mehmet’in Ahmet’e gönderdiği 1 Bitcoin’in çıktısından oluşur.
Bu Mimblewimble protokolünün ilk işlemin çıktısını ve ikinci işlemin girdisini ortadan kaldırdığı anlamına geliyor. Yani, sadece bir girdimiz ve bir çıktımız olacak. Bu, Ali’nin bu 1 Bitcoin’i nasıl aldığını ve her ikisinin de 1 BTC’ye sahip olması yerine neden sadece Mehmet’in 1 BTC’ye sahip olduğunu doğrular.
Bu yöntem Blockchain ağının boyutunu sıkıştırarak Mimblewimble’ı veri depolama konusunda çok daha hafif hale getirir.
Grin ve Beam vs. Zcash ve Monero
16 Ocak 2019 itibariyle, iki ASIC dirençli madeni para Mimblewimble protokolünü uygulamaya koydu. Grin 2016 yılının sonlarından bu yana geliştirilmektedir. Geliştiriciler ana ağı (mainnet) 15 Ocak 2019’da başlattı. Diğer yandan, Beam’in zaten hali hazırda çalışan ana ağı vardı.
Her iki kripto para Mimblewimble protokolünü kullansa da aralarında bazı büyük farklılıklar var. Beam’in kurumsal bir yapıya sahip; şirket risk sermayesi fonları topladı ve Grin’e karşı geliştirmeler konusunda verdiği zaman yarışını kazanmalarını sağlayan bir geliştirme ekibi kiraladı. Beam Vakfı, ağın gelişimini desteklemek için blok ödüllerinin bir kısmını kendine ayırır. Beam, 2019 yılında mevcut kurumsal yapısından büyük bir dönüşüme girerek gerçek bir kar amacı gütmeyen vakfa dönüştü. Şirket, kripto para birimi Beam’in iş amaçlı kullanım örneklerini oluşturmak için harekete geçti. Diğer yandan Grin, topluluk güdümlü merkezsizliği güçlendiren cyberpunk ideolojisine benzer bir yönetişime sahiptir. Ekip ICO düzenlemedi ve erken mandencilik (pre-mine) yaparak Grin’lerin bir kısmını kazmadı. Ayrıca topluluk tamamen gönüllülük esasına bağlı olarak çalışıyor.
İki kripto para kullanım amaçları ve kullanıcı kitleleri konularında da ayırışıyor. Beam, kripto para biriminin kullanım durumları konusunda daha profesyonel bir duruşa sahip; öyle ki ekip MacOS, Windows ve Linux dahil olmak üzere farklı işletim sistemleri için kullanıcı dostu olmayı amaçlayan basit bir cüzdan arayüzü geliştirdi. Bu nedenle, sıradan bir kripto para meraklısı Beam Blockchain’ine kolaylıkla erişebilir. Öte yandan, Grin, Baem kadar kullanıcı dostu değil, çünkü sadece daha üst düzey bilgi sahibi kullanıcılar tarafından erişilebilen komut satırı destekli bir cüzdanı sunuyor.
Grin, Rust programlama dilinde yazılmışken Beam ise C ++ ile kodlanmıştır. Ancak hangi programlama dilinde kodlandıkları önemli bir etken değil. Ancak bu paraların ekonomik modelleri için aynı şey söylenemez. Beam’in hedefi anonim bir değer deposu olarak kullanılmak, Grin geliştiricileri ise Grin’in bir değer deposu yerine “para birimi” olarak kullanılması gerektiğini savunuyor. Grin topluluğu erken benimseyenleri “haksız yere ödüllendirmek” konusuna pek sıcak bakmıyor, bunun yerine Grin’in benimsenmesini artırmak istiyorlar.
Madencilik ile ilgili olarak, her iki kripto para birimi Equihash algoritmasının değiştirilmiş versiyonlarını kullanıyor. Her iki kripto para birimi ASIC madencilik cihazlarına karşı dayanıklı olsa da, hedefleri tamamen farklıdır. Grin geliştiricileri Equihash (Cuckoo Cycle) versiyonunu iki yıl içinde tamamen uygulamaya koymak için çalışırken, Beam’in ise GPU madencilerine liderlik etmek için 12 ay içerisinde ASIC dirençli bir madencilik algoritmasına geçmek istiyor.
Şimdi bu iki kripto para biriminin piyasanın en popüler üç gizlilik odaklı para birimi Zcash, Monero ve Dash’le nasıl karşılaştırıldıklarına bir bakalım. Eleştirmenlere göre, Zcash’in halka imzaları ve zk-SNARK’lar hesaplama açısından oldukça yoğun. Bu nedenle Zcash Beam ve Grin’e kıyasla yavaş ve pahalı işlem ücretlerine sahip.
Monero, işlem gizliliğini sağlamak için “mixins” sınıfını kullanıyor. Bununla birlikte, bir analiste göre, tüm girdilerin yaklaşık %64’ü mixin içermiyor, bu nedenle bu işlemler anonim değildir. Diğer araştırmacılar, Monero işlemlerinin yaklaşık %80’inin izlenebileceğini savunuyor.
Ve son olarak Dash, bu saydığımız kripto paralar arasında en merkezi olanı. Bu özelliği Dash’i diğerlerine nispeten daha az gizlilik odaklı olmasına yol açıyor. Ölçeklenebilirlik açısından çok önemli avantajları olmasına rağmen, tamamen anonim kalmak isteyen kullanıcılar, ağın giderek daha merkezi bir hal alması nedeniyle Dash’i kullanmaktan vazgeçiyorlar.
Sonuç
Monero ve Zcash, kripto para topluluğunda yaygın olarak kullanılan en popüler gizlilik odaklı kripto paralar olsalar da, Mimblewimbe gibi yenilikçi teknolojilerle desteklenebilirler.
Kripto para geliştiricileri (Bitcoin gibi anonimlik odaklı olmayan kripto paraların geliştiricileri de dahil) Grin ve Beam’in gelişimini iyice analiz edip takip ederlerse, kripto para birimleri yeniden daha özel ve anonim hale gelebilir.