De difficulty-aanpassing van Bitcoin

Andreas HartwigEconomisch journalist & crypto-financieel expert

Ongeveer elke 2.016 blocks — zo'n twee weken — berekent Bitcoin zijn mining-difficulty automatisch opnieuw: omhoog wanneer blocks te snel worden gevonden, omlaag wanneer ze te traag komen. Zo blijft de gemiddelde afstand tussen twee blocks dicht bij tien minuten, hoeveel rekenkracht er ook bij komt of verdwijnt.

Bij Bitcoin beslist geen centrale beheerder hoe moeilijk het moet zijn om een block te vinden. In plaats daarvan zit er een terugkoppeling in het protocol ingebouwd: het meet hoe snel de laatste blocks zijn geproduceerd en verschuift het mining-doel zodat het tempo weer richting één block per tien minuten kruipt. Deze «difficulty-aanpassing» is een van de stille mechanismen die het blockritme van Bitcoin — en daarmee de voorspelbare uitgifte van nieuwe munten — opvallend stabiel houden, ook al is de wereldwijde rekenkracht met vele ordes van grootte gegroeid en af en toe scherp ingezakt. Dit artikel legt uit wat difficulty is, hoe de aanpassing werkt, waarom er voor tien minuten is gekozen en hoe difficulty samenhangt met hashrate en prijs — en waarin ze van allebei verschilt.

Wat «difficulty» werkelijk betekent

Om een block toe te voegen hasht een miner de blockheader keer op keer terwijl hij een waarde varieert die de nonce heet, op zoek naar een uitkomst die onder een numerieke drempel valt: het target. Een lager target betekent dat er minder geldige hashes bestaan, dus zijn er gemiddeld meer pogingen nodig — precies dat maakt mining «zwaarder».

Difficulty is niet meer dan een voor mensen leesbare manier om uit te drukken hoe laag dat target ligt, gemeten aan het makkelijkste target dat het protocol ooit heeft toegestaan (difficulty 1). Een difficulty van, zeg, enkele biljoenen betekent dat het huidige target biljoenen keren kleiner is dan dat startpunt. Nodes leiden het target rechtstreeks af uit de difficulty; het zijn dus twee blikken op hetzelfde getal.

Het ritme van 2.016 blocks

Bitcoin past niet na elk block aan, maar rekent één keer per epoch van 2.016 blocks opnieuw. Bij tien minuten per block zouden 2.016 blocks precies twee weken moeten duren (20.160 minuten) — daarom wordt de difficulty-wijziging vaak als tweewekelijks omschreven.

Omdat het interval in blocks wordt geteld en niet in kalendertijd, rekt de werkelijke afstand tussen twee aanpassingen op wanneer het netwerk traag mint, en krimpt hij wanneer het snel mint. Elke volledige node maakt dezelfde berekening zelfstandig en komt op dezelfde nieuwe waarde uit, dus valt er niets te stemmen of af te stemmen.

De rekensom achter elke aanpassing

Aan het eind van een epoch vergelijkt het netwerk hoe lang de laatste 2.016 blocks werkelijk duurden met hoe lang ze hadden moeten duren. In de kern: nieuwe difficulty = oude difficulty × (verwachte tijd ÷ werkelijke tijd). Kwamen de blocks sneller dan verwacht, dan is de werkelijke tijd kleiner dan de verwachte en stijgt de difficulty; kwamen ze trager, dan daalt ze.

De verandering is begrensd: één aanpassing kan de difficulty hooguit verviervoudigen of tot een kwart terugbrengen. Die grens voorkomt wilde uitslagen na een tijdelijke opleving of instorting van rekenkracht. Daarnaast bestaat er een oude, onschuldige afwijking van één: de tijdspanne wordt over 2.015 intervallen gemeten maar als 2.016 behandeld — daardoor ligt de gemiddelde blocktijd een haar boven tien minuten.

Waarom tien minuten, en waarom dat uitmaakt

Een streefinterval tussen blocks is een afweging. Veel snellere blocks zouden zich minder betrouwbaar over een wereldwijd netwerk verspreiden, wat verspild werk en kortlevende forks vermeerdert; veel tragere blocks zouden bevestigingen tergend langzaam maken. Tien minuten is gekozen als een behoedzame middenweg, die een block de tijd geeft zich over de hele wereld te verspreiden voordat het volgende waarschijnlijk wordt gevonden.

Dat dit interval stabiel blijft, is precies waarom het uitgifteschema van Bitcoin voorspelbaar is. Omdat er elke twee weken ongeveer 2.016 blocks worden gemined, valt de halving die de blockbeloning verlaagt dicht bij het beoogde vierjarige ritme, en nadert het totale aanbod zijn plafond van 21 miljoen langs een navolgbaar pad.

Difficulty, hashrate en de terugkoppeling

Gaan er nieuwe miningmachines aan, dan worden blocks sneller dan elke tien minuten gevonden; de volgende aanpassing tilt de difficulty omhoog en remt ze weer af. Schakelen miners uit — door energiekosten, afgedankte hardware, seizoensgebonden stroom of regionale regels —, dan vertragen de blocks en verlaagt de daaropvolgende aanpassing de difficulty om ze te versnellen. Het systeem corrigeert achteraf; het kijkt niet vooruit.

Het is goed te weten dat de hashrate niet rechtstreeks wordt gemeten: het netwerk kan niet zien hoeveel machines draaien. Gepubliceerde hashrate-cijfers zijn schattingen, afgeleid uit difficulty en waargenomen blocktijden. Daarom zijn ze over korte periodes rumoerig en lees je ze het best als trend.

Randgevallen en wat difficulty niet vertelt

Harde schokken uit de echte wereld tonen het mechanisme aan het werk. Toen halverwege 2021 een grote miningregio van het net ging, beleefde het netwerk zijn tot dan grootste neerwaartse aanpassing (rond 28 %), die de normale blocktijden binnen de volgende epoch herstelde. Regels voor tijdstempels en de viervoud-grens beschermen bovendien tegen miners die met de klok het herberekenen zouden willen beïnvloeden.

Difficulty meet de beveiligingsinspanning van het netwerk en de economie van het minen — het is geen prijssignaal en geen marktindicator. Ze beweegt in trage, sprongsgewijze stappen en reageert op blocktijden uit het verleden, dus zegt ze weinig over vraag, liquiditeit of waardering. Gereedschap als BIKENZO zit op een heel andere laag en toont bredere marktcontext, bijvoorbeeld een wereldwijde liquiditeitsindex tegenover de Bitcoin-prijs; dat is macro- en marktcontext, los van de on-chain-mechaniek van difficulty. Beide zijn nuttige brillen, en ze beantwoorden verschillende vragen.

FAQ

Hoe vaak past de Bitcoin-difficulty zich aan?
Elke 2.016 blocks, wat bij tien minuten per block ongeveer twee weken is. De precieze afstand op de kalender hangt af van hoe snel de blocks tijdens die epoch werkelijk zijn gemined.
Kan de Bitcoin-difficulty dalen?
Ja. Hebben de vorige 2.016 blocks langer dan twee weken geduurd — meestal doordat rekenkracht het netwerk heeft verlaten —, dan verlaagt de volgende aanpassing de difficulty zodat de blocks terugkeren naar het doel van tien minuten.
Wat gebeurt er als veel miners plotseling uitschakelen?
Blocks worden trager gevonden en bevestigingen duren langer tot de volgende aanpassing. Dan daalt de difficulty en keert het normale tempo terug. In het uiterste geval kan één neerwaartse aanpassing de difficulty tot een kwart terugbrengen.
Is difficulty hetzelfde als hashrate?
Nee. De hashrate is alle rekenkracht die Bitcoin mint; de difficulty is de protocolinstelling die het vinden van een block zwaarder of lichter maakt. De hashrate is niet rechtstreeks waarneembaar en wordt geschat uit difficulty en blocktijden.
Beïnvloedt difficulty de Bitcoin-prijs?
Niet rechtstreeks. Difficulty reageert op blocktijden uit het verleden en op miningactiviteit, en verandert in trage, sprongsgewijze stappen. Ze weerspiegelt beveiligingsinspanning en miningeconomie, niet de marktvraag, en ze voorspelt geen prijs.
Waarom ligt de gemiddelde blocktijd iets boven tien minuten?
Een kleine afwijking van één in de oorspronkelijke code meet de tijdspanne van een epoch over 2.015 intervallen maar behandelt die als 2.016. Het effect is minuscuul en is nooit veranderd, dus liggen blocks gemiddeld een fractie boven tien minuten.

A Bitcoin liquidity terminal. Global central-bank liquidity, plotted against the Bitcoin price, in one screen.

Een preview aanvragen