Ist dieses Schema für das Multisig-Audit von Trezor + Coldcard in Ordnung?

Mein Plan ist es, eine Multisig zwischen Coldcard und Trezor zu machen. Ich möchte überprüfen und verifizieren, dass ich tatsächlich die 2 Schlüssel dieser Brieftaschen besitze, indem ich einen Himbeer-Pi-Zero (per Definition kein WLAN / Bluetooth) auf einem sehr alten HDMI-Fernseher ohne Internet verwende und eine virtuelle Tastatur und einfach eine Maus verwende auf dem pi null.

Dies sind die möglichen Risiken, die ich mindern möchte:

  • Die Wallets können einen bösartigen Zufallszahlengenerator haben.

  • Die Brieftaschen können Adressen für Schlüssel generieren, die nicht mir gehören

Um das Risiko auszuschließen, dass der Trezor einen privaten Schlüssel generiert, den ich nicht besitze, werde ich seinen Schlüssel auf den Raspberry Pi Zero legen und sehen, dass er denselben Master-Pubkey generiert und in Trezor anzeigt. Das beweist, dass ich diesen Schlüssel besitze, aber es könnte ein Kew sein, das jemand bereits besitzt. Kein Problem, deswegen mache ich Multisig.

Auf der Coldcard erzeuge ich mit Würfeln einen Seed und verifiziere dann auf dem Himbeer-Pi, dass diese Würfelwürfe tatsächlich den privaten Schlüssel generieren, der von der Coldcard angezeigt wird. Dies beweist, dass ich einen privaten Schlüssel besitze, der niemandem gehört, da er mithilfe von Würfeln generiert wurde.

Jetzt, da ich 2 private Schlüssel habe, die ich besitze, und mindestens einer davon der einzige Besitzer bin, kann ich eine Multisig-Wallet auf Electrum oder vielleicht BlueWallet erstellen. Ich werde die ersten 10 von der Software-Wallet generierten Adressen kommentieren und überprüfen, ob sie auf der Coldcard und dem Trezor übereinstimmen. Wenn die 3 die gleichen 10 Adressen zeigen, kann ich diese Adressen als sicher für den Empfang von Bitcoin betrachten.

Ich erhalte dann etwas Bitcoin auf einer Adresse, lösche beide Brieftaschen, stelle sie mit den privaten Schlüsseln wieder her und versuche dann, diese Bitcoin auszugeben, nur um sicherzustellen, dass ich die Münzen wirklich besitze.

Was sind die möglichen Probleme, auf die ich stoßen kann? Habe ich etwas Wichtiges vergessen?

PS: Ich weiß, dass, wenn der Trezor einen bösartigen Zufallszahlengenerator hat und er einen privaten Schlüssel erstellt, der nicht nur mir gehört, dies ein Datenschutzleck ist, aber kein Problem. Und es ist nur dann ein Datenschutzleck, wenn ich von dieser Adresse ausgebe und den öffentlichen Schlüssel in der Blockchain preisgebe.

Ich plane auch, nur PBST-Air-Gap-Transaktionen auf Coldcard und einen vertrauenswürdigen Computer zum Senden zu verwenden.

Ich habe eine Sache basierend auf meiner Annahme bearbeitet. Sie können ein Rollback durchführen, wenn es falsch ist.

Antworten (1)

Die Wallets können einen bösartigen Zufallszahlengenerator haben.

Es gibt mehrere Möglichkeiten, böswillig zu sein. Typischerweise werden Zufallszahlengeneratoren als bösartig angesehen, wenn sie irgendwie vorhersehbar sind. Wenn Sie sie also verwenden, kann jemand anderes Ihre "Zufallszahl" erraten.

Aber das scheint nicht das zu sein, wovor Sie Ihr Plan schützt.

Was Sie mit Ihrem Verfahren überprüfen, ist, dass Ihre Hardware-Wallet Ihnen keinen anderen Seed gibt (wenn Sie die Ersteinrichtung vornehmen oder um den Export bitten) als den, den sie verwendet hat, um die privaten Schlüssel und zugehörigen Adressen zu generieren, die sie verwendet, wenn Sie sie verwenden mit ihm Geld empfangen oder senden. In diesem Sinne wäre der Seed (aus dem private und öffentliche Schlüssel in HD-Wallets abgeleitet werden) nicht Ihnen, sondern gehört nur Ihrer Hardware-Wallet: Sie können mit dem Gerät empfangen und senden, aber wenn Sie den Seed woanders importieren, gibt es keinen verbundene Mittel, weil es sich von dem unterscheidet, das von Trezor verwendet wird.
Ich habe jedoch noch nie von einem solchen Problem bei einer Hardware-Wallet gehört.

Die Brieftaschen können Adressen für Schlüssel generieren, die nicht mir gehören

Das macht für mich keinen Sinn, öffentliche Adressen werden von privaten Schlüsseln abgeleitet, also muss die Brieftasche die privaten Schlüssel haben, um Adressen zu generieren ... ich bin mir nicht sicher, was du meinst.

Darüber hinaus können Sie nicht überprüfen, ob Sie der alleinige Eigentümer eines Seeds oder eines privaten Schlüssels sind. Sie können höchstens sicherstellen, dass dieser nicht durchsickert, aber wenn es jemandem irgendwie gelingt, ihn zu kopieren, vorherzusagen oder zufällig zu generieren, Sie können nicht bemerken, bis das Geld weg ist.

Alles in allem denke ich, dass Sie es vermeiden können, die Seeds zu überprüfen, die Ihre Wallets Ihnen geben, da dies praktisch nichts zu der Sicherheit hinzufügt, die Sie bereits haben, wenn Sie Multisig-Adressen mit 2 Hardware-Wallets verwenden, die als Trezor und Coldwallet bewertet werden, die bereits stark sind unter die Lupe genommen, wie Sie zum Beispiel hier sehen können.


PS: Ich weiß, dass, wenn der Trezor einen bösartigen Zufallszahlengenerator hat und er einen privaten Schlüssel erstellt, der nicht nur mir gehört, dies ein Datenschutzleck ist, aber kein Problem. Und es ist nur dann ein Datenschutzleck, wenn ich von dieser Adresse ausgebe und den öffentlichen Schlüssel in der Blockchain preisgebe.

Mir sind keine Probleme mit Trezor rng bekannt (haben Sie eine Referenz dafür?), aber wenn Ihre privaten Schlüssel durchgesickert sind, werden Sie Ihr Geld fast sofort verlieren, Sie müssen nicht warten, bis Sie, wie bereits erwähnt, den öffentlichen Schlüssel ausgeben und Adressen leiten sich vom privaten Schlüssel ab, wenn Sie also diesen haben, brauchen Sie nichts anderes

Ja, aber in der Coldcard erzeuge ich meinen Seed mit Würfeln, damit ich sicher sein kann, dass er mir gehört. Ich werde in einer Himbeere überprüfen, ob die Würfel tatsächlich diesen Samen erzeugen
Wie können private Schlüssel nicht Ihre sein? Wenn eine Brieftasche eine Adresse generieren kann, muss sie ihren privaten Schlüssel haben ... scheint mir, dass Sie einige Missverständnisse haben. Können Sie Links zu der Bedrohung bereitstellen, die Sie zu verhindern versuchen?
Ich denke, die Frage geht davon aus, dass die in Hardware Wallet ausgeführte Firmware aktiv versuchen kann, eine andere Adresse als die mit dem privaten Schlüssel verknüpfte anzuzeigen.
Wenn Sie also 2 Brieftaschen haben, die unterschiedliche Adressen für denselben Seed generieren, woher wissen Sie dann, welche die richtige ist? Es gibt keinen einfachen Weg, einen Konsens darüber zu erzielen, welche Adresse die richtige ist, wenn Sie Ihrer Brieftasche nicht vertrauen und den Code nicht lesen können.
Der Grund dafür, dass die Hardware-Wallet-Adresse auf ihrem eigenen Display angezeigt wird, besteht genau darin, Adressmanipulationen an einer externen Software zu vermeiden, aber Sie müssen zumindest Ihrer HW-Firmware vertrauen, und um dies zu tun, erhalten Sie den Quellcode und sein Zeichen.
Der Unterschied besteht darin, dass es sich um 2 Wallets handelt, die dieselbe Multisig-Adresse generieren. Einer, dem ich nicht vertrauen kann, dass er einen wirklich zufälligen privaten Schlüssel generiert hat, der, den ich kann.
Wenn Sie der Trezor-Software nicht vertrauen, warum verwenden Sie sie? Verwenden Sie stattdessen 2 Coldcards ... der RPI-Test ist ziemlich nutzlos, wenn Sie der Hardware-Wallet-Software nicht vertrauen können, sollten Sie auch der Himbeer-Pi-Software nicht vertrauen. Darüber hinaus besteht ein größeres Risiko bei der Verwendung der Brieftasche als beim Generieren von Schlüsseln und Adressen darauf, wie Sie hier sehen können: thecharlatan.ch/List-Of-Hardware-Wallet-Hacks , also sollten Sie sich auch mit diesen Risiken befassen, aber Multisig-Wallets sind es ein guter Anfang :)