Default
Door Remote - 04 Aug 2026
In het kort
Een firmwarefout zorgde ervoor dat Coldcard-portemonnees zaden genereerden van een software-pseudo-willekeurige generator in plaats van de hardwarechip die was gebouwd om de klus te klaren.
De bug verkleinde effectief de zoekruimte van 128 bits naar ongeveer 40 bits op oudere modellen.
Dit is wat dat allemaal betekent en hoe het heeft geleid tot de diefstal van meer dan $130 miljoen aan Bitcoin.
Iemand heeft Bitcoin-portemonnees geleegd die nooit bereikbaar hadden mogen zijn.
De munten zaten op Coldcard-apparaten: hardwareportefeuilles van de Canadese fabrikant Coinkite, het soort dat nooit in aanraking komt met internet. Geen phishing-link. Geen malware. Geen gestolen laptop. De aanvallers hebben eenvoudigweg ontdekt wat de privésleutels waren.
Galaxy Research heeft nu meer dan 1.596 BTC gestolen in drie bevestigde golven, met een vermoedelijke vierde golf die het totaal zou verhogen naar ongeveer 2.055 BTC – ongeveer $130 miljoen tegen huidige prijzen. Eén sweep bracht in 41 minuten $70 miljoen op. Coinkite zegt dat er minstens vijftien afzonderlijke aanvallers zijn binnengevallen.
Het bedrijf publiceerde op 1 augustus een technische achtergrondinformatie waarin werd uitgelegd wat er mis ging. Het is een ongewoon openhartig document, en de korte versie is dat de portemonnee acht jaar lang met geladen dobbelstenen heeft gegooid zonder dat iemand het merkte.
Nul is nog steeds ietsIn 2021 verplaatste Coinkite de cryptografie van Coldcard naar libsecp256k1, dezelfde bibliotheek die Bitcoin Core gebruikt. Goede beslissing. De integratie is waar het uiteenviel.
De migratie leidde stilletjes de zaadgeneratie weg van Coldcard's eigen hardwaregenerator voor willekeurige getallen en naar de software-fallback van MicroPython - een klein algoritme genaamd Yasmarang dat bestaat voor apparaten zonder willekeurchip.
🚨VERLIEZEN DOOR COLDCARD-HACK MEER DAN $ 100 miljoen
Grote zekerheid 1.596 BTC is gestolen van ~7300 adressen in 3 bevestigde golven + nog eens 14 kleinere incidenten.
Als we vermoedelijk (maar onbevestigd) toevoegen, komt de totale ballon op $130 miljoen (2k BTC).
Meer in de onderstaande draad 👇 pic.twitter.com/RAl3ib67qa
— Galaxy Research (@glxyresearch) 3 augustus 2026
Coldcard heeft een willekeurchip. Er werd gewoon niet meer naar gevraagd.
De reden is bijna te klein om te geloven. Een buildguard gebruikte #ifndef, die controleert of een instelling bestaat in plaats van of deze is ingeschakeld. Coinkite had die instelling gedefinieerd als nul, wat 'uit' betekent. Omdat nul nog steeds telt zoals gedefinieerd, is de veiligheidscontrole geslaagd en is de build voltooid. Beide versies van de functie hadden identieke handtekeningen, dus er leek niets mis mee.
"Het grootste deel van de willekeur op de COLDCARD kwam van een PRNG waarvan ik niet wist dat deze zich daadwerkelijk in de broncode bevond", schreef Coinkite, verwijzend naar een generator voor pseudo-willekeurige getallen: software die getallen produceert die er willekeurig uitzien, maar een vast recept volgen vanaf een startwaarde.
Geef het recept dezelfde startwaarde en je krijgt dezelfde output. Elke keer.
Op Mk2- en Mk3-apparaten met firmware 4.0.1 tot en met 4.1.9 was die startwaarde afkomstig van het serienummer van de chip en de klok. Coinkite schat de resulterende zoekruimte op ongeveer 40 bits. Nieuwere modellen combineerden een beetje entropie met veilige elementen, waardoor ze op ongeveer 72 bits kwamen.
128 is ook niet het doelwit.
De kloof is belangrijker dan het lijkt. Bits zijn exponenten. Een zoekruimte van 128 bits bevat meer combinaties dan er atomen zijn in het waarneembare heelal, en niemand doorzoekt deze ruimte. Veertig bits is ongeveer een biljoen, een getal waar een fatsoenlijke laptop doorheen kan kauwen. Elk stukje dat je verliest, halveert het werk.
Het technische team van Block, dat zijn eigen analyse publiceerde, schatte de effectieve zoekruimte voor beveiligde elementen van de nieuwere apparaten op 2^32 kandidaten, met een gemiddelde van ongeveer 2^31 proeven. Hun beoordeling voor de oudere boards is botter: voor een bekende apparaat-ID, timerstatus en oproepgeschiedenis is het genereren van portemonnees deterministisch.
En deterministisch is het tegenovergestelde van willekeurig, wat essentieel is voor cryptografie.
Niet ‘zwak’. Voorspelbaar.Coinkite vermoedt dat het machinaal is gevonden. "We moeten aannemen dat iemand AI heeft gebruikt om eerdere versies van onze firmware te beoordelen en op dit probleem is gestuit", schreef het bedrijf, eraan toevoegend dat het onlangs een van de best beschikbare AI-modellen op dezelfde code had uitgevoerd en niets had opgeleverd. "Zowel aanvallers als verdedigers hebben dezelfde AI-tools, maar vandaag heeft het ons niet geholpen, en alleen de slechteriken."
Er is vaste firmware beschikbaar voor elk getroffen model. Het repareert bestaande zaden niet; die portemonnees moeten worden geregenereerd en het geld moet worden verplaatst. Decrypt heeft besproken hoe air-gapped opslag verandert na een exploit als deze en heeft de verliezen gevolgd die boven de $114 miljoen uitkwamen.
Wat entropie eigenlijk isEntropie is de maatstaf voor hoeveel een aanvaller niet weet.
Met andere woorden: het is feitelijk onzekerheid, geteld in bits. Eén bit is één muntstuk: twee uitkomsten, en een gokker heeft het de helft van de tijd goed. Tien bits zijn 1.024 uitkomsten. Elke bit verdubbelt de werklast van de gokker.
Van een Bitcoin-portemonnee wordt een zeer groot aantal geheim gehouden. Het adres waar mensen munten naartoe sturen, is er wiskundig van afgeleid, en de afleiding verloopt slechts in één richting: je kunt van sleutel naar adres gaan, maar nooit terug.
De veiligheid van elke portemonnee berust dus op één vraag: hoeveel nummers moet een aanvaller proberen?
Als het getal gekozen is met 128 bits entropie, is het antwoord 'meer dan de natuurkunde toelaat'. Als er met 40 is gekozen, is het antwoord 'geef me wat tijd'.
Dit is dezelfde eigenschap die de dreiging van kwantumcomputing de moeite waard maakt om over te discussiëren: een kwantummachine zou de wiskunde aanvallen die sleutel aan adres koppelt. De Coldcard-bug was nooit nodig. Het maakte de sleutels raadbaar voordat er wiskunde bij kwam kijken.
Dit is waar de woordenschat glad wordt. Een pseudo-willekeurige generator produceert uitvoer die statistische tests op willekeur doorstaat, dus eigenlijk niets dat een spreadsheet zou markeren. Die opbrengst wordt nog steeds volledig bepaald door de startwaarde. Het lijkt willekeurig, maar is het niet.
Statistische willekeur en cryptografische onvoorspelbaarheid zijn verschillende eigenschappen, en de resultaten van Coldcard zouden de eerste test hebben doorstaan, terwijl ze de tweede volledig hadden gefaald.
Echte willekeur moet voortkomen uit fysieke ruis: elektrische trillingen in een circuit, thermische fluctuaties, radioactief verval. Daar was de hardwarechip op de Coldcard voor. Dat is de chip waarvan de build-vlag de verbinding heeft verbroken.
Toen bracht Luke Dashjr de dobbelstenen ter sprake. Terwijl gebruikers hun best deden om zaden te regenereren, zochten velen naar de voor de hand liggende low-tech oplossing. Met Coldcards kun je fysieke dobbelstenen gooien en de resultaten als entropie invoeren. De eigen richtlijnen van Coinkite behandelen zaden die zijn gemaakt met ten minste 50 onafhankelijke, privé dobbelsteenworpen, omdat ze geen risico lopen op de bug.
Het klinkt misschien stom, maar het bedrijf verkoopt eigenlijk een zakje met "100 schattige en kleine dobbelstenen" om het hele proces gemakkelijker voor je te maken.
Op 31 juli plaatste Bitcoin Core-ontwikkelaar Luke Dashjr een waarschuwing: "Er zijn nogal wat mensen die dobbelstenen voorstellen/gebruiken om de Coldcard-kwetsbaarheid te verminderen. Houd er rekening mee dat gewone dobbelstenen niet zijn ontworpen om cryptografisch veilig te zijn. Als je dit gaat doen, moet je waarschijnlijk precisiecasinodobbelstenen kopen. En zelfs dan moet je nog een bron van entropie hebben."
Bitcoin Twitter nam het niet rustig op.
"lol, nu kun je niet eens dobbelstenen gooien", schreef een gebruiker. "Zelfvoogdij is gedaan voor..." Een ander vroeg of hij iemand met Parkinson moest inhuren om ze te gooien. (Niet leuk.)
Moet ik iemand met Parkinson inhuren om met de dobbelstenen te gooien?
— Murern (@Bitcoin_Murern) 31 juli 2026
Waarschijnlijk kwam het nuttigste antwoord met rekenen. Ontwikkelaar Justin Sharp heeft de cijfers berekend over hoeveel een slechte dobbelsteen je precies kost:
"Overkill. Een perfecte d6 levert 2,585 bits per rol op. Een merkbaar bevooroordeelde dobbelsteen, bijvoorbeeld met één vlak dat 20% van de tijd landt in plaats van 16,7%, levert nog steeds ongeveer 2,55 bits op. Over 99 rollen is dat het verschil tussen ~256 bits en ~252 bits entropie."
Vier bits van de 256. Dat is de hele straf voor een zichtbaar oneerlijke dobbelsteen.
Dashjr heeft het niet bij het verkeerde eind als hij zegt dat goedkope dobbelstenen een meetbare bias hebben: spuitgegoten pitten verwijderen iets verschillende hoeveelheden plastic van elke zijde, en dat is precies de reden waarom casino's vlakgevulde precisiedobbelstenen gebruiken. Hij heeft gelijk over de natuurkunde en ongelijk over de inzet. Als je vier bits van 256 verliest, blijf je op 252. De bug van Coldcard zorgde ervoor dat gebruikers op 40 bleven.
Er zit echter een scherper argument verborgen in zijn advies, en het gaat niet over productietolerantie. Het gaat erom dat je geen enkele bron vertrouwt. Het falen van Coldcard was niet dat de entropie enigszins vertekend was; het was dat één component stilzwijgend stopte met bijdragen en niets hem opviel.
Wat u eraan kunt doen Als u een zaadje op een getroffen Coldcard hebt gegenereerd zonder dobbelsteenworpen (echt waar) of een sterke BIP-39-wachtwoordzin, is dat zaad aangetast.
Update de firmware, genereer een nieuw zaadje, verifieer de vingerafdruk, stuur een testtransactie en verplaats vervolgens alles. Het advies van Coinkite loopt er model voor model doorheen. Geëxporteerde zaden dragen het probleem met zich mee: het verplaatsen van een slecht zaad naar een andere portemonnee-app lost niets op.
Voor alle anderen is het niet zo dat hardware wallets kapot zijn of dat dobbelstenen een valstrik zijn.
Het is dat "willekeurig" een claim is, en claims moeten worden gecontroleerd. De broncode van Coldcard was de hele tijd openbaar. De beoogde hardware-RNG zat precies daar in het binaire bestand. Recensenten bevestigden dat het bestond, maar hebben nooit bevestigd dat de zaadgenerator het daadwerkelijk heeft genoemd.
Acht jaar audits hebben gekeken naar de juiste code. Niemand controleerde of het liep.
Dagelijkse debriefing NieuwsbriefBegin elke dag met de belangrijkste nieuwsverhalen van dit moment, plus originele artikelen, een podcast, video's en meer. Uw e-mail Download het! Download het!
Een firmwarefout zorgde ervoor dat Coldcard-portemonnees zaden genereerden van een software-pseudo-willekeurige generator in plaats van de hardwarechip die was gebouwd om de klus te klaren.
De bug verkleinde effectief de zoekruimte van 128 bits naar ongeveer 40 bits op oudere modellen.
Dit is wat dat allemaal betekent en hoe het heeft geleid tot de diefstal van meer dan $130 miljoen aan Bitcoin.
Iemand heeft Bitcoin-portemonnees geleegd die nooit bereikbaar hadden mogen zijn.
De munten zaten op Coldcard-apparaten: hardwareportefeuilles van de Canadese fabrikant Coinkite, het soort dat nooit in aanraking komt met internet. Geen phishing-link. Geen malware. Geen gestolen laptop. De aanvallers hebben eenvoudigweg ontdekt wat de privésleutels waren.
Galaxy Research heeft nu meer dan 1.596 BTC gestolen in drie bevestigde golven, met een vermoedelijke vierde golf die het totaal zou verhogen naar ongeveer 2.055 BTC – ongeveer $130 miljoen tegen huidige prijzen. Eén sweep bracht in 41 minuten $70 miljoen op. Coinkite zegt dat er minstens vijftien afzonderlijke aanvallers zijn binnengevallen.
Het bedrijf publiceerde op 1 augustus een technische achtergrondinformatie waarin werd uitgelegd wat er mis ging. Het is een ongewoon openhartig document, en de korte versie is dat de portemonnee acht jaar lang met geladen dobbelstenen heeft gegooid zonder dat iemand het merkte.
Nul is nog steeds ietsIn 2021 verplaatste Coinkite de cryptografie van Coldcard naar libsecp256k1, dezelfde bibliotheek die Bitcoin Core gebruikt. Goede beslissing. De integratie is waar het uiteenviel.
De migratie leidde stilletjes de zaadgeneratie weg van Coldcard's eigen hardwaregenerator voor willekeurige getallen en naar de software-fallback van MicroPython - een klein algoritme genaamd Yasmarang dat bestaat voor apparaten zonder willekeurchip.
🚨VERLIEZEN DOOR COLDCARD-HACK MEER DAN $ 100 miljoen
Grote zekerheid 1.596 BTC is gestolen van ~7300 adressen in 3 bevestigde golven + nog eens 14 kleinere incidenten.
Als we vermoedelijk (maar onbevestigd) toevoegen, komt de totale ballon op $130 miljoen (2k BTC).
Meer in de onderstaande draad 👇 pic.twitter.com/RAl3ib67qa
— Galaxy Research (@glxyresearch) 3 augustus 2026
Coldcard heeft een willekeurchip. Er werd gewoon niet meer naar gevraagd.
De reden is bijna te klein om te geloven. Een buildguard gebruikte #ifndef, die controleert of een instelling bestaat in plaats van of deze is ingeschakeld. Coinkite had die instelling gedefinieerd als nul, wat 'uit' betekent. Omdat nul nog steeds telt zoals gedefinieerd, is de veiligheidscontrole geslaagd en is de build voltooid. Beide versies van de functie hadden identieke handtekeningen, dus er leek niets mis mee.
"Het grootste deel van de willekeur op de COLDCARD kwam van een PRNG waarvan ik niet wist dat deze zich daadwerkelijk in de broncode bevond", schreef Coinkite, verwijzend naar een generator voor pseudo-willekeurige getallen: software die getallen produceert die er willekeurig uitzien, maar een vast recept volgen vanaf een startwaarde.
Geef het recept dezelfde startwaarde en je krijgt dezelfde output. Elke keer.
Op Mk2- en Mk3-apparaten met firmware 4.0.1 tot en met 4.1.9 was die startwaarde afkomstig van het serienummer van de chip en de klok. Coinkite schat de resulterende zoekruimte op ongeveer 40 bits. Nieuwere modellen combineerden een beetje entropie met veilige elementen, waardoor ze op ongeveer 72 bits kwamen.
128 is ook niet het doelwit.
De kloof is belangrijker dan het lijkt. Bits zijn exponenten. Een zoekruimte van 128 bits bevat meer combinaties dan er atomen zijn in het waarneembare heelal, en niemand doorzoekt deze ruimte. Veertig bits is ongeveer een biljoen, een getal waar een fatsoenlijke laptop doorheen kan kauwen. Elk stukje dat je verliest, halveert het werk.
Het technische team van Block, dat zijn eigen analyse publiceerde, schatte de effectieve zoekruimte voor beveiligde elementen van de nieuwere apparaten op 2^32 kandidaten, met een gemiddelde van ongeveer 2^31 proeven. Hun beoordeling voor de oudere boards is botter: voor een bekende apparaat-ID, timerstatus en oproepgeschiedenis is het genereren van portemonnees deterministisch.
En deterministisch is het tegenovergestelde van willekeurig, wat essentieel is voor cryptografie.
Niet ‘zwak’. Voorspelbaar.Coinkite vermoedt dat het machinaal is gevonden. "We moeten aannemen dat iemand AI heeft gebruikt om eerdere versies van onze firmware te beoordelen en op dit probleem is gestuit", schreef het bedrijf, eraan toevoegend dat het onlangs een van de best beschikbare AI-modellen op dezelfde code had uitgevoerd en niets had opgeleverd. "Zowel aanvallers als verdedigers hebben dezelfde AI-tools, maar vandaag heeft het ons niet geholpen, en alleen de slechteriken."
Er is vaste firmware beschikbaar voor elk getroffen model. Het repareert bestaande zaden niet; die portemonnees moeten worden geregenereerd en het geld moet worden verplaatst. Decrypt heeft besproken hoe air-gapped opslag verandert na een exploit als deze en heeft de verliezen gevolgd die boven de $114 miljoen uitkwamen.
Wat entropie eigenlijk isEntropie is de maatstaf voor hoeveel een aanvaller niet weet.
Met andere woorden: het is feitelijk onzekerheid, geteld in bits. Eén bit is één muntstuk: twee uitkomsten, en een gokker heeft het de helft van de tijd goed. Tien bits zijn 1.024 uitkomsten. Elke bit verdubbelt de werklast van de gokker.
Van een Bitcoin-portemonnee wordt een zeer groot aantal geheim gehouden. Het adres waar mensen munten naartoe sturen, is er wiskundig van afgeleid, en de afleiding verloopt slechts in één richting: je kunt van sleutel naar adres gaan, maar nooit terug.
De veiligheid van elke portemonnee berust dus op één vraag: hoeveel nummers moet een aanvaller proberen?
Als het getal gekozen is met 128 bits entropie, is het antwoord 'meer dan de natuurkunde toelaat'. Als er met 40 is gekozen, is het antwoord 'geef me wat tijd'.
Dit is dezelfde eigenschap die de dreiging van kwantumcomputing de moeite waard maakt om over te discussiëren: een kwantummachine zou de wiskunde aanvallen die sleutel aan adres koppelt. De Coldcard-bug was nooit nodig. Het maakte de sleutels raadbaar voordat er wiskunde bij kwam kijken.
Dit is waar de woordenschat glad wordt. Een pseudo-willekeurige generator produceert uitvoer die statistische tests op willekeur doorstaat, dus eigenlijk niets dat een spreadsheet zou markeren. Die opbrengst wordt nog steeds volledig bepaald door de startwaarde. Het lijkt willekeurig, maar is het niet.
Statistische willekeur en cryptografische onvoorspelbaarheid zijn verschillende eigenschappen, en de resultaten van Coldcard zouden de eerste test hebben doorstaan, terwijl ze de tweede volledig hadden gefaald.
Echte willekeur moet voortkomen uit fysieke ruis: elektrische trillingen in een circuit, thermische fluctuaties, radioactief verval. Daar was de hardwarechip op de Coldcard voor. Dat is de chip waarvan de build-vlag de verbinding heeft verbroken.
Toen bracht Luke Dashjr de dobbelstenen ter sprake. Terwijl gebruikers hun best deden om zaden te regenereren, zochten velen naar de voor de hand liggende low-tech oplossing. Met Coldcards kun je fysieke dobbelstenen gooien en de resultaten als entropie invoeren. De eigen richtlijnen van Coinkite behandelen zaden die zijn gemaakt met ten minste 50 onafhankelijke, privé dobbelsteenworpen, omdat ze geen risico lopen op de bug.
Het klinkt misschien stom, maar het bedrijf verkoopt eigenlijk een zakje met "100 schattige en kleine dobbelstenen" om het hele proces gemakkelijker voor je te maken.
Op 31 juli plaatste Bitcoin Core-ontwikkelaar Luke Dashjr een waarschuwing: "Er zijn nogal wat mensen die dobbelstenen voorstellen/gebruiken om de Coldcard-kwetsbaarheid te verminderen. Houd er rekening mee dat gewone dobbelstenen niet zijn ontworpen om cryptografisch veilig te zijn. Als je dit gaat doen, moet je waarschijnlijk precisiecasinodobbelstenen kopen. En zelfs dan moet je nog een bron van entropie hebben."
Bitcoin Twitter nam het niet rustig op.
"lol, nu kun je niet eens dobbelstenen gooien", schreef een gebruiker. "Zelfvoogdij is gedaan voor..." Een ander vroeg of hij iemand met Parkinson moest inhuren om ze te gooien. (Niet leuk.)
Moet ik iemand met Parkinson inhuren om met de dobbelstenen te gooien?
— Murern (@Bitcoin_Murern) 31 juli 2026
Waarschijnlijk kwam het nuttigste antwoord met rekenen. Ontwikkelaar Justin Sharp heeft de cijfers berekend over hoeveel een slechte dobbelsteen je precies kost:
"Overkill. Een perfecte d6 levert 2,585 bits per rol op. Een merkbaar bevooroordeelde dobbelsteen, bijvoorbeeld met één vlak dat 20% van de tijd landt in plaats van 16,7%, levert nog steeds ongeveer 2,55 bits op. Over 99 rollen is dat het verschil tussen ~256 bits en ~252 bits entropie."
Vier bits van de 256. Dat is de hele straf voor een zichtbaar oneerlijke dobbelsteen.
Dashjr heeft het niet bij het verkeerde eind als hij zegt dat goedkope dobbelstenen een meetbare bias hebben: spuitgegoten pitten verwijderen iets verschillende hoeveelheden plastic van elke zijde, en dat is precies de reden waarom casino's vlakgevulde precisiedobbelstenen gebruiken. Hij heeft gelijk over de natuurkunde en ongelijk over de inzet. Als je vier bits van 256 verliest, blijf je op 252. De bug van Coldcard zorgde ervoor dat gebruikers op 40 bleven.
Er zit echter een scherper argument verborgen in zijn advies, en het gaat niet over productietolerantie. Het gaat erom dat je geen enkele bron vertrouwt. Het falen van Coldcard was niet dat de entropie enigszins vertekend was; het was dat één component stilzwijgend stopte met bijdragen en niets hem opviel.
Wat u eraan kunt doen Als u een zaadje op een getroffen Coldcard hebt gegenereerd zonder dobbelsteenworpen (echt waar) of een sterke BIP-39-wachtwoordzin, is dat zaad aangetast.
Update de firmware, genereer een nieuw zaadje, verifieer de vingerafdruk, stuur een testtransactie en verplaats vervolgens alles. Het advies van Coinkite loopt er model voor model doorheen. Geëxporteerde zaden dragen het probleem met zich mee: het verplaatsen van een slecht zaad naar een andere portemonnee-app lost niets op.
Voor alle anderen is het niet zo dat hardware wallets kapot zijn of dat dobbelstenen een valstrik zijn.
Het is dat "willekeurig" een claim is, en claims moeten worden gecontroleerd. De broncode van Coldcard was de hele tijd openbaar. De beoogde hardware-RNG zat precies daar in het binaire bestand. Recensenten bevestigden dat het bestond, maar hebben nooit bevestigd dat de zaadgenerator het daadwerkelijk heeft genoemd.
Acht jaar audits hebben gekeken naar de juiste code. Niemand controleerde of het liep.
Dagelijkse debriefing NieuwsbriefBegin elke dag met de belangrijkste nieuwsverhalen van dit moment, plus originele artikelen, een podcast, video's en meer. Uw e-mail Download het! Download het!

