# The BSV Unified Merkle Path (BUMP) Standard

The **BSV Unified Merkle Path (BUMP)** standard enhances the **Simplified Payment Verification (SPV)** model — a foundational concept for scaling the BSV network.&#x20;

It provides a **consistent and efficient format** for constructing and interpreting **Merkle Proofs**, ensuring smooth interoperability across wallets, miners, and other network participants.

***

#### Why BUMP Matters for SPV

In traditional SPV models, different applications and systems might represent Merkle Proofs in slightly different ways. This can lead to confusion and inefficiencies when verifying transactions across diverse platforms.

**BUMP solves this problem** by establishing a **unified format** that:

* Enables **wallets** to verify transactions **without downloading full blocks**.
* Simplifies **communication** between wallets, miners, and nodes.
* **Standardizes** data handling to make SPV verification faster and more reliable.

By using BUMP, **SPV wallets** can process verification requests efficiently, reducing computational and bandwidth requirements.

***

#### Structure of a BUMP Proof

The BUMP format introduces a **structured data model** with clear components that define each Merkle proof.

Key elements include:

* **Block Height** – Specifies the exact block where the transaction resides.
* **Tree Height** – Indicates how many layers (depth) exist in the Merkle Tree.
* **Leaves** – Represent all transactions in the block, each identified by its **Transaction ID (TXID)**.

This structure provides context for verifying inclusion proofs, allowing wallets and services to locate and validate transactions efficiently.

***

#### Encoding Methods: Binary and JSON

To suit different use cases, BUMP supports **two encoding formats**:

* **Binary Encoding** – Compact and efficient, ideal for **machine processing** and automated verification.
* **JSON Encoding** – Human-readable, making it easier for **developers to integrate, debug, and test** applications.

***

#### Calculating the Merkle Root

BUMP defines a **clear procedure** for reconstructing the **Merkle Root** from provided proof data:

1. Traverse the **path** of hashes as indicated by the structure.
2. Combine each **hash pair** according to its **offset value**.
3. Apply **duplication** where specified to complete missing pairs.
4. Continue until the **Merkle Root** is derived.

This step-by-step process ensures that **SPV wallets** can validate transaction inclusion **quickly and securely**, without ambiguity.

<figure><img src="/files/RFVIBtw9CKy8iSVmEdQf" alt=""><figcaption></figcaption></figure>

#### Practical Impact of BUMP

For users and developers alike, the BUMP standard provides tangible benefits:

* **Users** experience faster and more trustworthy transaction verification.
* **Developers** gain a **consistent proof format**, simplifying integration across systems.
* The entire BSV network benefits from **enhanced scalability and efficiency**.

BUMP represents a major advancement in the **practical application of SPV**, reinforcing BSV’s focus on **innovation, usability, and performance**.

***

#### Learn More and Explore

For full technical details, refer to the **BRC-74 specification** on GitHub.\
You can also explore the **BUMP visual explorer** to see Merkle paths rendered for different tree sizes:

* [GitHub: BRC-74 Specification](https://github.com/bitcoin-sv/BRCs/blob/master/transactions/0074.md#abstract)
* [BUMP Explorer](https://bitcoin-sv.github.io/showcase-merkle-paths/)

***

#### Key Takeaway

The **BUMP standard** brings order and clarity to the way **Merkle Proofs** are handled across the BSV ecosystem.

By unifying data formats, it ensures **fast, reliable, and scalable transaction verification**, empowering SPV wallets, developers, and users to interact seamlessly — all while maintaining Bitcoin’s principle of **trust through verification**.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://hub.bsvblockchain.org/higher-learning/bsv-academy/bitcoin-primitives-merkle-trees/standardised-merkle-proof/the-bsv-unified-merkle-path-bump-standard.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
