Walrus Membaca Dibuat Sederhana: Kumpulkan 2f+1 Slivers & Verifikasi
Membaca sebuah blob dari Walrus adalah kesederhanaan algoritmik. Seorang klien hanya perlu melakukan dua tindakan: mengumpulkan cukup fragmen dan memverifikasi bahwa mereka direkonstruksi dengan benar. Protokol membuat kedua operasi transparan dan efisien.
Pembacaan dimulai dengan target. Klien mengetahui ID blob dan PoA on-chain yang mengontraknya. Dari informasi ini, ia menentukan validator mana yang memegang slivers menggunakan perhitungan grid yang sama yang digunakan saat menulis. Klien menghubungi validator dan meminta fragmen.
Klien mengumpulkan respons dari validator. Beberapa fragmen tiba dengan cepat (slivers utama dari validator yang responsif). Lainnya tiba lambat atau sama sekali tidak (slivers sekunder atau node yang tidak responsif). Protokol memerlukan ambang batas: 2f+1 fragmen jujur diperlukan untuk menjamin kebenaran bahkan jika f fragmen rusak atau Byzantine.
Setelah klien memiliki cukup fragmen, rekonstruksi menjadi mudah. Menggunakan struktur grid 2D, ia menggabungkan fragmen dan memverifikasi hasilnya terhadap hash komitmen on-chain. Jika blob yang direkonstruksi cocok dengan hash yang dikomit, verifikasi berhasil. Jika tidak, klien tahu rekonstruksi gagal dan dapat mencoba kembali atau melaporkan kesalahan.
Keindahannya adalah kesederhanaan. Tidak ada pemilihan kuorum yang kompleks. Tidak ada pemilihan pemimpin. Tidak ada protokol konsensus. Hanya: kumpulkan fragmen, verifikasi terhadap komitmen, selesai. Jika verifikasi gagal, kumpulkan lebih banyak fragmen dan coba lagi. Sistem ini secara alami tahan terhadap validator yang lambat atau berbohong.
Kesederhanaan ini membuat pembacaan menjadi kuat. Klien dapat mengimplementasikannya secara lokal tanpa berkoordinasi dengan pembaca lain. Validator Byzantine tidak dapat menyebabkan inkonsistensi karena setiap pembaca memverifikasi secara independen terhadap komitmen on-chain.


