pull down to refresh

I keep meaning to spend more time looking in to Braidpool, but in the mean time this article by the Bitshala crew is helpful:

Standard Bitcoin uses a linear chain. When two miners find blocks simultaneously, one becomes an “orphan” = wasted work. High orphan rates are a core reason pooling became necessary in the first place.

Research on DAG-based consensus (GHOST, Sompolinsky & Zohar, 2015; GHOSTDAG/PHANTOM, Sompolinsky et al., 2018) showed that a Directed Acyclic Graph structure can include parallel blocks without discarding them, eliminating orphan waste and enabling much higher share rates while preserving security.

Braidpool extends Nakamoto consensus to a DAG. In its architecture (from the Braidpool spec):
“The consensus algorithm we choose is inspired by simply extending Nakamoto consensus to a Directed Acyclic Graph. We call nodes in this DAG ‘beads’ and the overall structure a ‘braid’.
A braid has an additional restriction relative to a general DAG: beads cannot name as parents other beads that are already ancestors of another parent. This prevents redundant linkage and keeps the graph clean and linearly orderable. The DAG can be totally ordered in linear time using Kahn’s algorithm or a modified depth-first search to “graph cut” a common ancestor to all parents.

Work by developer zawy12 on Braidpool’s difficulty algorithm (Delving Bitcoin, December 2024) showed a remarkable property: hashrate and latency “precisely cancel time units” in the DAG width calculation, enabling a timestamp-free difficulty algorithm that targets DAG width directly, a clean theoretical result with important practical implications for pool security.
Many pools are adopting Stratum V2, which includes a Job Declaration Protocol (JDP) that lets miners build their own block templates. This is directionally similar to Braidpool’s approach, but Braidpool’s developers have noted they are unlikely to use Stratum V2’s JDP or Template Distribution Protocol, because these still allow a miner to delegate template selection to a remote party over the network. Braidpool’s IPC-only design prevents this at the architecture level, not just the protocol level.

Braidpool does use Stratum V2’s Mining Protocol for communication with individual mining devices (ASICs) , the low-level hashrate protocol. Only the template-building layer is redesigned.

Check out the Bitshala article if you want a deep dive.