# Sharenote Full Documentation Generated on: 2026-04-14T18:03:49.923Z --- ## File: learn/glossary.mdx --- title: "Glossary" description: "Definitions for all core Sharenote protocol terms — ordered from the most accessible to the most technical." --- This page defines every term used throughout the Sharenote documentation. Entries are ordered from the most accessible concepts to the most technical. If you encounter an unfamiliar word, start here. ## Proof-of-Work (PoW) A technique where a computer performs a large amount of computation to produce a specific result. The result is trivially easy to *verify* but computationally expensive to *produce*. This asymmetry makes it useful for establishing digital consensus weight and a way to prove that real energy was expended. *Think of it like a padlock puzzle — solving it takes real effort, but anyone can mathematically verify if your solution is correct.* ## Sharenote A discrete, human-readable denomination of proof-of-work, expressed as a label such as `34Z10`. The format is `XZYY` where `X` is the integer Z-bit floor and `YY` is the truncated centi-bits. A Sharenote label acts as a **routing parameter and minimum difficulty floor**. Think of it like the face value printed on a banknote — it communicates the minimum energy required to produce it. It is **not** used for arithmetic — only the underlying Continuous Difficulty value is used for calculations. ## Z-Bit The base unit of difficulty measurement in the Sharenote protocol. Z-Bits represent difficulty on a **logarithmic (log-2) scale**, similar to how decibels measure sound intensity. - `1 Z-Bit` = a hash 2× harder than baseline - `10 Z-Bits` = a hash 1,024× harder than baseline - `34 Z-Bits` = 2^34 ≈ 17 billion hash executions ## Physical Share A raw, solved hash computation produced by mining hardware. When a miner's ASIC or GPU finds a hash that meets the required difficulty target, that result is a Physical Share. In standard mining software, this is called a "submitted share" or "accepted share." Sharenote uses *Physical Share* to distinguish the raw cryptographic hash payload from the human-readable label derived from it. ## Work Template The specific hash puzzle provided to mining hardware for solving (e.g., a Bitcoin block header template). A Work Template defines exactly what computation the ASIC or GPU will attempt — including the block data and target rules. In Sharenote, the template is the first requirement for printing a note. ## Sharenote Bill (Target Bill) The specific difficulty floor chosen by a miner or user for a printing job (e.g., `20Z00`). The Bill serves as a target threshold; the hardware must spend enough energy to find a hash that satisfies this target. A Sharenote Bill is the second requirement for printing. ## Energy (Computation) The physical work performed by mining hardware to reach a Target Bill using a Work Template. Energy is the third and final requirement for printing a Sharenote. The resulting note is a mathematical proof that this specific amount of energy was spent on a specific template. ## Nostr A simple, open protocol for publishing and distributing cryptographically signed messages (called *events*) across a network of servers (called *relays*). Anyone can run a relay or publish events. Events are signed with a private key — no central server controls your identity. Sharenote uses Nostr as its broadcast layer. Work state and pool accounting records are published as Nostr events that any party can independently read and verify. [What is Nostr? →](https://nostr.com) ## Relay A Nostr server that stores and distributes signed events. Relays cannot alter event content — the cryptographic signature would break if they did. Miners choose which relays to publish to and can run their own for full data sovereignty. ## Nostr Keypair A pair of cryptographic keys used to sign and identify Nostr events: - **Private key**: A secret 32-byte value that signs your events. Never share this. - **Public key**: A derived counterpart that serves as your permanent identity on the network. Generate a keypair at [nstart.me](https://nstart.me). ## Stratum The standard communication protocol between mining hardware (ASICs, GPUs) and mining pools. It delivers Work Templates and receives submitted shares. Sharenote integrates into Stratum via protocol-aware implementations that handle the signing and publishing of work events. ## protocol-aware Stratum (Initiative) The ongoing effort to integrate Sharenote's cryptographic signing and Nostr publishing logic directly into standard Stratum server implementations. This removes the need for external tools and allows miners to use the protocol natively within their existing environments. ## Pool Alliance A formal, verifiable cooperation agreement between two or more mining pools. In Sharenote, pool alliances are established when pools co-sign the same work template commitments on the Nostr relay network — enabling miners to explicitly participate in coordinated mining across multiple pool relationships with full public audit trails. > **Status**: Pool alliances are a core design goal of the Sharenote protocol. The formal SNIP specification for pool alliance coordination is in active development. ## Watchtower Any application, dashboard, or service that connects to the Nostr relay network and reads Sharenote events. Watchtowers reconstruct the full history of distributed work, miner output, and pool settlements from public cryptographic proofs — without needing to ask any pool or miner for data directly. Watchtowers are passive consumers of the open relay state. They do not require any special permission or trust relationship. See [How It Works](/learn/how-it-works) for the full pipeline. ## SNIP **Sharenote Improvement Proposal**. A formal specification document defining a specific aspect of the Sharenote protocol. Similar to Bitcoin's BIPs or Nostr's NIPs. ## Nostr Event Kind A numeric identifier that categorizes a Nostr event. Sharenote defines specific Kind numbers for each type of mining event: | Kind | SNIP | Purpose | |------|------|---------| | `10520` | SNIP-05 | Miner Identity (replaceable) | | `10521` | SNIP-05 | Pool Identity (replaceable) | | `35502` | SNIP-02 | Hashrate & Telemetry | | `35500` | SNIP-03 | Unpaid Block Invoice (pool) | | `35501` | SNIP-03 | Settled Block Invoice (pool) | | `35503` | SNIP-03 | Pending Miner Share | | `35504` | SNIP-03 | Finalized Miner Share | | `35505` | SNIP-03 | Share Payment | | `35510` | SNIP-04 | Raw Printing / AuxPoW | ## Usually_90 A pragmatic Sharenote probability preset representing the difficulty label a setup will produce **at least 90% of the time** within a target window. This is the recommended baseline for general hashrate estimation. ## Almost_999 A conservative Sharenote probability preset representing the difficulty label a setup will produce **99.9% of the time** within a given window. Useful for setting guaranteed network access minimums. ## Continuous Difficulty (`D`) The exact mathematical density of a Physical Share, expressed as a precise floating-point value in linear space: `D = 2^256 / T` where `T` is the 256-bit target threshold. Because Z-Bits are logarithmic, you cannot add them directly. All aggregation must first convert Z-Bits to Continuous Difficulty, sum in linear space, then convert back. See [The Strict Aggregation Law](/learn/the-z-bit-standard) and the formal definition in [SNIP-00](/specifications/snip-00). ## Exponential Moving Average (EMA) A type of moving average that places greater weight on the most recent data points. In Sharenote work broadcasting, EMA is used to smooth the inherent variance of proof-of-work, providing a stable "current hashrate" reading that responds quickly to hardware status changes. ## AuxPoW (Merged Mining) A technique where a miner's work on one blockchain simultaneously counts as valid proof-of-work on another blockchain. SNIP-04 defines how Sharenote handles AuxPoW submissions via Kind 35510. In the Sharenote market, AuxPoW is the mechanism by which Hashrate Providers solve user interaction feeds — upvotes, agent requests, data validation jobs — alongside their primary chain work, at zero additional cost. --- ## File: learn/how-it-works.mdx --- title: "How It Works" description: "How Sharenote turns computational work into portable, verifiable denominated notes — and how those notes are recorded on an open network." --- import PipelineSchema from "@/components/docs/PipelineSchema.astro"; ## Denominations and Energy Every Sharenote has a denomination — a label like `20Z00` or `34Z10`. That denomination is not assigned by any authority. It is computed directly from the energy your hardware spent to produce the note. More energy spent = higher denomination. The denomination is a direct mathematical record of work done, stamped into the note at the moment of printing. It cannot be changed after the fact. ## The Open Relay Layer Sharenote publishes every printed note as a signed record on **Nostr** — an open network of independent servers that anyone can read and no one controls. Your note is signed with your identity before publishing. The signature makes it tamper-proof: any relay that alters the content breaks the signature automatically. Any party — a miner, an application, a researcher, an auditor — can read those records at any time, at any relay, without asking anyone for permission. ## One Press, Multiple Claims A computation that meets a high difficulty target automatically meets all lower targets too. A note printed at `34Z10` simultaneously satisfies any target below it. Sharenote captures all of those claims at once. Your hardware runs at full capacity on one puzzle — a Sharenote-aware Stratum implementation publishes the result everywhere it qualifies. **Concrete example**: Your hash hardware solves a puzzle. The protocol integration checks it against every configured target: 1. Hash meets the **primary pool's** difficulty → submitted to your pool via Stratum (unchanged) 2. Same hash meets a **secondary AuxPoW chain's** difficulty → submitted there too 3. The full work record is signed with your Nostr key and published to the relay network One computation. Your pool gets the share. The secondary chain gets a valid proof (share or block). The relay gets the public record. No hashrate was split. ## The Full Pipeline Independent observers — called **Watchtowers** — connect to the relay network and reconstruct the complete history of printed notes, pool settlements, and miner contributions from public records. Their state is derived directly from the relay — no pool cooperation required. → Continue to [The Z-Bit Standard](/learn/the-z-bit-standard) for the math behind denominations. --- ## File: learn/introduction.mdx --- title: "Welcome to Sharenote" description: "Every interaction on the open web can carry verifiable proof that real energy was spent. Sharenote is the protocol that makes this possible." --- import Card from "@/components/Card.astro"; import { BookOpen, Cpu, FileText, Shield, Server } from "lucide-react"; Every interaction on the open web can now carry verifiable proof that a real human chose to spend real energy on it. **Sharenote** is the protocol that makes this possible. It turns raw computational work into portable, signed, publicly verifiable notes — usable for sorting feeds, weighting content, curating AI training data, and auditing mining payouts.
Your hardware already prints work every second. Sharenote publishes that work to an open network where it counts in more places at once — without changing your existing pool setup. [What is a Sharenote?](/learn/what-is-sharenote) Apply consensus weight to real interactions. A proof-of-work note costs real computation to produce — AI spam gets filtered entirely out of your curated feed, leaving only verifiable human curation. [Agent Integration Guide](/the-market/agent-integration) Publish signed payout records to the open relay network. Every miner independently verifies their proportional share — your accounting becomes publicly auditable by default. [Sources of Work Guide](/the-market/hashrate-monetization) Attach a proof-of-work note to content. In a world of zero-cost AI generation, a Sharenote proves a human chose to spend real energy on this specific piece of work. [Use Cases](/learn/use-cases)
## What Sharenote Enables **Know exactly what you earned.** Pool payouts become signed, public records on the relay network. Any miner can independently recompute their proportional share from the published events alone. **One hash, every chain it qualifies for.** A single computation that meets a high difficulty target automatically qualifies for every lower target too. One hash, credited across every chain and pool agreement it satisfies — without splitting your hardware. **Your feed, sorted by energy — not algorithms.** Attach a proof-of-work limit to feed sorting, upvoting content, and curating data for LLM fine-tuning. Bots that mass-produce noise must spend real energy for each insertion. No accounts. No algorithms in the dark. > **Just curious?** Start with [What is a Sharenote?](/learn/what-is-sharenote) — no mining knowledge required. > > **Ready to build?** Jump to [The Market](/the-market/spending-bills) or read the [SNIP specifications](/specifications/snip-00). --- ## File: learn/learn-by-example.mdx --- title: "Learn by Example" description: "Understanding Sharenote utility through practical application scenarios." --- Three concrete scenarios showing Sharenote in action. Start with the first — it requires no mining knowledge. Each scenario uses the same underlying proof-of-work math, applied to a different context. ## Scenario 1: Consensus Weight for an AI Feed An application developer is building a feed where human interaction must surface above AI-generated noise. To ensure upvotes reflect real intention, they require verifiable consensus weight to rank a post. They establish a **`20Z00` Sharenote** as the prerequisite for high-visibility distribution. 1. **The Request**: When a user upvotes, the client recognizes the consensus target. 2. **The Outsource**: The client does not drain the user's battery. It seamlessly offloads the requirement to the open market, where dedicated Hashrate Providers physically solve the `20Z00` challenge via AuxPoW. 3. **The Verification**: The backend receives the upvote with its attached proof, mathematically verifies its density, and permanently ranks the content based on its energy-backed weight. Builders can implement this verification flow natively through AI Vibe Coding. → [Read the official Skills & AI Integration Guide](/the-market/skills) For full integration details, see the [Agent Integration guide](/the-market/agent-integration). ## Scenario 2: Simultaneous Multi-Chain Work > **Prerequisites**: This scenario assumes familiarity with mining pools, Stratum, and proof-of-work mining. See the [Glossary](/learn/glossary) if any terms are unfamiliar. A miner runs an Antminer S19 connected to a standard Bitcoin pool. In standard mining, they are locked to that pool's work template — one puzzle, one chain, one relationship. With Sharenote: 1. The Sharenote-native Stratum receives the pool's work template natively (unchanged). 2. The protocol integration simultaneously layers in additional consensus requests—such as weighting social feeds or validating data from the open market—alongside any secondary AuxPoW pool agreements. 3. When the S19 solves a hash, the client checks every configured target. If the hash meets Bitcoin's difficulty: submitted to the primary pool. If it simultaneously meets a Market feed consensus target: also submitted there. Both happen from one solved hash. 4. The full record of what work was distributed and what was solved is signed with the miner's Nostr key and published to the relay network — not sitting in any pool's private log. The miner does not split hashrate. The S19 runs at full capacity on one puzzle. The result is claimed simultaneously across every chain and agreement it qualifies for. → To configure simultaneous AuxPoW targets on your hardware, follow the [Hashrate Monetization guide](/the-market/hashrate-monetization). ## Scenario 3: Pool Publishing a Public Payout A mining pool finds a block. In standard mining, the pool privately records the reward and distributes payouts according to its internal ledger. Miners receive a payment and must trust the pool's calculation. With Sharenote (SNIP-03): 1. The pool signs and publishes a **Kind 35500 Unpaid Invoice** to Nostr relays — declaring the block hash, block height, total reward in satoshis, and the aggregate pool difficulty. 2. For each miner who contributed shares, the pool signs and publishes a **Kind 35503 Pending Share** event containing the miner's individual difficulty and the pool total. 3. When the on-chain payout transaction hits the mempool, the pool signs a **Kind 35501 Settled Invoice** appending the transaction ID. 4. Any miner, pool partner, or watchtower fetches these events directly from the relays and computes: `Miner_Payout = (Miner_Shares_D / Total_Shares_D) × Invoice_Amount` using the Continuous Difficulty values — no pool permission required. The pool's payout math becomes a public, auditable state-machine. A miner does not need to believe the pool's number — they can recompute it themselves from the signed events. All three scenarios use the same underlying Z-Bit mathematics. The log-linear math and verification rules are formally defined in the [SNIP specifications](/specifications/snip-00). → Continue to [The Market](/the-market/spending-bills) --- ## File: learn/the-z-bit-standard.mdx --- title: "The Z-Bit Standard" description: "Understanding continuous difficulty and log-2 precision — the math behind Sharenote denominations." --- > **Going Deeper** — This page covers the precise math behind Sharenote denominations. You should understand the [printing press analogy](/learn/what-is-sharenote) and [how denominations work](/learn/how-it-works) before continuing here. Sharenote separates human-readable denominations from the underlying cryptographic difficulty. This separation is what enables precision across decentralized applications. > **Why miners and pools need to understand this**: Every payout calculation, every multi-chain work claim, and every Sharenote label you see is derived from this math. If your stratum or pool software adds difficulty values incorrectly, payouts will be wrong. This page explains why — and how to do it right. ## Discrete Labels vs Continuous Math A **Sharenote label** (e.g., `34Z10`) is a human-readable string acting as a **routing parameter** — it declares the *minimum* difficulty floor required for a note to be valid. However, the underlying computation is far more precise. Its exact density is called **Continuous Difficulty ($D$)**, expressed as a precise floating-point number in linear space derived from the actual hash target. > Think of Z-Bits like decibels for sound — a small numerical difference represents a large real-world change in actual difficulty. Just as you cannot simply add decibel values, you cannot add Z-Bit labels directly. ### The Strict Aggregation Law Because Sharenote uses a log-2 scale for difficulty, summing discrete labels directly leads to severe precision loss. **Wrong**: `2Z00` + `10Z00` = `12Z00` ❌ **Correct**: Add in linear space, then convert back. **Worked example:** - `2Z00` $\rightarrow D = 2^2 = 4$ - `10Z00` $\rightarrow D = 2^{10} = 1024$ - $D_{\text{total}} = 4 + 1024 = 1028$ - Result: $\log_2(1028) \approx 10.006 \rightarrow$ label `10Z00`, not `12Z00` The correct combined label is nearly identical to the larger one — the smaller share barely moves the total. This is why naive label addition is always wrong. All aggregation MUST follow the three-step law defined in [SNIP-00](/specifications/snip-00): 1. $D = 2^B$ (Z-Bits $\rightarrow$ linear) 2. $D_{\text{total}} = D_1 + D_2 + \dots + D_n$ (sum) 3. $B_{\text{total}} = \log_2(D_{\text{total}})$ (back to Z-Bits) > **Key Rule**: Never add Sharenote labels directly. Always convert to Continuous Difficulty first ($D = 2^B$), sum in linear space, then convert back ($B = \log_2(D)$). The sharenote skill enforces this law automatically when generating aggregation code. → Continue to [Learn by Example](/learn/learn-by-example) --- ## File: learn/use-cases.mdx --- title: "Use Cases" description: "Three ways Sharenote creates energy-backed trust — for the open web, miners, and AI service providers." --- How do you prove something is real on the open web? A "like" costs nothing. A "view" can be faked. An AI can generate a million posts overnight. Sharenote attaches verifiable energy to any interaction — making it physically expensive to fake at scale. Three distinct use cases. Each stands independently. ## 1. The Next Web: Build Your Own Feed In the open social web (**Nostr**), there is no centralized algorithm. You are the algorithm. But in a world of infinite, zero-cost content, how do you find what matters? A Sharenote attached to a post is a verifiable sign of **energy spent**. Unlike a "like" or a "view," a Sharenote requires real computational work. Energy is the signal. It cannot be faked at scale. ### Algorithmic Sovereignty Tell your AI agent exactly how to build your **feed** based on specific **topics** and difficulty floors: > *"Show me only posts about **#Bitcoin** that have accumulated at least `20Z00` in total proof-of-work from the last 24 hours."* Your agent verifies the math on the relay network and builds your feed based on **verifiable energy commitments**. A note printed by hardware simultaneously solving multiple chains counts in full — one computation, multiple valid proofs. → [Learn how notes are printed and verified](/learn/the-z-bit-standard) > **Going deeper** — Use Cases 2 and 3 are for miners and service providers. They assume familiarity with the printing press analogy from [What is a Sharenote?](/learn/what-is-sharenote) ## 2. Work Templates: One Puzzle, Multiple Claims Your hardware already solves one puzzle at full capacity. Today, that hash qualifies for one pool, one chain, one payout. Everything else it could have satisfied is discarded. Sharenote changes the outcome: when your hardware finds a hash, every configured target is checked simultaneously. If the hash qualifies for your primary Bitcoin pool — submitted. If it also meets a secondary AuxPoW chain's target — submitted there too. Both from one solved hash, at full hashrate, with no split. **Before**: one computation, one claim. **After**: one computation, every qualifying claim captured. Miners can also inject custom work into templates — such as social attestations on Nostr — that ride alongside primary mining at zero additional cost. → [Configure your setup](/the-market/hashrate-monetization) ## 3. Service Providers: Energy as Payment A service provider can require a printed Sharenote to establish consensus weight for a task. The note is the verifiable limit — unforgeable, energy-backed, separating pure noise from intentional human curation. A user who wants the service seamlessly outsources the required denomination to a Hashrate Provider in the market, who physically solves it and returns the proof. The user includes that proof with their request. Server-side verification takes milliseconds. This establishes a direct consensus channel between participants and the open market that operates on public infrastructure. No accounts. No hidden algorithms. The proof-of-work note is the entire consensus mechanism. → [Getting Started for Agent Builders](/the-market/agent-integration) --- ## File: learn/what-is-sharenote.mdx --- title: "What is a Sharenote?" description: "A Sharenote is a denomination of computational work — printed by hardware, verified by the network, owned by no one." --- ## Your Hardware is a Printing Press Think of a Sharenote like a banknote — except instead of paper and ink, it is made of energy and math. When you tell your hardware to print a `20Z00` Sharenote, it gets to work. It runs computations until it produces a result the network will accept as proof. That result is your note. Its denomination — `20Z00` — is stamped directly into it, proving exactly how much energy was spent to produce it. It cannot be faked, copied, or issued for free. **Any device can verify one.** From an industrial ASIC to a lightweight client. Printing at scale, however, is the job of dedicated Hashrate Providers in the market. ## The Denomination is the Proof A `10Z00` note requires less energy to print than a `34Z10` note — the same way a \$10 bill represents less than a \$100 bill. But unlike printed currency, no authority decides what each denomination is worth. The denomination is a direct, mathematical record of energy spent. Higher denomination = more real work done. Always. No exceptions. **Routing scopes in the market:** | Denomination | Execution Scope | |---|---| | `10Z00` | Processed by background AuxPoW market routing | | `20Z00` | Requires dedicated hashrate providers for strong consensus weight | **Network-scale reference points:** | Denomination | What produces it | |---|---| | `57Z54` | The entire Dogecoin network's combined output in ~1 minute | | `78Z98` | The entire Bitcoin network's combined output in ~10 minutes | The first two denominations represent common consensus targets that applications outsource to Hashrate Providers. The last two represent the aggregate output of entire mining networks — millions of machines working in parallel. The same Z-Bit scale measures everything from a feed upvote to global block formation. > Network-scale denominations reflect current difficulty and shift as each network adjusts. ## What Can You Attach It To? A Sharenote is a standalone proof. It can be attached to anything: - A submitted share from your **mining hardware** - A **job request** sent to a [Data Vending Machine](https://nips.nostr.com/90) - An **AI agent** request that requires a specific note before executing a task - A **social interaction** like a like or view on the **Nostr** network - A **message** posted to a public channel - An **article** published on the open web - An **API request** from a user's device Whatever it is attached to, the note says the same thing: *"Real energy was spent to produce this. It is not free. It is not synthetic."* → See what is possible in [Use Cases](/learn/use-cases) --- ## File: specifications/snip-00.mdx --- title: "SNIP-00: Core Math" description: "Protocol Terminology & Core Mathematical Constraints" --- ## Status Stable ## Motivation Proof-of-work difficulty exists on a logarithmic scale — a single Z-Bit increase doubles the computational work required. This property makes discrete labels (like `34Z10`) useful for human-readable communication, but mathematically invalid for aggregation. Summing labels directly produces results that are off by orders of magnitude. This specification establishes the mandatory conversion to linear space (Continuous Difficulty) before any aggregation operation, and defines the canonical label format derived from the result. All implementations, pool backends, and relay-side validators MUST conform to this math to guarantee interoperability across the Sharenote network. ## Abstract This document establishes the base protocol definitions and mathematical laws governing Sharenote. It provides the vocabulary required across all Sharenote Improvement Proposals (SNIPs) to differentiate between proof-of-work execution (physical shares) and deterministic identifiers (Sharenote routing labels). ## Terminology - **Sharenote**: A cryptographically verifiable unit of proof-of-work, expressed as a discrete text label (e.g., `34Z10`). It serves as a routing parameter and pricing floor for indexing engines. It MUST NOT be used for mathematical arithmetic. - **Z-Bits**: The base unit of difficulty measurement. Z-Bits represent difficulty on a logarithmic (log-2) scale. - **Physical Share**: The raw hash execution submitted by mining hardware — the actual proof that work was done. - **Continuous Difficulty ($D$)**: The exact mathematical density of the physical share execution, measured dynamically based on target thresholds. All accounting MUST use $D$, not the discrete label. - **Discrete Label**: A human-readable string (`XZYY` format, e.g., `34Z10`) where `X` is the integer Z-bit floor and `YY` is the truncated centi-bits. A label is a **floor declaration**, not a precise value. > New to these terms? See the [Glossary](/learn/glossary). ## Specification ### Computing Z-Bits from a Target For a given 256-bit target $T$: $$ D = \frac{2^{256}}{T} $$ $$ B = \log_2(D) $$ ### Formatting a Discrete Label Given Z-bit value $B$: $$ Z = \lfloor B \rfloor $$ $$ C = \lfloor (B - Z) \times 100 + 10^{-9} \rfloor $$ $$ \text{Label} = Z\text{Z}C \text{ (padded to 2 digits)} $$ The label declares a minimum floor of at least `Z.C` bits of entropy. A validator MUST NOT use the label string to verify a target — it MUST recompute `D` from the raw hash. ### The Strict Aggregation Law Summing discrete labels directly is mathematically invalid. All aggregation MUST operate in linear difficulty space: **Step 1.** Convert each Z-Bit value to Continuous Difficulty: $$ D = 2^B $$ **Step 2.** Sum all $D$ values: $$ D_{\text{total}} = D_1 + D_2 + \dots + D_n $$ **Step 3.** Convert back to Z-Bits: $$ B_{\text{total}} = \log_2(D_{\text{total}}) $$ **Worked example:** `2Z00` + `10Z00`: $$ D_1 = 2^2 = 4 $$ $$ D_2 = 2^{10} = 1024 $$ $$ D_{\text{total}} = 4 + 1024 = 1028 $$ $$ B_{\text{total}} = \log_2(1028) \approx 10.006 \rightarrow \text{label } \texttt{10Z00} \text{, not } \texttt{12Z00} $$ > **IEEE-754 Warning**: Standard 64-bit floats lose precision when accumulating millions of micro-shares. Pools MUST use rational number libraries or fixed-point arithmetic for long-running accumulators. > **Poisson Note**: Poisson probability distributions are used for *reliability estimation* — predicting the probability of producing a note within a given time window. This is distinct from the aggregation formula above and MUST NOT be conflated with it. ## Rationale Continuous difficulty ensures pool accounting and independent tracking tools retain full fidelity without rounding errors native to integer-based pseudo-difficulty schemas. ## Vibe Coding Integration Builders do not need to manually implement continuous difficulty floating-point logic. By invoking `npx skills add soprinter/skills`, your AI assistant natively understands the strict mathematics outlined in this specification. → [Read the official Skills & AI Integration Guide](/the-market/skills) --- ## File: specifications/snip-02.mdx --- title: "SNIP-02: Hashrate & Telemetry" description: "Standardizing live hashrate telemetry broadcasts over Nostr." --- ## Status Stable ## Abstract This specification defines the standard event schema for streaming live Sharenote hashrate metrics over Nostr (**Kind 35502**). By establishing a unified telemetry format, SNIP-02 enables seamless interoperability between mining hardware, pool monitors, and global hashrate aggregators. ## Motivation A standardized telemetry schema enables miners and pools to broadcast live performance data to any subscriber — dashboards, watchtowers, and pool federation nodes — using entirely public cryptographic proofs. ## Specification A telemetry broadcast (Nostr **Kind 35502**) uses an **empty `content` field**. All data is transported via tags to minimize payload size during high-frequency broadcasts. ### Core Tags | Tag | Format | Required | Description | |-----|--------|----------|-------------| | `a` | `["a", "
"]` | ✅ Mandatory | Chain address of the mining operation | | `all` | `["all", "", "msn: