|
virginorange (OP)
|
Bau DIY-Hardware-Wallet SeedSigner: Erfahrungsbericht & Tipps
Meine Reise durch verschiedene Hardware-Wallets und warum ich mich für den Eigenbau eines SeedSigners entschieden habe.
1. Warum ein SeedSigner als Hardware-Wallet?
1. Hardware-Wallet = Ledger
Was mich gestört hat: ● Datenleck: Die Kundendaten (inkl. Adressen) wurden gehackt – eine Grundlage mit der Verbrecher Bitcoiner per $5 Wrench Attack ausrauben können. ● Firmware-Risiko: Ledger hat theoretisch die Möglichkeit, über ein Firmware-Update die Seed-Wörter auszulesen. Die Kombination aus Ledger-Gerät und Ledger-Software bedeutet, dass alles unter der Kontrolle eines zentralen Anbieters steht – so muss man den Mitarbeitern bei Ledger dauerhaft vertrauen.
2. Hardware-Wallet = Coldcard
Anschließend habe ich mir eine gebrauchte Coldcard gekauft, um zu vermeiden, dass ein zentraler Anbieter meine Adresse speichert. Problem bei der Coldcard war die mangelnde Entropie bei der Seed-Generierung. Die Cold Card berechnet dir leider auch nicht das letzte Wort (damit du dir 24 Seedwörter würfeln kannst).
3. Hardware-Wallet = SeedSigner
Ich erhoffe mir: ● Volle Prozesskontrolle: Ich kann die 23 Wörter selbst würfeln – der SeedSigner berechnet mir dann das 24. Wort (Checksumme). Das ist bei vielen anderen Wallets nicht möglich. ● Unauffällige Komponenten: Raspberry Pi, Display, Kamera – das sind universelle Elektronikteile, die bei Amazon & Co. gekauft werden. Ein Datenleck bei einem Händler würde nicht automatisch auf Bitcoin-Besitzer schließen lassen, da diese Komponenten auch für viele andere Projekte genutzt werden. ● Unauffällig im Transport und bei der Lagerung: Ein Raspberry Pi in einer Box mit anderen Elektronikbauteilen fällt nicht auf. Nimmt man ihn auf Reisen mit, wirkt er beim Flughafen-Scan nicht wie eine offensichtliche Hardware-Wallet – die SeedSigner-Software muss ja nicht mal auf der SD-Karte sein, man kann sie vor Ort neu aufspielen. ● BIP85-Unterstützung: Der SeedSigner kann nicht nur den Seed generieren, sondern auch Kinder-Wallets ableiten – eine Funktion, die nicht jede Hardware-Wallet bietet.
2. Die Komponenten im Detail
Laut SeedSigner-Dokumentation benötigt man folgende Teile:
Komponente Spezifikation ❶ Raspberry Pi Zero v1.3 (ohne WLAN/Bluetooth) – das ist die bevorzugte Version für maximale Air-Gap-Sicherheit ❷ Display Waveshare 1.3 Zoll LCD-HAT mit 240×240 Pixeln, inkl. Joystick und Buttons ❸ Kamera Raspberry-Pi-Zero-kompatibles Kameramodul (z.B. mit OV5647-Sensor) ❹ MicroSD-Karte (mindestens 64 MB! Kapazität, also quasi egal welche SD-Karte) ❺ GPIO-Header 40 Pins (2×20) – muss entweder vorgelötet sein oder selbst gelötet werden
Die Gesamtkosten liegen bei etwa 50-80 EUR
3. Der Bau: Erfahrungen & Tipps
3.1 Die größte Hürde: Der GPIO-Header
Ich habe mich für den Raspberry Pi Zero 1.3 ohne WLAN und ohne vorgelöteten Header gekauft (Am liebsten hätte ich einen Raspberry Pi ohne WLAN und mit Header gekauft aber diesen habe ich nicht gefunden. Alternative wäre etwas teurer ein Raspberry Pi mit WLAN und mit Header gewesen aber ich wollte kein WLAN wegen maximaler Air-Gap-Sicherheit).
Tipp 1: Evtl. zusätzlich Raspberry Pi mit vorgelötetem Header kaufen
Das Löten des 40-Pin-Headers war für mich machbar aber nicht ganz einfach: ⓐ Man braucht das richtige Equipment (Feinlötkolben) ⓑ Es erfordert Übung ⓒ Fehler beim Löten sind schwer zu diagnostizieren
Wenn du dir das Löten sparen möchtest, kaufe den Raspberry Pi Zero mit bereits vorgelötetem GPIO-Header (spart Zeit) oder du kaufst dir 2 Raspberry Pis (1x mit WLAN & Header zum Testen und 1x ohne WLAN und ohne Header für den Gebrauch als Hardware-Wallet).
Tipp 2: Lieber mehr Komponenten neu kaufen, als Zeit mit Fehlersuche & Versandzeiten zu verschwenden Ich habe erst nur Raspberry Pi + Display + Kamera gekauft. Eine alte SD-Karte, ein Kabel und ein SD-Lesegerät hatte ich eh schon. Am Ende habe ich die SD-Karte, das Verbindungskabel und das SD-Kartenlesegerät neu kaufen müssen – weil mir diese Teile kaputt gegangen sind oder nicht funktionierten. Mit Amazon Prime hatte ich die Ersatzteile schnell erhalten aber trotzdem dauert es mindestens einen Tag bevor man weiter machen kann. Daher investiere ein paar Euro mehr in neue, funktionierende Komponenten, sonst verbringt man Stunden damit, herauszufinden, welches der vielen Teile defekt ist.
3.2 Die erste Inbetriebnahme: Nichts funktioniert
Nach dem Zusammenbau: kein Bild auf dem Display. Die möglichen Fehlerquellen sind zahlreich: ● SD-Karte defekt oder nicht richtig bespielt? ● Raspberry Pi defekt? ● Falsch gelötet? ● Display kaputt? ● Falsches Betriebssystem-Image oder Betriebssystem bootet langsamer als gedacht?
Da musste ich erst systematisch die einzelnen Komponenten testen.
Tipp 3: Wenn SeedSigner nicht auf Anhieb funktioniert, Schrittweise testen
Ich habe folgende Vorgehensweise entwickelt – und dafür ChatGPT (mit Probe-Abo) genutzt: ❶ Raspberry Pi mit standardmäßigem Betriebssystem testen – funktioniert der Pi überhaupt? ❷ GPIO-Header testen – mit einem Messgerät prüfen, ob die Pins richtig gelötet sind. Dafür habe ich mir von ChatGPT ein Skript schreiben lassen, das die Pins abwechselnd unter Strom setzt. ❸ Display testen – den Raspberry Pi so konfigurieren, dass er ein Testbild auf das Waveshare-Display ausgibt. ❹ Kamera testen – das Kamerabild auf das Display projizieren.
Erst nachdem alle Einzelkomponenten funktionierten, habe ich das SeedSigner-OS aufgespielt. Dann lief es sofort.
Tipp 4: ChatGPT für Konfiguration und Tests nutzen
ChatGPT kann sehr gut dabei helfen, die Konfigurationsdateien auf dem Raspberry Pi zu erstellen – insbesondere wenn man die genaue Syntax nicht kennt. Ich habe mir von ChatGPT: ● Testskripte für die GPIO-Pins generieren lassen ● Die Konfiguration für das Display schreiben lassen ● Das Kamerabild auf dem Display anzeigen lassen
Das hat mir viel Zeit gespart. Die Skripte funktionierten in der Regel auf Anhieb.
3.3 Der große SSH-Holzweg
Mein größter Fehler: Ich habe versucht, per SSH auf den Raspberry Pi zuzugreifen, um die Konfigurationen vorzunehmen. Das war eine frustrierende Sackgasse – ich habe 5 bis 10 Stunden mit dem LLM damit verbracht, eine SSH-Verbindung zum Raspberry Pi Zero 1.3 herzustellen. Es hat nicht stabil funktioniert.
Tipp 5: Kein SSH – einfach die SD-Karte umstecken
Der viel einfachere Weg: Steck die MicroSD-Karte direkt in deinen Rechner und bearbeite die Dateien dort. Kein Netzwerk, kein SSH, keine komplizierten Verbindungsprobleme. Das spart viel Zeit.
3.4 Die Erkenntnis: Du bleibst der Chef – nicht ChatGPT
Bei der Arbeit mit ChatGPT ist mir bewusst geworden:
Tipp 6: Behalte die Vogelperspektive – ChatGPT ist ein Werkzeug, kein Projektleiter
Man kann leicht in die Falle tappen, einfach alles auszuführen, was ChatGPT vorschlägt, und sich als reiner Nachrichtenüberbringer zwischen Terminal und Chat zu fungieren. Aber: ● Du hast den Gesamtkontext im Kopf – ChatGPT nicht. ● Du musst entscheiden, ob der eingeschlagene Weg effizient zielführend ist – nicht ChatGPT. ● Wenn du auf einem Holzweg bist (wie ich mit SSH), dann hilft es nicht, immer weiter Mikroentscheidungen zu treffen – du musst die grundlegende Richtung korrigieren.
ChatGPT ist großartig für die Umsetzung von Mikro-Aufgaben (Sprache umwandeln in Syntax, Skripte, Konfigurationen). Die Makro-Entscheidungen („Welchen Weg gehe ich?“) musst du selbst treffen.
4. Fazit
☞ Der SeedSigner ist – denke ich – eine sehr gute, selbstbestimmte Alternative zu kommerziellen Hardware-Wallets. Aber der Bau hat bei mir etwas Geduld erfordert (Löten & Fehlersuche als der erste Versuch nicht geklappt hat). Damit es bei dir einfacher läuft meine Tipps:
❶ Evtl. (zusätzlich) Raspberry Pi mit vorgelötetem Header kaufen ❷ Lieber mehr neue Komponenten kaufen, als Zeit mit Fehlersuche zu verschwenden
Bei Problemen: ❸ Schrittweise testen: Erst Pi, dann Display, dann Kamera – dann erst SeedSigner-OS ❹ ChatGPT für Konfiguration und Testskripte nutzen ❺ Kein SSH – SD-Karte direkt im Rechner bearbeiten ❻ Selbst die Kontrolle behalten – ChatGPT ist Werkzeug, nicht Chef
Am Ende habe ich ein voll funktionsfähiges, air-gapped Bitcoin-Signing-Gerät, das keine Verbindung zum Internet hat, bei dem ich die Entropie selbst kontrolliere und das unauffällig in jeder Elektronik-Kiste liegen kann.
➤ Ich denke der Aufwand lohnt sich. Du gehst ja unzählige Stunden arbeiten um das Geld für deine selbstgewählten Bitcoin zu ersparen. Für einen Bitcoin gehst du über 1000 Stunden arbeiten. Da kann man auch mal 20 Stunden investieren sich seine Seed-Wörter zu würfeln und seine Hardware-Wallet richtig aufzubauen und zu testen.
|