> For the complete documentation index, see [llms.txt](https://hub.bsvblockchain.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hub.bsvblockchain.org/higher-learning/bsv-academy/bitcoin-whitepaper-series/section-4-proof-of-work-bitcoin-whitepaper/nonce-and-hashing-variations.md).

# Nonce and Hashing Variations

<figure><img src="https://3421145409-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRTEKu4E7Fvtss3GI9CYU%2Fuploads%2FdxCqGiErUPqxtnv26SvI%2FNonce.gif?alt=media&amp;token=58bea647-9036-4607-8de0-f44e861cb5ff" alt=""><figcaption></figcaption></figure>

*For our timestamp network, we implement the proof-of-work by incrementing a nonce in the block until a value is found that gives the block's hash the required zero bits.*

\- Satoshi Nakamoto, Bitcoin Whitepaper

The **nonce** (Number used Once) plays a critical role in the proof-of-work process, as it is the variable that is adjusted to find a valid hash.

A **Hash** is a one-way function which takes a given input and produces a deterministic output. Someone given the output **cannot reveal the input**, but **anyone with the input can verify its authenticity** if its hash is public.

#### Variations in Hashing:

* **4-byte Nonce**: The nonce is typically a 32-bit value, allowing for approximately 4.3 billion different combinations. This range is sufficient for most hashing machines to find a valid hash within a short time frame.
* **Extra Nonce**: To further increase the number of possible hashes, an **Extra Nonce** field is often included in the coinbase transaction. This allows miners to modify the Merkle root, providing additional variations in the block header.
* **Hashing Efficiency**: Advances in hardware have led to the development of specialized mining equipment that can perform hashing operations at unprecedented speeds, significantly reducing the time required to find a valid nonce.

Hash machines' ability to efficiently iterate through nonce values is essential for the successful operation of the proof-of-work system, as it directly impacts the rate at which new blocks are discovered.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

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

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://hub.bsvblockchain.org/higher-learning/bsv-academy/bitcoin-whitepaper-series/section-4-proof-of-work-bitcoin-whitepaper/nonce-and-hashing-variations.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
