DA = Ketersediaan Data ≠ Pengambilan Data Historis

MenengahFeb 28, 2024
Artikel ini berfokus pada apa sebenarnya ketersediaan data itu.
DA = Ketersediaan Data ≠ Pengambilan Data Historis
  • Judul asli yang diteruskan: Kesalahpahaman tentang ketersediaan data: DA = rilis data ≠ pengambilan data historis

Pengantar:

Apa sebenarnya yang dimaksud dengan ketersediaan data? Bagi kebanyakan orang, kesan pertama mungkin "mengakses data historis pada saat tertentu", tetapi ini sebenarnya adalah kesalahpahaman utama dari konsep DA. Baru-baru ini, salah satu pendiri L2BEAT dan pendukung Danksharding, bersama dengan pendiri Celestia, telah mengklarifikasi kesalahpahaman ini. Mereka menunjukkan bahwa Ketersediaan Data (DA) seharusnya mengacu pada "penerbitan data", namun kebanyakan orang menafsirkan DA sebagai "pengambilan data historis", yang sebenarnya melibatkan masalah penyimpanan data.


Sebagai contoh, beberapa waktu yang lalu, Dankrad menyebutkan mekanisme penarikan wajib/penetasan lapisan 2, dengan mencatat bahwa penarikan wajib Validium membutuhkan state L2 terbaru untuk membuat Merkle Proof, sedangkan Plasma hanya membutuhkan data dari 7 hari sebelumnya (hal ini berkaitan dengan metode mereka dalam menentukan root State yang sah).

Dengan ini, Dankrad dengan jelas menunjukkan bahwa Validium membutuhkan DA untuk memastikan keamanan dana pengguna, tetapi Plasma tidak. Di sini, kasus penggunaan Dankrad menunjukkan perbedaan antara DA dan pengambilan data historis, yaitu DA sering kali hanya melibatkan data yang baru saja dirilis.


Di L2BEAT, perbedaan antara Ketersediaan Data (DA) dan Penyimpanan Data (DS) semakin ditekankan. Bartek dari L2BEAT telah berulang kali menekankan bahwa DA dan penyimpanan data/pengambilan data historis adalah dua hal yang berbeda, dan bahwa pengguna dapat mengakses data L2 yang mereka butuhkan hanya karena node-node yang menyediakan data "cukup baik kepada Anda." Selain itu, L2BEAT berencana untuk menggunakan "apakah ada node penyimpanan data yang diotorisasi" sebagai metrik baru untuk mengevaluasi Rollups, di luar DA.


Pernyataan dari anggota komunitas Ethereum / Ethereum Foundation menunjukkan niat mereka untuk mengklarifikasi dan menyempurnakan konsep-konsep yang terkait dengan Layer 2 di masa depan, serta memberikan definisi yang lebih rinci tentang Layer 2 itu sendiri. Ini karena banyak istilah yang terkait dengan Rollup dan L2 belum dijelaskan dengan jelas, seperti seberapa jauh data ke belakang dianggap "historis" - beberapa orang percaya bahwa karena smart contract hanya dapat memanggil data dari 256 blok terakhir, maka data dari sebelum 256 blok (50 menit) dianggap "historis".

Namun, "Rollup" yang disebutkan oleh Celestia dan Ethereum Foundation secara tegas mengacu pada dua hal yang berbeda. Artikel ini bertujuan untuk memperjelas perbedaan antara konsep DA dan penyimpanan data, mulai dari sumber DA, pengambilan sampel ketersediaan data, hingga metode implementasi DA di Rollups, menjelaskan apa arti ketersediaan data yang sebenarnya-penerbitan data.

Asal mula konsep DA

Konsep DA berasal dari pertanyaan tentang "ketersediaan data", yang dijelaskan oleh pendiri Celestia, Mustafa, sebagai berikut: DA adalah tentang bagaimana memastikan bahwa semua data dalam sebuah blok dipublikasikan ke jaringan ketika produsen blok mengusulkan blok baru. Jika produsen blok tidak merilis semua data dalam blok, maka tidak mungkin untuk memeriksa apakah blok tersebut berisi transaksi yang salah.

Mustafa juga menunjukkan bahwa Ethereum Rollups hanya mempublikasikan data blok L2 pada rantai Ethereum dan mengandalkan ETH untuk memastikan ketersediaan data. Di situs resmi Ethereum, masalah ketersediaan data dirangkum dalam bentuk pertanyaan: "Bagaimana cara memverifikasi apakah data blok baru tersedia?" Untuk klien ringan, masalah ketersediaan data mengacu pada verifikasi ketersediaan blok tanpa perlu mengunduh seluruh blok.

Situs web resmi Ethereum juga dengan jelas membedakan antara ketersediaan data dan kemampuan pengambilan data: ketersediaan data mengacu pada kemampuan node untuk mengunduh data blok ketika diusulkan, dengan kata lain, ini terkait dengan waktu sebelum blok mencapai konsensus. Retrievabilitas data mengacu pada kemampuan node untuk mengambil informasi historis dari blockchain. Walaupun pengarsipan mungkin membutuhkan data historis blockchain, node tidak perlu menggunakan data historis untuk memverifikasi blok dan memproses transaksi.

Dalam pandangan kontributor Celestia di Tiongkok dan mitra W3Hitchhiker, Ren Hongyi, Layer 2 mengasumsikan bahwa Ethereum cukup aman dan terdesentralisasi. Penyortir dapat dengan percaya diri mengirim data DA ke Ethereum, dan data ini akan disebarkan tanpa halangan ke semua node penuh Ethereum. Karena node penuh L2 sendiri menjalankan klien Geth, mereka dianggap sebagai bagian dari node penuh Ethereum dan dengan demikian dapat menerima data DA Layer 2.

Qi Zhou, pendiri EthStorage, definisi Data Availability (DA) adalah tidak ada yang bisa menahan data transaksi yang dikirimkan oleh pengguna ke jaringan. Model kepercayaan yang sesuai adalah kita hanya perlu mempercayai protokol Layer 1 (L1) itu sendiri, tanpa perlu memperkenalkan asumsi kepercayaan lainnya.

Qi Zhou menunjukkan bahwa implementasi DA saat ini di Ethereum pada dasarnya adalah penyiaran P2P (menggunakan protokol gosip), di mana setiap node penuh mengunduh, menyebarkan blok baru, dan menyimpan data Rollup. Akan tetapi, node penuh Ethereum tidak akan menyimpan blok historis selamanya. Setelah implementasi EIP-4844, mereka mungkin secara otomatis menghapus data dari waktu tertentu yang lalu (tampaknya 18 hari). Tidak banyak simpul arsip yang menyimpan semua data historis di seluruh dunia. EthStorage berencana untuk mengisi celah ini dalam ekosistem Ethereum dan membantu Layer 2 membangun node keabadian data khusus.

Diskusi awal tentang ketersediaan data oleh Ethereum Foundation dapat dilihat di tweet Vitalik Buterin dan dokumen GitHub pada tahun 2017. Pada saat itu, ia percaya bahwa untuk memastikan skalabilitas dan efisiensi blockchain, perlu untuk meningkatkan konfigurasi perangkat keras dari full node (full node adalah yang mengunduh blok lengkap dan memverifikasi validitasnya, dan Validator, yang berpartisipasi dalam konsensus, adalah bagian dari full node). Akan tetapi, meningkatkan kebutuhan perangkat keras untuk node penuh juga akan meningkatkan biaya operasional, yang mengarah ke sentralisasi blockchain.

Dalam hal ini, Vitalik menyarankan untuk merancang skema untuk mengatasi risiko keamanan yang ditimbulkan oleh kecenderungan sentralisasi node penuh berkinerja tinggi. Dia berencana untuk memperkenalkan kode penghapusan dan pengambilan sampel acak data untuk merancang protokol yang memungkinkan node ringan dengan kemampuan perangkat keras yang lebih rendah untuk memverifikasi bahwa sebuah blok bebas masalah tanpa mengetahui blok lengkapnya.

Ide awalnya sebenarnya terkait dengan ide yang disebutkan dalam whitepaper Bitcoin, yang menyatakan bahwa light node tidak perlu menerima blok lengkap tetapi akan diberi tahu oleh full node yang jujur jika ada masalah dengan blok tersebut. Konsep ini dapat diperluas untuk pembuktian kecurangan di kemudian hari, akan tetapi tidak menjamin bahwa full node yang jujur dapat selalu mendapatkan data yang cukup, dan juga tidak dapat menilai setelah fakta apakah pengaju blok menahan beberapa data agar tidak dipublikasikan.

Sebagai contoh, sebuah node A dapat mempublikasikan bukti penipuan yang mengklaim bahwa ia menerima blok yang tidak lengkap dari node B. Akan tetapi, tidak mungkin untuk menentukan apakah blok yang tidak lengkap tersebut dipalsukan oleh A atau dikirim oleh B. Vitalik menunjukkan bahwa masalah ini dapat diselesaikan dengan Data Availability Sampling (DAS), yang tentunya melibatkan masalah publikasi data.

Vitalik secara singkat membahas masalah ini dan solusinya dalam artikelnya "Sebuah catatan tentang ketersediaan data dan pengkodean penghapusan". Dia menunjukkan bahwa bukti DA (Data Availability) pada dasarnya adalah "pelengkap" dari bukti-bukti penipuan.

Pengambilan sampel ketersediaan data

Namun, konsep DA tidak mudah untuk dijelaskan, sebagaimana dibuktikan oleh dokumen GitHub Vitalik yang mengalami 18 kali koreksi, dengan koreksi terakhir yang diajukan pada 25 September 2018. Sehari sebelumnya, pada tanggal 24 September 2018, pendiri Celestia, Mustafa dan Vitalik, bersama-sama menulis makalah yang kemudian terkenal dengan judul "Penipuan dan Bukti Ketersediaan Data: Memaksimalkan Keamanan Klien Ringan dan Meningkatkan Blockchain dengan Mayoritas yang Tidak Jujur".

Menariknya, Mustafa terdaftar sebagai penulis pertama dari makalah tersebut, bukan Vitalik (penulis lain sekarang menjadi peneliti di blockchain publik Sui). Makalah ini menyebutkan konsep Fraud Proofs dan menjelaskan prinsip Data Availability Sampling (DAS), yang secara kasar merancang protokol campuran DAS + pengkodean penghapusan dua dimensi + bukti-bukti penipuan. Makalah ini secara khusus menyebutkan bahwa sistem pembuktian DA merupakan pelengkap yang diperlukan untuk pembuktian penipuan.

Dari sudut pandang Vitalik, protokol ini bekerja sebagai berikut:

Misalkan sebuah blockchain publik memiliki N node konsensus (Validator) dengan perangkat keras berkapasitas tinggi, yang memungkinkan throughput dan efisiensi data yang tinggi. Walaupun blockchain seperti ini mungkin memiliki TPS (Transaksi Per Detik) yang tinggi, jumlah node konsensus, N, relatif kecil, membuatnya lebih tersentralisasi dengan probabilitas kolusi yang lebih tinggi di antara node.

Namun, diasumsikan bahwa setidaknya satu dari N node konsensus adalah jujur. Selama setidaknya 1/N dari Validator jujur, dapat mendeteksi dan menyiarkan bukti penipuan ketika sebuah blok tidak valid, klien ringan atau Validator yang jujur dapat mengetahui masalah keamanan dalam jaringan dan dapat menggunakan mekanisme seperti memotong node berbahaya dan garpu konsensus sosial untuk memulihkan jaringan menjadi normal.

Seperti yang telah disebutkan oleh Vitalik sebelumnya, jika sebuah full node yang jujur menerima sebuah blok dan menemukan kekurangan pada beberapa bagian, dan mempublikasikan sebuah bukti kecurangan, akan sulit untuk menentukan apakah pengaju blok gagal mempublikasikan bagian tersebut, bagian tersebut ditahan oleh node lain selama transmisi, atau apakah itu adalah sebuah false flag oleh node yang mempublikasikan bukti kecurangan tersebut. Selain itu, jika mayoritas node bersekongkol, Validator 1/N yang jujur dapat diisolasi, tidak dapat menerima blok baru, yang merupakan skenario serangan penahanan data. Dalam kasus seperti itu, simpul yang jujur tidak dapat menentukan apakah itu disebabkan oleh kondisi jaringan yang buruk atau konspirasi pemotongan yang disengaja oleh orang lain, dan juga tidak dapat mengetahui apakah simpul-simpul lain juga terisolasi, sehingga sulit untuk menilai apakah mayoritas telah bersekongkol dalam pemotongan data.

Oleh karena itu, perlu ada cara untuk memastikan, dengan probabilitas yang sangat tinggi, bahwa Validator yang jujur dapat memperoleh data yang diperlukan untuk memvalidasi blok; dan untuk mengidentifikasi siapa yang berada di balik serangan penahanan data-apakah pengusul blok yang gagal mempublikasikan data yang cukup, data tersebut ditahan oleh node lain, atau apakah itu merupakan persekongkolan mayoritas. Jelas, model keamanan ini menawarkan lebih banyak perlindungan daripada "asumsi mayoritas yang jujur" yang umum pada rantai PoS pada umumnya, dan Data Availability Sampling (DAS) adalah metode implementasi yang spesifik.

Asumsikan ada banyak light node dalam jaringan, mungkin 10 kali N, masing-masing terhubung ke beberapa Validator (untuk mempermudah, asumsikan setiap light node terhubung ke semua N Validator). Light node ini akan melakukan beberapa pengambilan sampel data dari Validator, setiap kali secara acak meminta sebagian kecil data (misalkan hanya 1% dari satu blok). Kemudian, mereka akan menyebarkan fragmen yang diperoleh ke Validator yang tidak memiliki data ini. Selama ada cukup banyak light node dan frekuensi pengambilan sampel data yang cukup tinggi, bahkan jika beberapa permintaan ditolak, selama sebagian besar ditanggapi, dapat dipastikan bahwa semua Validator pada akhirnya dapat memperoleh jumlah data yang diperlukan untuk memvalidasi sebuah blok. Ini dapat meniadakan dampak dari penahanan data oleh node selain pengusul blok.

(Sumber gambar: W3 Hitchhiker)

Jika mayoritas Validator bersekongkol dan menolak untuk menanggapi sebagian besar permintaan dari light node, akan mudah bagi orang untuk menyadari bahwa ada masalah dengan rantai (karena meskipun beberapa orang memiliki internet yang buruk, hal itu tidak akan mengakibatkan sebagian besar permintaan light node ditolak). Dengan demikian, skema yang disebutkan di atas sangat mungkin menentukan perilaku konspirasi mayoritas, meskipun situasi seperti itu jarang terjadi. Dengan pendekatan ini, ketidakpastian dari sumber selain pengusul blok dapat diatasi. Jika pengusul blok menahan data, seperti tidak mempublikasikan data yang cukup dalam blok untuk memvalidasinya (setelah memperkenalkan pengkodean penghapusan dua dimensi, sebuah blok berisi fragmen 2k2k, dan mengembalikan data asli blok membutuhkan setidaknya sekitar kk fragmen, atau 1/4. Untuk mencegah orang lain mengembalikan data asli, pengusul harus menahan setidaknya k+1*k+1 fragmen), mereka pada akhirnya akan terdeteksi oleh Validator yang jujur, yang kemudian akan menyiarkan bukti kecurangan untuk memperingatkan orang lain.


Menurut Vitalik dan Mustafa, apa yang mereka lakukan pada dasarnya adalah menggabungkan ide-ide yang telah diusulkan oleh orang lain dan menambahkan inovasi mereka sendiri di atasnya. Ketika melihat konsep dan metode implementasi secara keseluruhan, jelas bahwa "ketersediaan data" mengacu pada apakah data yang diperlukan untuk memverifikasi blok terbaru telah dipublikasikan oleh pengusul blok dan apakah data tersebut dapat diterima oleh verifikator. Ini adalah tentang apakah data "sepenuhnya dipublikasikan" dan bukan tentang apakah "data historis dapat diambil."

Bagaimana Ketersediaan Data (DA) Ethereum Rollup Diimplementasikan

Dengan pernyataan di atas, mari kita lihat bagaimana Ketersediaan Data (DA) diimplementasikan dalam Rollup Ethereum, yang menjadi cukup jelas: Pengusul blok dalam Rollup dikenal sebagai Sequencer, yang mempublikasikan data yang diperlukan untuk memverifikasi transisi status Layer 2 di Ethereum secara berkala. Secara khusus, ini memulai transaksi ke kontrak yang ditunjuk, memasukkan data terkait DA ke dalam parameter input khusus, yang kemudian dicatat dalam blok Ethereum. Dengan tingkat desentralisasi Ethereum yang tinggi, dapat dipastikan bahwa data yang dikirimkan oleh sequencer akan diterima dengan lancar oleh "verifikator". Namun, entitas yang berperan sebagai "verifikator" berbeda di berbagai jaringan Rollup.

Misalnya, dalam kasus Arbitrum, sequencer memposting kumpulan transaksi ke kontrak tertentu di Ethereum. Kontrak itu sendiri tidak memverifikasi data ini tetapi memancarkan sebuah peristiwa untuk didengarkan oleh node penuh L2, memberi tahu mereka bahwa sequencer telah menerbitkan sekumpulan transaksi. Secara khusus, ZK Rollups menggunakan kontrak Verifier di Ethereum sebagai "verifier". Rollup ZK hanya perlu menerbitkan State Diff + Bukti Validitas, yaitu informasi tentang perubahan state ditambah bukti validitas. Kontrak Verifier memeriksa bukti validitas untuk melihat apakah bukti tersebut cocok dengan State Diff. Jika validasi lolos, L2 Block/Batch yang diterbitkan oleh sequencer dianggap valid.

(Sumber: Buku Putih Polygon Hermez sebelumnya)

Optimistic Rollups membutuhkan penerbitan lebih banyak data di Ethereum karena mereka hanya mengandalkan node penuh L2 untuk mengunduh data dan memverifikasi validitas blok. Ini berarti bahwa, setidaknya, tanda tangan digital dari setiap transaksi L2 (sekarang umumnya menggunakan tanda tangan gabungan) harus diungkapkan. Jika panggilan kontrak dilakukan, parameter input juga harus diungkapkan, selain alamat transfer transaksi, nilai nonce untuk mencegah serangan replay, dll. Namun, dibandingkan dengan data transaksi lengkap, masih ada beberapa pemangkasan.

Dibandingkan dengan ZK Rollups, biaya DA (Ketersediaan Data) dari Optimistic Rollups lebih tinggi karena ZK Rollups hanya perlu mengungkapkan perubahan status akhir setelah sekumpulan transaksi dieksekusi, disertai dengan bukti validitas, memanfaatkan keringkasan dari ZK SNARK/STARK; sedangkan Optimistic Rollups hanya dapat menggunakan metode yang paling rumit, yang mengharuskan semua transaksi dieksekusi ulang oleh node penuh L2 lainnya.

Sebelumnya, W3hitchhiker memperkirakan secara kasar bahwa tanpa mempertimbangkan perkembangan EIP-4844 dan blob di masa depan, efek penskalaan ZKR (Zero-Knowledge Rollups) dapat mencapai beberapa kali lipat dari OPR (Optimistic Rollups). Jika mempertimbangkan dompet pintar yang terkait dengan EIP-4337 (yang menggunakan sidik jari, data iris mata sebagai pengganti tanda tangan private key), keuntungan ZKR akan lebih terlihat jelas, karena tidak perlu memposting data biner sidik jari, iris mata di Ethereum, sedangkan Optimistic Rollups membutuhkannya.

Sedangkan untuk Validium dan Plasma/Optimium, mereka sebenarnya menggunakan lapisan DA off-chain Ethereum untuk mencapai DA. Sebagai contoh, ImmutableX, yang mengadopsi sistem bukti validitas, telah menyiapkan satu set node DAC (Data Availability Committee) yang khusus untuk menerbitkan data yang terkait dengan DA; Metis menerbitkan data DA di Memlabs, dan Rooch serta Manta menggunakan Celestia. Saat ini, dengan adanya DAS (Solusi Ketersediaan Data) dan sistem bukti penipuan, Celestia menjadi salah satu proyek lapisan DA yang paling dipercaya di luar Ethereum.

Penafian: Penafian

  1. Artikel ini dicetak ulang dari[Geek Web3]. Teruskan Judul Asli: Kesalahpahaman Tentang Ketersediaan Data: DA = Penerbitan Data ≠ Pengambilan Data Historis, Semua hak cipta adalah milik penulis asli [ Faust, Geek web3]. Jika ada keberatan dengan pencetakan ulang ini, silakan hubungi tim Gate Learn, dan mereka akan segera menanganinya.
  2. Penafian Tanggung Jawab: Pandangan dan pendapat yang diungkapkan dalam artikel ini semata-mata merupakan pandangan dan pendapat penulis dan bukan merupakan saran investasi.
  3. Penerjemahan artikel ke dalam bahasa lain dilakukan oleh tim Gate Learn. Kecuali disebutkan, menyalin, mendistribusikan, atau menjiplak artikel terjemahan dilarang.
Comece agora
Registe-se e ganhe um cupão de
100 USD
!
Criar conta