Euclid Upgrade

Genel Bakış

Bu yükseltme beş ana değişikliği içeriyor:

  • OpenVM Prover’a geçiş.
  • MPT durum taahhüdüne geçiş.
  • Optimize edilmiş rollup süreci.
  • EIP-7702 ve RIP-7212 desteği.
  • Aşama-1 uygunluğu.

Bu değişiklikler sayesinde Scroll üzerindeki kullanıcılar ve geliştiriciler daha düşük ücretler, daha yüksek işlem hacmi, daha iyi güvenlik, daha fazla uyumluluk ve gelişmiş özelliklerden faydalanabilecek.

Zaman Çizelgesi

  • Scroll Sepolia
    • Aşama 1: 11 Mart 2025
    • Aşama 2: 13 Mart 2025
  • Scroll Mainnet
    • Aşama 1: 16 Nisan 2025
    • Aşama 2: 22 Nisan 2025

Özellikler

OpenVM Prover

Scroll, halo2 zkEVM teknolojisi ile ZK teknolojisinin öncülerinden biri olmuştur. ZK teknolojisi hızla gelişmeye devam etti ve artık genel amaçlı RISC-V tabanlı zkVM’ler pratik hale gelmiştir. Euclid yükseltmesinde, halo2 devreleri bırakılarak OpenVM üzerine inşa edilen yeni bir prover’a geçilmektedir.

Yeni OpenVM prover’ı birçok avantaj sunar. Prover kodu daha anlaşılır ve denetlenebilir. Farklı bileşenler arasında kod paylaşımı daha kolaydır. Ayrıca, ispatlama maliyetleri ve gecikme süresi azaltılır. Son olarak, yeni prover rastgele karmaşıklıkta işlemleri ispatlayabilir ve bu sayede sequencer throughput’unu sınırlayan kapasite denetleyici modül kaldırılabilir.

MPT Durum Taahhüdü

Scroll şu anda zk-dostu bir veri yapısı olan zktrie kullanmaktadır. Yeni OpenVM prover ile birlikte Ethereum’un durum yapısı olan Merkle-Patricia Trie (MPT) artık pratik hale gelmiştir. Bu nedenle Scroll, zktrie’yi bırakıp MPT’ye geçiş yapmaktadır.

MPT, sequencer performansını artırır ve L2 durum kanıtlarına bağlı dapp’ler için daha iyi uyumluluk sağlar.

Optimize Edilmiş Rollup Süreci

Euclid ile rollup sürecine bir dizi optimizasyon getiriyoruz. Bu optimizasyonlar, Veri Erişilebilirliği (DA) yükünü önemli ölçüde azaltarak kullanıcılar için daha düşük ücretlerle sonuçlanır.

Ana optimizasyonlar:

  • Blob doğrulamasını kontrat kodundan zk devrelere taşımak.
  • Mesaj kuyruğu taahhüt maliyetini amorti etmek.
  • L2 blok başlığı verilerini calldata yerine bloblara taşımak.
  • Birden fazla blob’u tek bir işlemde taahhüt etmek.

Bu değişikliklerin birleşimiyle birlikte batch taahhüt maliyetlerinde %90’a varan bir azalma beklenmektedir.

Ek olarak, Scroll L2 düğümleri mevcut Proof-of-Authority (Clique) yapısını bırakacak ve yetkili L2 blok imzalayıcısını artık L1’deki yeni sistem yapılandırma sözleşmesinden okuyacaktır.

Güçlü Akıllı Hesaplar

Euclid’de Scroll, EIP-7702 ve RIP-7212 protokollerini benimsemektedir. Ethereum’un Pectra yükseltmesi ile paralel olarak 7702’nin benimsenmesi, Scroll’un Ethereum ile yüksek uyumluluğunu sürdürmesini sağlar. Bu özellikler, Scroll kullanıcılarının ve geliştiricilerinin akıllı hesap teknolojilerinden faydalanmasına olanak tanır: Mevcut hesaplara akıllı sözleşme işlevselliği eklemek, yetkilendirmeleri imzalamak için passkey kullanmak ve kullanıcı deneyimini geliştiren yeni standartları kullanmak mümkündür.

Aşama-1

Euclid ile Scroll, L2BEAT tarafından tanımlanan standarda göre Aşama-1’e ulaşmayı sağlayacak önemli güvenlik garantileri sunmaktadır.

Zorunlu işlem dahil etme, sansür direncine yönelik bir mekanizmadır. Kullanıcılar, Ethereum üzerinden doğrudan bir işlem gönderebilir ve sequencer’ı bunu dahil etmeye zorlayabilir.

Düğüm Operatörleri

1. Aşama Değişiklikleri
  • Düğüm operatörleri l2geth’in MPT sürümüne geçmelidir. Bu, tam yeniden senkronizasyon gerektirir. Yakında bir sürüm ve anlık görüntüler paylaşılacak. Geçiş Rehberini inceleyin.
  • zktrie düğümleri çalışmaya devam edecek ancak blok başlıklarındaki state root’ları doğrulamayacaktır. Euclid’den önce MPT düğümlerine geçmeniz önerilir.
2. Aşama Değişiklikleri
  • İzin gerektirmeyen partiler etkinleşirse, manuel kurtarma gerekecektir. Detaylı belge yakında yayınlanacaktır.

Dapps ve İndeksleyiciler

1. Aşama
  • State commitment yapısı zktrie’den MPT’ye geçer.
  • zktrie kanıtları kullanan dapp’ler MPT’ye geçmelidir.
  • v5 ve v6 parti sürümleri kullanılacaktır.
2. Aşama
  • Parti başlıkları & blob içeriği yeni formatta olacak (v7).
  • Blok başlıkları artık calldata’da olmayacak. L1’den alınmalı ve decode edilmelidir.
  • Tek işlemde birden çok parti desteklenir. 1 parti = 1 blob.
  • commitAndFinalizeBatch ile tek adımda batch gönderimi mümkün.
  • Yeni fonksiyon imzaları:
    • Öncesi: commitBatchWithBlobProof, finalizeBundleWithProof, revertBatch
    • Sonrası: commitBatches, finalizeBundlePostEuclidV2, commitAndFinalizeBatch, revertBatch
  • committedBatches array’i seyrek hale gelir.
  • Yeni mesaj kuyruğu L1MessageQueueV2 kullanılacak.
  • Güvensiz L2 bloklarında ExtraData artık imza içermez.

Kaynaklar

Scroll Geliştirici haberlerini yakından takip edin
Güncellemeler, online ve yüz yüze etkinlikler, ekosistemdeki fırsatlar ve daha fazlası
Takip ettiğiniz için teşekkür ederiz!

Kaynaklar

Bizi Takip Edin