Coldcard Wallet Sicherheitslücke

MultiSig ist aber definitiv etwas für Profis. Der normale Anwender wird da total überfordert.

Hey, habe eine Frage, wenn man bei der Coldcard die Funktion mit würfeln den seed zu generieren verwendet hat angenommen diese waren wirklich zufällig und genug würfe, ist man dann trotzdem betroffen?

Multi sig hätte in diesem Fall aber auch nur bei der Verwendung mehrerer Hersteller geholfen. Diese Komplexität plus der ganzen Backups stellt auch ein Risiko dar

Nun auf vielen der Wallets sind Bestände schon seit längerem drauf. Es war nicht eine Frage der Plebs, sondern der HW‘s die ungenügend fahrlässig seit 2021 diese Bestände sehr schwach abgesichert haben.

Bedingt. Selbst wenn man die Seeds alle erraten würde, müsste man immer noch wissen welche Seeds Bestandteil eine MS sind und wie groß das Quorum ist.

Theoretisch möglich.

Praktisch unmöglich.

Gehen wir mal nicht von den betroffenen Geräten sondern von den etwas besseren Coldcards aus, die mE bisher kaum betroffen sind, also von der besseren Entropie von 72.

Die Wahrscheinlichkeit, dass irgendein Bitbox Key in diesem zu durchsuchenden Bereich liegt, liegt bei etwa 1 zu 2⁵⁶, also 1 zu 72.057.594.037.927.936 (etwa 72 Billiarden).

Gibt es weniger als 72 Billiarden benutzte Keys, liegt sehr wahrscheinlich nicht ein einziger in dem Cold Card Bereich.

Wenn jemand zufällig deinen Key errät, bist du mit Multisig aber auch nicht sicherer. Der Key ist ja nicht länger oder sicherer, er wurde eben nur aus 2 Keys errechnet.

Aber coole Frage :slight_smile:

Nein, dann nicht :slight_smile:

In dem Fall hätte es auch mit 2 Cold Cards geholfen, weil ja erstmal nur die Einzelnen Seeds abgesucht werden und nicht in Kombination.

Ich habe Onkel Grok deswegen gefragt:

Plastische Größenvergleiche

Diese Zahlen übersteigen jede menschliche Intuition. Hier einige seriöse, häufig verwendete Analogien:

2^{128} (12 Wörter) ist ungefähr 69 Milliarden Mal so groß wie die Masse der Erde in Gramm. Stell dir vor, du müsstest aus 57 Milliarden erdähnlichen Planeten (jeweils in 1-Gramm-Stücke zerlegt) genau das eine richtige Grammstück treffen, das jemand anderes vorher zufällig gewählt hat.

• Sandkörner auf der gesamten Erde (alle Strände + Wüsten): grobe Schätzungen liegen bei ca. 10^{18} bis 10^{20}. 2^{128} ist viele Größenordnungen größer.

2^{256} (24 Wörter) liegt in der Größenordnung der geschätzten Anzahl Atome im beobachtbaren Universum (ca. 10^{78} bis 10^{82}, oft mit ~10^{80} angegeben). Die Chance, denselben Seed zu erzeugen, entspricht ungefähr der Chance, nach einer Reise durch das gesamte beobachtbare Universum genau dasselbe einzelne Atom zu treffen, das jemand anderes zuvor ausgewählt hat.

Selbst wenn die gesamte Menschheitsgeschichte (alle jemals lebenden Menschen, geschätzt unter 10^{11}) und alle jemals existierenden Computer jeweils Millionen oder Milliarden Seeds erzeugen würden – die Zahlen bleiben winzig im Vergleich zum Gesamtraum.

Oder aus 3 oder 5 oder was auch immer…:wink:

Was willst Du damit sagen?

  • Dass man nichts machen konnte?
  • Dass man es nicht besser hätte wissen können?
  • Dass andere Schuld sind?
  • Dass die Plebs nichts falsch gemacht haben?
  • Dass Coinkite die alleinige Verantwortung trägt?
  • Man so weiter machen kann wie bisher?
  • Dass das bei anderen Wallets nicht passieren könne?

Worauf willst Du hinaus?

Selber sehe ich Verantwortlichkeiten und Konsequenzen. Kurz ich kann HW Kunden die gut gemeint (schlecht informiert, beliefert) wurden, nicht als „Plebs bezeichnen. Was die Auflistung betrifft - man kann all diese Punkte abarbeiten. Voraussetzung du weisst das deine Entropie kompromittiert ist. (Hoffe der letzte Satz stimmt von mir) :joy:

Okay pass auf, ich geb dir jetzt einen Crashkurs, wie man sich sowas mit Grundschulmathematik ausrechnet, und zwar so, dass das Ergebnis etwas nützt, also nicht diese „Sandkörner im Universum“-Gschichtln:

Dein Seed hat eine Entropie von 256 Bit, wenn er korrekt erzeugt wurde. (Dieses kryptische „x Bit Entropie“ heißt nichts anderes, als dass man 2 hoch 256 Seeds durchsuchen müsste, um deinen zu finden.)

Die Teilmenge der Seeds, die im Rahmen dieses Exploits durchsucht wurden, ist 40 Bit groß.

Frage: Wenn man die ganze 256-Bit Seedmenge in solche 40-Bit-Stücke aufteilt, wieviele Stücke sind das? Hier muss man (vielleicht entgegen naiver Intuition) subtrahieren: 256 - 40 = 216. Also die Anzahl solcher 40-Bit-Stücke ist 216 Bit groß.

Heißt also, die Wahrscheinlichkeit, dass dein Seed zufällig in diesem einen Coldcard-Exploit-Stück drinnen liegt, ist gleich groß, wie dass jemand „einfach so“ einen Seed errät, der mit einer Entropie von 216 Bit erzeugt wurde.

Jetzt zur Einordnung der 216 in relevante Größen:

Die Anzahl der möglichen Bitcoinadressen ist 160 Bit groß. Frage: Wenn jemand einfach mal so zu irgendeinem UTXO den private key erraten will, um wieviel unwahrscheinlicher wäre das, als dass dein Seed zufällig bei den Coldcard-Seeds dabei ist?

Antwort: Es ist überhaupt nicht unwahrscheinlicher, sondern wahrscheinlicher. Um wieviel wahrscheinlicher? Selbe Rechnung: 216 - 160 = 56. Also es wird eher rein zufällig eine riesige Menge an private keys erraten (und zwar 2 hoch 56 viele), als dass dein Seed zufällig ein Coldcard-Exploit-Seed ist.

EDIT: Oder noch eine andere interessante Interpretation dieses Ergebnisses: Es ist unwahrscheinlicher, dass dein Seed zufällig bei den Coldcard-Exploit-Seeds dabei ist, als dass dein Seed, obwohl er nicht dabei ist, trotzdem einfach rein zufällig die gleiche Adresse erzeugt wie irgendein Coldcard-Seed.


(Die Rechnung ist vereinfacht, weil verschiedene Vorgänge wie Private-Key ausprobieren oder Seed ausprobieren unterschiedlich viele tatsächliche Rechengänge erfordern, aber als Überschlagsrechnung tut es allemal.)

Ich besitze eine Coldcard und frage mich aktuell, ob ich sie nach dem Software Update weiterverwenden sollte.

Neben dem eigentlich nicht entschuldbaren Fehler in der Firmware, scheinen einige Leute mit wesentlich mehr Ahnung als ich von NVK wenig zu halten. Für diese ist die Coldcard nun endgültig gestorben.

Auf der anderen Seite kann es natürlich immer zu Fehlern kommen (bei der Coldcard hätte dies ja auch keiner erwartet), weswegen man ja eben keinen single point of failure haben sollte.

Ich versuche nun zu entscheiden, ob ich meine Coldcard wegschmeißen sollte, oder ob dies ein wenig Prinzipienreiterei von den Bitcoinern ist (kein FOSS etc., ergo Finger weg).

Ich denke eigentlich, dass die Coldcard zu teuer war und außerdem gefällt sie mir von den Funktionen. Letztlich sollte man je eh niemandem Vertrauen, auch z. B. der Bitbox nicht und wenn ich jetzt einfach den Anbieter wechsel, muss ich eben diesem vertrauen. Also für mich fühlt sich ein Fallenlassen der Coldcard ein wenig nach „Zeichen setzen“ an.

Wie seht ihr das?

Selber würde ich die Coldcard nicht mehr benutzen. Einfach weil sowas (als Normal HW Nutzer) nicht toleriert werden kann. Angeblich gab es Stimmen die darauf hingewiesen haben, ist weiter unter dem Radar gelaufen.

Es gibt auch Stimmen die davor gewarnt haben, dass kein Hardwarewallet ausreichende Sicherheit garantieren kann.

(Beitrag vom Verfasser gelöscht)

Danke ihr Beiden, das fasst es einigermaßen zusammen.

Das Verhalten (Kommunikation etc.) ist natürlich unterirdisch. Aber ich würde auch keinen Tesla wegschmeißen, nur weil Musk wieder eine Episode hat. Und irgendwas muss man ja nutzen.

@Makowski darf ich fragen, was du nutzt? Seedsigner, Airgaped PC?

Mir ist natürlich klar, dass ich letztlich selbst entscheiden muss. Mir fallen nur für beide Seiten gute Gründe ein.

Eine neue Coldcard würde ich mir nicht kaufen, weswegen also dann die alte weiterverwenden? (—> contra)

Durch den Fehler der Coldcard bin ich nicht geschädigt worden, da ich eine Passphrase hatte, also hat sich für mich nichts geändert (das Setup hat das getan, wofür es da war). (—> pro)

Du kannst die Coldcard ja gerne weiterverwenden, ich empfehle dir aber einen neuen seed zu generieren der auch tatsächlich die volle Entropie von 12/24 Wörtern darstellt und eventuell eine Passphrase wenn man sich damit sicherer fühlt.

In diesem Thread gibt es deutlich mehr Geräusch als Signal, und ich empfehle dir, deine Aufmerksamkeit auf Makowskis Beiträge zu konzentrieren.

Im Grunde haben Hardwarewallets nur 2 wesentliche Funktionen:

  1. Seed erzeugen
  2. für einen gegebenen Seed Transaktionen signieren

Für Punkt 1 wird ein Vertrauen in einen Software-Stack gefordert, das bei keinem Hersteller gerechtfertigt ist. Es ist ein Risiko, diese Funktion zu verwenden, egal welches Wallet.

Punkt 2 ist bei den etablierten Herstellern ein überschaubareres Risiko, solange du dem Hersteller vertraust, nicht böswillig zu handeln.


Ich entnehme deinem Post, dass du hier einen etablierten Hardwarewallethersteller vertrittst. Mich würde deine Antwort auf folgende Frage (und damit natürlich auch die Ehrlichkeit der Wallethersteller diesbezüglich) interessieren:

Ein miserabler Würfel, der z.B. niemals eine 1 wirft, verringert die Entropie des Seeds von 256 Bit auf sagen wir 230 Bit. Würdest du sagen, dass die Wahrscheinlichkeit eines katastrophalen unentdeckten Bugs irgendwo im Stack, der bei eurem Gerät in der Seed-Erstellung Anwendung findet, größer oder kleiner ist als 2^-230?

Verschiedene HW Wallets unterschiedlicher Anbieter, teilweise mit gewürfelten Mnemonics.

Multisig in verschiedenen Kombinationen. Ich habe auch betroffene ColdCards und wäre ohne Multisig dran gewesen.

@HauBitZeh Wenn Deine Coins jetzt nur noch an der Passphrase hängen, unbedingt verschieben.