<p>The thin client requests the Merkle branch from any full node that has the complete block available. It is requested by specifying the inventory type <code>MSG_MERKLEBLOCK</code>, usually in response to learning that the bloomfilter served to the same full node had some positive results. The response includes the block header, the corresponding transactions and the hashing partners necessary to connect the transactions to the Merkle root.</p>
<p>You can find more details in the Bitcoin Developer Guide on <a href="https://developer.bitcoin.org/reference/p2p_networking.html#merkleblock" rel="nofollow noreferrer">MerkleBlock</a>.</p>

CC BY-SA 4.0
2018-05-08T03:42:10.770Z
2024-03-04T10:17:49.837Z
2024-03-04T10:17:49.837Z
Murch
<p>Full nodes do. SPV wallets requests all of their information from a full node.</p>

CC BY-SA 4.0
2018-05-07T16:00:57.307Z
2018-05-07T16:00:57.307Z
Ava Chow
<p>From Mastering bitcoin:
Merkle trees are used extensively by SPV nodes. SPV nodes don’t have all transactions and do not download full blocks, just block headers. In order to verify that a transaction is included in a block, without having to download all the transactions in the block, they use an authentication path, or merkle path.</p>

<p>Who gives SPV nodes merkle path to do validation for small subset of transaction?
Please share detailed flow.</p>

<merkle-tree><spv><thin-clients>
Who gives SPV nodes merkle path to do validation for small subset of transaction?
user2203937
# Who gives SPV nodes merkle path to do validation for small subset of transaction?

(Asked by: username_0 on 2018-05-07)

From Mastering bitcoin:
Merkle trees are used extensively by SPV nodes. SPV nodes don’t have all transactions and do not download full blocks, just block headers. In order to verify that a transaction is included in a block, without having to download all the transactions in the block, they use an authentication path, or merkle path.

Who gives SPV nodes merkle path to do validation for small subset of transaction?
Please share detailed flow.

**Tags:** merkle-tree, spv, thin-clients


---

## 2 answers

### Answer by username_1 on 2018-05-08. Score: 3

The thin client requests the Merkle branch from any full node that has the complete block available. It is requested by specifying the inventory type `MSG_MERKLEBLOCK`, usually in response to learning that the bloomfilter served to the same full node had some positive results. The response includes the block header, the corresponding transactions and the hashing partners necessary to connect the transactions to the Merkle root.

You can find more details in the Bitcoin Developer Guide on [MerkleBlock](https://developer.bitcoin.org/reference/p2p_networking.html#merkleblock).


---

### Answer by username_2 on 2018-05-07. Score: 0

Full nodes do. SPV wallets requests all of their information from a full node.


---

