# Data Storage Overlays and UHRP

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

Data storage overlays exemplify the practical application of overlay services. Instead of storing all data directly on the blockchain, data storage overlays allow files to be maintained in a service layer, such as cloud storage, while the blockchain records a **timestamped digital fingerprint** of that data.

#### The Process:

1. When a file is uploaded, it is stored in a server (e.g., AWS S3 bucket or Google Cloud Storage).
2. The blockchain stores the hash—a unique fingerprint of that file—creating an immutable timestamped record.
3. When the file is needed again, there is no requirement to search the blockchain.
4. Instead, overlay services facilitate the retrieval of the file by its hash, pulling it from one of the available hosts where it is stored.

This system offers significant **flexibility** and **scalability**, allowing data to remain on the service layer, where it can be updated or managed as necessary, while the blockchain only retains a digital fingerprint for integrity verification.

The **Universal Hash Resolution Protocol (UHRP)** functions as a token system for registering the location of hosted files. The blockchain records the file's hash, while the UHRP points to the server hosting it, simplifying and streamlining the retrieval process. Essentially, the service layer is where the data resides, with the blockchain merely recording tokens that announce the data's availability at a specific host for a defined period.


---

# 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/bsv-network-topology/essentials-of-overlay-services/data-storage-overlays-and-uhrp.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.
