P2Poolv2 Documentation
Mission: Replace pool operators with miners
P2Poolv2 is a permissionless mining pool where miners build block templates, continuously audit accounting, and are paid directly to their wallets.
P2Poolv2 runs a sharechain of weak bitcoin blocks, where the sharechain runs the Nakamoto consensus with a weaker target than bitcoin. The is able to run share accounting in a decentralized manner - all nodes have reach eventual consistency on the sharechain accounting and can validate all shares and payouts.
The following pages describe the requirements and design decisions of P2Poolv2.
What Is Here
- Getting Started
-
Run a node from source and connect your miners. See Getting Started.
- Motivation and Requirements
-
Why bitcoin needs a pool without a central operator, and the requirements for P2Poolv2. See Why Do We Need P2Poolv2 and Pool Requirements.
- P2P Network
-
How miners join a peer-to-peer network to reduce their variance. See P2P Network of Miners.
- Node Design
-
The parts of a node: the Stratum server, per-miner vardiff, and the pool difficulty algorithm. See Node Components, Stratum Server & Vardiff, and Pool Vardiff.
- Sharechain
-
The sharechain of weak bitcoin blocks: share commitments, share validation, PPLNS accounting, and sharechain transactions. See Sharechain.
- Payouts
-
How larger miners are paid directly from the bitcoin coinbase, and how smaller miners sell their shares for payouts. See Payouts.
- Known Attacks
-
How P2Poolv2 handles known attacks on mining pools. See Handling Known Attacks.
- Dashboards
-
Dashboards that track the hashrate of the miners attached to a node and the global sharechain view. See Dashboards.
- Comparison With SV2 and DATUM
-
How P2Poolv2 differs from pools running SV2 Job Declaration or OCEAN’s DATUM. See Comparison With SV2 & DATUM.
- Stories
-
Walkthroughs of the pool at work, starting with a single miner. See Stories.
Elsewhere
-
The project site: p2poolv2.org
-
Source code: github.com/p2poolv2/p2poolv2
-
Testnet4 pool and chain explorer: testnet4.p2poolv2.org
-
Matrix chat: #p2poolv2:matrix.org