@Walrus 🦭/acc

Dalam beberapa tahun terakhir, minat terhadap solusi penyimpanan data di dunia Web3 meningkat, dan Walrus Finance (WAL) menonjol sebagai salah satu proyek yang menawarkan pendekatan terdesentralisasi untuk kebutuhan ini. Secara khusus, menyediakan solusi untuk menyimpan volume besar file secara aman di blockchain, Walrus tidak hanya berposisi sebagai alat penyimpanan data tetapi juga sebagai protokol ekonomi yang didukung insentif tokenomik. Dibangun di atas blockchain Sui, proyek ini bertujuan untuk membangun infrastruktur yang dapat diskalakan dan berkelanjutan dengan mengintegrasikan manajemen data off-chain dengan proses verifikasi on-chain.

Salah satu fitur unik dari Bahan Merah adalah kemampuannya untuk beroperasi dalam jaringan asinkron sambil mendukung tantangan penyimpanan, menjadikannya yang pertama dari jenisnya. Ini hanya dimungkinkan berkat enkoding dua dimensi yang memungkinkan ambang enkoding yang berbeda per dimensi. Dimensi dengan ambang rendah dapat digunakan oleh node yang tidak mendapatkan simbol selama alur penulisan untuk memulihkan apa yang hilang, sedangkan dimensi dengan ambang tinggi dapat digunakan untuk alur baca untuk mencegah penyerang memperlambat node jujur selama periode tantangan dan mengumpulkan informasi cukup untuk menjawab tantangan.

Tantangan terakhir bagi Walrus, dan secara umum bagi setiap sistem penyimpanan terdesentralisasi berbasis enkoding, adalah beroperasi secara aman melintasi epoch yang masing-masing dikelola oleh komite node penyimpanan yang berbeda. Ini menantang karena kita ingin memastikan ketersediaan tanpa gangguan untuk membaca dan menulis blob selama terjadi perubahan alami dalam sistem tanpa izin, tetapi jika kita terus menulis data ke node yang akan pergi, node tersebut terus perlu mentransfer data ke node yang menggantikannya. Ini menciptakan persaingan untuk sumber daya node-node tersebut, yang akan berakhir dengan tidak menerima penulisan lagi atau gagal mentransfer tanggung jawab secara permanen. Walrus menangani hal ini melalui protokol perubahan epoch multi-tahap yang baru, yang secara alami sesuai dengan prinsip-prinsip sistem penyimpanan terdesentralisasi.

Bahan Merah

Protokol enkoding di atas mencapai tujuan faktor beban rendah dengan jaminan sangat tinggi, tetapi masih belum cocok untuk penggunaan jangka panjang. Tantangan utama adalah dalam sistem skala besar yang berjalan lama, node penyimpanan secara rutin mengalami gangguan, kehilangan sliver mereka, dan harus diganti. Selain itu, dalam sistem tanpa izin, ada perubahan alami pada node penyimpanan bahkan ketika mereka memiliki insentif kuat untuk berpartisipasi.

5Ada kemungkinan biaya tambahan O(logn) tergantung pada skema komitmen.

S11

S21

S31

S41

beberapa perubahan alami pada node penyimpanan bahkan ketika mereka memiliki insentif kuat untuk berpartisipasi.

Kedua kasus ini akan menghasilkan jumlah data yang sangat besar yang ditransfer melalui jaringan, sama dengan ukuran total data yang disimpan untuk memulihkan sliver bagi node penyimpanan baru. Ini sangat mahal. Sebaliknya, kita ingin sistem tersebut bersifat self-healing sehingga biaya pemulihan selama perubahan alami hanya sebanding dengan data yang perlu dipulihkan, dan berbanding terbalik dengan n.

Untuk mencapai ini, Bahan Merah mengenkoding blob dalam dua dimensi (enkoding 2D). Dimensi utama setara dengan enkoding RS yang digunakan dalam sistem sebelumnya. Namun, untuk memungkinkan pemulihan sliver B secara efisien, kita juga mengenkoding pada dimensi sekunder. Bahan Merah didasarkan pada koding erasure linier (lihat bagian II) dan kerangka kerja Twin-code, yang menyediakan penyimpanan berbasis koding erasure dengan pemulihan yang efisien dalam lingkungan yang tahan terhadap kegagalan dengan penulis tepercaya. Kita menyesuaikan kerangka kerja ini agar sesuai dalam lingkungan toleransi kesalahan Byzantine dengan satu kumpulan node penyimpanan, dan menambahkan optimasi tambahan yang akan dijelaskan lebih lanjut di bawah ini.

Enkoding: Titik awal kita adalah desain strawman kedua yang membagi blob menjadi f + 1 sliver. Alih-alih hanya mengenkoding sliver perbaikan, kita pertama-tama menambahkan satu dimensi lagi ke proses pemecahan: blob asli dibagi menjadi f + 1 sliver primer (vertikal pada gambar) dan 2f + 1 sliver sekunder (horizontal pada gambar). Gambar 2 menggambarkan proses ini. Akibatnya, file sekarang dibagi menjadi (f + 1)(2f + 1) simbol yang dapat divisualisasikan dalam matriks [f + 1, 2f + 1].

#Walrus $WAL