Bitcoin Magazine: Apa Kesulitan yang Dihadapi Rollup?

robot
Pembuatan abstrak sedang berlangsung

Sumber: Bitcoin Magazine; Terjemahan: Wu Zhu, Gold Finance

Rollups baru-baru ini telah menjadi fokus perluasan BTC, menjadi sesuatu yang benar-benar mencuri perhatian 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 dari Jaringan Lighting, yaitu pengguna akhir perlu memiliki alokasi dana (atau “pinjaman”) terlebih dahulu untuk menerima uang, atau Node rute tengah perlu memiliki saldo saluran untuk memfasilitasi aliran dana dari pengirim ke penerima sepanjang jalan.

Sistem-sistem ini awalnya berjalan di atas Ethereum dan sistem-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 quo implementasi di BTC saat ini, tetapi membahas fitur Rollup ideal yang telah lama dicari orang, yang bergantung pada kemampuan yang saat ini tidak didukung oleh BTC, yaitu kemampuan untuk langsung memverifikasi Zero-Knowledge Proof (ZKP) di BTC.

Arsitektur dasar Roll adalah sebagai berikut: Satu akun tunggal (UTXO di BTC) menyimpan saldo semua pengguna dalam Rollup. UTXO ini berisi komitmen, yang ada dalam bentuk akar Merkle dari pohon Merkle, yang menjamin semua saldo saat ini dari akun dalam Rollup. Semua akun ini diotorisasi dengan Kunci Publik/Kunci Rahasia, 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 unilateral tanpa izin dari operator.

Operator Rollup harus menyertakan ZKP dalam transaksi untuk memperbarui akar merkle saldo akun on-chain saat menyelesaikan transaksi off-chain. Tanpa ZKP ini, transaksi akan menjadi tidak valid dan tidak dapat dimasukkan ke dalam Blok chain. Bukti ini memungkinkan orang untuk memverifikasi apakah semua perubahan pada akun off-chain telah mendapatkan otorisasi yang tepat dari pemilik akun, dan apakah operator tidak dengan jahat memperbarui saldo untuk mencuri dana pengguna atau dengan tidak jujur ​​mengalokasikannya kembali ke pengguna lain.

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

Rollup Yang Sesuai

Dalam Rollup yang tepat, setiap kali ada transaksi off-chain baru yang dikonfirmasi dan status Rollup akun berubah, informasinya 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 pembaruan Rollup.

Dalam implementasi yang lebih canggih, gunakan perbedaan saldo akun. Pada dasarnya, ini adalah ringkasan dari akun mana yang menambah atau mengurangi dana 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 dari saldo akun saat ini.

Dengan cara ini, pengguna dapat menghemat banyak biaya dan ruang Blok (dan dengan demikian menghemat dana), sambil masih memungkinkan pengguna untuk memastikan informasi yang diperlukan untuk keluar dari satu sisi. Aturan rollup mensyaratkan data ini untuk dimasukkan ke dalam rollup resmi yang disediakan oleh Blokchain kepada pengguna, di mana transaksi yang tidak mencakup ringkasan akun atau perbedaan akun dianggap sebagai transaksi yang tidak valid.

Periode berlaku

Salah satu cara lain untuk menangani masalah ketersediaan data penarikan pengguna adalah dengan menempatkan data di tempat lain di luar Blok. Ini memperkenalkan masalah subtil di mana rollup masih perlu memastikan bahwa data tersedia di tempat lain. Secara tradisional, Blok lain digunakan untuk tujuan ini, dirancang khusus sebagai lapisan ketersediaan data untuk sistem seperti rollup.

Ini menciptakan dilema keamanan yang juga kuat. Ketika data dipublikasikan langsung ke BTCBlok chain, aturan Konsensus dapat menjamin kebenarannya secara mutlak. Namun, ketika data tersebut dipublikasikan ke sistem eksternal, yang dapat dilakukan hanyalah memverifikasi bukti SPV, yaitu data telah dipublikasikan ke sistem lain.

Ini memerlukan bukti bahwa data ada di on-chain lain, ini pada akhirnya adalah masalah Mesin Oracle. Blok Bitcoin tidak dapat sepenuhnya memverifikasi apa pun yang terjadi di luar blok on-chainnya sendiri, yang terbaik yang dapat dilakukannya adalah memverifikasi ZKP. Namun, ZKP tidak dapat memverifikasi apakah Blok yang mengandung data rollup benar-benar disiarkan secara terbuka setelah dihasilkan. Tidak dapat memverifikasi apakah informasi eksternal benar-benar terbuka untuk semua orang.

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

Dalam kebimbangan

Ini membawa dilema bagi rollup. Ketika masalah ketersediaan data terjadi, secara dasarnya ada pilihan biner untuk mempublikasikan data ke blockchain BTC atau tempat lain. Pilihan ini sangat memengaruhi keamanan, kedaulatan, dan skalabilitas rollup.

Di satu sisi, menggunakan BTCBlok sebagai lapisan ketersediaan data akan memberikan batasan maksimal yang keras bagi skalabilitas rollup. Ruang Blok terbatas, ini menetapkan batasan bagi jumlah rollup yang dapat ada dalam satu waktu dan jumlah total transaksi yang dapat diproses di luar rantai. Setiap pembaruan rollup membutuhkan ruang Blok yang sebanding dengan jumlah akun yang mengalami perubahan saldo sejak pembaruan terakhir. Teori informasi hanya memungkinkan data dikompresi sampai batas tertentu, pada titik ini, tidak ada potensi ekspansi lebih lanjut.

Di sisi lain, penggunaan lapisan yang berbeda untuk mencapai ketersediaan data akan menghilangkan batasan maksimum keuntungan skalabilitas, tetapi juga membawa masalah keamanan dan kedaulatan baru. Dalam Rollup yang menggunakan BTC untuk mencapai ketersediaan data, jika data yang perlu diekstraksi oleh pengguna tidak secara otomatis dipublikasikan ke blockchain, status Rollup tidak akan berubah. Dengan menggunakan Validiums, jaminan ini sepenuhnya bergantung pada kemampuan sistem eksternal yang digunakan untuk melawan penipuan dan menyembunyikan data.

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

Jadi, jika kita benar-benar berhasil mengimplementasikan Rollup yang ideal di BTC, yang benar-benar memungkinkan penarikan unidirectional pengguna, bagaimana itu akan terjadi?

BTC-2,48%
ETH-3,87%
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)