| Penulis | Feist, Dankrad; Buterin, Vitalik; Kattis, Dmitry |
|---|---|
| Tahun | 2021 |
| Proyek | Ethereum |
| Lisensi | Public |
| Sumber Resmi | vitalik.eth.limo — Verkle trees |
Verkle trees (portmanteau dari “vector commitment” + “Merkle tree”) diusulkan untuk menggantikan Merkle Patricia Trie (MPT) Ethereum yang digunakan untuk menyimpan state. Keunggulan utama: witness (bukti) 100–1.000x lebih kecil dari Merkle proof saat ini, memungkinkan “stateless client” — node yang memvalidasi blok tanpa menyimpan state apapun. Ini adalah bagian penting dari peta jalan Ethereum menuju skalabilitas jangka panjang.
Publikasi dan Konteks
Ethereum saat ini menggunakan Merkle Patricia Trie (MPT):
- Bukti satu nilai memerlukan ~10 node di jalur dari daun ke root
- Setiap node adalah hash 32 byte → jalur proof ≈ 320+ byte per slot akun
- Interaksi smart contract dapat menyentuh puluhan storage slot → witness 10–30 KB per transaksi
Ini membuat “stateless Ethereum” — di mana node tidak perlu menyimpan state tetapi menerima witness untuk setiap blok — tidak praktis. Node harus tetap menyimpan lebih dari 1 TB state, membatasi desentralisasi.
Cara Kerja Verkle Tree
Vector commitments bukan hash:
Dalam Merkle tree, setiap node induk adalah hash dari anak-anaknya. Untuk membuktikan satu anak dalam node dengan 16 anak, perlu mengungkapkan semua 16 hash (sibling nodes). Dalam Verkle tree, setiap node induk adalah KZG commitment terhadap semua anaknya sekaligus:
- Setiap anak dapat dibuktikan dengan bukti berukuran konstan (48 byte dari KZG)
- Commitment adalah evaluasi polinomial — satu titik membuktikan keanggotaan
Agregasi: KZG multiproof memungkinkan membuktikan banyak daun sekaligus dalam satu proof — ukurannya hampir tidak bertambah seiring menambahkan lebih banyak daun. Ribuan akses state dalam satu blok dapat dibuktikan dalam total ~1–2 KB.
Dampak: Stateless Client
Dengan Verkle witness sebesar 1–2 KB per blok:
- Node dapat memverifikasi blok hanya dengan menerima data blok + witness
- Tidak perlu menyimpan 1+ TB state
- Light client dan node mobile dapat memvalidasi Ethereum secara native
- Laptop biasa bisa menjadi full Ethereum validator tanpa SSD besar
Perbedaan Verkle Tree vs. Merkle Tree
| Properti | Merkle Patricia Trie | Verkle Tree |
|---|---|---|
| Ukuran proof per item | ~1 KB | ~100–200 byte |
| Agregasi multi-proof | Linear (tumbuh per item) | Sub-linear (KZG multiproof) |
| Asumsi kriptografis | Hash function | KZG (pairing-based) |
| Post-quantum safety | Ya | Tidak (pairing-based) |
Status dan Peta Jalan
Verkle tree dijadwalkan dalam hard fork Ethereum mendatang (pasca-Pectra). Transisi memerlukan migrasi state MPT ke Verkle — proses yang kompleks yang membutuhkan konversi trie secara bertahap selama ratusan blok untuk menghindari waktu henti jaringan.
Istilah Terkait
Referensi
- Buterin, V. (2021). Verkle trees. vitalik.eth.limo
- Feist, D. (2021). Verkle Trie for Ethereum State. Ethereum Research.