Skip to main content
Search type Search syntax
Tags [tag]
Exact "words here"
Author user:1234
user:me (yours)
Score score:3 (3+)
score:0 (none)
Answers answers:3 (3+)
answers:0 (none)
isaccepted:yes
hasaccepted:no
inquestion:1234
Views views:250
Code code:"if (foo != bar)"
Sections title:apples
body:"apples oranges"
URL url:"*.example.com"
Saves in:saves
Status closed:yes
duplicate:no
migrated:no
wiki:no
Types is:question
is:answer
Exclude -[tag]
-apples
For more details on advanced search visit our help page
Results tagged with
Search options not deleted user 21296

A hash tree (or Merkle tree) is a method of hierarchically hashing data. They allow efficient parallel hashing and updates and the possibility of verifying partial data.

2 votes

Is it possible to build short proofs of arbitrary computations over a big list?

Merkle aggregation can help you compute aggregation functions over the leaf data in a Merkle tree. The technique is described in detail in Crosby & Wallach's paper on history trees [1], an append-onl …
Alin Tomescu's user avatar
  • 1,034
7 votes

Proving set membership in less than $\log{N}$ bandwidth

Depending on your trust assumptions about this server, you might be able to use cryptographic accumulators which provide constant-sized (non)membership proofs. However, as far as I know, no efficien …
Alin Tomescu's user avatar
  • 1,034
2 votes

Dynamically building a Merkle tree for unkown size

This is very simple to achieve. I'll just show you what you have to compute as each chunk $c_1, c_2, c_3, \ldots$ comes in. You start empty. You get $c_1$, hash it as $h_1$, and obtain your Merkle roo …
Alin Tomescu's user avatar
  • 1,034
1 vote

What is the canonical way of creating Merkle tree branches?

Not sure about a canonical way, but a simple way of doing this is to use an extra byte to encode a "left" or a "right" next to the each node's hash in the proof. So rather than: Leaf: 12c5 Nodes: [ …
Alin Tomescu's user avatar
  • 1,034
6 votes

Proof of non-membership on a Merkle tree?

If your data is a set $S$ of key-value pairs, such that $S = \{(k,v) \mathrel\vert k \in K, v \in V\}$, you can have non-membership proofs for your data by using a sorted Merkle tree (sorted by the ke …
Alin Tomescu's user avatar
  • 1,034
2 votes

Proof of membership on a merkle tree

Unfortunately, an in depth answer for me would be too long and is actually the scope of the Zerocash paper itself, which I recommend you re-read thoroughly. A high-level answer: Instead of providing t …
Alin Tomescu's user avatar
  • 1,034
2 votes

How to prove that a line belongs to a final hash without knowing/re-hashing all other lines?

Short answer: (1) Build a Merkle tree over your database and (2) give a Merkle path to the entry you want to prove is in the database. SNARKs are great, but are a big hammer that's completely unnecess …
Alin Tomescu's user avatar
  • 1,034