Bug în firmware-ul Coldcard ar fi facilitat pierderi de 130 mil. $ în Bitcoin
Echipa Bitcoin Engineering and Security de la Block, împreună cu dezvoltatori independenți Bitcoin Core, afirmă că a identificat cauza recentului val de pierderi asociate portofelelor hardware Coinkite Coldcard: un defect de firmware care a slăbit generarea entropiei chiar înainte ca utilizatorii să interacționeze cu fraza seed.
Potrivit analizei, bug-ul a redirecționat generarea de numere aleatoare de la sursa hardware STM32 către alternativa deterministă Yasmarang din MicroPython. Dispozitivele Mk2 și Mk3 cu firmware 4.0.1–4.1.9 ar fi generat seed-uri a căror "aleatorietate" s-a redus la un set mic, ușor de căutat. Modelele Mk4, Q și Mk5 ar fi fost afectate mai puțin, dar ar fi produs seed-uri cu aproximativ 72 de biți de entropie, sub pragul de 128 de biți prevăzut în design.
Problema lovește în centrul ideii de self-custody: un utilizator putea nota 12 sau 24 de cuvinte, le putea depozita în siguranță, ținea dispozitivul offline ani la rând, iar un atacator ar fi putut totuși reconstrui cheia prin explorarea spațiului îngust generat de fallback-ul determinist. Actualizarea de firmware protejează doar seed-urile generate după instalarea patch-ului. Orice seed creat deja pe ruta vulnerabilă trebuie înlocuit complet. În avertismentul său, Coinkite le recomandă utilizatorilor afectați să genereze un seed nou și să-și mute fondurile. Importarea frazei vechi într-un portofel de la alt producător nu elimină riscul: slăbiciunea ține de originea seed-ului și "călătorește" odată cu cuvintele de recuperare.
Pentru o parte dintre deținătorii afectați, spațiul de căutare ar fi fost practic fixat în momentul generării cheii, cu luni sau ani înainte de depunerea oricăror fonduri, indiferent cât de atent a fost stocată ulterior fraza.
Incidentul lovește un brand construit pe recomandări standard din ghidurile de securitate: firmware doar pentru Bitcoin, semnare air-gapped, două secure elements, cod sursă publicat și build-uri reproductibile. Recompilarea firmware-ului publicat și compararea lui cu binarul distribuit ar confirma integritatea distribuției, dar nu substituie un audit mai profund al designului și al rutelor efective din cod. Calea vulnerabilă ar fi fost livrată în versiuni lansate începând din 2021 și ar fi continuat până la dezvăluirea din iulie, într-o fereastră de cinci ani în care codul a fost public fără ca defectul să fie observat. Notele tehnice Coinkite indică faptul că revizuiri anterioare au confirmat existența generatorului hardware în binar, fără să demonstreze că rutina de generare a seed-ului îl folosea efectiv.
Două categorii de utilizatori au adăugat o a doua presupunere de securitate. Prima: cei care au setat o frază de acces BIP39 puternică și unică. BIP39 derivă seed-ul portofelului din mnemonic plus un "salt" ce include passphrase-ul; o frază diferită produce un portofel diferit chiar dacă cuvintele sunt aceleași. Passphrase-ul este distinct de PIN (care doar deblochează hardware-ul), iar Coinkite a recomandat totuși migrarea și pentru acești utilizatori. A doua: cei care au generat seed-ul cu cel puțin 50 de aruncări corecte, independente și private de zaruri, introducând entropie externă care reduce dependența de generatorul defect al dispozitivului.
Andrew Mannoukas, CISO la Xapo Bank, a descris concluzia într-o notă pentru CryptoSlate: "Lecția acestui incident nu este că portofelele hardware sunt rele; ci că concentrarea este. Când securitatea Bitcoin-ului tău se reduce la un singur secret, creat pe un singur dispozitiv, într-un singur moment irepetabil, moștenești fiecare presupunere încorporată în acel moment." El a adăugat că datele din industrie arată de ani buni că majoritatea pierderilor provin din managementul cheilor și eșecuri operaționale.
Episodul readuce în discuție și multisig. Un aranjament 2-din-3 oprește o singură cheie compromisă să miște fonduri, dar trei chei generate prin aceeași implementare defectă pot colapsa într-un singur domeniu de eșec. Documentația Coldcard permite ca un singur dispozitiv să creeze mai mulți co-semnători prin passphrase-uri diferite, producând chei distincte care rămân legate de aceeași implementare și de aceeași sursă de aleatorietate. În acest context, întrebarea devine cine a generat fiecare cheie, cu ce implementare și cu ce sursă de entropie.
Comparația cu Ledger scoate în evidență un alt tip de "problemă a graniței". Serviciul opțional Recover de la Ledger determină Secure Element-ul să dubleze și să cripteze entropia portofelului, să o împartă în trei fragmente criptate și să le trimită către furnizori separați, pe bază de abonament și cu aprobare fizică pe dispozitiv. În cazul Ledger, materialul secret părăsește dispozitivul în condiții controlate și aprobate de utilizator; la Coldcard, problema ar fi apărut mai devreme, firmware-ul slăbind secretul înainte ca granița hardware să conteze.
Pe lanț, primele "sweep"-uri ar fi scos aproximativ 594 BTC din circa 500 de portofele. Cercetători onchain au legat ulterior cel puțin trei valuri suspecte de acest defect, totalizând aproape 1.367 BTC în peste 4.500 de adrese, evaluate la aproximativ 89 mil. $ la acel moment. Rapoarte circulate pe 3 august au menționat un posibil al patrulea val, care ar fi putut împinge totalul spre 114 mil. $. Alex Thorn de la Galaxy Digital a avertizat că tiparele de pe blockchain nu confirmă singure legătura dintre unele adrese golite și firmware-ul Coldcard vulnerabil, astfel că atribuirea rămâne provizorie pe măsură ce totalul crește. O actualizare din 4 august a Lookonchain, citând Galaxy Research, a estimat că pierderile asociate Coldcard ar fi putut ajunge la 2.055 BTC, aproximativ 130 mil. $, în peste 7.700 de adrese afectate.
Contextul mai larg indică o tendință. TRM Labs a calculat că infrastructura compromisă și eșecurile operaționale, în principal furtul de chei private și fraze seed, au reprezentat aproximativ 76% din valoarea furată în hack-uri crypto în prima jumătate din 2026, dar doar circa 15% din numărul total de incidente. CertiK a raportat separat că compromiterea portofelelor a fost cea mai costisitoare categorie de atac în aceeași perioadă: peste 444 mil. $ în 33 de incidente. Pe scurt, atacatorii câștigă mai mult atacând sistemele și procesele din jurul cheilor decât criptografia în sine.
Fondatorul Coinkite, Rodolfo Novak, și-a cerut scuze public și a spus că firma își asumă pe deplin responsabilitatea, oferind sprijin pentru plângeri la poliție, cereri de asigurare și investigații pe blockchain. La 3 august, rambursarea nu era listată printre soluții. Spre deosebire de un exchange, care uneori poate apela la rezerve, asigurări sau bilanț, un producător de portofele hardware vinde un dispozitiv și, de regulă, lasă custodia Bitcoin-ului exclusiv utilizatorului, ceea ce creează un gol de responsabilitate atunci când apare un defect de produs.
În scenariul favorabil, migrarea utilizatorilor către seed-uri noi ar depăși apariția unor valuri suplimentare, iar producătorii ar răspunde cu atestări de entropie, teste de generare a seed-urilor și instrumente mai clare pentru rotație de urgență a cheilor. Passphrase-urile, entropia externă din zaruri și multisig diversificat ar trece din zona de "sfaturi avansate" în recomandări implicite.
În scenariul negativ, cercetătorii ar putea descoperi și alte căi de seed-uri slabe în alte modele sau rutine de configurare, iar încrederea s-ar eroda mai repede decât pot fi livrate patch-uri. Migrațiile făcute în panică pot genera pierderi suplimentare prin erori de address-reuse, transferuri grăbite și un nou val de escrocherii care se prezintă drept "suport de portofel".
Concluzia pentru self-custody este incomodă: deținerea propriilor chei reduce puterea unui exchange de a îngheța retrageri, de a rehypotheca solduri sau de a intra în insolvență cu fondurile clienților. Rămâne o dependență critică: producătorul dispozitivului care transformă aleatorietatea în cheie. Un singur seed, născut pe hardware-ul unei singure companii într-un moment irepetabil, devine suveranitate reală abia când există o a doua presupunere independentă care îl susține.