Verdere decentralisatie miningpools met Stratum V2
Een veelgehoorde kritiek is dat Bitcoin mining te gecentraliseerd is rond de miningpools. Daarom werkt Braiins, het bedrijf achter de miningpool Slush Pool, aan een verbeterde versie van het Stratum protocol. Stratum V2 verbetert de decentralisatie van miningpools door de macht terug te leggen bij de miners.
Gemiddeld vinden miners elke tien minuten een nieuw block om aan de bitcoin blockchain toe te voegen. De gelukkige miner die een block vindt krijgt daarvoor een miner's reward van (op dit moment) 12,5 BTC. Niet slecht! Maar wat als je niet degene bent die het volgende block vindt? Dan krijg je niets. Dat maakt het leven van een miner die in zijn eentje probeert te minen er niet makkelijker op.
Daarom minen veel Bitcoin miners via zogenaamde mining pools. Daarin bundelen de miners hun krachten om gezamenlijk mee te dingen naar de miner's reward. Wanneer één van de aangesloten miners het volgende block vindt verdeelt de miningpool de beloning onder alle deelnemers aan de hand van de hoeveelheid rekenkracht die zij hebben bijgedragen. Veel miningpools gebruiken daarvoor het Stratum protocol.
Zo'n miningpool is voor miners erg handig omdat ze erdoor meer zekerheid hebben. In plaats van ééns in de zoveel tijd een grote uitbetaling te ontvangen krijgen zij bij een miningpool namelijk veel regelmatiger uitbetaald. Soms wel meerdere keren per dag.
Het zorgde er echter ook voor dat het miningproces op een zekere manier gecentraliseerd raakte rond de miningpools. Miners bleken namelijk de neiging te hebben zich bij grotere miningpools aan te sluiten. Die vinden door hun hoge gebruikersaantallen vaker een nieuw block dan een kleinere miningpool en kunnen daardoor regelmatiger uitbetalen.
De vier grootste miningpools zijn inmiddels zo groot geworden dat zij gezamenlijk over meer dan 50% van de rekenkracht van het netwerk beschikken. En dat is een veiligheidsrisico dat door veel mensen als een probleem wordt gezien. Het miningproces is immers juist bedoeld om Bitcoin gedecentraliseerd te houden.
De grafiek toont de huidige distributie van rekenkracht onder bitcoin miningpools. Bron: XBT.eu
Miningpools fungeren echter als een soort tussenpartij bij het miningproces en hebben daardoor een flinke vinger in de pap. Zij beslissen voor de gehele miningpool welke transacties aan een block worden toegevoegd en zij kunnen er dus ook voor kiezen om bepaalde transacties juist niet op te nemen.
Bovendien is het de miningpool die een zogenaamd 'version bit' aan een block meegeeft. Dat is van groot belang bij soft fork upgrades, zoals de activatie van SegWit in 2017. Via de version bit geven miners namelijk aan of zij een fork steunen of niet. Op dit moment is het echter de beheerder van de miningpool die voor alle aangesloten miners kiest of een fork wel of niet gesteund wordt.
De macht van miningpools en hun beheerders is volgens velen dan ook te groot. Braiins, het bedrijf achter Slush Pool, werkt daarom aan een verbeterde versie van het Stratum protocol: Stratum V2.
In het nieuwe Stratum V2 wordt het protocol op zijn kop gezet en komt de macht weer in handen van de individuele miners. In plaats van de miningpools zijn het in deze nieuwe versie de miners die de transacties uitkiezen, een version bit toevoegen en de eerste aanzet doen voor een volgend block.
Dat is geinspireerd door het BetterHash voorstel van Matt Corallo dat op een soortgelijke manier werkt. Van kwaad bloed tussen de twee projecten is overigens geen sprake. Corallo verleende zelfs zijn hulp aan het Braiins team om hen met een aantal complexe problemen te helpen.
Behalve verbeterde decentralisatie bevat Stratum V2 ook nog een aantal andere upgrades. Zoals een versleuteling van de data tussen de miningpool en miner om te voorkomen dat een 'man-in-the-middle' aanval het signaal kaapt en ermee aan de haal gaat.
Daarnaast is in Stratum V2 de efficiëntie van het protocol verbeterd, en is uitwisseling van meer soorten data mogelijk (zoals temperatuur, voltages en andere informatie) tussen miners en miningpools. Er ligt nog meer in het verschiet, maar daarover wil het Braiins team nu nog niets kwijt.
De specificaties van het nieuwe Stratum V2 protocol staan dan ook nog niet helemáál vast. Het team zegt eerst nog aanvullende feedback af te wachten, waarna ze het protocol waarschijnlijk eerst een tijdje bij wijze van test op Slush Pool activeren. Pas daarna zal het beschikbaar worden gemaakt voor andere miningpools. Ergens in augustus hoopt Braiins de definitieve specificaties via een Bitcoin Improvement Proposal (BIP) bekend te maken.
Meer lezen over verdere decentralisering van het miningproces? Lees ook eens over het BetterHash protocol van Matt Corallo.
Afbeelding: Marco Verch, Creative commons 2.0 license