Bitcoin Magazine: Apa kesulitan yang dihadapi oleh Rollup?

robot
Pembuatan abstrak sedang berlangsung

Sumber: Bitcoin Magazine; Diterjemahkan oleh: Wu Zhu, Golden Finance

Rollups baru-baru ini telah menjadi pusat perhatian dalam skala besar BTC, menjadi sesuatu yang benar-benar mencuri sorotan dari Jaringan Lighting, dalam hal perhatian yang lebih luas. Rollups bertujuan untuk menjadi lapisan kedua off-chain yang tidak terbatas atau dibatasi oleh Likuiditas inti Jaringan Lighting, yaitu pengguna akhir perlu dialokasikan (atau ‘meminjam’) dana terlebih dahulu untuk menerima pembayaran, atau Node perutean perlu memiliki saldo saluran untuk memfasilitasi aliran dana dari pengirim ke penerima.

Sistem-sistem ini awalnya dijalankan pada Ethereum dan sistem Turing Complete lainnya, namun akhir-akhir ini fokus telah beralih ke portabilitas ke blockchain yang berbasis UTXO (seperti BTC). Artikel ini tidak bermaksud untuk membahas status quo yang diterapkan pada BTC saat ini, melainkan membahas fungsi idealisasi Rollup yang telah lama diperjuangkan, yang tergantung pada kemampuan BTC yang saat ini tidak didukung, yaitu kemampuan untuk memverifikasi Zero-Knowledge Proof (ZKP) langsung di BTC.

Struktur dasar Roll adalah sebagai berikut: satu akun tunggal (UTXO di BTC) menyimpan saldo semua pengguna di Rollup. UTXO ini berisi komitmen, yang hadir dalam bentuk root Merkle dari pohon Merkle, komitmen semua saldo saat ini dari semua akun Rollup. Semua akun ini disahkan dengan Kunci Publik/Kunci Pribadi, sehingga untuk melakukan pengeluaran off-chain, pengguna masih harus menandatangani beberapa konten 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 secara sepihak tanpa izin operator.

Operator Rollup harus menyertakan ZKP dalam transaksi untuk memperbarui saldo akun on-chain akun merkle root selama proses transaksi off-chain. Jika tidak ada ZKP ini, transaksi akan menjadi tidak valid dan tidak bisa dimasukkan ke dalam Blokchain. Bukti ini memungkinkan orang untuk memverifikasi apakah semua perubahan pada saldo akun off-chain telah mendapatkan otorisasi yang tepat dari pemegang akun, dan apakah operator tidak dengan sengaja memperbarui saldo untuk mencuri dana pengguna atau secara tidak jujur mengalokasikannya ulang kepada pengguna lain.

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

Rollup yang Sesuai

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

Dalam implementasi yang lebih canggih, menggunakan selisih saldo. Pada dasarnya ini adalah ringkasan dana yang ditambahkan atau dikurangi dari akun mana yang terjadi selama proses pembaruan. Ini memungkinkan setiap pembaruan Rollup hanya berisi perubahan saldo akun yang terjadi. Kemudian, pengguna dapat memindai rantai dan ‘menghitung’ dari awal Rollup untuk mendapatkan status terkini saldo akun, yang memungkinkan mereka untuk membangun kembali pohon Merkle saldo saat ini.

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

Masa Berlaku

Salah satu cara lain untuk mengatasi masalah ketersediaan data penarikan pengguna adalah dengan meletakkan data di tempat lain di luar Blok. Ini memperkenalkan masalah yang halus, rollup masih perlu memastikan secara ketat bahwa data tersedia di tempat lain. Secara tradisional, blok lain digunakan untuk tujuan ini, yang dirancang khusus sebagai lapisan ketersediaan data untuk sistem rollup dan sejenisnya.

Ini menciptakan dilema yang sama kuatnya dalam keamanan. Ketika data diposting langsung ke Blok BTC, aturan Konsensus dapat menjamin kebenarannya secara mutlak. Namun, ketika diposting ke sistem eksternal, yang terbaik yang dapat dilakukannya adalah memverifikasi bukti SPV, yaitu data telah diposting ke sistem lain.

Ini membutuhkan bukti bahwa data ada di on-chain lain, ini pada akhirnya adalah masalah Mesin Oracle. Blok Bitcoin tidak dapat sepenuhnya memverifikasi apa pun selain hal-hal yang terjadi di dalam bloknya sendiri, yang terbaik yang dapat dilakukannya adalah memverifikasi ZKP. Namun, ZKP tidak dapat memverifikasi apakah Blok yang mengandung data rollup benar-benar disiarkan secara publik setelah dihasilkan. Ini tidak dapat memverifikasi apakah informasi eksternal benar-benar tersedia untuk semua orang.

Ini membuka pintu bagi serangan penahanan data, yaitu menciptakan komitmen terhadap data yang dipublikasikan dan menggunakannya untuk mendorong rollup, tetapi data sebenarnya tidak tersedia. Ini menyebabkan pengguna tidak dapat menarik dana. Satu-satunya solusi yang benar-benar adalah mengandalkan nilai dan struktur insentif dari sistem di luar BTC.

Berada dalam kebuntuan

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

Di satu sisi, menggunakan BTCBlok sebagai lapisan ketersediaan data akan memberikan batasan keras terhadap skalabilitas rollup. Ruang Blok terbatas, yang mengatur jumlah rollup yang dapat ada dalam satu waktu dan total transaksi yang dapat ditangani off-chain oleh semua rollup. Setiap pembaruan rollup memerlukan ruang Blok yang sebanding dengan jumlah akun yang mengalami perubahan saldo sejak pembaruan sebelumnya. Teori informasi hanya memungkinkan kompresi data hingga batas tertentu, di mana tidak ada lagi potensi ekspansi.

Di sisi lain, menggunakan lapisan yang berbeda untuk mencapai ketersediaan data akan menghilangkan batas maksimum keuntungan skalabilitas, 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 akan berubah. Dalam penggunaan Validiums, jaminan ini sepenuhnya bergantung pada kemampuan sistem eksternal yang digunakan untuk melawan penipuan dan menyembunyikan data.

Sekarang, produsen Blok di sistem ketersediaan data eksternal dapat mencuri dana pengguna BTCRollup dengan memproduksi Blok daripada benar-benar menyiarkan Blok tersebut, sehingga membuat data menjadi tersedia.

Jadi, jika kita benar-benar mewujudkan implementasi Rollup yang ideal di BTC, dengan benar-benar mewujudkan penarikan unilateral pengguna, bagaimana hasilnya?

BTC1.98%
ETH2.76%
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
  • Hadiah
  • Komentar
  • Posting ulang
  • Bagikan
Komentar
0/400
Tidak ada komentar
  • Sematkan
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)