Interoperabilitas Tanpa Kepercayaan antara Rollups: Lanskap, Konstruksi, dan Tantangan

Lanjutan9/24/2024, 6:37:26 PM
Dalam artikel ini, kami melakukan survei terhadap lanskap interoperabilitas tanpa kepercayaan dengan mendefinisikan dan membahas enam tingkat solusi interoperabilitas antara ekosistem rollup yang terfragmentasi.

Pengenalan

Telah terjadi ledakan Cambrian dari rollups di Ethereum. Saat ini, ada 91 L2 & L3 langsung dan 82 yang akan datang menurut L2Beat. Sebagai hasilnya, ada juga sejumlah signifikan fragmentasi dalam hal likuiditas, pengalaman pengguna, dan alat pengembang. Solusi saat ini untuk interoperabilitas masih jauh dari memuaskan, karena mengandalkan kombinasi jembatan pihak ketiga, aset yang dibungkus secara eksternal, dan kerangka kerja niat, masing-masing membawa serangkaian masalah mereka sendiri.

  1. Jembatan likuiditas sering menjadi target dari peretasan kripto terbesar (misalnya, pembobolan jembatan wormhole senilai $321 juta)
  2. Aset-aset yang dibungkus secara eksternal tidak diinginkan, dan data telah menunjukkan bahwa orang lebih memilih untuk menyimpan aset dalam bentuk asli setiap kali memungkinkan (misalnya, terdapat aset yang dijembatani secara kanonis senilai $22 miliar dan hanya aset yang dibungkus secara eksternal senilai $3 miliar, menurutL2Beat)
  3. Framework niat bergantung pada pihak ketiga yang memerlukan kepercayaan yang tidak dapat diabaikan, dan datang dengan biaya tambahan untuk memfasilitasi aktivitas lintas rollup (misalnya pengguna rantai Degen kehilangan >80% dari tokenkarena jembatan resmi tidak bersifat kanonik)a. Kerangka niat terpusat juga berarti persaingan yang lebih rendah dan hal ini bisa menyebabkan penetapan harga dan kinerja yang kurang optimal

Dalam artikel ini, kami melakukan survei terhadap lanskap interoperabilitas tanpa kepercayaan dengan mendefinisikan dan membahas enam tingkat solusi interoperabilitas antara ekosistem rollup yang terfragmentasi.

Kami mulai dengan kasus default penarikan secara asinkron dari rollup sumber ke L1 dan secara manual memasukkannya ke rollup target, dan kami berakhir dengan arsitektur hipotetis untuk komposabilitas lintas rollup dalam satu transaksi. Kami akan mengeksplorasi bagaimana setiap tingkat interopabilitas akan memengaruhi pengalaman pengguna, pengalaman pengembang, potensi MEV, dan rollup itu sendiri (terkait secara khusus dengan perubahan infrastruktur).

Kami sebagian besar berada dalam lingkup Ethereum dan L2nya untuk artikel ini dan fokus secara eksklusif pada interopabilitas tanpa kepercayaan. Dalam hal ini, 'interopabilitas tanpa kepercayaan' merujuk pada saluran dalam protokol yang tidak memerlukan pihak ketiga untuk memfasilitasi transfer di luar infrastruktur yang diperlukan seperti yang sudah banyak diwajibkan oleh rollups.

Preliminaries

Definisi

Pada dasarnya, interopabilitas tanpa kepercayaan memerlukan sumber daya bersama yang harus diakses oleh dua protokol yang ingin berinteropabilitas. Dalam kasus Ethereum L1, semua kontrak pintar berada dalam lingkungan yang sama dan berbagi seluruh status Ethereum, sehingga mereka akan selalu memiliki tingkat interopabilitas tertinggi. Namun, L2 hanya berbagi lapisan penyelesaian melalui kontrak jembatan terpisah sehingga interopabilitas jauh lebih terbatas.

Komponen infrastruktur bersama yang penting yang dapat memajukan kita sepanjang tangga interoperabilitas tanpa kepercayaan adalah pengurutan bersama, pembangun super, dan penyelesaian bersama. Jaminan dan fungsionalitas baru yang dibuka oleh lapisan bersama ini terkait, tetapi pada dasarnya bersifat ortogonal dalam alam.

  1. Sequencers/Superbuilders Bersama: Utamanya peningkatan kecepatan dan pengalaman pengguna.
  2. Penyelesaian Bersama: Pertukaran aset tanpa pembungkus eksternal serta pesan dalam protokol.

Untuk memulai, kita akan terlebih dahulu mendefinisikan enam tingkat interoperabilitas tanpa kepercayaan yang disebutkan dalam pengantar:

  1. L1 Async:
    Interoperabilitas melalui transfer aset manual melalui L1 yang rollups menyelesaikan transaksi.
  2. Atomic Inclusion:
    → Jaminan bahwa entah semua transaksi dalam bundel cross-rollup akan disertakan dalam blok berikutnya untuk setiap rollup yang terlibat dalam bundel, atau tidak akan ada.
  3. Penyelesaian Bersama:
    → Beberapa rollups yang terhubung ke L1 melalui kontrak jembatan yang sama.
  4. Eksekusi Atom:
    → Jaminan bahwa entah semua transaksi dalam bundel cross-rollup akan disertakan dan berhasil dieksekusi dalam blok berikutnya untuk setiap rollup yang terlibat dalam bundel tersebut, atau tidak ada yang akan dieksekusi. Eksekusi yang berhasil merujuk pada setiap transaksi yang dieksekusi tanpa mengalami pembalikan dan tercermin dalam keadaan terbaru untuk setiap rollup dalam bundel.
  5. Komposabilitas Tingkat Blok:
    → Blok selanjutnya menjamin bundel lintas-rollup yang dapat berisi transaksi yang saling bergantung (tx B di rollup B bergantung pada hasil tx A di rollup A)
  6. Komposabilitas Tingkat Tx:
    Interoperabilitas tingkat kontrak pintar yang memerlukan hanya satu transaksi yang dapat menyebabkan perubahan status secara bersamaan di banyak rollup (tanpa bundel). Menggunakan protokol apa pun di seluruh rollup secara logis setara dengan menggunakan kontrak pintar yang berbeda di satu rantai. Yang penting, hal ini menyiratkan bahwa perubahan status sebelum panggilan apa pun dapat dibatalkan saat panggilan tersebut kembali.

Untuk memahami setiap level lebih lanjut, kami akan melalui kasus penggunaan kunci berikut untuk mendemonstrasikan kekuatan setiap level serta implikasinya bagi pengguna, pengembang, rollups, dan pencari MEV.

Contoh Ilustratif:

  1. Transfer Token yang Sama
    → Kirim ke diri sendiri: Menukar Eth dengan Eth atau ERC-20 dengan ERC-20 di dua rollups
  2. Pembelian Token
    → Pesanan Batas Cross-Rollup: Menggunakan Eth/ERC-20 dari Rollup A, beli ERC-20 yang berbeda dari DEX di Rollup B dan (opsional) kirim kembali ke Rollup A

Implikasi:

Pertanyaan-pertanyaan berikut akan dijawab juga untuk lebih memahami dampak pada pemegang saham kunci dalam ekosistem rollup mana pun.

  1. Pengalaman Pengguna
    Bagaimana pengalaman pengguna berubah dengan mencapai tingkat interoperabilitas ini?
  2. Pengalaman Pengembang
    Bagaimana pengalaman pengembang berubah dengan mencapai tingkat interoperabilitas ini?
  3. Potensi MEV
    Apakah ada potensi peluang MEV baru jika kita mencapai tingkat interoperabilitas ini?
  4. Implikasi Rollup
    Apakah rollup harus memilih masuk ke infrastruktur baru untuk mencapai ini? Apa perubahan dalam struktur biaya untuk rollup? Apa manfaat potensial bagi rollup untuk berpartisipasi dalam infrastruktur ini?

Gambaran Umum Tingkat Tinggi

Ikhtisar perubahan bagi pemangku kepentingan utama

Progresi Enam Tingkat Menuju Interoperabilitas Tanpa Kepercayaan

1. L1 Async

Infrastruktur yang Diperlukan:

N/A

Seperti yang didefinisikan, ini mengacu pada mode default saat ini dari interoperabilitas tanpa kepercayaan. Semua rollups didefinisikan sebagai demikian karena mereka dibangun di L1 sebagai lapisan penyelesaian dan memiliki akses ke L1 tersebut hanya melalui kontrak jembatan di mana mereka secara berkala memposting pembaruan status untuk mengamankan jaringan.

Satu-satunya cara kanonikal untuk melakukan aktivitas cross-rollup tanpa kepercayaan dalam kasus ini adalah dengan menarik aset dari rollup sumber melalui jembatan kanonikal dan menyetorkannya secara manual ke rollup target setelah tersedia di L1.

Untuk rollup optimis, latensi penarikan ini adalah sekitar 7 hari untuk memperhitungkan jendela bukti kesalahan. Pada ZK rollup, latensi penarikan kurang pasti tetapi bisa berlangsung dari 15 menit hingga satu hari penuh, seperti halnya dengan ZkSync.

Selain itu, pertukaran atom peer-to-peer menggunakan kontrak pintar memungkinkan, tetapi ini adalah kasus penggunaan yang lebih kecil dan tidak secara efektif dapat diskalakan.

Perlu dicatat solusi pihak ketiga yang saat ini ada:

  1. Jembatan Likuiditas
  2. kerangka niat

Kedua contoh ilustratif kami memerlukan solusi pihak ketiga untuk memfasilitasi.

Kirim-Ke-Diri-Sendiri:

  1. Secara kanonikal:
    → Menarik aset dari Rollup A
    → Deposit secara manual ke Rollup B
  2. Pihak Ketiga:
    Jembatan Likuiditas / Jaringan Pemecah Masalah

Cross-Rollup Limit Order

  1. Secara kanonikal:
    → Menarik aset dari Rollup A
    → Menyetor secara manual ke Rollup B
    → Melakukan pesanan limit
    → Untuk mengirim kembali, seseorang harus melapisi eksternal target ERC-20
  2. Pihak Ketiga
    Ruang solusi yang baru muncul untuk pesanan batas lintas rollup
    → Ada desain terbuka seputar penggunaan niat untuk memfasilitasi ini

Karena ini adalah kasus default, tidak perlu membahas perubahan pada UX, DevEx, MEV, dan rollups.

2. Atomic Inclusion

Infrastruktur yang Diperlukan

Sequencer Bersama *

Inklusi atom hanya menjamin bahwa bundel lintas-rollup akan disertakan dalam blok berikutnya.

Ini memerlukan sequencer bersama, tetapi secara teoritis dapat dicapai tanpanya secara manual jika sequencer pada dua rollup yang diberikan tidak berada pada throughput maksimum (seseorang bisa dengan mudah mengirimkan dua transaksi ke masing-masing rollup secara individual). Inilah mengapa kami menambahkan asterisk pada infrastruktur yang diperlukan.

Namun, kami tidak berasumsi bahwa sequencer bersama menjalankan node penuh dari masing-masing rollups yang terhubung sehingga tidak dapat menjamin eksekusi berhasil untuk bundel transaksi. Sequencer bersama dalam kasus ini hanya dapat menjamin bahwa transaksi tersebut terbentuk dengan baik dan akan disertakan dalam blok berikutnya, tetapi tidak selalu berhasil dieksekusi.

Karena tidak ada jaminan eksekusi, tidak mungkin untuk memanfaatkan inklusi atomik secara programatik dengan cara yang bermakna tanpa menimbulkan risiko pembatalan salah satu transaksi. Sebagai hasilnya, kita pada dasarnya berada dalam kasus yang sama persis dengan interoperabilitas Async L1.

Pertimbangkan untuk memulai pertukaran cross-rollup sederhana dengan hanya menjamin inklusi atomik:

  1. Paket Pertukaran Cross-Rollup
    → Tx 1: Kunci/Musnahkan token pada rollup sumber
    → Tx 2: Membuat token ke alamat pengguna pada rollup tujuan

Kami mungkin memiliki jaminan inklusi atomik dalam hal kedua transaksi sebenarnya disertakan dalam blok-blok berikutnya untuk masing-masing rollup, tetapi jika transaksi pertama mengalami revert dan yang kedua tidak, pengguna akan salah dialokasikan dana di rantai tujuan tanpa mengunci atau membakarnya di rantai sumber dan kami akan menghadapi masalah pengeluaran ganda.

Setiap solusi interoperabilitas, baik itu jembatan likuiditas, kerangka tujuan, atau pertukaran xERC-20, akan rentan terhadap risiko ini dan tidak mungkin untuk mengatasinya. Karena risiko ini, solusi saat ini memerlukan transaksi awal untuk berhasil dieksekusi dan dimasukkan dalam blok pada rantai sumber sebelum menggunakan pelayan untuk meneruskan pesan yang dipancarkan dan mengeksekusi transaksi kedua pada rantai tujuan.

Takeaway Penting: Inklusi Atom tidak berdampak berarti terhadap potensi interoperabilitas

3. Penyelesaian Bersama

Infrastruktur yang Diperlukan:

Lapisan agregasi bukti // Kontrak jembatan bersama

Ini adalah tempat di mana hal-hal mulai menjadi lebih menarik. Sebagai hasil dari kontrak jembatan bersama, semua likuiditas yang disimpan ke dalam ekosistem rollup dari L1 dapat dipindahkan secara bebas di antara semua rollup yang terhubung. Sampai titik ini, kita tidak dapat melakukan pertukaran antara rollup tanpa melalui saluran kanonikal, melingkari aset secara eksternal, atau menggunakan solusi pihak ketiga.

Mengapa membangun kontrak jembatan bersama? Untuk memahami mengapa memiliki kontrak jembatan bersama memungkinkan kita untuk memindahkan aset secara trustless di seluruh rollups, pertama-tama pertimbangkan apa yang akan terjadi jika memungkinkan memiliki Eth di Rollup A, membakarnya, dan membuatnya secara native di Rollup B tanpa kontrak jembatan bersama di L1.

Kami melihat bahwa setiap rollup akan tidak sinkron dengan kontrak jembatan mereka di mainnet. Kontrak jembatan rollup B masih memiliki 50 Eth, sehingga pengguna tidak akan dapat menarik 1 Eth mereka ke L1.

Untuk menyelesaikan ini, protokol pembungkus aset eksternal dibangun yang mengeluarkan versi terbungkus eksternal dari token melintasi rollups yang melambangkan versi asli di tempat lain dalam jaringan.

Dengan lapisan penyelesaian bersama, situasinya terlihat berbeda. Karena semua likuiditas untuk setiap rollup yang terhubung terkunci dalam kontrak jembatan yang sama, seseorang dapat bergerak bebas antara rollups, karena jumlah total nilai dalam kontrak jembatan tetap sama dan selalu dapat ditarik.

Perlu ada pembaruan pada tingkat kontrak L1 tentangdimana likuiditas adalah untuk memungkinkan pengguna menarik dari mana saja, tetapi ini sepele karena semua rollups yang terhubung dapat membaca/menulis ke kontrak bersama.

Dengan lapisan penyelesaian bersama, alur dapat terlihat seperti berikut untuk kasus pengiriman sendiri yang sederhana.

Kirim ke Sendiri:

  1. Pengguna membuat transaksi awal:
    → Tx 1: menarik Eth di rollup A (dengan pesan untuk mencetaknya di rollup B)
    → Transaksi dijadwalkan dan diajukan ke kontrak L1
    → Ini diagregatkan ke akar transaksi yang mengelompokkan semua rollups penyelesaian bersama
  2. Rollup B mengimpor root tx ini
  3. Relayer mengirimkan transaksi untuk mencetak bersama dengan Bukti Merkle untuk rollup B
  4. Rollup B memverifikasi transaksi pembakaran menggunakan Merkle Proof dan root transaksi
  5. Pengguna di-mintakan Eth di Rollup B
  6. Rollup B mengirimkan bukti ke L1

Kita dapat memperluas aliran ini ke semua ERC-20 yang memiliki kontrak di semua rollups dalam ekosistem penyelesaian bersama.

Seseorang dapat menganggap kontrak jembatan bersama sebagai lapisan pesan dalam protokol antara semua rollups yang terhubung, sehingga secara teoritis aliran ini sebenarnya dapat diperluas ke standar pesan sembarang.

Ini membuat kita lebih dekat dengan komposabilitas, tetapi karena langkah-langkah yang diperlukan untuk mengumpulkan bukti dan meneruskan pesan hanya setelah perubahan status tercermin di L1, maka terdapat latensi tinggi (meskipun jauh lebih rendah dari kasus asinkron L1). Selain itu, aktivitas cross-rollup kompleks seperti menggunakan DEX di rollup B yang dimulai dengan aset di rollup A untuk pesanan limit cross-rollup masih akan menjadi proses yang melelahkan bagi pengguna karena mereka masih harus mengirim ke diri sendiri dan secara manual menukar aset di rollup tujuan. Tidak dapat membuat bundel cross-rollup atomik dalam kasus ini.

Manfaat penting lainnya dengan penyelesaian bersama adalah bahwa ada lebih sedikit gesekan bagi penyedia likuiditas atau penyelesaian yang mengisi pesanan di berbagai lingkungan. Karena likuiditas mereka di semua rollups terhubung tercermin dalam kontrak jembatan yang sama, mereka tidak perlu menunggu jendela penarikan penuh untuk mengelola likuiditas silang rollup mereka.

Dampak pada Pemangku Kepentingan:

  1. Pengguna:
    Sekarang dapat mentransfer aset dalam bentuk asli tanpa periode penarikan L1
  2. Pengembang:
    Perubahan terbatas pada penerbit token yang sekarang dapat menggunakan pesan dalam protokol untuk menerbitkan versi asli dari ERC-20 di semua rollups terhubung
  3. Pencari MEV:
    Karena ini terjadi selama beberapa blok untuk setiap rollup, tidak ada potensi MEV baru
  4. Rollups:
    Rollups akan harus memilih untuk menggunakan kontrak jembatan bersama dan kemungkinan menambahkan pra-kompilasi untuk menangani pesan lintas rollup

Poin Penting: Penyelesaian bersama memungkinkan transfer aset tanpa pembungkusan eksternal dan pesan sewenang-wenang di semua rollups yang berbagi kontrak jembatan dan lapisan agregasi bukti, namun akan tetap ada keterlambatan yang tidak dapat diabaikan (meskipun jauh lebih pendek dari L1 Async) dan tidak dapat membuat bundel atomik lintas rollup.

4. Eksekusi Atom

Infrastruktur yang Diperlukan:

Sequencer Bersama // Superbuilders

Eksekusi atom memungkinkan kita untuk menjamin eksekusi berhasil bundel lintas-rollup, tetapi seperti yang akan kita lihat, jumlah kasus penggunaan untuk bundel lintas-rollup yang tidak memiliki transaksi yang bergantung lebih sedikit dari yang mungkin diharapkan pada awalnya.

Jika ada transaksi tunggal dalam bundel transaksi yang saling tergantung mengalami pembalikan, maka semua transaksi lain menjadi tidak valid dan juga harus mengalami pembalikan, seperti halnya pembakaran dan pencetakan token di seluruh rollups. Pencetakan token pada rollup tujuan bergantung pada token tersebut telah dibakar atau dikunci pada rollup sumber, jadi kita bisa mengatakan bahwa bundel transaksi pembakaran dan pencetakan adalah bundel transaksi yang saling tergantung.

Membuat bundel ini tidak mungkin tanpa pihak tengah seperti superbuilder yang dapat membuat transaksi tujuan.

Pertimbangkan apa yang harus benar untuk bundel swap lintas rollup dibangun tanpa pihak lain selain pengguna. Sebuah bundel harus dibuat untuk mengunci/membakar aset di rollup sumber dan membuat aset di rollup tujuan, tetapi kami menghadapi masalah:

  1. Kontrak pada rollup sumber hanya dapat mengeluarkan pesan saat mengunci/membakar aset sumber asli, mereka tidak dapat memanggil dan membuat transaksi pada rollup tujuan.
    → Inilah mengapa protokol pesan dan jaringan relay ada.
    → Pesan dapat digunakan untuk mengatur apa yang harus dipanggil pada tujuan, tetapi sebenarnya tidak dapat membuat transaksi itu sendiri.
  2. Membuat transaksi kedua di rollup tujuan untuk membuat:
    Pengguna itu sendiri tidak dapat membuat tx ini karena mereka tidak memiliki hak mencetak token di rollup B
    → Yaitu) Rantai tujuan memerlukan bukti bahwa token telah dibakar / dikunci di rantai sumber, tetapi bukti ini tidak tersedia sampai setelah transaksi awal dieksekusi yang akan melanggar persyaratan atomisitas kami.
    → Pihak lain mana pun yang dapat membuat transaksi kedua dengan hak pencetakan secara teoritis dapat membuat transaksi "mint" pada rantai tujuan kapan saja tanpa terlebih dahulu membuat "pembakaran" atau kunci pada sumbernya, yang merupakan kerentanan besar.

Kita bisa melihat bahwa meskipun kita bisa menjamin eksekusi bundel lintas-rollup, kita menghadapi kesulitan dalam cara kita bisa membangunnya pada awalnya untuk mentransfer aset bernilai.

Namun, masih ada beberapa kasus penggunaan untuk eksekusi atomik tanpa paket lintas rollup yang bergantung. Salah satunya adalah arbitrase lintas rollup:

Arbitrase DEX Cross-Rollup dengan Eksekusi Atom

Karena tidak ada ketergantungan yang ketat antara transaksi-transaksi ini, siapa pun dapat membuat bundel atom ini dan mengirimkannya ke sequencer bersama yang akan menjamin eksekusi atomik.

Namun, untuk memiliki jaminan eksekusi atomik pada awalnya, rollups harus memilih menjadi bagian dari sequencer bersama dan superbuilder yang akan menjalankan node penuh dari semua rollups yang terhubung, sehingga langkah dari eksekusi atomik ke komposabilitas tingkat blok cukup kecil dan semua solusi pengurutan bersama akan melakukannya. Satu-satunya perubahan yang diperlukan adalah pembangun blok atau pihak ketiga lainnya harus dapat membuat transaksi atas nama pengguna untuk menyelesaikan bundel lintas-rollup yang saling tergantung.

Tidak mungkin infrastruktur akan dibangun yang hanya memungkinkan eksekusi atomik tanpa melangkah lebih jauh untuk memiliki komposabilitas. Keuntungan relatif melompat ke komposabilitas tingkat blok penuh jauh lebih besar daripada kesulitan dalam mencapainya mengingat infrastruktur sudah memiliki eksekusi atomik.

Implikasi bagi Pemangku Kepentingan:

  1. Pengguna:
    Mungkin tidak ada perubahan, meskipun mungkin solusi pendukung pihak ketiga seperti niat bisa menjadi atomik, tetapi secara khusus bagaimana tidak jelas
  2. Pengembang:
    Mungkin tidak ada perubahan
  3. Pencari MEV:
    Arbitrase lintas-rollup jauh lebih aman karena eksekusi atom
  4. Rollups:
    Rollup harus memilih untuk menggunakan sequencer/superbuilder bersama yang mengirimkan blok dengan transaksi dari setiap rollup yang ingin saling beroperasi, yang dapat mengubah struktur pendapatan rollup. Belum jelas bagaimana itu akan berubah. \
  • Marketplace pengurutan mungkin meningkatkan pendapatan untuk rollups dengan memungkinkan ruang ToB dibeli oleh pembangun yang canggih

Poin Penting: Meskipun bundel lintas rollup dijamin untuk dieksekusi secara atomik, tidak jelas bagaimana bundel-bundel ini akan dibangun jika tidak ada superbuilder yang membuat bagian dari bundel, sehingga tidak mungkin bahwa eksekusi atomik itu sendiri akan berdampak pada interoperabilitas. Sequencer/superbuilder bersama seharusnya secara default membangun daripada komposabilitas tingkat blok.

5. Komposabilitas Tingkat Blok

Infrastruktur yang Diperlukan:

Sequencer Bersama // Superbuilder // Lapisan agregasi bukti// Kontrak jembatan bersama

(* = optional)

Dalam banyak wacana seputar sequencers bersama dan lapisan penyelesaian bersama, istilah yang sering digunakan untuk menggambarkan tingkat interoperabilitas ini adalah "komposabilitas sinkron".

Kami telah sedikit memodifikasi istilah ini agar lebih deskriptif. Memperbarui nomenklatur ke Komposabilitas Tingkat Blok menunjukkan bahwa memungkinkan untuk menggabungkan antara dua rollup dalam bundel transaksi lintas-rollup yang akan disertakan dan dieksekusi dengan sukses dalam blok berikutnya. Komposabilitas sinkron mungkin tertukar dengan komposabilitas tingkat transaksi, yang akan kami jelajahi di bagian berikutnya. Pentingnya, ini membutuhkan pihak tengah (infrastruktur pengurutan bersama) yang dapat menjadi pemimpin dan pencipta bundel transaksi yang saling bergantung.

Pada tingkat ini, kita mulai melihat komposabilitas sejati antara rollups di luar sekadar pengiriman ke diri sendiri untuk berpartisipasi dalam aplikasi di rollup lain.

Dengan penambahan sequencer bersama yang dapat membuat transaksi, kami sekarang dapat membuat bundel lintas rollup yang dapat dimanfaatkan oleh pengembang secara terprogram.

Ada dua kasus yang perlu dipertimbangkan:

  1. Komposabilitas Level Blok
  2. Komposabilitas Tingkat Blok + lapisan penyelesaian bersama

Dalam kedua kasus, kita dapat membuat bundel cross-rollup untuk aktivitas yang lebih kompleks tetapi dalam kasus kedua dengan penyelesaian bersama kita dapat menggunakan aset asli, yang dapat memiliki implikasi harga yang lebih baik untuk aktivitas DEX cross-rollup, misalnya.

Dengan komposabilitas tingkat blok, kita memiliki keuntungan dari eksekusi atomik dengan kemampuan tambahan untuk membuat bundel transaksi yang saling bergantung. Mari kita periksa dua contoh ilustratif kita.

Transfer Token yang Sama melalui xERC-20 (Tanpa Penyelesaian Bersama):

  1. Pengguna memiliki ERC-20
  2. Pengguna membuat tx melalui dapp:
    → Menyetor ERC-20 ke dalam kotak kunci xERC-20 untuk menerima versi terbungkus xERC-20
    → Bakar xERC-20
    Mengirim pesan yang menandakan kepada infrastruktur urutan bersama bahwa transfer lintas rollup telah dimulai bersama dengan data relevan untuk memfasilitasi pertukaran
  3. Superbuilder mengambil transaksi dan membuat bundel lintas-rollup
    → Tx 1: Transaksi wrap dan burn yang disebutkan di atas
    → Tx 2: Mint xERC-20 di rollup B
  4. Superbuilder mengirimkan cross-rollup ini ke sequencer bersama
    Karena superbuilder menjalankan node penuh dari dua rollups yang terhubung, mereka mensimulasikan transaksi untuk menjamin eksekusi bundel yang sukses. Jika salah satu transaksi mengalami revert, seluruh bundel akan direvert.
  5. Sequencer bersama mengirimkan blok yang berisi kedua transaksi ke lapisan DA serta ke node-node yang mengeksekusi perubahan status
  6. xERC-20 dibuat untuk pengguna di Rollup B

Dengan lapisan penyelesaian bersama, aliran menjadi lebih disederhanakan karena tidak perlu terlebih dahulu membungkus ERC-20 sebagai xERC-20 untuk pertukaran.

Sekarang mari kita periksa pesanan batas cross-rollup untuk membeli ERC-20 pada Rollup B dengan ERC-20 awal (berbeda) dari Rollup A dan ERC-20 yang dihasilkan dikirim kembali ke Rollup A. Dalam hal ini, kami tidak berasumsi bahwa kami memiliki lapisan penyelesaian bersama, meskipun aliran serupa ada dalam kasus dengan satu. Satu-satunya perbedaan adalah tidak juga harus membungkus aset secara eksternal.

Berikut adalah transaksi yang diperlukan dalam kasus ini:

  1. Bungkus dan bakar ERC-20 pada
  2. Mint xERC-20 di B
  3. Tukar awal xERC-20 dengan ERC-20 target di B
  4. Bungkus dan Bakar target ERC-20 di B
  5. Mint xERC-20 di A

Berikut adalah alur potensial bagaimana hal ini bisa berfungsi:

Limit Order Cross-Rollup dalam Lingkungan Composable Tingkat Blok

Aliran:

  1. Pengguna memulai transaksi pertama:
    → Bungkus dan Bakar xERC-20 dengan pesan yang dipancarkan untuk menentukan parameter swap (rantai tujuan, alamat DEX, ERC-20 untuk ditukar, harga pesanan limit, boolean untuk mengirim kembali atau tidak)
  2. Superbuilder melihat transaksi dan membuat bundel:
    → Tx 1: Pengguna membuat tx seperti yang dijelaskan di atas
    → Tx 2: Mencetak xERC-20 di tujuan (superbuilder harus memiliki hak istimewa pencetakan)
    → Tx 3: Pesanan limit menggunakan data dari tx 1
    → Tx 4: Bungkus dan Bakar ERC-20 pada B dengan asumsi pemenuhan penuh pada pesanan limit dengan pesan untuk mencetak di rantai sumber
    → Tx 5: Mencetak xERC-20 target dari output swap pada rantai sumber

Karena superbuilder menciptakan blok dan mengurutkan transaksi, ia dapat mensimulasikan setiap transaksi dan mengabaikan bundel jika salah satu transaksi akan dibalik. Misalnya, jika ditemukan bahwa pengguna tidak akan menerima pemenuhan lengkap pada pesanan limit mereka, bundel akan diabaikan sebelum blok dieksekusi.

Dalam kasus infrastruktur urutan bersama tanpa lapisan penyelesaian bersama, versi terbungkus secara eksternal dari Eth dan xERC-20 perlu digunakan, yang bisa mengakibatkan kondisi pasar yang lebih buruk di DEX karena kolam likuiditas yang lebih tipis untuk aset terbungkus. Dalam hal ini, pengguna mungkin harus menggunakan batas yang lebih lunak dengan selipan yang lebih ditoleransi dan bisa mendapatkan harga yang kurang optimal. Satu pengecualian dari hal ini adalah jika USDC terlibat. Memungkinkan bahwa urut-urutan bersama tanpa penyelesaian bersama bisa bekerja dengan Circle untuk memperoleh hak eksklusif atas kontrak USDC di seluruh rollup untuk memfasilitasi transfer USDC asli dan pertukaran lintas rollup.

Dengan lapisan penyelesaian bersama, pembungkus eksternal ini tidak diperlukan, dan kemungkinan akan memberikan harga yang lebih baik karena adanya kolam likuiditas yang lebih dalam untuk pertukaran aset asli, tetapi alirannya pada dasarnya sama.

Optimistis Mempercayai Pengurut

Rollups perlu dengan optimis mempercayai sequencer/superbuilder bersama untuk membuat bundel lintas-rollup yang valid. Hal ini terutama karena bundel lintas-rollup ini berisi transaksi yang saling tergantung yang rollup individu tidak dapat verifikasi hingga setelah blok ditambahkan ke rantai masing-masing rollup dan diagregasi ke lapisan penyelesaian di L1. Contohnya adalah pembakaran dan pencetakan awal Eth dari sumber ke tujuan. Sangat penting bahwa Eth benar-benar dibakar di rantai sumber sebelum dicetak di rantai tujuan, jika tidak double spend bisa terjadi.

Namun, untuk menjalankan paket lengkap ini dalam satu blok, semua transaksi harus ada dalam blok tersebut bahkan jika transaksi tersebut mewakili keadaan yang tidak valid sebelum blok itu sendiri (seperti memiliki Eth di rantai tujuan untuk pertukaran jika pengguna tidak memiliki sebelum blok). Karena itu, kita harus mempercayai pengurutan bahwa ia benar-benar telah menyertakan dependensi yang valid dalam bundel cross-rollup. Seseorang dapat mengajukan bukti setelahnya untuk membuktikan validitas setiap transaksi.

Hal ini sedikit kurang penting saat menggunakan aset yang dibungkus, namun, karena mereka tidak berdampak pada likuiditas asli yang disimpan di L1, tetapi mekanisme cadangan masih harus ada untuk menanggulangi risiko pengurutan berbahaya atau bug dalam kode yang memungkinkan bundel transaksi dieksekusi dengan transaksi tergantung yang dibatalkan.

Implikasi bagi Pemangku Kepentingan:

  1. Pengguna
    Peningkatan besar-besaran ke UX dalam memungkinkan pesanan batas cross-rollup dalam satu blok
  2. Pengembang
    Perlu menyadari cross-rollup untuk aktivitas cross-rollup, kemungkinan memanfaatkan precompiles kustom. Alih-alih hanya transaksi, pengembang harus berpikir dalam hal bundel, tetapi kemungkinan besar superbuilders dan infrastruktur rollup kustom dapat menyembunyikan sebagian besar kompleksitas pengembang.
  3. Pencari MEV
    Pencari MEV pada dasarnya memiliki kesempatan yang setara untuk menggunakan strategi L1 pada bundel cross-rollup, tetapi itu tergantung pada bagaimana PBS (Pemisahan Penyusun-Pengusul) diimplementasikan.
    Bundel lintas-rollup pada dasarnya dilihat sebagai satu transaksi tunggal, sehingga MEV bisa ditemukan dengan front-running atau sandwiching bundel ini selama mereka tidak mengubah harga di luar jumlah selipan yang ditoleransi (karena maka seluruh bundel akan kembali dan upaya MEV akan gagal)
  4. Rollups
    Perlu masuk untuk infrastruktur pengurutan bersama (termasuk pembangun super) serta memungkinkan akses untuk membakar/menghasilkan Eth ke pengurut bersama dalam kasus lapisan penyelesaian bersama.
    Dapat menginternalisasi MEV dengan menjual ruang blok kepada pembangun

6. Komposabilitas Tingkat Transaksi

Infrastruktur yang Diperlukan:

Perubahan Tingkat VM // Penyelesaian Bersama // Superbuilders

Komposabilitas tingkat transaksi merujuk pada tingkat fungsionalitas yang sama yang dibagikan oleh kontrak pintar pada satu rantai EVM. Dalam hal ini, satu transaksi dapat memperbarui status di beberapa rollups secara bersamaan, dan memastikan bahwa setiap perubahan status sebelum panggilan apa pun dapat dikembalikan jika panggilan tersebut tidak berhasil. Secara efektif, bundel atom transaksi dalam lingkungan komposabel tingkat blok dapat dilakukan dalam satu transaksi lintas rollup dan lintas VM tunggal. Hal ini memerlukan perubahan tingkat VM untuk semua rollup yang terhubung ditambah lapisan penyelesaian bersama dan superbuilder.

Kami menggambarkan mekanisme yang mungkin di sini pada tingkat tinggi. (Konstruksi ini karena tim Espresso sesuai pengetahuan kami). Pertama, pengguna mengirimkan transaksi cross-rollup ke semua rollup yang statusnya diubah oleh transaksi atau superbuilder yang dapat membangun blok di semua rollup yang terlibat. Superbuilder mensimulasikan transaksi dan membentuk daftar pasangan input-output, satu untuk setiap rollup yang terlibat, yang menentukan pesan cross-rollup yang diperlukan dan diharapkan dalam transaksi. (Perhatikan bahwa superbuilder hanya dapat melakukannya jika memiliki hak pengurutan yang aman untuk semua rollup yang terlibat untuk jangka waktu tertentu). Superbuilder kemudian mengirimkan blok simulasi ke pengusul setiap rollup, bersama dengan daftar pasangan input-output yang diharapkan untuk setiap transaksi cross-rollup. Selama eksekusi, setiap rollup menjalankan fungsi transisi statusnya sendiri seperti biasa dengan asumsi input dari daftar transaksi cross-rollup sudah benar. Selama penyelesaian, daftar input-output kemudian dapat dibandingkan silang dan terbukti aman selama fase agregasi bukti di lapisan penyelesaian bersama. Secara khusus, jika input yang diharapkan untuk transaksi cross-rollup tidak cocok dengan apa yang telah ditentukan rollup lain sebagai output, proses penyelesaian akan menolak seluruh transaksi cross-rollup.

Meskipun terdapat fungsi baru yang terbatas yang terungkap dengan komposabilitas tingkat transaksi di luar pinjaman kilat, pengalaman pengembang untuk membuat aplikasi cross-rollup dapat ditingkatkan secara signifikan. Kemampuan untuk membuat dapps yang berinteraksi dengan semua rantai terhubung tanpa mempertimbangkan bundel cross-rollup akan membuat inovasi dalam lanskap multi-rollup jauh lebih mudah. Selain itu, mungkin kasus penggunaan dan perilaku baru akan muncul sebagai hasilnya.

Ada banyak pertanyaan desain terbuka untuk komposabilitas tingkat transaksi. Salah satunya, bagaimana pengembang dapat memilih masuk atau keluar dari panggilan lintas-rollup untuk kebutuhan kontrak pintar mereka harus dipertimbangkan dengan hati-hati. Memungkinkan komposabilitas sewenang-wenang tanpa batasan berarti kita kembali ke rollup monolitik. Kami pikir jawabannya di sini adalah bagi pengembang untuk secara eksplisit menunjukkan di mana komposabilitas lintas-rollup diperlukan dalam kontrak mereka, misalnya melalui modifier Solidity seperti komposabelyang menandai titik-titik masuk tertentu dari kontrak sebagai dapat dipanggil cross rollup.

Implikasi bagi Pemangku Kepentingan

  1. Pengguna:
    Sama implikasinya seperti komposabilitas tingkat blok dengan kemampuan lanjutan tambahan seperti flashloans
    → UX hampir identik dengan menggunakan satu rantai untuk dapps yang memilih masuk
  2. Devs:
    Pengalaman pengembang sangat meningkat saat pengembang dapp dapat memanggil kontrak lintas rollup secara native dan menggunakan output dari panggilan tersebut seperti panggilan rollup tunggal
    Infrastruktur Superbuilder/Sequencer masih harus menempatkan transaksi dalam blok untuk rollups yang dipengaruhi oleh panggilan lintas-rollup, tetapi tidak perlu membangun bundel yang sama seperti dalam kasus komposabilitas tingkat blok.
  3. Pencari MEV:
    Potensi MEV tinggi karena bundel lintas-rollup sekarang pada dasarnya setara dengan transaksi tunggal di satu rantai
  4. Rollups:
    Akan memerlukan perubahan tingkat VM, serta memilih menjadi bagian dari sekuen penyelesaian bersama dan lapisan penyelesaian bersama
    → Asumsi kepercayaan tambahan terlibat dalam harus mempercayai input dan output untuk rollups lain sebelum dapat memverifikasi status melalui bukti, namun mekanisme pemotongan dapat mengurangi beban kepercayaan

Ringkasan dan Peta Ekosistem

Setelah menjelajahi detail teknis dari setiap tingkat interoperabilitas yang didefinisikan di sini, kita dapat merangkum:

  1. Shared Settlement memungkinkan pertukaran lintas rollup tanpa harus membalut aset secara eksternal dan menciptakan jalur pesan dalam protokol antara semua rollup yang terhubung
  2. Sequencing Bersama/Superbuilders memungkinkan jaminan eksekusi blok selanjutnya pada bundel cross-rollup
  3. Komposabilitas Tingkat Blok memungkinkan bundel cross-rollup yang kompleks, cepat, dan saling tergantung untuk dibuat, mencapai ekosistem yang dapat dikomposisikan hampir selevel kontrak pintar ke kontrak pintar.
    Dengan penambahan penyelesaian bersama, bundel lintas-rollup ini dapat dibuat tanpa menggunakan aset yang dibungkus secara eksternal
  4. Komposabilitas Tingkat Transaksi memungkinkan, dan sementara kasus penggunaan baru yang terbuka mungkin ditujukan untuk pengguna yang lebih canggih, ini memiliki potensi untuk secara besar-besaran meningkatkan pengalaman pengembangan lintas-rollup.

Pada saat ini, ada banyak proyek yang muncul untuk menciptakan ekosistem yang dapat saling beroperasi secara alami. Berikut adalah gambaran umum dari lanskap ini:

Peta Ekosistem

Peta Ekosistem

Pikiran penutup

Masih ada pertanyaan terbuka tentang nuansa teknis dalam kerangka yang diuraikan dalam artikel ini. Misalnya, membangun bundel dalam ekosistem komposable tingkat blok untuk pesanan batas lintas-rollup mungkin memiliki desain yang lebih rinci untuk menangani kasus pemenuhan parsial dan toleransi geseran untuk pesanan pasar. Kami menawarkan satu solusi potensial di sini untuk mengembalikan bundel pesanan batas lintas-rollup jika pesanan tidak sepenuhnya terpenuhi, tetapi ruang desain terbuka.

Selain itu, layak untuk dikaitkan dengan kesadaran saat ini yang tumbuh di ruang tentang appchains. Appchains adalah L2 long-tail yang entah umum atau berizin dengan tujuan menyilokan protokol terkait tertentu di satu L2. Kemungkinan besar bahwa ketika kita mencapai komposabilitas tingkat blok juga akan mulai melihat lingkungan appchain mendapatkan daya tarik signifikan sebagai hasil dari memiliki komposabilitas asli antara semua jaringan yang terhubung.

Pada saat ini, masih sulit untuk menginisiasi likuiditas ke appchains ini, tetapi begitu sebuah rantai yang lebih besar terhubung sebagai jalan masuk ke lingkungan yang dapat dioperasikan, kemungkinan besar kita akan melihat ekosistem taman yang dikelilingi dinding sekitar infrastruktur bersama.

Pertanyaan terbuka penting lainnya adalah bagaimana ruang desain di sekitar superbuilders akan diselesaikan. Pengembangan di depan ini masih cukup muda, dan belum jelas apa yang akan menjadi cara yang paling efisien dan efektif untuk membuat jaringan pembangun canggih yang dapat membuat bundel lintas-rollup. Di mana bundel lintas-rollup ini secara optimal akan disertakan dalam blok, dan dampak pada pendapatan rollup adalah pertanyaan terbuka dengan berbagai strategi yang dieksplorasi oleh banyak tim.

Pada akhirnya, masa depan kemungkinan akan melibatkan kombinasi solusi bridging in-protocol dan out-of-protocol dan mereka akan bekerja bersama-sama untuk menyediakan proses interoperabilitas yang jauh lebih baik untuk semua orang. Kami percaya perkembangan yang didefinisikan dalam artikel ini dapat berfungsi sebagai panduan bagi pengembang dan pembangun yang berfokus untuk membuat interoperabilitas lintas-rollup lebih mulus bagi pengguna akhir.

Kemungkinan besar akan ada paradigma baru yang benar-benar untuk interaksi lintas-rollup yang belum ditemukan. Jika Anda seorang pengembang yang bekerja pada pendekatan yang memperluas topik di sini atau tidak tercakup di atas, silakan mencapai keluar(DMS terbuka). Teknologi akhirnya cukup matang untuk memberikan tekanan nyata dalam menemukan solusi untuk fragmentasi likuiditas/ekosistem, dan kami selalu mencari koneksi dengan para pendiri yang mengambil risiko untuk membangun solusi kreatif.

Pengakuan

Artikel ini tumbuh dari diskusi bulat interoperabilitas rollup yang sangat berwawasan yang diselenggarakan oleh 1kx di EthCC. Terima kasih khusus kepada Noah Pravecek, Ellie Davidson, dan Terryuntuk membaca versi awal artikel ini dan memberikan umpan balik, serta kepada Marti, mteam, dan Bo Duuntuk percakapan lebih lanjut tentang subjek ini.

Penyangkalan:

  1. Artikel ini dicetak ulang dari [cermin], Kemukakan Judul Asli‘Trustless Interoperability antara Rollups: Lanskap, Konstruksi, dan Tantangannya’, Semua hak cipta milik penulis asli [Marshall Vyletel Jr.]. Jika ada keberatan terhadap cetak ulang ini, silakan hubungi Belajar Gatetim, dan mereka akan menanganinya dengan cepat.

  2. Penolakan Tanggung Jawab: Pandangan dan opini yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan saran investasi apapun.

  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel-artikel yang diterjemahkan dilarang.

株式

Interoperabilitas Tanpa Kepercayaan antara Rollups: Lanskap, Konstruksi, dan Tantangan

Lanjutan9/24/2024, 6:37:26 PM
Dalam artikel ini, kami melakukan survei terhadap lanskap interoperabilitas tanpa kepercayaan dengan mendefinisikan dan membahas enam tingkat solusi interoperabilitas antara ekosistem rollup yang terfragmentasi.

Pengenalan

Telah terjadi ledakan Cambrian dari rollups di Ethereum. Saat ini, ada 91 L2 & L3 langsung dan 82 yang akan datang menurut L2Beat. Sebagai hasilnya, ada juga sejumlah signifikan fragmentasi dalam hal likuiditas, pengalaman pengguna, dan alat pengembang. Solusi saat ini untuk interoperabilitas masih jauh dari memuaskan, karena mengandalkan kombinasi jembatan pihak ketiga, aset yang dibungkus secara eksternal, dan kerangka kerja niat, masing-masing membawa serangkaian masalah mereka sendiri.

  1. Jembatan likuiditas sering menjadi target dari peretasan kripto terbesar (misalnya, pembobolan jembatan wormhole senilai $321 juta)
  2. Aset-aset yang dibungkus secara eksternal tidak diinginkan, dan data telah menunjukkan bahwa orang lebih memilih untuk menyimpan aset dalam bentuk asli setiap kali memungkinkan (misalnya, terdapat aset yang dijembatani secara kanonis senilai $22 miliar dan hanya aset yang dibungkus secara eksternal senilai $3 miliar, menurutL2Beat)
  3. Framework niat bergantung pada pihak ketiga yang memerlukan kepercayaan yang tidak dapat diabaikan, dan datang dengan biaya tambahan untuk memfasilitasi aktivitas lintas rollup (misalnya pengguna rantai Degen kehilangan >80% dari tokenkarena jembatan resmi tidak bersifat kanonik)a. Kerangka niat terpusat juga berarti persaingan yang lebih rendah dan hal ini bisa menyebabkan penetapan harga dan kinerja yang kurang optimal

Dalam artikel ini, kami melakukan survei terhadap lanskap interoperabilitas tanpa kepercayaan dengan mendefinisikan dan membahas enam tingkat solusi interoperabilitas antara ekosistem rollup yang terfragmentasi.

Kami mulai dengan kasus default penarikan secara asinkron dari rollup sumber ke L1 dan secara manual memasukkannya ke rollup target, dan kami berakhir dengan arsitektur hipotetis untuk komposabilitas lintas rollup dalam satu transaksi. Kami akan mengeksplorasi bagaimana setiap tingkat interopabilitas akan memengaruhi pengalaman pengguna, pengalaman pengembang, potensi MEV, dan rollup itu sendiri (terkait secara khusus dengan perubahan infrastruktur).

Kami sebagian besar berada dalam lingkup Ethereum dan L2nya untuk artikel ini dan fokus secara eksklusif pada interopabilitas tanpa kepercayaan. Dalam hal ini, 'interopabilitas tanpa kepercayaan' merujuk pada saluran dalam protokol yang tidak memerlukan pihak ketiga untuk memfasilitasi transfer di luar infrastruktur yang diperlukan seperti yang sudah banyak diwajibkan oleh rollups.

Preliminaries

Definisi

Pada dasarnya, interopabilitas tanpa kepercayaan memerlukan sumber daya bersama yang harus diakses oleh dua protokol yang ingin berinteropabilitas. Dalam kasus Ethereum L1, semua kontrak pintar berada dalam lingkungan yang sama dan berbagi seluruh status Ethereum, sehingga mereka akan selalu memiliki tingkat interopabilitas tertinggi. Namun, L2 hanya berbagi lapisan penyelesaian melalui kontrak jembatan terpisah sehingga interopabilitas jauh lebih terbatas.

Komponen infrastruktur bersama yang penting yang dapat memajukan kita sepanjang tangga interoperabilitas tanpa kepercayaan adalah pengurutan bersama, pembangun super, dan penyelesaian bersama. Jaminan dan fungsionalitas baru yang dibuka oleh lapisan bersama ini terkait, tetapi pada dasarnya bersifat ortogonal dalam alam.

  1. Sequencers/Superbuilders Bersama: Utamanya peningkatan kecepatan dan pengalaman pengguna.
  2. Penyelesaian Bersama: Pertukaran aset tanpa pembungkus eksternal serta pesan dalam protokol.

Untuk memulai, kita akan terlebih dahulu mendefinisikan enam tingkat interoperabilitas tanpa kepercayaan yang disebutkan dalam pengantar:

  1. L1 Async:
    Interoperabilitas melalui transfer aset manual melalui L1 yang rollups menyelesaikan transaksi.
  2. Atomic Inclusion:
    → Jaminan bahwa entah semua transaksi dalam bundel cross-rollup akan disertakan dalam blok berikutnya untuk setiap rollup yang terlibat dalam bundel, atau tidak akan ada.
  3. Penyelesaian Bersama:
    → Beberapa rollups yang terhubung ke L1 melalui kontrak jembatan yang sama.
  4. Eksekusi Atom:
    → Jaminan bahwa entah semua transaksi dalam bundel cross-rollup akan disertakan dan berhasil dieksekusi dalam blok berikutnya untuk setiap rollup yang terlibat dalam bundel tersebut, atau tidak ada yang akan dieksekusi. Eksekusi yang berhasil merujuk pada setiap transaksi yang dieksekusi tanpa mengalami pembalikan dan tercermin dalam keadaan terbaru untuk setiap rollup dalam bundel.
  5. Komposabilitas Tingkat Blok:
    → Blok selanjutnya menjamin bundel lintas-rollup yang dapat berisi transaksi yang saling bergantung (tx B di rollup B bergantung pada hasil tx A di rollup A)
  6. Komposabilitas Tingkat Tx:
    Interoperabilitas tingkat kontrak pintar yang memerlukan hanya satu transaksi yang dapat menyebabkan perubahan status secara bersamaan di banyak rollup (tanpa bundel). Menggunakan protokol apa pun di seluruh rollup secara logis setara dengan menggunakan kontrak pintar yang berbeda di satu rantai. Yang penting, hal ini menyiratkan bahwa perubahan status sebelum panggilan apa pun dapat dibatalkan saat panggilan tersebut kembali.

Untuk memahami setiap level lebih lanjut, kami akan melalui kasus penggunaan kunci berikut untuk mendemonstrasikan kekuatan setiap level serta implikasinya bagi pengguna, pengembang, rollups, dan pencari MEV.

Contoh Ilustratif:

  1. Transfer Token yang Sama
    → Kirim ke diri sendiri: Menukar Eth dengan Eth atau ERC-20 dengan ERC-20 di dua rollups
  2. Pembelian Token
    → Pesanan Batas Cross-Rollup: Menggunakan Eth/ERC-20 dari Rollup A, beli ERC-20 yang berbeda dari DEX di Rollup B dan (opsional) kirim kembali ke Rollup A

Implikasi:

Pertanyaan-pertanyaan berikut akan dijawab juga untuk lebih memahami dampak pada pemegang saham kunci dalam ekosistem rollup mana pun.

  1. Pengalaman Pengguna
    Bagaimana pengalaman pengguna berubah dengan mencapai tingkat interoperabilitas ini?
  2. Pengalaman Pengembang
    Bagaimana pengalaman pengembang berubah dengan mencapai tingkat interoperabilitas ini?
  3. Potensi MEV
    Apakah ada potensi peluang MEV baru jika kita mencapai tingkat interoperabilitas ini?
  4. Implikasi Rollup
    Apakah rollup harus memilih masuk ke infrastruktur baru untuk mencapai ini? Apa perubahan dalam struktur biaya untuk rollup? Apa manfaat potensial bagi rollup untuk berpartisipasi dalam infrastruktur ini?

Gambaran Umum Tingkat Tinggi

Ikhtisar perubahan bagi pemangku kepentingan utama

Progresi Enam Tingkat Menuju Interoperabilitas Tanpa Kepercayaan

1. L1 Async

Infrastruktur yang Diperlukan:

N/A

Seperti yang didefinisikan, ini mengacu pada mode default saat ini dari interoperabilitas tanpa kepercayaan. Semua rollups didefinisikan sebagai demikian karena mereka dibangun di L1 sebagai lapisan penyelesaian dan memiliki akses ke L1 tersebut hanya melalui kontrak jembatan di mana mereka secara berkala memposting pembaruan status untuk mengamankan jaringan.

Satu-satunya cara kanonikal untuk melakukan aktivitas cross-rollup tanpa kepercayaan dalam kasus ini adalah dengan menarik aset dari rollup sumber melalui jembatan kanonikal dan menyetorkannya secara manual ke rollup target setelah tersedia di L1.

Untuk rollup optimis, latensi penarikan ini adalah sekitar 7 hari untuk memperhitungkan jendela bukti kesalahan. Pada ZK rollup, latensi penarikan kurang pasti tetapi bisa berlangsung dari 15 menit hingga satu hari penuh, seperti halnya dengan ZkSync.

Selain itu, pertukaran atom peer-to-peer menggunakan kontrak pintar memungkinkan, tetapi ini adalah kasus penggunaan yang lebih kecil dan tidak secara efektif dapat diskalakan.

Perlu dicatat solusi pihak ketiga yang saat ini ada:

  1. Jembatan Likuiditas
  2. kerangka niat

Kedua contoh ilustratif kami memerlukan solusi pihak ketiga untuk memfasilitasi.

Kirim-Ke-Diri-Sendiri:

  1. Secara kanonikal:
    → Menarik aset dari Rollup A
    → Deposit secara manual ke Rollup B
  2. Pihak Ketiga:
    Jembatan Likuiditas / Jaringan Pemecah Masalah

Cross-Rollup Limit Order

  1. Secara kanonikal:
    → Menarik aset dari Rollup A
    → Menyetor secara manual ke Rollup B
    → Melakukan pesanan limit
    → Untuk mengirim kembali, seseorang harus melapisi eksternal target ERC-20
  2. Pihak Ketiga
    Ruang solusi yang baru muncul untuk pesanan batas lintas rollup
    → Ada desain terbuka seputar penggunaan niat untuk memfasilitasi ini

Karena ini adalah kasus default, tidak perlu membahas perubahan pada UX, DevEx, MEV, dan rollups.

2. Atomic Inclusion

Infrastruktur yang Diperlukan

Sequencer Bersama *

Inklusi atom hanya menjamin bahwa bundel lintas-rollup akan disertakan dalam blok berikutnya.

Ini memerlukan sequencer bersama, tetapi secara teoritis dapat dicapai tanpanya secara manual jika sequencer pada dua rollup yang diberikan tidak berada pada throughput maksimum (seseorang bisa dengan mudah mengirimkan dua transaksi ke masing-masing rollup secara individual). Inilah mengapa kami menambahkan asterisk pada infrastruktur yang diperlukan.

Namun, kami tidak berasumsi bahwa sequencer bersama menjalankan node penuh dari masing-masing rollups yang terhubung sehingga tidak dapat menjamin eksekusi berhasil untuk bundel transaksi. Sequencer bersama dalam kasus ini hanya dapat menjamin bahwa transaksi tersebut terbentuk dengan baik dan akan disertakan dalam blok berikutnya, tetapi tidak selalu berhasil dieksekusi.

Karena tidak ada jaminan eksekusi, tidak mungkin untuk memanfaatkan inklusi atomik secara programatik dengan cara yang bermakna tanpa menimbulkan risiko pembatalan salah satu transaksi. Sebagai hasilnya, kita pada dasarnya berada dalam kasus yang sama persis dengan interoperabilitas Async L1.

Pertimbangkan untuk memulai pertukaran cross-rollup sederhana dengan hanya menjamin inklusi atomik:

  1. Paket Pertukaran Cross-Rollup
    → Tx 1: Kunci/Musnahkan token pada rollup sumber
    → Tx 2: Membuat token ke alamat pengguna pada rollup tujuan

Kami mungkin memiliki jaminan inklusi atomik dalam hal kedua transaksi sebenarnya disertakan dalam blok-blok berikutnya untuk masing-masing rollup, tetapi jika transaksi pertama mengalami revert dan yang kedua tidak, pengguna akan salah dialokasikan dana di rantai tujuan tanpa mengunci atau membakarnya di rantai sumber dan kami akan menghadapi masalah pengeluaran ganda.

Setiap solusi interoperabilitas, baik itu jembatan likuiditas, kerangka tujuan, atau pertukaran xERC-20, akan rentan terhadap risiko ini dan tidak mungkin untuk mengatasinya. Karena risiko ini, solusi saat ini memerlukan transaksi awal untuk berhasil dieksekusi dan dimasukkan dalam blok pada rantai sumber sebelum menggunakan pelayan untuk meneruskan pesan yang dipancarkan dan mengeksekusi transaksi kedua pada rantai tujuan.

Takeaway Penting: Inklusi Atom tidak berdampak berarti terhadap potensi interoperabilitas

3. Penyelesaian Bersama

Infrastruktur yang Diperlukan:

Lapisan agregasi bukti // Kontrak jembatan bersama

Ini adalah tempat di mana hal-hal mulai menjadi lebih menarik. Sebagai hasil dari kontrak jembatan bersama, semua likuiditas yang disimpan ke dalam ekosistem rollup dari L1 dapat dipindahkan secara bebas di antara semua rollup yang terhubung. Sampai titik ini, kita tidak dapat melakukan pertukaran antara rollup tanpa melalui saluran kanonikal, melingkari aset secara eksternal, atau menggunakan solusi pihak ketiga.

Mengapa membangun kontrak jembatan bersama? Untuk memahami mengapa memiliki kontrak jembatan bersama memungkinkan kita untuk memindahkan aset secara trustless di seluruh rollups, pertama-tama pertimbangkan apa yang akan terjadi jika memungkinkan memiliki Eth di Rollup A, membakarnya, dan membuatnya secara native di Rollup B tanpa kontrak jembatan bersama di L1.

Kami melihat bahwa setiap rollup akan tidak sinkron dengan kontrak jembatan mereka di mainnet. Kontrak jembatan rollup B masih memiliki 50 Eth, sehingga pengguna tidak akan dapat menarik 1 Eth mereka ke L1.

Untuk menyelesaikan ini, protokol pembungkus aset eksternal dibangun yang mengeluarkan versi terbungkus eksternal dari token melintasi rollups yang melambangkan versi asli di tempat lain dalam jaringan.

Dengan lapisan penyelesaian bersama, situasinya terlihat berbeda. Karena semua likuiditas untuk setiap rollup yang terhubung terkunci dalam kontrak jembatan yang sama, seseorang dapat bergerak bebas antara rollups, karena jumlah total nilai dalam kontrak jembatan tetap sama dan selalu dapat ditarik.

Perlu ada pembaruan pada tingkat kontrak L1 tentangdimana likuiditas adalah untuk memungkinkan pengguna menarik dari mana saja, tetapi ini sepele karena semua rollups yang terhubung dapat membaca/menulis ke kontrak bersama.

Dengan lapisan penyelesaian bersama, alur dapat terlihat seperti berikut untuk kasus pengiriman sendiri yang sederhana.

Kirim ke Sendiri:

  1. Pengguna membuat transaksi awal:
    → Tx 1: menarik Eth di rollup A (dengan pesan untuk mencetaknya di rollup B)
    → Transaksi dijadwalkan dan diajukan ke kontrak L1
    → Ini diagregatkan ke akar transaksi yang mengelompokkan semua rollups penyelesaian bersama
  2. Rollup B mengimpor root tx ini
  3. Relayer mengirimkan transaksi untuk mencetak bersama dengan Bukti Merkle untuk rollup B
  4. Rollup B memverifikasi transaksi pembakaran menggunakan Merkle Proof dan root transaksi
  5. Pengguna di-mintakan Eth di Rollup B
  6. Rollup B mengirimkan bukti ke L1

Kita dapat memperluas aliran ini ke semua ERC-20 yang memiliki kontrak di semua rollups dalam ekosistem penyelesaian bersama.

Seseorang dapat menganggap kontrak jembatan bersama sebagai lapisan pesan dalam protokol antara semua rollups yang terhubung, sehingga secara teoritis aliran ini sebenarnya dapat diperluas ke standar pesan sembarang.

Ini membuat kita lebih dekat dengan komposabilitas, tetapi karena langkah-langkah yang diperlukan untuk mengumpulkan bukti dan meneruskan pesan hanya setelah perubahan status tercermin di L1, maka terdapat latensi tinggi (meskipun jauh lebih rendah dari kasus asinkron L1). Selain itu, aktivitas cross-rollup kompleks seperti menggunakan DEX di rollup B yang dimulai dengan aset di rollup A untuk pesanan limit cross-rollup masih akan menjadi proses yang melelahkan bagi pengguna karena mereka masih harus mengirim ke diri sendiri dan secara manual menukar aset di rollup tujuan. Tidak dapat membuat bundel cross-rollup atomik dalam kasus ini.

Manfaat penting lainnya dengan penyelesaian bersama adalah bahwa ada lebih sedikit gesekan bagi penyedia likuiditas atau penyelesaian yang mengisi pesanan di berbagai lingkungan. Karena likuiditas mereka di semua rollups terhubung tercermin dalam kontrak jembatan yang sama, mereka tidak perlu menunggu jendela penarikan penuh untuk mengelola likuiditas silang rollup mereka.

Dampak pada Pemangku Kepentingan:

  1. Pengguna:
    Sekarang dapat mentransfer aset dalam bentuk asli tanpa periode penarikan L1
  2. Pengembang:
    Perubahan terbatas pada penerbit token yang sekarang dapat menggunakan pesan dalam protokol untuk menerbitkan versi asli dari ERC-20 di semua rollups terhubung
  3. Pencari MEV:
    Karena ini terjadi selama beberapa blok untuk setiap rollup, tidak ada potensi MEV baru
  4. Rollups:
    Rollups akan harus memilih untuk menggunakan kontrak jembatan bersama dan kemungkinan menambahkan pra-kompilasi untuk menangani pesan lintas rollup

Poin Penting: Penyelesaian bersama memungkinkan transfer aset tanpa pembungkusan eksternal dan pesan sewenang-wenang di semua rollups yang berbagi kontrak jembatan dan lapisan agregasi bukti, namun akan tetap ada keterlambatan yang tidak dapat diabaikan (meskipun jauh lebih pendek dari L1 Async) dan tidak dapat membuat bundel atomik lintas rollup.

4. Eksekusi Atom

Infrastruktur yang Diperlukan:

Sequencer Bersama // Superbuilders

Eksekusi atom memungkinkan kita untuk menjamin eksekusi berhasil bundel lintas-rollup, tetapi seperti yang akan kita lihat, jumlah kasus penggunaan untuk bundel lintas-rollup yang tidak memiliki transaksi yang bergantung lebih sedikit dari yang mungkin diharapkan pada awalnya.

Jika ada transaksi tunggal dalam bundel transaksi yang saling tergantung mengalami pembalikan, maka semua transaksi lain menjadi tidak valid dan juga harus mengalami pembalikan, seperti halnya pembakaran dan pencetakan token di seluruh rollups. Pencetakan token pada rollup tujuan bergantung pada token tersebut telah dibakar atau dikunci pada rollup sumber, jadi kita bisa mengatakan bahwa bundel transaksi pembakaran dan pencetakan adalah bundel transaksi yang saling tergantung.

Membuat bundel ini tidak mungkin tanpa pihak tengah seperti superbuilder yang dapat membuat transaksi tujuan.

Pertimbangkan apa yang harus benar untuk bundel swap lintas rollup dibangun tanpa pihak lain selain pengguna. Sebuah bundel harus dibuat untuk mengunci/membakar aset di rollup sumber dan membuat aset di rollup tujuan, tetapi kami menghadapi masalah:

  1. Kontrak pada rollup sumber hanya dapat mengeluarkan pesan saat mengunci/membakar aset sumber asli, mereka tidak dapat memanggil dan membuat transaksi pada rollup tujuan.
    → Inilah mengapa protokol pesan dan jaringan relay ada.
    → Pesan dapat digunakan untuk mengatur apa yang harus dipanggil pada tujuan, tetapi sebenarnya tidak dapat membuat transaksi itu sendiri.
  2. Membuat transaksi kedua di rollup tujuan untuk membuat:
    Pengguna itu sendiri tidak dapat membuat tx ini karena mereka tidak memiliki hak mencetak token di rollup B
    → Yaitu) Rantai tujuan memerlukan bukti bahwa token telah dibakar / dikunci di rantai sumber, tetapi bukti ini tidak tersedia sampai setelah transaksi awal dieksekusi yang akan melanggar persyaratan atomisitas kami.
    → Pihak lain mana pun yang dapat membuat transaksi kedua dengan hak pencetakan secara teoritis dapat membuat transaksi "mint" pada rantai tujuan kapan saja tanpa terlebih dahulu membuat "pembakaran" atau kunci pada sumbernya, yang merupakan kerentanan besar.

Kita bisa melihat bahwa meskipun kita bisa menjamin eksekusi bundel lintas-rollup, kita menghadapi kesulitan dalam cara kita bisa membangunnya pada awalnya untuk mentransfer aset bernilai.

Namun, masih ada beberapa kasus penggunaan untuk eksekusi atomik tanpa paket lintas rollup yang bergantung. Salah satunya adalah arbitrase lintas rollup:

Arbitrase DEX Cross-Rollup dengan Eksekusi Atom

Karena tidak ada ketergantungan yang ketat antara transaksi-transaksi ini, siapa pun dapat membuat bundel atom ini dan mengirimkannya ke sequencer bersama yang akan menjamin eksekusi atomik.

Namun, untuk memiliki jaminan eksekusi atomik pada awalnya, rollups harus memilih menjadi bagian dari sequencer bersama dan superbuilder yang akan menjalankan node penuh dari semua rollups yang terhubung, sehingga langkah dari eksekusi atomik ke komposabilitas tingkat blok cukup kecil dan semua solusi pengurutan bersama akan melakukannya. Satu-satunya perubahan yang diperlukan adalah pembangun blok atau pihak ketiga lainnya harus dapat membuat transaksi atas nama pengguna untuk menyelesaikan bundel lintas-rollup yang saling tergantung.

Tidak mungkin infrastruktur akan dibangun yang hanya memungkinkan eksekusi atomik tanpa melangkah lebih jauh untuk memiliki komposabilitas. Keuntungan relatif melompat ke komposabilitas tingkat blok penuh jauh lebih besar daripada kesulitan dalam mencapainya mengingat infrastruktur sudah memiliki eksekusi atomik.

Implikasi bagi Pemangku Kepentingan:

  1. Pengguna:
    Mungkin tidak ada perubahan, meskipun mungkin solusi pendukung pihak ketiga seperti niat bisa menjadi atomik, tetapi secara khusus bagaimana tidak jelas
  2. Pengembang:
    Mungkin tidak ada perubahan
  3. Pencari MEV:
    Arbitrase lintas-rollup jauh lebih aman karena eksekusi atom
  4. Rollups:
    Rollup harus memilih untuk menggunakan sequencer/superbuilder bersama yang mengirimkan blok dengan transaksi dari setiap rollup yang ingin saling beroperasi, yang dapat mengubah struktur pendapatan rollup. Belum jelas bagaimana itu akan berubah. \
  • Marketplace pengurutan mungkin meningkatkan pendapatan untuk rollups dengan memungkinkan ruang ToB dibeli oleh pembangun yang canggih

Poin Penting: Meskipun bundel lintas rollup dijamin untuk dieksekusi secara atomik, tidak jelas bagaimana bundel-bundel ini akan dibangun jika tidak ada superbuilder yang membuat bagian dari bundel, sehingga tidak mungkin bahwa eksekusi atomik itu sendiri akan berdampak pada interoperabilitas. Sequencer/superbuilder bersama seharusnya secara default membangun daripada komposabilitas tingkat blok.

5. Komposabilitas Tingkat Blok

Infrastruktur yang Diperlukan:

Sequencer Bersama // Superbuilder // Lapisan agregasi bukti// Kontrak jembatan bersama

(* = optional)

Dalam banyak wacana seputar sequencers bersama dan lapisan penyelesaian bersama, istilah yang sering digunakan untuk menggambarkan tingkat interoperabilitas ini adalah "komposabilitas sinkron".

Kami telah sedikit memodifikasi istilah ini agar lebih deskriptif. Memperbarui nomenklatur ke Komposabilitas Tingkat Blok menunjukkan bahwa memungkinkan untuk menggabungkan antara dua rollup dalam bundel transaksi lintas-rollup yang akan disertakan dan dieksekusi dengan sukses dalam blok berikutnya. Komposabilitas sinkron mungkin tertukar dengan komposabilitas tingkat transaksi, yang akan kami jelajahi di bagian berikutnya. Pentingnya, ini membutuhkan pihak tengah (infrastruktur pengurutan bersama) yang dapat menjadi pemimpin dan pencipta bundel transaksi yang saling bergantung.

Pada tingkat ini, kita mulai melihat komposabilitas sejati antara rollups di luar sekadar pengiriman ke diri sendiri untuk berpartisipasi dalam aplikasi di rollup lain.

Dengan penambahan sequencer bersama yang dapat membuat transaksi, kami sekarang dapat membuat bundel lintas rollup yang dapat dimanfaatkan oleh pengembang secara terprogram.

Ada dua kasus yang perlu dipertimbangkan:

  1. Komposabilitas Level Blok
  2. Komposabilitas Tingkat Blok + lapisan penyelesaian bersama

Dalam kedua kasus, kita dapat membuat bundel cross-rollup untuk aktivitas yang lebih kompleks tetapi dalam kasus kedua dengan penyelesaian bersama kita dapat menggunakan aset asli, yang dapat memiliki implikasi harga yang lebih baik untuk aktivitas DEX cross-rollup, misalnya.

Dengan komposabilitas tingkat blok, kita memiliki keuntungan dari eksekusi atomik dengan kemampuan tambahan untuk membuat bundel transaksi yang saling bergantung. Mari kita periksa dua contoh ilustratif kita.

Transfer Token yang Sama melalui xERC-20 (Tanpa Penyelesaian Bersama):

  1. Pengguna memiliki ERC-20
  2. Pengguna membuat tx melalui dapp:
    → Menyetor ERC-20 ke dalam kotak kunci xERC-20 untuk menerima versi terbungkus xERC-20
    → Bakar xERC-20
    Mengirim pesan yang menandakan kepada infrastruktur urutan bersama bahwa transfer lintas rollup telah dimulai bersama dengan data relevan untuk memfasilitasi pertukaran
  3. Superbuilder mengambil transaksi dan membuat bundel lintas-rollup
    → Tx 1: Transaksi wrap dan burn yang disebutkan di atas
    → Tx 2: Mint xERC-20 di rollup B
  4. Superbuilder mengirimkan cross-rollup ini ke sequencer bersama
    Karena superbuilder menjalankan node penuh dari dua rollups yang terhubung, mereka mensimulasikan transaksi untuk menjamin eksekusi bundel yang sukses. Jika salah satu transaksi mengalami revert, seluruh bundel akan direvert.
  5. Sequencer bersama mengirimkan blok yang berisi kedua transaksi ke lapisan DA serta ke node-node yang mengeksekusi perubahan status
  6. xERC-20 dibuat untuk pengguna di Rollup B

Dengan lapisan penyelesaian bersama, aliran menjadi lebih disederhanakan karena tidak perlu terlebih dahulu membungkus ERC-20 sebagai xERC-20 untuk pertukaran.

Sekarang mari kita periksa pesanan batas cross-rollup untuk membeli ERC-20 pada Rollup B dengan ERC-20 awal (berbeda) dari Rollup A dan ERC-20 yang dihasilkan dikirim kembali ke Rollup A. Dalam hal ini, kami tidak berasumsi bahwa kami memiliki lapisan penyelesaian bersama, meskipun aliran serupa ada dalam kasus dengan satu. Satu-satunya perbedaan adalah tidak juga harus membungkus aset secara eksternal.

Berikut adalah transaksi yang diperlukan dalam kasus ini:

  1. Bungkus dan bakar ERC-20 pada
  2. Mint xERC-20 di B
  3. Tukar awal xERC-20 dengan ERC-20 target di B
  4. Bungkus dan Bakar target ERC-20 di B
  5. Mint xERC-20 di A

Berikut adalah alur potensial bagaimana hal ini bisa berfungsi:

Limit Order Cross-Rollup dalam Lingkungan Composable Tingkat Blok

Aliran:

  1. Pengguna memulai transaksi pertama:
    → Bungkus dan Bakar xERC-20 dengan pesan yang dipancarkan untuk menentukan parameter swap (rantai tujuan, alamat DEX, ERC-20 untuk ditukar, harga pesanan limit, boolean untuk mengirim kembali atau tidak)
  2. Superbuilder melihat transaksi dan membuat bundel:
    → Tx 1: Pengguna membuat tx seperti yang dijelaskan di atas
    → Tx 2: Mencetak xERC-20 di tujuan (superbuilder harus memiliki hak istimewa pencetakan)
    → Tx 3: Pesanan limit menggunakan data dari tx 1
    → Tx 4: Bungkus dan Bakar ERC-20 pada B dengan asumsi pemenuhan penuh pada pesanan limit dengan pesan untuk mencetak di rantai sumber
    → Tx 5: Mencetak xERC-20 target dari output swap pada rantai sumber

Karena superbuilder menciptakan blok dan mengurutkan transaksi, ia dapat mensimulasikan setiap transaksi dan mengabaikan bundel jika salah satu transaksi akan dibalik. Misalnya, jika ditemukan bahwa pengguna tidak akan menerima pemenuhan lengkap pada pesanan limit mereka, bundel akan diabaikan sebelum blok dieksekusi.

Dalam kasus infrastruktur urutan bersama tanpa lapisan penyelesaian bersama, versi terbungkus secara eksternal dari Eth dan xERC-20 perlu digunakan, yang bisa mengakibatkan kondisi pasar yang lebih buruk di DEX karena kolam likuiditas yang lebih tipis untuk aset terbungkus. Dalam hal ini, pengguna mungkin harus menggunakan batas yang lebih lunak dengan selipan yang lebih ditoleransi dan bisa mendapatkan harga yang kurang optimal. Satu pengecualian dari hal ini adalah jika USDC terlibat. Memungkinkan bahwa urut-urutan bersama tanpa penyelesaian bersama bisa bekerja dengan Circle untuk memperoleh hak eksklusif atas kontrak USDC di seluruh rollup untuk memfasilitasi transfer USDC asli dan pertukaran lintas rollup.

Dengan lapisan penyelesaian bersama, pembungkus eksternal ini tidak diperlukan, dan kemungkinan akan memberikan harga yang lebih baik karena adanya kolam likuiditas yang lebih dalam untuk pertukaran aset asli, tetapi alirannya pada dasarnya sama.

Optimistis Mempercayai Pengurut

Rollups perlu dengan optimis mempercayai sequencer/superbuilder bersama untuk membuat bundel lintas-rollup yang valid. Hal ini terutama karena bundel lintas-rollup ini berisi transaksi yang saling tergantung yang rollup individu tidak dapat verifikasi hingga setelah blok ditambahkan ke rantai masing-masing rollup dan diagregasi ke lapisan penyelesaian di L1. Contohnya adalah pembakaran dan pencetakan awal Eth dari sumber ke tujuan. Sangat penting bahwa Eth benar-benar dibakar di rantai sumber sebelum dicetak di rantai tujuan, jika tidak double spend bisa terjadi.

Namun, untuk menjalankan paket lengkap ini dalam satu blok, semua transaksi harus ada dalam blok tersebut bahkan jika transaksi tersebut mewakili keadaan yang tidak valid sebelum blok itu sendiri (seperti memiliki Eth di rantai tujuan untuk pertukaran jika pengguna tidak memiliki sebelum blok). Karena itu, kita harus mempercayai pengurutan bahwa ia benar-benar telah menyertakan dependensi yang valid dalam bundel cross-rollup. Seseorang dapat mengajukan bukti setelahnya untuk membuktikan validitas setiap transaksi.

Hal ini sedikit kurang penting saat menggunakan aset yang dibungkus, namun, karena mereka tidak berdampak pada likuiditas asli yang disimpan di L1, tetapi mekanisme cadangan masih harus ada untuk menanggulangi risiko pengurutan berbahaya atau bug dalam kode yang memungkinkan bundel transaksi dieksekusi dengan transaksi tergantung yang dibatalkan.

Implikasi bagi Pemangku Kepentingan:

  1. Pengguna
    Peningkatan besar-besaran ke UX dalam memungkinkan pesanan batas cross-rollup dalam satu blok
  2. Pengembang
    Perlu menyadari cross-rollup untuk aktivitas cross-rollup, kemungkinan memanfaatkan precompiles kustom. Alih-alih hanya transaksi, pengembang harus berpikir dalam hal bundel, tetapi kemungkinan besar superbuilders dan infrastruktur rollup kustom dapat menyembunyikan sebagian besar kompleksitas pengembang.
  3. Pencari MEV
    Pencari MEV pada dasarnya memiliki kesempatan yang setara untuk menggunakan strategi L1 pada bundel cross-rollup, tetapi itu tergantung pada bagaimana PBS (Pemisahan Penyusun-Pengusul) diimplementasikan.
    Bundel lintas-rollup pada dasarnya dilihat sebagai satu transaksi tunggal, sehingga MEV bisa ditemukan dengan front-running atau sandwiching bundel ini selama mereka tidak mengubah harga di luar jumlah selipan yang ditoleransi (karena maka seluruh bundel akan kembali dan upaya MEV akan gagal)
  4. Rollups
    Perlu masuk untuk infrastruktur pengurutan bersama (termasuk pembangun super) serta memungkinkan akses untuk membakar/menghasilkan Eth ke pengurut bersama dalam kasus lapisan penyelesaian bersama.
    Dapat menginternalisasi MEV dengan menjual ruang blok kepada pembangun

6. Komposabilitas Tingkat Transaksi

Infrastruktur yang Diperlukan:

Perubahan Tingkat VM // Penyelesaian Bersama // Superbuilders

Komposabilitas tingkat transaksi merujuk pada tingkat fungsionalitas yang sama yang dibagikan oleh kontrak pintar pada satu rantai EVM. Dalam hal ini, satu transaksi dapat memperbarui status di beberapa rollups secara bersamaan, dan memastikan bahwa setiap perubahan status sebelum panggilan apa pun dapat dikembalikan jika panggilan tersebut tidak berhasil. Secara efektif, bundel atom transaksi dalam lingkungan komposabel tingkat blok dapat dilakukan dalam satu transaksi lintas rollup dan lintas VM tunggal. Hal ini memerlukan perubahan tingkat VM untuk semua rollup yang terhubung ditambah lapisan penyelesaian bersama dan superbuilder.

Kami menggambarkan mekanisme yang mungkin di sini pada tingkat tinggi. (Konstruksi ini karena tim Espresso sesuai pengetahuan kami). Pertama, pengguna mengirimkan transaksi cross-rollup ke semua rollup yang statusnya diubah oleh transaksi atau superbuilder yang dapat membangun blok di semua rollup yang terlibat. Superbuilder mensimulasikan transaksi dan membentuk daftar pasangan input-output, satu untuk setiap rollup yang terlibat, yang menentukan pesan cross-rollup yang diperlukan dan diharapkan dalam transaksi. (Perhatikan bahwa superbuilder hanya dapat melakukannya jika memiliki hak pengurutan yang aman untuk semua rollup yang terlibat untuk jangka waktu tertentu). Superbuilder kemudian mengirimkan blok simulasi ke pengusul setiap rollup, bersama dengan daftar pasangan input-output yang diharapkan untuk setiap transaksi cross-rollup. Selama eksekusi, setiap rollup menjalankan fungsi transisi statusnya sendiri seperti biasa dengan asumsi input dari daftar transaksi cross-rollup sudah benar. Selama penyelesaian, daftar input-output kemudian dapat dibandingkan silang dan terbukti aman selama fase agregasi bukti di lapisan penyelesaian bersama. Secara khusus, jika input yang diharapkan untuk transaksi cross-rollup tidak cocok dengan apa yang telah ditentukan rollup lain sebagai output, proses penyelesaian akan menolak seluruh transaksi cross-rollup.

Meskipun terdapat fungsi baru yang terbatas yang terungkap dengan komposabilitas tingkat transaksi di luar pinjaman kilat, pengalaman pengembang untuk membuat aplikasi cross-rollup dapat ditingkatkan secara signifikan. Kemampuan untuk membuat dapps yang berinteraksi dengan semua rantai terhubung tanpa mempertimbangkan bundel cross-rollup akan membuat inovasi dalam lanskap multi-rollup jauh lebih mudah. Selain itu, mungkin kasus penggunaan dan perilaku baru akan muncul sebagai hasilnya.

Ada banyak pertanyaan desain terbuka untuk komposabilitas tingkat transaksi. Salah satunya, bagaimana pengembang dapat memilih masuk atau keluar dari panggilan lintas-rollup untuk kebutuhan kontrak pintar mereka harus dipertimbangkan dengan hati-hati. Memungkinkan komposabilitas sewenang-wenang tanpa batasan berarti kita kembali ke rollup monolitik. Kami pikir jawabannya di sini adalah bagi pengembang untuk secara eksplisit menunjukkan di mana komposabilitas lintas-rollup diperlukan dalam kontrak mereka, misalnya melalui modifier Solidity seperti komposabelyang menandai titik-titik masuk tertentu dari kontrak sebagai dapat dipanggil cross rollup.

Implikasi bagi Pemangku Kepentingan

  1. Pengguna:
    Sama implikasinya seperti komposabilitas tingkat blok dengan kemampuan lanjutan tambahan seperti flashloans
    → UX hampir identik dengan menggunakan satu rantai untuk dapps yang memilih masuk
  2. Devs:
    Pengalaman pengembang sangat meningkat saat pengembang dapp dapat memanggil kontrak lintas rollup secara native dan menggunakan output dari panggilan tersebut seperti panggilan rollup tunggal
    Infrastruktur Superbuilder/Sequencer masih harus menempatkan transaksi dalam blok untuk rollups yang dipengaruhi oleh panggilan lintas-rollup, tetapi tidak perlu membangun bundel yang sama seperti dalam kasus komposabilitas tingkat blok.
  3. Pencari MEV:
    Potensi MEV tinggi karena bundel lintas-rollup sekarang pada dasarnya setara dengan transaksi tunggal di satu rantai
  4. Rollups:
    Akan memerlukan perubahan tingkat VM, serta memilih menjadi bagian dari sekuen penyelesaian bersama dan lapisan penyelesaian bersama
    → Asumsi kepercayaan tambahan terlibat dalam harus mempercayai input dan output untuk rollups lain sebelum dapat memverifikasi status melalui bukti, namun mekanisme pemotongan dapat mengurangi beban kepercayaan

Ringkasan dan Peta Ekosistem

Setelah menjelajahi detail teknis dari setiap tingkat interoperabilitas yang didefinisikan di sini, kita dapat merangkum:

  1. Shared Settlement memungkinkan pertukaran lintas rollup tanpa harus membalut aset secara eksternal dan menciptakan jalur pesan dalam protokol antara semua rollup yang terhubung
  2. Sequencing Bersama/Superbuilders memungkinkan jaminan eksekusi blok selanjutnya pada bundel cross-rollup
  3. Komposabilitas Tingkat Blok memungkinkan bundel cross-rollup yang kompleks, cepat, dan saling tergantung untuk dibuat, mencapai ekosistem yang dapat dikomposisikan hampir selevel kontrak pintar ke kontrak pintar.
    Dengan penambahan penyelesaian bersama, bundel lintas-rollup ini dapat dibuat tanpa menggunakan aset yang dibungkus secara eksternal
  4. Komposabilitas Tingkat Transaksi memungkinkan, dan sementara kasus penggunaan baru yang terbuka mungkin ditujukan untuk pengguna yang lebih canggih, ini memiliki potensi untuk secara besar-besaran meningkatkan pengalaman pengembangan lintas-rollup.

Pada saat ini, ada banyak proyek yang muncul untuk menciptakan ekosistem yang dapat saling beroperasi secara alami. Berikut adalah gambaran umum dari lanskap ini:

Peta Ekosistem

Peta Ekosistem

Pikiran penutup

Masih ada pertanyaan terbuka tentang nuansa teknis dalam kerangka yang diuraikan dalam artikel ini. Misalnya, membangun bundel dalam ekosistem komposable tingkat blok untuk pesanan batas lintas-rollup mungkin memiliki desain yang lebih rinci untuk menangani kasus pemenuhan parsial dan toleransi geseran untuk pesanan pasar. Kami menawarkan satu solusi potensial di sini untuk mengembalikan bundel pesanan batas lintas-rollup jika pesanan tidak sepenuhnya terpenuhi, tetapi ruang desain terbuka.

Selain itu, layak untuk dikaitkan dengan kesadaran saat ini yang tumbuh di ruang tentang appchains. Appchains adalah L2 long-tail yang entah umum atau berizin dengan tujuan menyilokan protokol terkait tertentu di satu L2. Kemungkinan besar bahwa ketika kita mencapai komposabilitas tingkat blok juga akan mulai melihat lingkungan appchain mendapatkan daya tarik signifikan sebagai hasil dari memiliki komposabilitas asli antara semua jaringan yang terhubung.

Pada saat ini, masih sulit untuk menginisiasi likuiditas ke appchains ini, tetapi begitu sebuah rantai yang lebih besar terhubung sebagai jalan masuk ke lingkungan yang dapat dioperasikan, kemungkinan besar kita akan melihat ekosistem taman yang dikelilingi dinding sekitar infrastruktur bersama.

Pertanyaan terbuka penting lainnya adalah bagaimana ruang desain di sekitar superbuilders akan diselesaikan. Pengembangan di depan ini masih cukup muda, dan belum jelas apa yang akan menjadi cara yang paling efisien dan efektif untuk membuat jaringan pembangun canggih yang dapat membuat bundel lintas-rollup. Di mana bundel lintas-rollup ini secara optimal akan disertakan dalam blok, dan dampak pada pendapatan rollup adalah pertanyaan terbuka dengan berbagai strategi yang dieksplorasi oleh banyak tim.

Pada akhirnya, masa depan kemungkinan akan melibatkan kombinasi solusi bridging in-protocol dan out-of-protocol dan mereka akan bekerja bersama-sama untuk menyediakan proses interoperabilitas yang jauh lebih baik untuk semua orang. Kami percaya perkembangan yang didefinisikan dalam artikel ini dapat berfungsi sebagai panduan bagi pengembang dan pembangun yang berfokus untuk membuat interoperabilitas lintas-rollup lebih mulus bagi pengguna akhir.

Kemungkinan besar akan ada paradigma baru yang benar-benar untuk interaksi lintas-rollup yang belum ditemukan. Jika Anda seorang pengembang yang bekerja pada pendekatan yang memperluas topik di sini atau tidak tercakup di atas, silakan mencapai keluar(DMS terbuka). Teknologi akhirnya cukup matang untuk memberikan tekanan nyata dalam menemukan solusi untuk fragmentasi likuiditas/ekosistem, dan kami selalu mencari koneksi dengan para pendiri yang mengambil risiko untuk membangun solusi kreatif.

Pengakuan

Artikel ini tumbuh dari diskusi bulat interoperabilitas rollup yang sangat berwawasan yang diselenggarakan oleh 1kx di EthCC. Terima kasih khusus kepada Noah Pravecek, Ellie Davidson, dan Terryuntuk membaca versi awal artikel ini dan memberikan umpan balik, serta kepada Marti, mteam, dan Bo Duuntuk percakapan lebih lanjut tentang subjek ini.

Penyangkalan:

  1. Artikel ini dicetak ulang dari [cermin], Kemukakan Judul Asli‘Trustless Interoperability antara Rollups: Lanskap, Konstruksi, dan Tantangannya’, Semua hak cipta milik penulis asli [Marshall Vyletel Jr.]. Jika ada keberatan terhadap cetak ulang ini, silakan hubungi Belajar Gatetim, dan mereka akan menanganinya dengan cepat.

  2. Penolakan Tanggung Jawab: Pandangan dan opini yang terdapat dalam artikel ini semata-mata milik penulis dan tidak merupakan saran investasi apapun.

  3. Terjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel-artikel yang diterjemahkan dilarang.

今すぐ始める
登録して、
$100
のボーナスを獲得しよう!