Lompat ke konten

Pengambilan Sampel Ketersediaan Data (DAS)

Panduan berbasis verifikasi tentang pengambilan sampel ketersediaan data probabilistik, erasure coding, commitment, model sampling, sel dan kolom PeerDAS, kustodi, independensi peer, serta batas rekonstruksi.

Diperbarui

Hanya untuk tujuan edukasi; bukan merupakan nasihat investasi atau rekomendasi investasi. Investasi dapat mengakibatkan kerugian.

Jawaban langsung

Pengambilan Sampel Ketersediaan Data memungkinkan sebuah node meminta subset unit data terautentikasi dan ber-erasure coding yang ditentukan protokol, lalu membuat penilaian lokal probabilistik mengenai apakah objek yang di-commit telah dipublikasikan secara memadai agar dapat direkonstruksi. Node tidak mengunduh seluruh objek. Sampel yang berhasil hanya meningkatkan keyakinan berdasarkan asumsi yang dinyatakan tentang pengodean, ambang rekonstruksi, pemilihan sampel, keragaman peer, waktu, dan model adversarial.

Bukti KZG atau bukti sel mengikat unit yang dikembalikan pada sebuah commitment; bukti tersebut tidak membuktikan bahwa unit lain tersedia dalam jumlah memadai. Lolosnya sampling lokal tidak otomatis membuktikan rekonstruksi di seluruh jaringan, validitas eksekusi, finalitas konsensus, penyelesaian rollup, kemampuan pengguna untuk keluar, atau pengarsipan permanen. PeerDAS adalah satu rancangan konkret Ethereum dengan kolom, sel, kelompok kustodi, sampling, jaringan, dan aturan fork choice yang spesifik terhadap fork; parameter saat ini bukan konstanta universal DAS.

Cara kerjanya

  1. Tetapkan objek dan snapshot spesifikasi yang tepat: chain, jaringan, fork, client, dan revisi spesifikasi; slot, block root, dan blob commitment; dimensi asli dan yang diperluas; definisi sel, baris, kolom, serta kelompok kustodi; dan keputusan ketersediaan yang harus dibuat node.
  2. Verifikasi aturan pengodean dan rekonstruksi. Catat algoritme perluasan erasure, skema commitment, jumlah unit asli dan yang dikodekan, unit minimum untuk memulihkan objek, serta cara menolak perluasan yang tidak valid. Sampling hanya bermakna jika penahanan cukup banyak unit untuk menggagalkan rekonstruksi menciptakan wilayah yang dapat dideteksi.
  3. Definisikan semesta dan prosedur sampel. Catat ukuran populasi, himpunan yang tidak tersedia atau ditahan, jumlah sampel, pemilihan dengan atau tanpa pengembalian, sumber keacakan, keunikan, tugas kustodi, pemilihan peer, timeout, percobaan ulang, dan deduplikasi. Penugasan kustodi dan sampel acak adalah bukti yang berbeda.
  4. Nyatakan model probabilitas sebelum menghitung. Untuk fraksi tetap yang ditahan f dan s sampel independen seragam dengan pengembalian dalam model sederhana, P_miss = (1 - f)^s. Tanpa pengembalian, gunakan rasio kombinasi populasi terbatas. Peer yang berkorelasi, keacakan yang bias, eclipse, layanan adaptif, dan pemilihan percobaan ulang membatalkan model sederhana tersebut.
  5. Ambil data dari peer yang beragam sebelum tenggat protokol. Verifikasi header kanonis dan penyertaan blob, commitment, indeks, bukti sel KZG, serta byte respons; catat secara terpisah respons yang hilang, tidak valid, dan terlambat. Mengulang kolom yang sama atau meminta melalui control plane yang sama bukan bukti independen baru.
  6. Terapkan aturan ketersediaan lokal dan fork choice protokol yang disebut, lalu catat secara terpisah propagasi dan rekonstruksi jaringan, validitas eksekusi, status konsensus safe dan finalized, masa penyajian, serta status arsip. Kelolosan lokal tidak boleh diangkat menjadi klaim yang tidak diberikan protokol.
  7. Uji penahanan, pengodean yang rusak, bukti tidak valid, serangan eclipse dan Sybil, layanan selektif atau adaptif, sampling berkorelasi, partisi peer dan subnet, timeout, pruning, perubahan parameter dan jadwal blob, reorganisasi, serta perbedaan client. Lakukan rekonstruksi nyata dari unit yang terkumpul dan simpan permintaan, respons, bukti, versi, serta bukti arsip.

Contoh terhitung

  • Sampling independen dengan pengembalian. Dalam model sederhana, 50% unit ditahan dan sebuah node mengambil 30 sampel independen seragam dengan pengembalian. Probabilitas tidak mendeteksi penahanan adalah 0.5^30 = 0.0000000009313225746; probabilitas deteksinya 99.9999999069%. Ini model pembelajaran, bukan jaminan layanan PeerDAS aktif atau jaringan lain.
  • Menargetkan probabilitas kegagalan deteksi. Dalam model independen yang sama dengan 25% ditahan, probabilitas gagal mendeteksi disyaratkan paling tinggi 0.000001. Jumlah sampel adalah ceil(log(0.000001) / log(0.75)) = 49. Pada 48 sampel, probabilitasnya 0.75^48 = 0.0000010067940558701114, masih di atas target; pada 49, nilainya 0.75^49 = 0.0000007550955419025835.
  • Sampling tanpa pengembalian. Populasi terbatas memiliki 128 kolom, dengan 64 dapat dilayani dan 64 ditahan. Sampling 8 kolom berbeda tanpa pengembalian melewatkan himpunan yang ditahan dengan probabilitas C(64,8) / C(128,8) = 0.0030958642767920487; probabilitas deteksinya 99.6904135723%. Nilai ini berbeda dari 0.5^8 = 0.00390625 dan tetap mengasumsikan pemilihan seragam serta penahanan statis.
  • Snapshot parameter Fulu. Dalam spesifikasi Fulu yang diperiksa pada 2026-08-12, NUMBER_OF_COLUMNS = 128, SAMPLES_PER_SLOT = 8, NUMBER_OF_CUSTODY_GROUPS = 128, dan CUSTODY_REQUIREMENT = 4. Porsi sampel minimum adalah 8 / 128 = 6.25%; porsi kustodi minimum 4 / 128 = 3.125%. Jika sebuah node mengustodi 12 kelompok dan ukuran sampling adalah nilai yang lebih besar antara 8 dan 12, node meminta 12 / 128 = 9.375%. Ini parameter protokol berversi, bukan jaminan permanen atau lintas protokol.

Risiko

  • Mengambil sampel dari chain, jaringan, fork, slot, blok, atau objek data yang salah.
  • Memercayai header dan commitment yang kedaluwarsa, nonkanonis, atau terkena reorganisasi.
  • Menggunakan data ber-erasure coding yang rusak atau diperluas secara keliru.
  • Menerima bukti KZG, sel, atau penyertaan yang tidak valid.
  • Menganggap keaslian commitment sebagai bukti ketersediaan.
  • Mengumpulkan terlalu sedikit sampel untuk model ancaman yang dinyatakan.
  • Menerapkan formula dengan pengembalian pada sampling tanpa pengembalian, atau sebaliknya.
  • Menggunakan keacakan yang bias, dapat diprediksi, atau dimanipulasi.
  • Menghitung unit duplikat atau percobaan ulang sebagai sampel independen.
  • Mengambil sampel dari peer, subnet, kelompok kustodi, atau control plane yang berkorelasi.
  • Mengalami serangan eclipse atau Sybil yang mengisolasi sampler.
  • Membiarkan layanan selektif atau adaptif setelah pilihan sampel diketahui.
  • Salah mengklasifikasikan timeout, kemacetan, atau kegagalan client sebagai penahanan data.
  • Mencampuradukkan penugasan kustodi deterministik dengan sampling acak.
  • Mengasumsikan fraksi penahanan yang tidak sesuai ambang rekonstruksi.
  • Gagal merekonstruksi karena batas CPU, memori, bandwidth, atau implementasi.
  • Mengalami kegagalan gossip, request-response, subnet, atau cross-seeding.
  • Mengekstrapolasi kelolosan lokal menjadi ketersediaan dan pemulihan seluruh jaringan.
  • Mencampuradukkan DAS dengan validitas eksekusi, finalitas konsensus, penyelesaian, atau keluar.
  • Melewatkan perubahan retensi, arsip, fallback, fork, jadwal blob, atau parameter.

Kesalahpahaman umum

  • Satu sampel yang berhasil membuktikan seluruh objek tersedia.
  • Bukti KZG atau bukti sel dengan sendirinya adalah bukti ketersediaan data.
  • Lebih banyak permintaan selalu memberikan bukti independen.
  • DAS memvalidasi eksekusi dan menjadikan chain final.
  • Data yang tersedia sekarang akan tetap diarsipkan selamanya.

Topik terkait

Sumber

Navigasi

Cari di wiki...