Bitcoin Magazine: Apa Kendala yang dihadapi oleh Rollup?

金色财经_
BTC-1,95%
ETH-2,29%

Sumber: Bitcoin Magazine; Terjemahan: Wuzhu, Golden Finance

Rollups baru-baru ini telah menjadi fokus perluasan BTC, menjadi sesuatu yang benar-benar mengambil perhatian dari Jaringan Lighting, dalam hal perhatian yang lebih luas. Rollups bertujuan untuk menjadi lapisan kedua off-chain yang tidak terbatas atau terbatas oleh Likuiditas inti Jaringan Lighting, di mana pengguna akhir perlu memiliki dana yang dialokasikan (atau ‘dipinjam’) sebelumnya agar dapat menerima pembayaran, atau Node perantara perlu memiliki saldo saluran untuk memfasilitasi aliran pembayaran dari pengirim ke penerima.

Sistem-sistem ini awalnya dijalankan pada Ethereum dan sistem Turing Complete lainnya, tetapi belakangan ini fokus beralih ke porting mereka ke blockchain berbasis UTXO seperti BTC. Artikel ini tidak bermaksud membahas implementasi saat ini di BTC, tetapi membahas fitur rollup yang diidealkan yang bergantung pada kemampuan yang tidak didukung oleh BTC saat ini, yaitu kemampuan untuk langsung memverifikasi Zero-Knowledge Proof (ZKP) di BTC.

Arsitektur dasar Roll adalah sebagai berikut: Satu akun tunggal (UTXO dalam BTC) menyimpan saldo semua pengguna di Rollup. UTXO ini berisi janji yang hadir dalam bentuk akar Merkle dari pohon Merkle, menjanjikan saldo saat ini dari semua akun yang ada di Rollup. Semua akun ini diberi kuasa dengan Kunci Publik/Kunci Pribadi, sehingga untuk menarik pengeluaran diluar jaringan, pengguna masih harus menandatangani konten tertentu dengan Kunci Rahasia. Bagian dari struktur ini memungkinkan pengguna untuk keluar kapan saja tanpa izin, hanya dengan membuat bukti transaksi bahwa akun mereka adalah bagian dari pohon Merkle, mereka dapat keluar dari Rollup dengan sendirinya tanpa izin operator.

Operator Rollup harus menyertakan ZKP dalam transaksi untuk memperbarui saldo akun on-chain selama proses transaksi off-chain, jika tidak transaksi akan menjadi tidak valid dan tidak dapat dimasukkan ke dalam Blok. Bukti ini memungkinkan orang untuk memverifikasi bahwa semua perubahan saldo akun off-chain telah mendapat otorisasi yang tepat dari pemegang akun, dan bahwa operator tidak dengan jahat memperbarui saldo untuk mencuri dana pengguna atau dengan tidak jujur mengalokasikannya ulang ke pengguna lain.

Masalahnya adalah, jika hanya merkle tree root yang dipublikasikan di on-chain, pengguna dapat melihat dan mengaksesnya, bagaimana mereka dapat menempatkan cabang mereka di dalam pohon, sehingga mereka dapat keluar kapan pun tanpa izin?

Rollup yang Sesuai

Dalam Rollup yang sesuai, setiap kali terjadi konfirmasi transaksi off-chain baru dan status Rollup akun berubah, informasi akan langsung dimasukkan ke dalam blockchain. Bukan seluruh pohon, itu terlalu absurd, tetapi informasi yang diperlukan untuk membangun ulang pohon. Dalam implementasi yang sederhana, ringkasan dari semua akun yang ada di Rollup akan mencakup saldo, dan akun hanya ditambahkan dalam transaksi Rollup yang diperbarui.

Dalam implementasi yang lebih canggih, gunakan perbedaan saldo. Pada dasarnya ini adalah ringkasan dana mana akun telah bertambah atau berkurang selama proses pembaruan. Ini membuat setiap pembaruan Rollup hanya berisi perubahan saldo akun yang terjadi. Kemudian, pengguna dapat dengan mudah memindai rantai dan ‘menghitung’ dari awal Rollup untuk mengetahui status saldo akun saat ini, yang memungkinkan mereka membangun kembali pohon Merkle saldo saat ini.

Ini dapat menghemat banyak biaya dan ruang Blok (sehingga menghemat dana), sambil tetap memungkinkan pengguna memastikan informasi yang diperlukan untuk keluar dari satu sisi. Aturan rollup memerlukan data ini dimasukkan ke dalam rollup resmi yang disediakan oleh Blok chain untuk pengguna, yaitu transaksi tanpa ringkasan akun atau perbedaan akun dianggap sebagai transaksi yang tidak valid.

Periode berlaku

Salah satu metode lain untuk menangani masalah ketersediaan data penarikan pengguna adalah dengan meletakkan data di tempat lain di luar Blok. Ini memperkenalkan masalah yang rumit, rollup masih perlu memastikan bahwa data tersebut tetap tersedia di tempat lain. Secara tradisional, Blok lain digunakan untuk tujuan ini, yang dirancang khusus sebagai lapisan ketersediaan data untuk sistem seperti rollup.

Hal ini menyebabkan dilema keamanan yang sama kuatnya. Ketika data dipublikasikan langsung ke BTCBlok chain, aturan Konsensus dapat menjamin keabsolutan data tersebut. Namun, ketika data tersebut dipublikasikan ke sistem eksternal, yang terbaik yang dapat dilakukannya hanyalah melakukan verifikasi bukti SPV, yaitu data telah dipublikasikan ke sistem lain.

Ini memerlukan verifikasi data ada di Blok on-chain lain, yang pada akhirnya merupakan masalah Mesin Oracle. Blok BTC tidak dapat sepenuhnya memverifikasi apa pun yang terjadi di luar Blok on-chain sendiri, yang terbaik yang dapat dilakukannya adalah memverifikasi ZKP. Namun, ZKP tidak dapat memverifikasi apakah data rollup dari Blok setelah dibuat benar-benar disiarkan secara publik. Ini tidak dapat memverifikasi apakah informasi eksternal benar-benar tersedia untuk semua orang.

Ini membuka pintu untuk serangan penahanan data, yaitu menciptakan janji untuk data yang diterbitkan dan menggunakannya untuk mendorong rollup, tetapi data sebenarnya tidak tersedia. Ini menyebabkan pengguna tidak dapat menarik dana. Satu-satunya solusi yang benar-benar adalah bergantung sepenuhnya pada nilai dan struktur insentif sistem di luar BTC.

Terjebak dalam situasi sulit

Ini menimbulkan dilema bagi rollup. Ketika masalah ketersediaan data terjadi, pada dasarnya ada pilihan biner untuk mempublikasikan data ke blockchain BTC atau tempat lain. Pilihan ini memiliki dampak signifikan pada keamanan, kedaulatan, dan skalabilitas rollup.

Di satu sisi, menggunakan BTCBlok sebagai lapisan ketersediaan data akan memberikan batasan keras untuk skalabilitas rollup. Ruang Blok terbatas, ini membatasi jumlah rollup yang dapat ada pada satu waktu serta total transaksi yang dapat diproses off-chain oleh rollup. Setiap pembaruan rollup membutuhkan ruang Blok yang sebanding dengan jumlah akun yang mengalami perubahan saldo sejak pembaruan sebelumnya. Teori informasi hanya memungkinkan data dikompresi dalam tingkat tertentu, pada titik ini tidak ada potensi ekspansi lebih lanjut.

Di sisi lain, menggunakan lapisan yang berbeda untuk mencapai ketersediaan data akan menghilangkan batas atas peningkatan skalabilitas yang keras, tetapi juga membawa masalah keamanan dan kedaulatan baru. Dalam Rollup yang menggunakan BTC untuk mencapai ketersediaan data, jika data yang ingin diekstraksi oleh pengguna tidak secara otomatis dipublikasikan ke blockchain, maka status Rollup tidak dapat berubah. Dalam menggunakan Validium, jaminan ini sepenuhnya bergantung pada kemampuan sistem eksternal yang digunakan untuk melawan penipuan dan menyembunyikan data.

Saat ini, produsen Blok mana pun pada sistem ketersediaan data eksternal dapat menculik dana pengguna BTCRollup dengan memproduksi Blok daripada secara langsung menyiarkan Blok tersebut, sehingga membuat data tersedia.

Jadi, jika kita benar-benar mencapai implementasi Rollup yang ideal di BTC, yang benar-benar memungkinkan penarikan satu arah oleh pengguna, bagaimana hasilnya?

Lihat Asli
Penafian: Informasi di halaman ini dapat berasal dari pihak ketiga dan tidak mewakili pandangan atau opini Gate. Konten yang ditampilkan hanya untuk tujuan referensi dan bukan merupakan nasihat keuangan, investasi, atau hukum. Gate tidak menjamin keakuratan maupun kelengkapan informasi dan tidak bertanggung jawab atas kerugian apa pun yang timbul akibat penggunaan informasi ini. Investasi aset virtual memiliki risiko tinggi dan rentan terhadap volatilitas harga yang signifikan. Anda dapat kehilangan seluruh modal yang diinvestasikan. Harap pahami sepenuhnya risiko yang terkait dan buat keputusan secara bijak berdasarkan kondisi keuangan serta toleransi risiko Anda sendiri. Untuk detail lebih lanjut, silakan merujuk ke Penafian.
Komentar
0/400
Tidak ada komentar
Perdagangkan Kripto Di Mana Saja Kapan Saja
qrCode
Pindai untuk mengunduh aplikasi Gate
Komunitas
Bahasa Indonesia
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)