# Hash Functions and BSV's Security Model

<figure><img src="https://hub.bsvblockchain.org/~gitbook/image?url=https%3A%2F%2F2147185133-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FWtK4ab0ntyPZBmGoKq4t%252Fuploads%252Fgit-blob-629476189571b0369000a17217431f097931ca1a%252FBSVA-HashFunctions_Ch7L2_DA1.gif%3Falt%3Dmedia&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=6de14b9e&#x26;sv=2" alt=""><figcaption></figcaption></figure>

To understand how hash functions strengthen BSV’s security, we first need to look at BSV’s **overall approach to securing information**.

Most digital systems today depend on **Public Key Infrastructure (PKI)** or variations of it, and some rely on simpler alternatives like **HMACs**. Both of these models use strong cryptographic primitives, but they also introduce weaknesses—such as dependence on central authorities, shared secrets, and encrypted blind spots.

BSV, on the other hand, takes a different approach. While it uses the same underlying cryptographic tools, it applies them in a far more **granular and effective way**. At the heart of this design is the **UTXO (Unspent Transaction Output) model**, which firewalls identity from network activity. This creates a new kind of security model—one that avoids the pitfalls of traditional PKI and HMACs, while still ensuring privacy, authenticity, and integrity.

👉 **In simpler terms:** Before we can appreciate how hash functions secure BSV, we need to understand why older models like PKI and HMACs fall short—and how BSV’s design overcomes their limitations.


---

# 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-hash-functions/double-hashing-and-bsvs-security/hash-functions-and-bsvs-security-model.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.
