Rollup, işlemleri Ethereum dışında çalıştıran, bir araya getiren ve veriyi Ethereum'a geri gönderen bir katman 2 ağıdır. Bu yazıda bunun nasıl çalıştığını, optimistic ve sıfır bilgi (zero-knowledge) rollup'larının nasıl farklılaştığını ve her rollup ücretinin neden Ethereum için bir maliyet içerdiğini anlatıyoruz.
Katmanların daha geniş resmi için katman 1, katman 2 ve katman 3 açıklandı yazısına bakın.
Bir rollup işlemleri nasıl toplu paketler?
Base gibi bir rollup'ta bir işlem gönderdiğinizde, doğrudan Ethereum'a gitmez. Onu yürüten ve rollup'ın kendi durumunu, örneğin bakiyeleri, güncelleyen rollup'ın operatörüne gider. Birkaç saniye sonra bu tür birçok işlem sıkıştırılarak bir batch (toplu paket) haline getirilir. Batch daha sonra tek bir işlemle Ethereum'a gönderilir.
"Roll up" (sarmak) kelimesi bunu anlatır: birçok işlem tek bir işleme sarılır. Ethereum işleminin maliyeti batch'teki herkes tarafından paylaşılır; ücretlerin Ethereum'un kendisinden düşük olmasının ana nedeni budur.
Sequencer
Sequencer, bir rollup'ta işlemleri alan, sıraya koyan, yürüten ve L2 bloklarını üreten sunucudur. Ayrıca Ethereum'a hiçbir şey ulaşmadan önce, çoğunlukla bir saniyenin çok altında, kullanıcılara hızlı onaylar verir.
Bugün çoğu büyük rollup, zincirin arkasındaki ekip tarafından işletilen tek bir sequencer çalıştırır. Bu basit ve hızlıdır. Aynı zamanda burada tarafsızca anlatılan ödünleşimler getirir:
- Sıralama gücü. Sequencer işlemlerin sırasını seçer; bu yüzden teoride onları geciktirebilir ya da yeniden sıralayabilir.
- Kesinti. Sequencer durursa rollup'ın normal kullanımı durur. Rollup'ların bir yedek yolu vardır: kullanıcılar işlemleri Ethereum üzerindeki bir sözleşme aracılığıyla gönderebilir, ancak bu daha yavaş ve daha pahalıdır.
- Tek başına fonları çalamaz. Sequencer, sahip olmadığı para için geçerli bir çekim oluşturamaz, çünkü Ethereum üzerindeki kanıtlar veya kontroller bunu reddeder.
Sektörde ekipler, sequencer'ların zamanla merkeziyetsizleştirilmesinden söz ediyor. Güncel durum zincire göre değişir, bu yüzden her projenin belgelerine bakın.
Ethereum'a veri göndermek: calldata ve blob'lar
Bir rollup, herkes zinciri doğrulayabilsin diye verisini Ethereum'da yayımlamak zorundadır. Tarihsel olarak bunu, sıradan bir Ethereum işleminin bir alanı olan calldata içinde yapardı. Calldata kalıcıdır ve diğer tüm Ethereum etkinliğiyle rekabet eder, bu yüzden pahalıydı.
2024'te Ethereum, EIP-4844 ile blob'ları ekledi. Blob, Ethereum düğümlerinin sonsuza kadar değil kısa bir süre tuttuğu büyük bir veri parçasıdır ve normal gas'tan ayrı kendi ücret piyasası vardır. Bu rollup'lar için çok daha ucuzdur ve L2 işlemlerinin tipik maliyetini düşürdü. Spesifikasyonu eips.ethereum.org adresinde okuyabilirsiniz.
Optimistic rollup'lar
Optimistic rollup, gönderilen batch'lerin biri aksini kanıtlamadığı sürece doğru olduğunu varsayar. Addaki iyimserlik budur.
- Bir batch gönderildikten sonra bir itiraz süresi (challenge window) vardır. Bu süre boyunca geçersiz bir sonuç fark eden herkes Ethereum'a bir hile kanıtı (fraud proof) sunabilir.
- Hile kanıtı geçerliyse yanlış sonuç atılır.
- Kimse itiraz etmezse sonuç, süre kapandıktan sonra Ethereum'da kesindir.
İtiraz süresi, resmi köprü üzerinden Ethereum'a yapılan çekimler için yaklaşık 7 gündür. Rollup üzerindeki günlük kullanım gecikmez. Yalnızca canonical köprü üzerinden fonları L1'e geri taşımak beklemek zorundadır. Hızlı üçüncü taraf köprüler bunu bir ücret karşılığında hızlandırabilir; nasıl olduğunu köprüler ve riskleri yazısı anlatır.
ChainMonitor'daki üç zincir optimistic rollup'tır: Arbitrum One, Base ve OP Mainnet. Base ve OP Mainnet, OP Stack'i kullanır. Arbitrum kendi Nitro yığınını kullanır. Arbitrum, Base ve Optimism rehberlerine bakın.
Sıfır bilgi rollup'ları
zk rollup (sıfır bilgi rollup'ı) bir itiraz süresine dayanmaz. Bunun yerine her batch, yeni durumun kurallara göre eski durumdan çıktığını gösteren matematiksel bir kanıt olan bir geçerlilik kanıtıyla (validity proof) gelir. Ethereum kanıtı bir akıllı sözleşmeyle kontrol eder. Geçerliyse batch kabul edilir.
Faydaları, uzun bir bekleme süresine gerek olmadığı için L1'de daha hızlı kesinlik ve geçersiz durumun kabul edilemeyeceğine dair güçlü bir güvencedir. Maliyetleri ise kanıt üretmenin ağır hesaplama gerektirmesi ve teknolojinin, özellikle tüm Ethereum özelliklerini desteklerken, inşa edilmesinin daha karmaşık olmasıdır. Bu alan hızla gelişiyor ve birkaç zk rollup'ı var. ChainMonitor'daki yedi zincirin hiçbiri bir zk rollup değildir.
| Özellik | Optimistic | ZK |
|---|---|---|
| Temel varsayım | İtiraz edilmedikçe doğru | Doğruluğu kanıtlanmış |
| Hatalar nasıl yakalanır | Hile kanıtı | Geçerlilik kanıtı zorunludur |
| L1'e çekim | Yaklaşık 7 gün (canonical köprü) | Kanıt doğrulandıktan sonra daha hızlı |
| Hesaplama yükü | Daha düşük | Kanıtlar için daha yüksek |
| ChainMonitor'da | Arbitrum, Base, OP Mainnet | Yok |
Her L2 ücretindeki L1 veri ücreti
Bir L2 işlem ücretinin iki parçası vardır:
- L2 yürütme ücreti. İşleminizi rollup'ta çalıştırmanın bedelini öder. Genellikle çok küçüktür.
- L1 veri ücreti. Ethereum'a veri göndermedeki payınızı öder. Bu çoğunlukla ücretin daha büyük kısmıdır.
L1 veri ücreti, Ethereum veri maliyetleri değiştiğinde değişir; bu yüzden L2'nin kendisi sakin olsa bile bir L2'deki toplam ücret oynayabilir. Gas takipçisinde L2'lerin rakamları bu L1 veri ücretini içerir, böylece gerçek maliyeti görürsünüz. Daha derine inmek için gas ve ücretler yazısını okuyun.
Bu sizin için ne anlama geliyor?
- Günlük kullanımda optimistic ve zk rollup'lar benzer hissettirir: hızlı ve ucuz.
- Fonları Ethereum'a geri taşımayı planlıyorsanız ne kadar sürdüğünü kontrol edin. Optimistic olanlar için yaklaşık 7 gün öngörün ya da bir köprü kullanın ve risklerini okuyun.
- Fonlarınız Ethereum üzerindeki sözleşmelerle tutulur, ancak bir rollup'ın yine de kendi kodu, sequencer'ı ve yükseltme kuralları vardır. Bunlar ayrı risklerdir.
Sık sorulan sorular
Kriptoda rollup nedir?
Rollup, işlemleri Ethereum dışında işleyen, batch'ler halinde bir araya getiren ve Ethereum'un güvenliğini devralabilmek için veriyi Ethereum'a gönderen bir katman 2 ağıdır.
Arbitrum, Base veya Optimism'den çekim neden 7 gün sürer?
Bunlar optimistic rollup'lardır. Resmi köprü üzerinden bir çekim talep edildikten sonra, herkesin geçersiz olduğunu kanıtlayabileceği yaklaşık 7 günlük bir itiraz süresi vardır. Fonlar süre bittikten sonra serbest bırakılır.
Optimistic ve zk rollup'lar arasındaki fark nedir?
Optimistic rollup'lar sonuçların doğru olduğunu varsayar ve belirli bir süre itiraza izin verir. ZK rollup'lar her batch'e matematiksel bir geçerlilik kanıtı ekler; bu yüzden itiraz için bekleme süresine gerek yoktur.
Sequencer nedir?
Sequencer, bir rollup'ta işlemleri sıralayan ve yürüten ve hızlı onaylar veren sunucudur. Çoğu büyük rollup, proje ekibi tarafından işletilen tek bir sequencer kullanır; bu hızlıdır ancak bir merkezileşme noktasıdır.
Ethereum'daki blob'lar nedir?
Blob'lar, EIP-4844 ile gelen ucuz, geçici veri eklerdir. Rollup'lar verilerini Ethereum'a calldata'dan daha düşük maliyetle göndermek için bunları kullanır.