Bitcoin Magazine: Apa kesulitan yang dihadapi oleh Rollup?

robot
Pembuatan abstrak sedang berlangsung

Sumber: Bitcoin Magazine; Diterjemahkan oleh: Wuzhu, Golden Finance

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

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

Struktur dasar Roll adalah sebagai berikut: Satu akun tunggal (UTXO di BTC) menyimpan saldo semua pengguna di Rollup. UTXO ini berisi suatu komitmen, yang ada dalam bentuk akar Merkle dari pohon Merkle, yang mewakili semua saldo saat ini dari semua akun di Rollup. Semua akun ini menggunakan Kunci Publik/Kunci Pribadi untuk otorisasi, sehingga untuk mengeluarkan pengeluaran off-chain, pengguna masih harus menandatangani beberapa konten menggunakan 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 dari operator.

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

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

Rollup yang Tepat

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

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

Dengan cara ini, Anda dapat menghemat banyak biaya dan ruang Blok (sehingga menghemat dana), sambil masih memungkinkan pengguna memastikan akses informasi yang diperlukan untuk keluar dari satu sisi. Aturan rollup mengharuskan data ini dimasukkan dalam rollup resmi yang disediakan oleh rantai Blok kepada pengguna, sehingga transaksi tanpa ringkasan akun atau perbedaan akun dianggap tidak valid.

Masa Berlaku

Salah satu cara lain untuk menangani masalah ketersediaan data penarikan pengguna adalah dengan meletakkan data di tempat lain di luar Blok. Ini memperkenalkan masalah yang rumit, di mana rollup masih perlu memastikan 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.

Hal ini menyebabkan dilema keamanan yang sama kuatnya. Ketika data dipublikasikan langsung ke BTCBlok chain, aturan Konsensus dapat menjamin kebenarannya secara mutlak. Namun, ketika data tersebut dipublikasikan ke sistem eksternal, yang terbaik yang dapat dilakukannya adalah memverifikasi bukti SPV, yaitu data telah dipublikasikan ke sistem lain.

Ini memerlukan bukti bahwa data ada di on-chain lain, akhirnya ini adalah sebuah masalah Mesin Oracle. Blok BTC tidak dapat sepenuhnya memverifikasi apa pun yang terjadi di luar Bloknya sendiri, yang terbaik yang dapat dilakukannya adalah memverifikasi ZKP. Namun, ZKP tidak dapat memverifikasi apakah Blok yang mengandung data rollup benar-benar disiarkan setelah dibuat. Itu tidak dapat memverifikasi apakah informasi eksternal benar-benar tersedia untuk semua orang.

Ini membuka pintu bagi serangan retensi data, yaitu menciptakan janji 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 bergantung sepenuhnya pada nilai dan struktur insentif sistem selain BTC.

Terjebak dalam Kesulitan

Ini menghadirkan dilema bagi rollup. Ketika datang ke masalah ketersediaan data, ada pilihan biner untuk mempublikasikan data ke blockchain BTC atau tempat lainnya. Pilihan ini memiliki dampak besar pada keamanan, kedaulatan, dan skalabilitas rollup.

Di satu sisi, menggunakan BTCBlok Chain sebagai lapisan ketersediaan data akan memberikan batas keras untuk skalabilitas rollup. Ruang Blok terbatas, yang menetapkan batas atas jumlah rollup yang dapat ada pada satu waktu dan jumlah total transaksi yang dapat diproses off-chain oleh semua rollup. Setiap pembaruan rollup memerlukan ruang Blok yang sebanding dengan jumlah akun yang mengalami perubahan saldo sejak pembaruan terakhir. Teori informasi hanya memungkinkan data dikompresi hingga tingkat tertentu, dan pada titik ini, tidak ada potensi ekspansi lebih lanjut.

Di sisi lain, menggunakan lapisan yang berbeda untuk mencapai ketersediaan data akan menghilangkan batas atas skalabilitas yang kaku, 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 dipublikasikan secara otomatis ke blockchain, maka status Rollup tidak akan berubah. Dengan menggunakan Validiums, jaminan ini sepenuhnya bergantung pada kemampuan sistem eksternal yang digunakan untuk melawan penipuan dan menyembunyikan data.

Sekarang, setiap produsen Blok yang tersedia dalam sistem ketersediaan data eksternal dapat mencuri dana pengguna BTCRollup dengan memproduksi Blok tanpa benar-benar menyiarkannya, sehingga membuat data tersedia.

Jadi, jika kita benar-benar berhasil mewujudkan implementasi Rollup yang ideal di BTC, dan benar-benar mewujudkan penarikan pengguna satu arah, bagaimana itu akan terjadi?

BTC0.71%
ETH0.83%
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)