Layer 2 Nedir?
Layer 2, Türkçe terminoloji olarak ikinci katman demektir. İkinci katman bir ölçekleme çözümüdür. Layer 2’ler işlemlerin zincir dışında gerçekleştirilip bu işlemlerin verilerini ve gerekiyorsa kanıtını ana ağa yayınlama mantığına dayanır. Günümüzde ikinci katman, başta Ethereum olmak üzere çeşitli ağlarda geliştiriliyor.
Neden İkinci Katmana İhtiyaç Var?
Ethereum ve Bitcoin’in en büyük problemi ölçeklenebilirliktir. Ölçeklenebilirlik, bir ağın artan trafiği ne kadar hızlı yönetebildiğini ifade eder. Blokzincirlerde işlem yapmak istediğimizde yaptığımız işlemlerin verileri bloklarda yer alır. Blokların boyutu ve bulunma süresi her blokzincirde değişkenlik gösterir. Ethereum ve Bitcoinde blokların boyutu sabit ve tahmini bulunma süresi bellidir. Yani bir blokta yer alabilecek işlem sayısının bir sınırı vardır. Bu durum ağların saniye başına işlem sayısını kısıtlamaktadır. Bitcoin’de saniyede 7 işlem yapılabilirken Ethereum’da bu sayı saniyede 10-25 işlem arasında değişmektedir.
Full node (Tam düğüm), zincirin başından beri biriken tüm verileri tutan cihazlardır. Blokzincirde yeni bir blok bulunduğunda full nodelar yeni bulunan bloğun verilerini indirir ve diğer nodelar ile senkronize olurlar. Bazı projeler saniye başına işlem sayısını ve işlem onay hızını arttırmak için blokların boyutunu arttırmayı ya da daha hızlı blok üretmeyi deneyebilir. Bu çözüm hem cihazların senkronize olmasını zorlaştıracaktır hem de full node kurmak için indirilmesi gereken veri miktarının katlanarak artmasına sebep olacaktır. Veri miktarının katlanarak artması full node kurmayı zorlaştırır. Aynı zamanda nodeların senkronize olamaması ağdan düşmelerine neden olur. Full node kurabilmenin giderek zorlaşması ise merkeziyetsizliğe zarar verir. Yani ölçeklenebilirlik artarken merkeziyetsizlik ve güvenlik azalır. Bu duruma “Blockchain Trilemma” denir.
Mevcut durumda Ethereum ve Bitcoin ağlarının saniye başına işlem sayısı düşük, işlem ücretleri yüksek ve ağ onayları uzun sürmektedir. Yani kullanıcı dostu değildir. Ethereum ve Bitcoin merkeziyetsizlik ve güvenliğe zarar vermeden ölçeklenebilmek için ikinci katman çözümlere yönelmiştir.
Ethereum ve Layer 2
Ethereum’un ikinci katman çözümleri Ethereum’un ölçeklenebilirliğini arttırmak amacıyla ortaya çıkmıştır. Bu çözümleri Plasma (Plazma), State Channel (Durum Kanalları) ve Rolluplar (Toplamalar) olarak sıralayabiliriz. Plasma çözümünün temelleri ilk olarak 2014 yılında Vitalik Buterin tarafından gölge zincirler fikriyle ortaya atılmıştır. İlk örnekleri ise Vitalik Buterin ve Joseph Poon tarafından 2017 yılında geliştirilmiştir. Daha sonradan Plasma’nın bazı durumlarda yetersiz kaldığı görülmüş, ortaya State Channel ve Rollup çözümleri çıkmıştır.
Plasma
Plasma, Ethereum ana ağının daha küçük versiyonları olan ve çocuk zincir tabir edilen zincirlerden oluşur. Bu zincirlerden ilk başta gölge zincirler olarak bahsedilmiş, daha sonrasında bunlar çocuk zincir ismini almıştır.
Ana ağı en üstte düşündüğümüzde ana ağın altına sonsuz sayıda çocuk zincir eklenebilir. Hatta çocuk zincirlerin altına da istediğimiz kadar çocuk zincir ekleyebiliriz. Çocuk zincirler, kendi zincirlerinde gerçekleştirdikleri işlemlerin verilerini bir üst zincire iletir ve nihayetinde veriler Ethereum ana ağına ulaşır. İletilen verilerin tamamı sistemin yapısı gereği doğru kabul edilir. Her veri grubu bir üst zincire iletildiğinde 7 günlük bir karşı çıkma süresi başlar. Bu süre içerisinde verilerin yanlış ya da hatalı olduğunu düşünen biri Fraud Proof (Dolandırıcılık Kanıtı) yayınlayarak verilere karşı çıkabilir. Bu sebepten dolayı Plasma çözümlerde çekimlerde 7 günlük bekleme süresi vardır.
Daha önce Vitalik Buterin’in de bahsettiği gibi Plasma çözümünün kullandığı teknoloji NFT'lerin eşsiz yapısına çok uygundur. Yüksek saniye başına işlem sayısı ve düşük işlem ücreti sunar. Tabi her çözümde olduğu gibi bazı dezavantajları da vardır.
Plasma ilk çıktığında Ethereum ölçeklenme problemini çözmeye yardımcı olacağı düşünülmüş, daha sonradan EVM çalıştıramaması, sadece basit işlemlere izin vermesi, toplu çıkış problemi, uzun çekim süreleri vb sebeplerden dolayı yerini daha güncel çözümlere bırakmıştır. Hâlâ Plasma çözümünü kullanan projelerden biri Gluon’dur.
State Channel
State Channel, akıllı sözleşmeler ve katılım fonu kullanılarak zincir dışında sayısız işlemin yapılabildiği, bu sayısız işlemin ana ağda sadece iki zincir üstü işlem ücretine mal olduğu çözümlerdir.
Öncelikle katılımcılar ana ağda fonlarını çoklu imzalı bir akıllı sözleşmeye kitlerler. Bu ilk durumun belirtilmesi için kullanılır. Daha sonrasında katılımcılar zincir dışında ucuz ve hızlı sayısız işlem gerçekleştirebilir. Oluşan son durum ve bakiyeler ana ağa akıllı sözleşmeler aracılığıyla iletilir. Katılımcıların hepsinin son durumu onaylamasıyla State Channel kapatılır.
Saniye başına yüksek işlem sayısı ve düşük işlem ücretlerine rağmen bu çözümün de bazı dezavantajları vardır. Akıllı sözleşme oluşturmanın zaman ve fon maliyeti, EVM çalıştıramaması ve ağı izleme sorumluluğu bunlardan bazılarıdır. Katılımcılar da önceden belirlenmiş olmalıdır yani açık katılımlı bir çözüm değildir. Açık katılım olmaması oluşturulan kanala dışarıdan üçüncü bir tarafın izinsiz bir şekilde katılamayacağını ifade eder.
Ancak State Channel ödemeler için çok uygundur. Özellikle belirli düzende ödeme gerektiren abonelikler için kullanılması çok mantıklıdır. EVM çalıştıramaması ve açık katılım olmaması genel bir çözüm olmasına engeldir. Bu sebeple farklı çözüm arayışları ortaya çıkmış, Rollupların daha genel bir çözüm sunduğu anlaşılmıştır. State Channel kullanan projelerden bazıları Connext ve Raiden’dır.
Rollup
Rolluplar, işlemleri rollup zincirinde gerçekleştirerek bu işlemlerin veri ve kanıtlarını Ethereum ana ağına yayınlama mantığıyla çalışırlar. Öncelikle rollup zincirindeki bir operatör işlemleri toplar, sıralar ve yığın haline getirir. Yığın haline gelen işlemler sıkıştırılır ve bu işlemlerin veri ve kanıtları ana ağa gönderilir. Verilerin Ethereum ana ağında olması Rollupların ana ağ ile aynı güvenlik seviyesinde olmasını sağlar.
Rolluplar kullandıkları kanıt türüne göre ikiye ayrılır. Optimistic Rolluplar ve zkRolluplar. Optimistic Rolluplar Fraud Proofs (Dolandırıcılık Kanıtları) kullanırken, zkRolluplar zk Proofs (Sıfır Bilgi Kanıtları) kullanır.
Optimistic Rolluplar yapıları gereği zincirlerinde yapılan tüm işlemlerin doğru olduğunu kabul ederler. Ana ağdaki akıllı sözleşmeye gönderilen işlem verilerinin hesaplamasını ve doğruluğunu kontrol etmezler. Bunun yerine ana ağa gönderilen verilere itiraz etmek için belli bir bekleme süresi vardır. Herhangi biri 7 gün içerisinde verilerin yanlış veya hatalı olduğuna itiraz edip Fraud Proof (Dolandırıcılık Kanıtı) yayınlayabilir. Eğer yayınlanan kanıt doğruysa yanlış ve hatalı veriler geçersiz sayılır. Ek olarak Optimistic Rollupların EVM uyumluluğu yüksektir, genel kullanım için uygundur.
zkRolluplarda ise bekleme süresi gibi bir durum yoktur. Sıfır bilgi kanıtları ile çalışırlar. Rollup zincirinde yapılan işlemler ve veriler, hesaplama gücü kullanılarak kanıtlanır ve ana ağdaki akıllı sözleşmeye gönderilir. Sıfır bilgi kanıtları kullanıldığı için dolandırıcılık yapılamaz. Bu sebeple zkRolluplarda çekimler anında gerçekleşir. Ek olarak zkRollupların EVM uyumluluğu düşüktür.
Optimistic Rolluplardan bazıları Optimism, Metis ve Boba’dır. zkRolluplara da Aztec, zkSync ve StarkNet’i örnek verebiliriz. Daha fazla bilgi için Rollup sayımıza göz atın!
Validium
Validium çözümleri zkRollup'lara çok benzer, her ikisi de sıfır bilgi kanıtları kullanır. En önemli fark, veri kullanılabilirliğidir. Veriler Ethereum ana ağında tutuluyorsa, bu zkRollup'tur. Veriler zincir dışı tutuluyorsa, Validium'dur.
Verileri zincir dışı tutmak, Validium'ların artık Ethereum ana ağının güvenlik seviyesinde olmamasına neden olur ve farklı güvenlik varsayımları oluşturur. Verilerin her zaman kullanılabilir ve geçerli olduğuna dair bir üçüncü tarafa güvenmek gerekir. Bu üçüncü taraf bir komite veya merkezi olmayan bir depolama çözümü olabilir. Verileri zincir dışında depolamak, Rollup protokol maliyetlerini önemli ölçüde azaltır, çünkü Rollup protokollerinin maliyetinin çoğu, CALL DATA çağrılarından oluşur.
Mevcut Starkware validium çözümleri, veri kullanılabilirliği için DAC adlı bir komiteye güvenir. Mevcut Validium çözümlerinin bir kullanıcısıysanız, fonlarınız dondurulabilir ancak çalınamaz. Daha fazla bilgi için Validium sayımıza göz atın!
Bitcoin ve Lightning Network
Bitcoin’in layer 2 çözümü Lightning Network, ilk olarak James A. Donald tarafından önerilmiştir. 2015 Şubat ayında yapımına başlanmış, günümüzde elle tutulur bir noktaya gelmiştir. Lightning Network aslında bir State Channel’dır. Bitcoin transferlerinin uzun sürmesi, saniye başına işlem sayısının düşük kalması ve yüksek işlem ücretleri bu ihtiyacı doğurmuştur.
Tıpkı State Channel’da olduğu gibi kullanıcılar belirli bir miktar fonu ana ağda kilitlemelidirler. Sonrasında Lightning Network’te iki katılımcı arasında kanal oluşturulabilir. Daha önce oluşturulmuş kanalların tekrar kullanımı da mümkündür. Örneğin A katılımcısı ve B katılımcısı arasında bir kanal, B katılımcısı ve C katılımcısı arasında bir kanal olsun. A katılımcısı C katılımcısına Bitcoin göndermek istediğinde A ve C arasında yeni bir kanal oluşturmaya gerek yoktur. Daha önce oluşturulmuş kanallar kullanılabilir.
Lightning Network’te kanal içerisindeki işlemleri ve kayıtları Bitcoin’den ayrı Lightning Network’un kendi düğümleri tutar. Bu düğümlere Watchtower (Gözetleme Kulesi) denir. Watchtowerlar dolandırıcılığa karşı işlemleri izler ve üçkâğıt yapan kanalları cezalandırırlar. Her ne kadar bu durum dolandırıcılık için caydırıcı olsa da ağdaki gizliliği ortadan kaldırmış olur.
Lightning Network’un en büyük sorunlarından biri kanal katılımcılarının çevrimiçi olma zorunluluğudur. İki kişiden biri çevrimiçi olmadığı durumda ödemeler gerçekleşmeyecektir. Aynı zamanda ağ, spam saldırılarına karşı yetersiz kalabilir. Yine de Lightning Network, Bitcoin’in gündelik ödemelerde kullanılması için büyük bir adımdır. Günümüzde Lightning Network kullanımı henüz adaptasyon seviyesine ulaşmamıştır, ağ geliştirmeleri ve testleri hâlâ devam etmektedir.
Sonuç
İkinci katman çözümlerinin kullanıcılar için ucuz ve hızlı ölçeklenme çözümleri ürettiklerinin farkındayız. Buna rağmen ikinci katmanların başarıya ulaşabilmesi için topluluk tarafından benimsenmesi ve aktif kullanılması şarttır. İkinci katman sadece Bitcoin ve Ethereum özelinde de değildir. Dileyen herhangi bir ağ kendi ikinci katmanını oluşturabilir. Diğer zincirlerdeki kullanım ve yoğunluğun artmasıyla ikinci katman terimini daha çok duyacağız gibi görünüyor.
L2 Planet Learn serisinden şimdilik bu kadar. Bir sonraki yayınlarda görüşmek üzere :)