Verkle Trees: Pengganti Merkle Patricia Trie Ethereum untuk Stateless Client

Penulis Feist, Dankrad; Buterin, Vitalik; Kattis, Dmitry
Tahun 2021
Proyek Ethereum
Lisensi Public
Sumber Resmi vitalik.eth.limo — Verkle trees
Disclaimer: Halaman ini merupakan ringkasan dan analisis edukatif dari whitepaper atau makalah teknis resmi. Konten ini disajikan untuk tujuan pendidikan semata dan bukan merupakan saran investasi atau keuangan. Selalu baca dokumen asli dan lakukan riset mandiri sebelum mengambil keputusan keuangan apa pun.

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.