How it works
Permanent Reduced Data, still Bitcoin.
Activation
Activation height nPurityActivationHeight is hardcoded on mainnet to 961637. The first Purity consensus block is pinned to the hash 0000000000000000003ea74f4dafdda7ed4e02c4c1ccb9768e0ca4f9e1a35159. A different block at that height is invalid under consensus, even when checkpoints are disabled with -checkpoints=0.
Mainnet launched at , at height 961637. The enforcement-chain split is at 961632. If an upgraded node already has a conflicting block at the activation height, rebuild its block index with -reindex.
Fork baseline
The Knots/BIP110 enforcement chain that rejected non-signaling blocks at height 961632 — not the Core majority chain at the same height. Historical Bitcoin / Knots validation is unchanged before the Purity activation height, so IBD still works.
Permanent RDTS
BIP110 Reduced Data rules become always active at the Purity activation height and never expire. They cannot be turned off with consensus-rule opt-outs. After activation, version-bit 4 mandatory signaling is not required. The rules are consensus, not a miner poll.
Script elements include the documented P2SH redeemScript-push exemption. Block size and weight limits remain those inherited from Bitcoin.
Non-empty non-OP_RETURN scriptPubKey
≤ 34 bytes
OP_RETURN outputs
≤ 83 bytes
Script elements
≤ 256 bytes
Taproot control blocks
depth ≤ 7
Taproot annex
invalid
OP_IF / OP_NOTIF in Tapscript
forbidden
Difficulty: aserti3-1d
Port of Bitcoin Cash aserti3. Half-life 86400 seconds (24 hours). Ideal block time remains 600 seconds. Anchor is enforcement-chain block 961632. From the Purity activation height onward, GetNextWorkRequired uses ASERT. Blocks before that height still use Bitcoin’s 2016-block DAA.
Unchanged
- SHA256d proof-of-work
- P2P magic f9beb4d9, default port 8333
- Address formats, transaction serialization, sighash
- No transaction-level replay protection
- Block size / weight limits inherited from Bitcoin
