Ein sicheres mobiles Offline-Segwit-Wallet mit Sentinel erstellen

in #bitcoin7 years ago (edited)

Eine absolut sicherere und mobile Wallet für meine Bitcoins - geht das überhaupt zusammen? Ja, das geht, wenn auch mit einer kleinen Einschränkung. Ich erkläre euch hier, wie ihr eine sichere Cold Storage Bitcoin Segwit Wallet erzeugen und auf eurem Android-Smartphone gefahrlos euer Bitcoin-Guthaben beobachten und Transaktionen empfangen könnt.

Was ist eine Cold Storage Wallet?

Cold Storage bedeutet, dass sich die Wallet offline befindet, also unzugänglich für jegliche sicherheitskritischen Aktionen, die durch eine Verbindung der Wallet zum Internet ausgelöst werden könnte. Dies können Hardware-Wallets sein, zum Beispiel USB-Sticks, CD-ROMs oder auch Paper Wallets.
Das Herz jeder Wallet sind die Private Keys, die geheimen Schlüssel, die jedem, der in ihren Besitz gelangt, den uneingeschränkten Zugriff auf alle Bitcoins ermöglichen, die in der Wallet abgelegt sind. Der Schutz dieses Private Keys vor theoretischem und praktischem Zugriff durch Andere ist das A&O jeglicher Wallet-Sicherheit.

Wer alle sicherheitskritischen Aspekte beim Erstellen einer Wallets genauestens beachtet, kann eine Offline-Wallet erzeugen, ohne dass jemals der Private Key auch nur theoretisch in die Hände Dritter gelangen konnte.

Ein Nachteil von Offline Wallets ist, dass es relativ umständlich ist, das Guthaben auf der Wallet zu betrachten. Schließlich wäre die Sicherheit auf einen Schlag dahin, würde man zum Beispiel mit Electrum die Wallet auf einem USB-Stick gespeichert haben, und dann eine Internetverbindung herstellen, um den Kontostand zu betrachten. Malware, Keyloggern, Bildschirm Scannern etc. wäre die Wallet schutzlos ausgeliefert. Man müsste also zum Beispiel die Bitcoin-Adresse über blockexplorer.com eingeben, um das Bitcoin-Guthaben ansehen zu können. Wie gesagt, umständlich - und was umständlich ist, wird dann oftmals doch nicht umgesetzt, sondern einfache Bedienbarkeit lieber der Sicherheit vorgezogen.

Ich möchte euch nun einen Weg zeigen, wie ihr sicher und einfach, und gar nicht umständlich, ein sicheres Cold Storage Wallet erzeugen könnt. Und besonders schön: hinterher könnt ihr das Wallet komfortabel und absolut sicher mit eurem Android-Phone immer bei euch tragen, Kontostände beobachten und Zahlungen empfangen.

Natürlich entscheiden wir uns dabei für eine Segwit-fähige Wallet. Segwit, für diejenigen, die sich fragen, was das überhaupt ist, ist ein Update für den Bitcoin Core Quellcode, das ganz vereinfacht unter anderem den Speicherbedarf einer Transaktion verringert und die Anzahl von Transaktionen erhöht, die in einen Block passen. Da die Transaktionen nach Satoshi pro Byte berechnet werden, bedeutet eine durch Segwit reduzierte Transaktionsgröße gleichzeitig auch geringere Gebüren.

So, und nun geht es los mit der genauen Anleitung für eure perfekte Segwit-Cold-Storage-Wallet.

Wir benötigen, und wir wollen dabei ganz auf Nummer sicher gehen:

  • einen PC/ Laptop mit Internetverbindung
  • einen USB-Stick
  • einen weiteren PC/ Laptop OHNE Internetverbindung (oder zum Beispiel ein Linux-Live-System, das auf einem USB-Stick gestartet wird)
  • ein Android-Smartphone
  • die Android App 'Sentinel'

1. Sentinel installieren


Zuerst installieren wir die Android App "Sentinel" aus dem Google Playstore. Sentinel ist eine App, die es ermöglicht, auf einem Smartphone sicher Zahlungen auf eine Cold Storage Wallet zu erhalten. Sie ist keine Wallet, sondern spiegelt nur das Guthaben und Transaktionshistorie einer Wallet wieder)

2. BIP39-Tool herunterladen


Zuerst öffnen wir in unserem Internetbrowser die Adresse https://iancoleman.io/bip39. BIP39 ist ein Tool des Kryptografie-Spezialisten Ian Coleman, mit dem man Mnemonic Phrases in Adressen und Private Keys umwandeln kann. Ein 'Mnemonic phrase' ist ein Satz aus sinnlos aneinander gehängten Wörtern, die durch ein spezielles Kodierverfahren alle Informationen enthalten, die nötig sind, um eine Wallet wiederherzustellen.
Anschließend speichern wir diese Seite auf unserem Computer, zum Beispiel auf dem Desktop

3. Tool via USB-Stick auf den Rechner ohne Internetverbindung schieben


Nun verschieben wir die gespeicherte html-Seite mit dem Namen "BIP39 - Mnemonic Code.html" erst auf unseren USB-Stick und von dort auf unseren Computer ohne Internetverbindung. Hier öffnen wir die html-Seite im Browser.

4. Mnemonic Phrase erstellen

  • Im Tool zuerst darauf achten, dass unter "Coin" "BTC - Bitcoin" ausgewählt ist
  • ganz oben wählen wir zuerst aus, wieviele Wörter unsere Phrase enthalten soll. Wir ändern die Voreinstellung von 15 auf 12, das ist eine gute Wahl, man kann aber wählen zwischen 3 und 24
  • klicken wir nun auf "generate", wird uns unter 'BIP39 Mnemonic' eine Passphrase angezeigt.

bip39_1.jpg

  • Alternative für echte Sicherheitsfanatiker: Der sicherheitstechnisch nicht optimale scriptgesteuerte Generationsprozeß kann verbessert werden, indem wir das Häkchen bei 'Show entropy details' setzen. Daraufhin öffnet sich ein Fenster mit der Bezeichnung "Entropy". Hier können wir eigene zufällige Werte eingeben, die das nicht wirklich zufällige Berechnen des Computers durch echte zufällig erzeugte Werte ersetzt.

bip39_1b.jpg

Wir stellen weiter unten im Dropdown-Menu wieder unsere Anzahl von 12 Wörtern ein können die Einstellungen unter dem Textfeld so belassen, nehmen uns einen Würfel, würfeln, und tragen jede gewürfelte Zahl in das Textfeld ein. Wir sollten hier mindestens 25 Werte eintragen, bis am Punkt "time to track" direkt unter dem Textfeld das Wort "centuries" erscheint.

  • Egal, welche Alternative wir gewählt haben, unsere Passphrase erscheint nun unten im Fenster "BIP39 Mnemonic". Das ist unsere Passphrase, die wir nun auf einen Zettel schreiben oder uns auf andere Weise vor dem Vergessen schützen. Denn, wenn wir diese Passphrase verlieren, haben wir keinen Zugriff mehr auf unser Wallet!
  • Im nächsten Feld "BIP39 Passphrase (optional)" haben wir die Möglichkeit, zusätzlich noch ein eigenes Passwort oder eine eigene Passphrase festzulegen. Dies ist eine Zusatzoption, keine Alternativoption. Das heißt, der Zugriff auf die Wallet wird in diesem Fall nur möglich sein, wenn wir Mnemonic Passphrase UND eigene Passphrase eingeben!

5. Public Key übertragen

  • anschließend scrollen wir nach unten zum nächsten Abschnitt "Derivation Path". Die Voreinstellung bei den verschiedenen BIP-Versionen ist BIP44. Um unsere Segwit-Wallet zu erstellen, wählen wir hier BIP49

bip39_2.jpg

  • ein Stückchen weiter unten kommen wir zum Feld "Account Extended Public Key" (NICHT: PRIVATE KEY!). Wenn wir in das Textfeld des account extended public key klicken, öffnet sich ein QR-Code-Fenster. Wir klicken mit der rechten Maustaste in das QR-Code-Fenster und speichern das Bild auf dem Desktop (Grafik speichern unter).

bip39_4.jpg

  • noch etwas weiter unten sehen wir unter "Derived Addresses" eine Liste von aus dem Private Key abgeleiteten Bitcoin-Adressen und den dazu gehörigen Public Keys. Auf diese werden wir später in der Sentinel App durch den importierten QR-Code zugreifen können.

bip39_5.jpg

  • Anschließend schließen wir das BIP39-Tool und öffnen das QR-Code-Bild auf dem Bildschirm als Vollbild. Dadurch gehen wir sicher, dass beim folgenden Einscannen des QR-Code keine sensiblen Daten mit auf dem Smartphone landen.

6. Nun starten wir die Sentinel App auf dem Smartphone.

Wir wählen als erstes "Segwit Bitcoin Wallet" aus.

senti_1x.png

Anschließend wählen wir "Scan" und scannen unseren QR-Code ein.

senti_2x.png

Wir geben unserer Wallet einen geeigneten Namen.

senti_2bx.png

Nun gehen wir auf den "Add"-Button und wählen "Deposit".

senti_3x.png

senti_4x.png

Nun sehen wir unter dem QR-Code die erste erzeugte Adresse aus unserer Adressenliste, die ich im oben erwähnt habe.

senti_5x.png

Gehen wir in der App einen Schritt zurück und wählen erneut "deposit", wird uns die zweite Adresse aus der Liste angezeigt usw.

Glückwunsch! Du hast dir soeben ein Mobiles Bitcoin Cold Storage gebaut.

Ihr könnt mit dieser Lösung eure Wallet kontrollieren, Zahlungen empfangen, habt sie immer mobil bei euch und die Wallet ist trotzdem sicher und bleibt ein Cold Storage.

Keine Auszahlungen möglich

Die einzige Einschränkung dieser Lösung - aber das hat sie mit allen Paper Wallets und Cold Storages gemeinsam: Es ist nicht möglich, Bitcoins von dieser Wallet zu überweisen, ohne die Sicherheit zu zerstören. Für Transaktionen von Bitcoins weg von dieser Wallet an eine andere Adresse ist es nötig, den Private Key in eine andere Wallet, zum Beispiel Electrum, zu importieren und eine Internetverbindung herzustellen. Dadurch ist die Sicherheit der private keys nicht mehr gewährleistet. Aus diesem Grund ist es unbedingt notwendig, wenn man Bitcoins von diesem Cold Storage versenden will, das komplette Guthaben zu entfernen, sprich alles auf eine andere Wallet zu schieben. Wollt ihr nur einen Teilbetrag versenden, so macht ihr dies von einer anderen Wallet, in die ihr eure private keys importiert habt. Den Rest könnt ihr wieder auf ein Cold Storage zurückschieben, das heißt, ihr müsst in diesem Fall eine neue Cold Wallet erstellen und sendet anschließend die Bitcoins an die neue Adresse.

Das Löschen der Wallet auf der Sentinel App gestaltet sich übrigens ein wenig tricky: </b

ihr geht erst auf den "add" Button, wählt dann "Watchlist", wischt dann die betreffende Wallet in der List nach links, wählt das Kreuz zum löschen, bestätigt und weg ist diese Wallet...

senti_6x.png

Alles in allem also eine recht einfache, aber überaus komfortable Lösung, um seine Cold Wallet nicht aus dem Blick zu verlieren. Mit der App Sentinel haben deren Entwickler tolle Arbeit geleistet und das ist auch nicht das letzte Projekt der Bitcoin-Enthusiasten. Doch dazu später mehr in einem anderen Artikel :-)

Sort:  

Super Beitrag. Allerdings stellt sich mir die Frage ob ein Smartphone nicht vieleicht doch zu unsicher ist.

darum geht es ja in dem Artikel. Du hast deine private keys nicht auf dem Smartphone, du hast dort nichts, was deine Wallet in irgendeiner Art gefährden könnte. Deine Wallet wird durch die App lediglich auf deinem Smartphone "gespiegelt". Du kannst dein Handy ins Meer werfen, einem Hacker schenken oder vor Glück darauf herumhüpfen, weil du gerade so günstig bitcoins kaufen kannst, nichts, was sich auf dem Smartphone befindet, gefährdet in irgendeiner Art deine Wallet und deine Bitcoins ;-) Das Schlimmste, das passieren kann, ist, dass jemand deinen Kontostand sehen kann...

Danke dir für die Erklärung. Bin leider noch ziemlich "wacklig" beim Thema Bitcoin.

verständlich, ist ja auch alles nicht so einfach ;-) grundsätzlich sind wallets auf einem smartphone auch sehr riskant, weil man seine private keys dort speichert und theoretisch zb Passwörter und seeds beim Eintippen durch malware abgefangen werden können. Aber bei meinem Beispiel handelt es sich nicht um eine Wallet sondern nur um eine Spiegelung deines Guthabens, weshalb du auch keine Bitcoins vom Handy aus versenden kannst.

Ein super Beitrag !
Inhaltlich stark und schön geschrieben sowie anschaulich gestaltet. Weiter so !
Folge dir mal und freue mich auf weitere Artikel in der Richtung :)


Kleiner Tipp am Rande: mit dem Tag deutsch erreichst du unter umständen mehr Leser.

danke, habe ich schlicht vergessen, wobei ich auch schon überlegt hatte, ob ein "Spach"-Tag eigentlich nötig ist...

Warum hast du nicht zur Key-Generierung einfach die Offline-Version von bitaddress.org genommen? Gibt es einen Grund?
Danke für deinen ausführlichen Artikel.

hallo, bei bitaddress.org kann man keine SegWit-Adressen erstellen. Außerdem wollte ich die allersicherste Methode wählen, bei Ian Coleman kann man den Zufallsgenerator des Computers durch manuelle Zufallszahlengenerierung umgehen, was sicherer ist...