Bitcoin Magazine: Apa Kesulitan yang Dihadapi oleh Rollup?

robot
Pembuatan abstrak sedang berlangsung

Sumber: Bitcoin Magazine; Terjemahan: Wu Zhu, Jinse Keuangan Emas

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

Sistem-sistem ini awalnya dijalankan pada Ethereum dan sistem Turing Complete lainnya, tetapi akhir-akhir ini fokus telah beralih untuk memindahkan mereka ke blockchain berbasis UTXO seperti BTC. Artikel ini tidak bermaksud membahas implementasi saat ini di BTC, tetapi membahas fitur rollup yang ideal yang telah lama dikejar oleh orang-orang, yang tergantung pada kemampuan BTC yang saat ini tidak didukung, yaitu kemampuan untuk memverifikasi Zero-Knowledge Proof (ZKP) secara langsung di BTC.

Struktur dasar dari Roll adalah sebagai berikut: Satu akun tunggal (disebut UTXO dalam BTC) menyimpan saldo semua pengguna di dalam Rollup. UTXO ini berisi suatu komitmen, yang hadir dalam bentuk root Merkle dari pohon Merkle, yang memuat semua saldo saat ini dari akun dalam Rollup. Semua akun ini diotorisasi 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 perlu izin dari operator.

Operator Rollup harus menyertakan ZKP dalam transaksi untuk memperbarui saldo akun on-chain saat menyelesaikan transaksi off-chain. Tanpa ZKP ini, transaksi akan menjadi tidak valid dan tidak dapat dimasukkan ke dalam Blok. Bukti ini memungkinkan orang untuk memverifikasi apakah semua perubahan terhadap saldo akun off-chain telah diotorisasi dengan benar oleh pemegang akun, dan apakah operator tidak dengan jahat memperbarui saldo untuk mencuri dana pengguna atau dengan tidak jujur mengalokasikannya kembali kepada pengguna lain.

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

Rollup yang Sesuai

Dalam Rollup yang tepat, setiap kali ada konfirmasi transaksi off-chain baru dan status Rollup akun berubah, informasi akan 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 di Rollup akan mencakup saldo, dan akun hanya ditambahkan dalam transaksi pembaruan Rollup.

Dalam implementasi yang lebih canggih, gunakan selisih saldo. Ini pada dasarnya adalah ringkasan dana yang ditambahkan atau dikurangi dari akun selama proses pembaruan. Ini memungkinkan setiap pembaruan Rollup hanya mencakup 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 ulang pohon Merkle saldo saat ini.

Ini akan menghemat banyak biaya dan ruang Blok (dan dengan demikian menghemat dana), sambil tetap memungkinkan pengguna untuk memastikan akses ke informasi yang diperlukan untuk keluar secara sepihak. Aturan rollup mengharuskan data ini dimasukkan dalam rollup resmi yang disediakan oleh Blokchain kepada pengguna, yaitu transaksi yang tidak mencakup 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. Hal ini memperkenalkan masalah yang halus, rollup masih perlu memastikan secara ketat bahwa data tersebut 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 keamanan yang sama kuatnya. Ketika data dipublikasikan langsung ke rantai Blok BTC, aturan Konsensus dapat menjamin keabsolutan data tersebut. Namun, ketika data dipublikasikan ke sistem eksternal, yang terbaik yang bisa dilakukannya adalah memverifikasi bukti SPV, yaitu data telah dipublikasikan ke sistem lain.

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

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

Dalam Kesulitan

Ini membuat rollup menghadapi dilema. Ketika datang pada 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 batasan maksimum pada skalabilitas rollup. Ruang Blok terbatas, yang membatasi jumlah rollup yang dapat ada dalam satu waktu dan 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 terakhir. Teori informasi hanya memungkinkan data dikompresi hingga tingkat tertentu, dan pada titik ini tidak ada potensi skalabilitas lebih lanjut.

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

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

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

BTC1.55%
ETH2.04%
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)