Concept · Magnetite Lab
Een blok van tachtig kubussen, één per byte van de header van het eerste Bitcoin-blok, met daarachter de blokken die erop volgden.

Een tentoonstelling over Bitcoin en proof of work

Proof instead of trust.

Hoe duizenden computers het eens worden over één grootboek, zonder dat iemand de baas is. Dertien zalen. In de opstellingen rekent je eigen toestel mee.

Blokhoogte971.235
Rekenkracht netwerk, geschat1,00 ZH/s
Nieuwe BTC per blok3,125 BTC
Volgende halvering1.050.000nog 78.765 blokken
stand 13/10/2026
Proloog · 1

Een blok begint als 80 bytes.

Zes velden: de versie, de hash van het vorige blok, de merklewortel van alle transacties, de tijd, het doel in verkorte vorm en een nonce. Elke kubus is één byte van het echte eerste blok uit 2009. De hoogte is de waarde.

De nonce draait.

Een miner verandert de nonce en haalt de header twee keer door SHA-256. Elke poging geeft een totaal andere hash, en niemand kan voorspellen welke. Het enige wat helpt, is meer pogingen per seconde.

Tot de hash onder het doel valt.

Dan is het blok geldig. Deze hash, die van het eerste blok, begint met 43 nulbits; het doel van 2009 vroeg er 32. Op het hele netwerk duurt zo'n vondst gemiddeld tien minuten.

Daarna bouwt elk blok verder.

Blok 1 draagt de hash van dit eerste blok in zich, blok 2 die van blok 1. Wie een oud blok verandert, verandert zijn hash en breekt elke schakel erna.

En elke node controleert het.

Het blok gaat van node naar node, en elke node rekent het zelf na. Dit eerste blok vroeg gemiddeld zo'n 4 miljard pogingen, een blok vandaag zo'n 6 × 10²³ (stand 13/10/2026). Nagaan kost er één, plus het nalopen van de transacties.

I

Het probleem

Zaal 01 tot 03

Zaal 01 · Dubbel uitgeven

Geld dat je kan kopiëren, is geen geld.

Een digitale munt is een reeks bytes, en bytes kopiëren kost niets. Wat houdt je dan tegen om dezelfde munt twee keer uit te geven?

Tot 2009 was het antwoord altijd hetzelfde: een tussenpersoon. Een bank houdt de boeken bij, ziet dat je munt al weg is en weigert de tweede betaling. Dat werkt. Maar dan moet iedereen die ene partij vertrouwen, en die partij kan ook weigeren, terugdraaien of bevriezen.

Op 31 oktober 2008 stuurde iemand onder de naam Satoshi Nakamoto een whitepaper naar een mailinglijst over cryptografie. De vraag erin: kan een netwerk van vreemden, zonder centrale partij, het eens worden over welke betaling eerst kwam?

We propose a solution to the double-spending problem using a peer-to-peer network.
Satoshi Nakamoto, samenvatting van de whitepaper, 2008
We stellen een oplossing voor het probleem van dubbel uitgeven voor, met een peer-to-peernetwerk.
Opstelling 01

Dezelfde munt, twee keer

Zaal 02 · Het grootboek

Iedereen een kopie van hetzelfde grootboek.

Bitcoin kent geen rekeningen. De stand van het grootboek is een lijst van munten die nog niet uitgegeven zijn, en elke node houdt er een eigen kopie van bij.

Zo'n munt heet een UTXO, een transactie-uitvoer die nog niet besteed is. Een transactie verbruikt er een of meer en maakt er nieuwe. Wie een munt wil uitgeven die niet in de lijst staat, wordt geweigerd.

Een gedeelde lijst lost het probleem nog niet op. Berichten reizen met vertraging door een netwerk, dus twee nodes kunnen twee tegenstrijdige betalingen in een andere volgorde zien. Zonder afspraak over de volgorde is er geen waarheid. De whitepaper noemt de oplossing een tijdstempelserver: een keten van blokken waarin elk blok alle vorige bevestigt.

Wie was eerst?

Twee betalingen met dezelfde munt vertrekken tegelijk aan twee kanten van het netwerk.

Zaal 03 · Handtekeningen

Enkel wie de sleutel heeft, kan uitgeven.

Elke munt is vergrendeld met een voorwaarde. Meestal is dat: toon een geldige handtekening bij deze publieke sleutel.

Een privésleutel is een getal van 256 bits dat je geheim houdt. Daaruit volgt de publieke sleutel, maar omgekeerd kan niet. Met de privésleutel maak je een handtekening over de transactie. Iedereen kan met de publieke sleutel nagaan dat ze klopt, zonder de privésleutel ooit te zien.

Verander één teken in de transactie en de handtekening klopt niet meer. Bitcoin gebruikt de curve secp256k1, met ECDSA en sinds Taproot (blok 709.632, 14 november 2021) ook Schnorr-handtekeningen volgens BIP340.

Deze site vraagt nooit een echte privésleutel of herstelzin. Geen enkele eerlijke dienst doet dat. De sleutel in de opstelling is een vaste demosleutel.

Opstelling 03

Onderteken, en verander dan iets

Onderteken een betaling met de demosleutel. Pas daarna het bedrag aan en controleer opnieuw.

II

Het mechanisme

Zaal 04 tot 08

Zaal 04 · De mempool

De wachtkamer.

Een nieuwe transactie komt eerst in de mempool: de verzameling geldige transacties die nog in geen blok staan. Elke node heeft er zijn eigen.

Een blok heeft beperkte ruimte, dus miners kiezen. Ze nemen de transacties met de hoogste vergoeding per vbyte, want die vergoeding is voor hen. Sinds Bitcoin Core 31 rekent de mempool met chunks: een transactie die veel betaalt, kan haar goedkope ouder meetrekken, en samen gaan ze in een blok tegen hun gezamenlijke vergoeding per vbyte.

Is het druk, dan stijgt de vergoeding die nodig is om snel mee te gaan. Is het rustig, dan volstaat bijna niets.

4.000.000gewichtseenheden per blok, hoogstens een miljoen vbytes (BIP141)
0,1sat per vbyte: daaronder geeft Bitcoin Core een transactie niet door (sinds 29.1)
300 MBstandaardgrootte van de mempool in Bitcoin Core
14 dagendaarna valt een transactie die niet gemined werd uit de mempool
Opstelling 04

Kies je vergoeding

Zaal 05 · Blok en hash

Tachtig bytes en een vingerafdruk.

Een blok is een header van precies 80 bytes plus een lijst transacties. De hash van het blok is de dubbele SHA-256 van enkel die header.

SHA-256 maakt van elke invoer 32 bytes die er willekeurig uitzien. Dezelfde invoer geeft altijd dezelfde uitkomst, één bit anders geeft een totaal andere, en terugrekenen kan niet.

De transacties staan niet zelf in de header. Ze worden paarsgewijs gehasht tot één merklewortel van 32 bytes, en die staat in de header. Verander één transactie en de wortel verandert, dus ook de hash van het blok. Wie wil bewijzen dat een transactie in een blok zit, heeft genoeg aan een handvol hashes: dat is de vereenvoudigde betalingscontrole uit sectie 8 van de whitepaper.

De header van het eerste blok

Tik een veld aan, hash de 80 bytes in je eigen browser, en verander dan één bit.

Opstelling 05.2

Bouw een merkleboom

Bewerk een transactie en kijk hoe de verandering naar de wortel klimt. Tik een blad aan voor het bewijs.

Zaal 06 · Proof of work

Proof-of-work is essentially one-CPU-one-vote.
Satoshi Nakamoto, whitepaper, sectie 4 · Proof of work is in wezen één processor, één stem.

Werk dat iedereen kan nagaan.

Een blok is enkel geldig als zijn hash niet groter is dan een doel. Er bestaat geen slimme manier om zo'n hash te vinden. Je probeert nonces tot het lukt.

Daarom is een geldig blok een bewijs. Wie het vond, deed gemiddeld een gekend aantal pogingen, en dat kostte elektriciteit en hardware. Nagaan dat het klopt, kost één dubbele hash.

Stemmen tellen zo niet per persoon of per adres, maar per eenheid rekenwerk. Wie duizenden nepnodes opzet, wint daar niets mee.

Echte miners rekenen met chips die enkel SHA-256 doen. Ze gebruiken dezelfde truc als de opstelling hieronder: de eerste 64 bytes van de header veranderen niet als enkel de nonce verandert, dus die tussenstand rekenen ze één keer uit.

Opstelling 06

Mine zelf een blok

Je toestel rekent echt: een header van 80 bytes, dubbel SHA-256, in meerdere werkers tegelijk. Elke vondst wordt daarna nagekeken met de SHA-256 van je browser.

Zaal 07 · Moeilijkheid

Tien minuten, wat er ook gebeurt.

Komt er rekenkracht bij, dan vallen blokken sneller. Daarom stelt elke node om de 2016 blokken het doel bij.

2016 blokken van tien minuten duren twee weken. Duurde de vorige periode korter, dan wordt het doel kleiner en het werk zwaarder. Duurde ze langer, dan wordt het lichter. De aanpassing is begrensd op een factor vier per keer.

Er is geen klok of bestuur dat dat beslist. Elke node rekent het zelf uit met de tijden in de blokken, en weigert een blok waarvan het doel niet klopt (bad-diffbits).

2016blokken per periode
1.209.600seconden: twee weken, de beoogde duur van elke periode

Een eigenaardigheid uit de eerste code: de meting loopt van het eerste tot het laatste blok van de periode, dus over 2015 tussenpozen, niet 2016.

Draai aan de rekenkracht

Verdubbel of halveer de rekenkracht en kijk hoe de bloktijd telkens terug naar tien minuten getrokken wordt.

Zaal 08 · Meeste werk

De keten met het meeste werk wint.

Soms vinden twee miners bijna tegelijk een blok. Dan bestaan er even twee versies van de keten. Elke node volgt de tak waarin het meeste werk zit, en wisselt zodra een andere tak meer werk heeft.

Meestal is zo'n splitsing na één blok opgelost: wie het volgende blok vindt, beslist welke tak meer werk krijgt. De transacties uit het verweesde blok die niet in de andere tak staan, gaan terug naar de mempool.

Het verleden herschrijven betekent al het werk opnieuw doen vanaf het blok dat je wil veranderen, en dan nog sneller zijn dan de rest van het netwerk. Elke bevestiging erbovenop maakt dat duurder.

In de whitepaper heet het de langste keten. In de code is het sinds versie 0.3.3 (juli 2010) de keten met het meeste opgetelde werk, niet met de meeste blokken.

Breek de keten

Verander een transactie in een oud blok. Daarna mag je alles opnieuw minen.

Opstelling 08.2

De race om het meeste werk

Een aanvaller bouwt in het geheim een eigen tak. Kies zijn rekenkracht en hoe lang de ontvanger wacht.

III

De gevolgen

Zaal 09 tot 12

Zaal 09 · Aanval met 51 %

Wat kost een aanval?

Wie meer rekenkracht heeft dan de rest samen, kan een geheime tak bouwen die de eerlijke keten inhaalt. Met minder kan je het ook proberen. Satoshi rekende in 2008 al uit hoe snel je kans dan krimpt.

Met minder dan de helft daalt de kans exponentieel met elk blok dat de ontvanger wacht. Volgens de schatting in de whitepaper is ze met 10 % van de rekenkracht na 5 bevestigingen onder 0,1 %. Exacter rekenwerk komt op ongeveer 0,18 %, en pas na 6 bevestigingen onder 0,1 %. Vanaf de helft wint de aanvaller altijd. Ook dan kan hij geen munten van anderen uitgeven of de regels veranderen.

De echte drempel is fysiek. Meer rekenkracht dan het hele netwerk vraagt machines die eerst gebouwd moeten worden, en elektriciteit die elk uur betaald moet worden.

Opstelling 09

Reken het zelf uit

De formule uit sectie 11 van de whitepaper, en de stroomrekening van een uur meerderheid.

Zaal 10 · Uitgifte

20.097.612,5BTC uitgegeven volgens het schema, tot en met blok 971.235 · stand 13/10/2026

Iets minder dan 21 miljoen, en nooit meer.

Nieuwe bitcoin ontstaat enkel in de eerste transactie van een blok, als subsidie voor de miner. Die subsidie halveert elke 210.000 blokken, ongeveer om de vier jaar.

Het begon met 50 BTC per blok in 2009. Sinds blok 840.000 (20 april 2024) is het 3,125 BTC. De volgende halvering valt op blok 1.050.000, verwacht rond april 2028.

De subsidie wordt in satoshi gehalveerd en naar beneden afgerond. Daardoor eindigt de reeks op 20.999.999,9769 BTC. Het laatste blok met subsidie is blok 6.929.999, rond 2140. Daarna leven miners enkel van de vergoedingen.

Ook dit controleert elke node: een blok dat de miner meer geeft dan de subsidie plus de vergoedingen, wordt geweigerd (bad-cb-amount).

Opstelling 10

Sleep door de tijd

Zaal 11 · Nodes

Vertrouw niet. Controleer.

Een node is een computer die elke regel van Bitcoin zelf toepast. Hij aanvaardt een blok niet omdat een miner het stuurt, maar omdat hij het zelf nagerekend heeft.

Miners stellen blokken voor, nodes beslissen wat geldig is. Een miner die een regel breekt, verspilt zijn werk: niemand bouwt op zijn blok verder. Een greep uit wat Bitcoin Core bij elk nieuw blok nagaat, met de reden waarmee het weigert:

  1. De hash is niet groter dan het doel.

    high-hash
  2. Het doel klopt met de laatste bijstelling.

    bad-diffbits
  3. De merklewortel past bij de transacties.

    bad-txnmrklroot
  4. Elke munt die uitgegeven wordt, bestaat en is nog niet besteed.

    bad-txns-inputs-missingorspent
  5. Elke handtekening klopt.

    block-script-verify-flag-failed
  6. De miner neemt niet meer dan de subsidie plus de vergoedingen.

    bad-cb-amount
  7. Het blok weegt hoogstens 4.000.000 eenheden.

    bad-blk-weight
  8. De tijd ligt na de mediaan van de vorige 11 blokken, en hoogstens twee uur voor op de klok van de node.

    time-too-old · time-too-new

Bitcoin Core 31 legt standaard acht uitgaande verbindingen die alles doorgeven en twee die enkel blokken doorgeven, en aanvaardt tot 125 verbindingen in totaal.

Opstelling 11

Laat een blok los

Tik een node aan: die vindt een blok, en de rest controleert het. Of probeer een vals blok.

Zaal 12 · Energie

Hoeveel stroom, en waarvoor?

Proof of work verbruikt elektriciteit, en dat is geen bijwerking. De kost maakt het verleden duur om te herschrijven. Hoeveel het is, hangt af van de rekenkracht en van de machines.

Cambridge schat het verbruik met een eenvoudige rekensom: rekenkracht maal de efficiëntie van de machines. Op 13 oktober 2026 kwam de beste schatting op ongeveer 163 TWh per jaar, met een ruime marge van 84 tot 314 TWh. Het rapport van Cambridge uit april 2025 kwam op ongeveer 138 TWh in juni 2024, ongeveer 0,54 % van alle elektriciteit ter wereld.

Over de bronnen lopen de schattingen uiteen. Een enquête van Cambridge bij 49 mijnbedrijven, samen ongeveer de helft van de rekenkracht en vooral in de Verenigde Staten, kwam op 52,4 % hernieuwbaar en kernenergie, met aardgas als grootste enkele bron. Een ander model van Cambridge, op basis van locaties uit 2022, kwam op een vuilere mix.

Hetzelfde rapport schat de uitstoot op ongeveer 39,8 megaton CO₂-equivalent per jaar, ongeveer 0,08 % van de uitstoot wereldwijd. Volgens dezelfde enquête gaat tegen eind 2024 11,1 % van de rekenkracht uit dienst; 86,9 % van die machines wordt hergebruikt of gerecycleerd, de rest is ongeveer 2,3 kiloton elektronisch afval. De bedrijven gaven die cijfers zelf op.

Opstelling 12

Reken mee

Rekenkracht maal efficiëntie. Schuif aan de efficiëntie van de machines.

Naslag

Zaal 13

Zaal 13 · Woordenlijst

Woordenlijst.

Van blok tot UTXO

Magnetite Lab

Over dit concept

Difficulty One bestaat niet. Het is een concept van Magnetite, gebouwd om te tonen wat een educatieve site kan: rekenwerk dat echt in je browser draait, een 3D-scène zonder één 3D-bestand, en twee talen die tegelijk geschreven zijn. Elke bewering is nagegaan tegen de whitepaper, de BIPs, de broncode van Bitcoin Core en de cijfers van Cambridge. De slogan komt uit sectie 1 van de whitepaper: "cryptographic proof instead of trust".

Op een oudere gsm rekenen de opstellingen trager; in zaal 06 zie je dat aan je eigen rekenkracht. De live cijfers vraagt je browser rechtstreeks aan mempool.space, zonder cookies; die dienst ziet daarbij je IP-adres. Antwoordt hij niet, dan zie je de stand van 13 oktober 2026.

Educatief concept, geen financieel advies. Deze site toont geen koersen en verkoopt niets.

Bronnen