Seiring Ethereum (ETH) terus menghadapi tantangan skalabilitas, optimistic rollups telah muncul sebagai solusi menjanjikan untuk mengatasi kemacetan jaringan dan biaya transaksi tinggi. Panduan komprehensif ini mengeksplorasi bagaimana optimistic rollups bekerja dan menyediakan instruksi rinci untuk memanfaatkannya guna mencapai transaksi lebih cepat.
Bagaimana Fungsi Optimistic Rollup?
Optimistic rollups berfungsi mirip dengan sistem perbankan berbasis cek. Sama seperti bank menghormati cek kecuali sengketa, optimistic rollups menganggap semua transaksi valid kecuali ditantang melalui pembuktian penipuan. Sistem ini beroperasi sebagai solusi skalabilitas Layer-2, mempertahankan keamanan melalui lapisan dasar Ethereum sambil memproses transaksi off-chain.
Komponen Utama
Arsitektur optimistic rollups bergantung pada beberapa komponen kritis:
- Optimistic Virtual Machine (OVM) berfungsi sebagai lingkungan runtime, memastikan eksekusi kontrak pintar deterministik antara Layer 1 dan Layer 2. Lingkungan sandboxed ini menjamin transisi keadaan yang konsisten di seluruh lapisan.
- Optimistic Geth berfungsi sebagai klien Layer-2, memiliki satu sequencer yang bertanggung jawab untuk memesan dan menambahkan batch transaksi ke kontrak rantai utama. Sequencer ini memainkan peran penting dalam menjaga urutan transaksi dan manajemen keadaan.
- Chain Contracts membentuk tulang punggung sistem optimistic rollup, beroperasi di mainnet Ethereum. Dua kontrak penting adalah:
- OVM_CanonicalTransactionChain (CTC) mempertahankan log transaksi yang hanya dapat ditambahkan yang diterapkan pada keadaan OVM. Sequencer menambahkan batch transaksi L2 ke rantai ini, sambil juga memungkinkan pengguna untuk enqueued transaksi L2.
- OVM_StateCommitmentChain (SCC) menyimpan akar keadaan yang diusulkan sesuai dengan transaksi CTC, mempertahankan hubungan satu-ke-satu dengan transaksi di rantai kanonik.
Mempercepat Transaksi Blockchain Menggunakan Optimistic Rollups
Proses Deposit
Untuk memulai transaksi yang lebih cepat, pengguna harus terlebih dahulu memahami proses deposit. Saat mentransfer aset dari Layer 1 ke Layer 2, urutan berikut terjadi:
Pengguna mengirim token ke kontrak jembatan token di Layer 1. Jembatan akan mengesampingkan token ini dan memicu pesan melalui kontrak Messenger, menargetkan jembatan Layer 2 yang sesuai dengan permintaan penyelesaian deposit. Transaksi ini dimasukkan ke CTC melalui fungsi enqueued.
Sequencer harus mengeksekusi transaksi enqueued ini, memanggil fungsi relayMessage dalam kontrak L2 Messenger. Akhirnya, kontrak Messenger menginstruksikan jembatan untuk menyelelesaikan deposit dengan mencetak token yang setara di Layer 2, yang kemudian dilepaskan ke alamat L2 pengguna.
Proses Penarikan
Proses penarikan mencerminkan urutan deposit tetapi memperkenalkan kompleksitas tambahan karena pertimbangan keamanan. Ketika menarik aset, sistem mengikuti langkah-langkah ini:
Pengguna memulai penarikan melalui jembatan Token L2, yang membakar token dan berkomunikasi dengan kontrak Messenger. Informasi ini dicatat dalam pohon keadaan L2 dan akhirnya muncul di CTC setelah sequencer memperbaruinya dengan batch transaksi baru.
Sequencer mempublikasikan keadaan ke SCC, memulai periode tunggu wajib di mana perubahan keadaan dapat ditantang. Jendela ini biasanya berlangsung satu minggu, memberikan waktu untuk pengajuan bukti penipuan jika diperlukan.
Setelah periode tantangan berakhir, pesan dapat diteruskan ke kontrak Messenger L1, yang memverifikasi jendela bukti penipuan yang telah berlalu sebelum menginstruksikan jembatan token untuk melepaskan token kepada pengguna.
Mengatasi Keterlambatan Penarikan
Periode sengketa selama seminggu menjadi tantangan signifikan bagi pengguna yang ingin mendapatkan dana mereka dengan cepat. Namun, beberapa strategi ada untuk mengurangi keterlambatan ini:
Penarikan Cepat yang Dibantu Penyedia Likuiditas
Solusi inovatif ini memperkenalkan penyedia likuiditas (LP) untuk memfasilitasi penarikan lebih cepat. LP mengoperasikan node L2 penuh untuk memverifikasi transaksi CTC dan dapat menawarkan likuiditas langsung kepada pengguna, mengenakan biaya untuk layanan ini.
Proses verifikasi memungkinkan LP menilai validitas transaksi sebelum sequencer mempublikasikan akar keadaan. Ketika LP menerima permintaan penarikan, mereka memberikan likuiditas langsung kepada pengguna sambil mengklaim pelepasan jembatan yang tertunda untuk diri mereka sendiri, menciptakan hubungan saling menguntungkan.
Sistem ini menawarkan beberapa keuntungan:
- Pengguna memperoleh akses langsung ke dana mereka tanpa menunggu periode sengketa berakhir.
- LP mendapatkan biaya untuk menyediakan likuiditas sambil mempertahankan keamanan melalui verifikasi transaksi.
- Proses tetap aman karena LP dapat memverifikasi transaksi melalui CTC terlepas dari publikasi akar keadaan sequencer.
Namun, pendekatan ini memiliki batasan tertentu:
- Token dengan likuiditas rendah mungkin menghadapi biaya penyediaan likuiditas yang mahal.
- Peristiwa penarikan besar dapat memicu kekurangan likuiditas.
- LP harus mempertahankan proses verifikasi yang akurat untuk menghindari kerugian finansial.
Menyeimbangkan Kecepatan Dengan Keamanan
Optimistic rollups mewakili solusi skalabilitas yang canggih yang menyeimbangkan keamanan dengan kecepatan transaksi. Meskipun penundaan penarikan yang ada menimbulkan tantangan, penarikan dengan bantuan penyedia likuiditas menawarkan solusi praktis bagi pengguna yang membutuhkan akses cepat ke dana. Seiring ekosistem terus berkembang, kita dapat mengharapkan penyempurnaan lebih lanjut terhadap mekanisme ini, berpotensi memperkenalkan solusi baru untuk meningkatkan kecepatan transaksi sambil mempertahankan jaminan keamanan tangguh yang membuat optimistic rollups menjadi solusi skalabilitas menarik untuk Ethereum.