Abstract. We present a technique for Merkle tree traversal which requires only logarithmic space and time1 . For a tree with N nodes, our algorithm computes sequential tree leaves and authentication path data in time Log2(N) and space less than 3Log2(N), where the units of computation are hash function evaluations or leaf value computations, and the units of space are the number of node values stored. Relative to this algorithm, we show our bounds to be necessary and sufficient. This result is an asymptotic improvement over all other previous results (for example, measuring cost = space ∗ time). We also prove that the complexity of our algorithm is optimal: There can exist no Merkle tree traversal algorithm which consumes both less than O(Log2(N)) space and less than O(Log2(N)) time. Our algorithm is especially of practical interest when space efficiency is required, and can also enhance other traversal algorithms which relax space constraints to gain speed.