Merkle TreesRootLeaves = txidsInternal = H(left || right)Odd -> duplicate lastProofsO(log N) proof sizeRecompute root from siblingsConsensus ruleDeterministic tree shapeRoot in block header1 / 1