| Penulis | Feist, Dankrad; Buterin, Vitalik; et al. (Ethereum Research) |
|---|---|
| Tahun | 2022 |
| Proyek | Ethereum Danksharding |
| Lisensi | Public |
| Sumber Resmi | notes.ethereum.org/@dankrad/new_sharding |
Danksharding adalah desain sharding penuh Ethereum yang diusulkan oleh Dankrad Feist (Ethereum Foundation), berdasarkan desain ulang proposal sharding sebelumnya. Alih-alih “execution sharding” (banyak shard eksekusi independen), Danksharding mengimplementasikan “data sharding” — validator Ethereum tidak mengeksekusi transaksi di shard; mereka hanya memverifikasi bahwa data tersedia. Ini merupakan penerus langsung dari Proto-Danksharding (EIP-4844, dirilis Maret 2024) yang memperkenalkan transaksi blob.
Proto-Danksharding (EIP-4844)
EIP-4844 adalah langkah awal menuju danksharding penuh: memperkenalkan tipe transaksi baru (blob transactions) yang membawa ~128 KB data blob murah per transaksi, dengan target 3 blob per blok. Data blob disimpan sementara (sekitar 18 hari) dan tidak diproses oleh EVM — hanya tersedia untuk rollup yang ingin memverifikasi data mereka ada di Ethereum. EIP-4844 mengurangi biaya calldata rollup sebesar 10–100x.
Data Availability Sampling (DAS)
Mekanisme kunci yang memungkinkan danksharding penuh:
- Blob di-erasure-coded: Blob 128 KB diperluas menggunakan Reed-Solomon erasure coding menjadi 256 KB. 50% data yang tersedia sudah cukup untuk memulihkan 128 KB asli.
- Validator mengambil sampel acak: Setiap validator mengunduh dan memeriksa sebagian kecil chunk secara acak (misalnya, 75 dari 512 chunk per blob) daripada blob penuh.
- Jaminan kolektif: Jika setiap validator mengambil sampel secara independen, probabilitas bahwa semua validator gagal mendeteksi data yang hilang sangat kecil — bahkan jika produsen menyembunyikan 50% chunk.
- Tidak ada validator yang mengunduh segalanya: Beban didistribusikan. Danksharding penuh (~32 MB/slot blob) tidak memerlukan node individu mengunduh 32 MB.
KZG Polynomial Commitments
Danksharding menggunakan KZG commitments untuk data blob: blob dikodekan sebagai polinomial atas field terbatas; commitment (48 byte) adalah polinomial yang dievaluasi di titik rahasia; setiap chunk dapat dibuktikan dengan bukti KZG 48 byte; bukti dapat diagregasi. KZG memerlukan trusted setup — Ethereum mengadakan upacara KZG besar (~140.000 peserta) pada 2022–2023.
Persyaratan PBS
Danksharding penuh memerlukan Proposer-Builder Separation (PBS): memisahkan peran Builder (merakit blok, mengunduh blob penuh untuk menghitung commitment) dan Proposer (memilih header blok terbaik tanpa mengunduh blob penuh). Tanpa PBS, proposer harus mengunduh semua blob — menghilangkan manfaat DAS untuk full node.
Roadmap
Danksharding penuh akan meningkatkan kapasitas blob dari 3 per blok (EIP-4844) menjadi ~64 per blok, meningkatkan throughput data rollup sekitar 20x dan memungkinkan ribuan rollup beroperasi bersamaan di Ethereum dengan biaya sangat rendah.
Istilah Terkait
Referensi
- Feist, D. (2022). New sharding design with tight beacon and shard block integration. notes.ethereum.org/@dankrad/new_sharding
- EIP-4844: eips.ethereum.org/EIPS/eip-4844