# Vitalik Buterin - Verkle Trees (Highlights) ![rw-book-cover|256](http://vitalik.ca/images/icon.png) ## Metadata **Review**:: [readwise.io](https://readwise.io/bookreview/33328828) **Source**:: #from/readwise #from/reader **Zettel**:: #zettel/fleeting **Status**:: #x **Authors**:: [[Vitalik Buterin]] **Full Title**:: Verkle Trees **Category**:: #articles #readwise/articles **Category Icon**:: 📰 **URL**:: [vitalik.ca](https://vitalik.ca/general/2021/06/18/verkle.html) **Host**:: [[vitalik.ca]] **Highlighted**:: [[2023-10-19]] **Created**:: [[2023-10-19]] ## Highlights - The key property that Verkle trees provide, however, is that they are *much more efficient* in proof size. If a tree contains a billion pieces of data, making a proof in a traditional binary Merkle tree would require about 1 kilobyte, but in a Verkle tree the proof would be *less than 150 bytes* ([View Highlight](https://read.readwise.io/read/01hd2x6pbwcr06cac1gyqpkj6h)) ^612663201 - Verkle trees, on the other hand, get shorter and shorter proofs the higher the width; the only limit is that if width gets *too* high, proofs start to take too long to create. ([View Highlight](https://read.readwise.io/read/01hd2xb35dqe1fq1bepw0pex01)) ^612663343 - the hash function used to compute an inner node from its children is not a regular hash. Instead, it's a **vector commitment**. ([View Highlight](https://read.readwise.io/read/01hd2xdetcy6jwmm643phz4ffe)) ^612663952 - A vector commitment scheme is a special type of hash function, hashing a list h(z1,z2...zn)→C. But vector commitments have the special property that for a commitment C and a value zi, it's possible to make a short proof that C is the commitment to some list where the value at the i'th position is zi. ([View Highlight](https://read.readwise.io/read/01hd2xf7bjmq1864tyj8e0rgmy)) ^612664019