Merkle's puzzles