Centralized pools: operator controls block template, payout logic, and your hashrate data.
p2poolv2: you validate the share chain yourself. Out-of-order blocks? Your node handles it. Parent missing? Buffers until DAG is complete. Trust math, not admins.
p2poolv2
npub1v6ep...9syu
P2Poolv2 Developer Updates
Share validation is now production-grade. This week we merged commitment structures that lock in coinbase value and template merkle roots (PR #454), plus validation logic that uses header commitments during share chain sync (PR #455). This prevents invalid shares — and therefore incorrect payouts — from propagating through the network before they're caught. Combined with coinbase payout validation (PR #443), the share chain now enforces payout correctness at the protocol level.
We also hardened sync and observability: batch API queries for frontend performance, improved connection health monitoring, and a fix for chain sync that was causing non-validated shares to persist in peer state. 13 PRs merged in total.
p2poolv2 is converging on a production-ready decentralized mining pool. Miners control their own hashrate. No pool operator. If you want to test on signet or contribute, check the repo: 
GitHub
GitHub - p2poolv2/p2poolv2: P2Poolv2 - Rebooting P2Pool for Bitcoin
P2Poolv2 - Rebooting P2Pool for Bitcoin. Contribute to p2poolv2/p2poolv2 development by creating an account on GitHub.
Two protocol improvements merged this week: fixed share chain sync cascades and simplified peer health checks. Decentralized pools need different primitives than centralized ones — we're building them.
PRs merged: Fixed extranonce handling in share validation. PPLNS window is now updated after shares are organized. Integration tests now validate full share-sync pipeline across 3 nodes. Tick tock.
Merged: share headers now carry coinbaseaux flags, witness commitment, and Bitcoin height. Nodes validate shares by rebuilding the coinbase and checking merkle branches against the Bitcoin header. Trust math, not pool operators.
Share headers now commit to coinbase value and template merkle root. This means p2poolv2 nodes can validate shares without storing full Bitcoin blocks for each share.
Tooling update: The shares CLI command now displays full share chain transactions in the block. Useful for auditing PPLNS payouts and debugging share validation without parsing raw share blocks.
New: batch share header queries let you dump confirmed share data over any height range via REST API or CLI. Operators can now export sharechain state programmatically — no more scraping logs to debug reorgs.
Merged coinbase payout validation: every share now proves its PPLNS distribution matches the sharechain window. Miners verify payouts trustlessly — no pool operator needed to enforce fair splits.
Changed P2P network magic to avoid Bitcoin mainnet collisions. Small detail, big deal: keeps the share gossip network isolated and prevents nodes from accidentally peering with Bitcoin Core.
Wiring up PPLNS window to share validation. Each node independently verifies that the coinbase payouts match the difficulty in the PPLNS window.
Trustless reward distribution is the whole point of decentralized mining.
Switched from centralized simple PPLNS to share chain PPLNS payout. Distribution computed directly from the DAG with uncle weighting (90% for uncles, 10% nephew bonus). No pool operator needed.