I understood how the Merlke tree is built.
I also understood that and why it is needed to check if a transaction belongs to the Merkle tree.
Thanks to the tree structure, it is possible to check this with
O(log n) operations instead of
I assume that the check starts from the Merkle root, and iteratively goes down to the leafs/transaction. Is it right?
Ok, but how do I know which hash pointer I should use? For instance, if I'm on a specific Merkle node and my transaction belongs to the left branch, how do I know I should surf the left branch, only having the hash (pointer) as input? Do I use other inputs or what?