The German wiki is no longer maintained and is in read-only mode. Information contained within may be inaccurate or outdated. Please go to the English wiki for more up to date information.
Automatische Übersetzung aus dem Englischen: Das deutsche Wiki wird nicht mehr gepflegt und ist im Nur-Lese-Modus. Die darin enthaltenen Informationen können ungenau oder veraltet sein. Aktuellere Informationen finden Sie im englischen Wiki.
Sichere deine Geldbörse: Unterschied zwischen den Versionen
Joise (Diskussion | Beiträge) |
Joise (Diskussion | Beiträge) |
||
Zeile 93: | Zeile 93: | ||
===== Individuelle Verschlüsselung der wallet.dat ===== | ===== Individuelle Verschlüsselung der wallet.dat ===== | ||
* Zur individuellen Verschlüsselung der Geldbörse ist das plattformübergreifend verfügbare Programm '''[http://ccrypt.sourceforge.net/ ccrypt]''' gut geeignet. Es verschlüsselt mit einer Variante des | * Zur individuellen Verschlüsselung der Geldbörse ist das plattformübergreifend verfügbare Programm '''[http://ccrypt.sourceforge.net/ ccrypt]''' gut geeignet. Es verschlüsselt mit einer Variante des vom AES-Standard anerkannten Rijndael-Algorithmus, der als sehr sicher gilt. Die Klartext-Version der Wallet.dat wird dabei automatisch ersetzt. Wie bei allen starken Verschlüsselungen ist eine sorgfältige Sicherung von Daten und Schlüsseln dringend zu empfehlen - unter Linux ist das Verlustrisiko durch Vergessen der Schlüssel bisher viel höher als durch Rechnereinbrüche und Malware. | ||
* Zur automatischen Speicherung verschlüsselter Kopien ist GnuPG gut geeignet. Man braucht dabei zum Verschlüsseln nur den öffentlichen Schlüssel, erst zum Entschlüsseln eines Backups wird der private Schlüssel gebraucht, den man sonst sicher im Safe aufbewahren kann. Das Verwenden eines festen Schlüsselpaares verringert die Gefahr eines Schlüsselverlustes durch unbemerkte Tippfehler bei der Eingabe. | * Zur automatischen Speicherung verschlüsselter Kopien ist GnuPG gut geeignet. Man braucht dabei zum Verschlüsseln nur den öffentlichen Schlüssel, erst zum Entschlüsseln eines Backups wird der private Schlüssel gebraucht, den man sonst sicher im Safe aufbewahren kann. Das Verwenden eines festen Schlüsselpaares verringert die Gefahr eines Schlüsselverlustes durch unbemerkte Tippfehler bei der Eingabe. |
Version vom 24. Juli 2011, 18:29 Uhr
Einführung
Die Sicherheit der Geldbörse kann in zwei unabhängige Ziele geteilt werden:
1. Gegen Verlust sichern
2. Gegen Diebstahl sichern
Im Falle einer zur Zeit nicht angemessen gesicherten Geldbörse (z.B. mit schwachem Passwort im Internet hochgeladen):
3. Neue, sichere Geldbörse erstellen (mit einem angemessen langen Passwort)
Technischer Hintergrund
Die Börse besitzt einen Fundus an eingereihten Schlüsseln. Standardmäßig sind 100 Schlüssel im Key Pool. Die Größe dessen kann man mit dem "-keypool"-Parameter in der Befehlszeile einstellen. Wenn du aus irgendeinem Grund eine neue Adresse brauchst, wird diese nicht neu erstellt, sondern aus dem Fundus entnommen. Ein neuer Schlüssel wird erstellt, um den Fundus wieder auf 100 Schlüssel füllen zu können. Wenn als erstes ein Backup erstellt wird, enthält es die alten Schlüssel + 100 unbenutzte. Nach einer Transaktion hat es 99 unbenutzte. Nach 100 Aktionen, die einen neuen Schlüssel benötigen, werden Schlüssel benutzt, die nicht im Backup vorhanden sind. Da das Backup nicht die Schlüssel nach den 100 Stück besitzt, kann dieses Backup bei einer Wiederherstellung evtl. zu Verlust von Bitcoins führen.
Die Sicherheit von Guthaben hängt bei Bitcoin von drei Bedingungen ab:
- Die Vertraulichkeit (Geheimhaltung) der privaten Schlüssel für die gesamte Zeit von der ersten Erzeugung bis zur letzten Verwendung
- Die Integrität der Software auf dem benutzten System.
- sowie dem Schutz der Geldbörse vor Verlust z.B. durch Versagen der Festplatte
Ein Computer, bei dem nicht sowohl Vertraulichkeit als auch Integrität sicher gestellt sind, ist kompromittiert. Das bedeutet, dass nicht mehr ausgeschlossen werden kann, dass Bitcoins gestohlen werden. Ein Computer, auf der Malware in Form von Trojanern installiert wurde, ist immer kompromittiert, da zum einen die Schlüssel "gestohlen" werden konnten und zum andern die Software auf dem Computer nicht mehr unter Kontrolle des Anwenders ist. Ein kompromittiertes System kann nur wieder in einen sicheren Zustand gebracht werden, indem es vollständig neu installiert wird und alle Sicherheitsupdates angewandt werden. Ein "Desinfizieren" von virenbefallenen Programmen reicht nicht aus!
Sichern der Vertraulichkeit und Integrität von Geldbörse und Software
Anlegen einer neuen Geldbörse
In dem Fall, dass die Geldbörse möglicherweise oder tatsächlich in einem kompromiottierten Zustand gespeichert oder verbreitet wurde, ist es klug, eine neue Geldbörse anzulegen und alle Geldbeträge in der alten Geldbörse auf die neue zu übertragen. Nachdem dies geschehen ist, kann jemand, der Kenntnis der alten privaten Schlüssel erlangt hat, diese nicht mehr benutzen, um über Geldbeträge zu verfügen.
Das kann zum Beispiel sinnvoll sein, wenn jemand eine Geldbörse mit einem Passwort von 12 Zeichen bei einem Dienst online gespeichert hat. Inzwischen können Passwörter mit 12 bis zu ungefähr 15 Zeichen entschlüsselt werden und die privaten Schlüssel sind nicht mehr sicher. Die Geldbörse lediglich neu zu verschlüsseln, reicht nicht aus.
Anlegen eines sicheren und geschützten Bereichs
Komplexe und umfangreiche Programme wie zum Beispiel Webbrowser sind nie vollständig sicher. Deswegen ist es ausgesprochen sinnvoll, das Bitcoin Client Programm nicht mit der Benutzerkennung auszuführen, mit der man im WWW surft oder E-Mails liest. Die modernen Betriebssysteme können Programme für unterschiedliche Benutzerkennungen recht wirkungsvoll voneinander abschotten.
Exkurs: Sichere Passworte
Eine bewährte Methode zur Erzeugung von sicheren, aber mit etwas Lernaufwand merkbaren Passworten ist wie folgt:
- Man denkt sich einen sinnlosen Satz aus wie
"Dreißig Dohlen fliegen rückwärts zum Mond, aber eine Fahrkarte haben sie nicht."
Je skurriler der Satz, desto besser kann man ihn sich merken.
- Die Anfangsbuchstaben und Zahlen verwendet man für das Passwort:
30DfrzM,a1Fkhsn.
- Nun wird man kreativ und ersetzt ein paar Zeichen, z.B. "A" sieht doch ähnlich aus wie "4":
30DfrzM-4lFkhsn;
- jetzt streut man noch ein paar Zeichen ein, die es auf englischen Tastaturen nicht gibt(Tipps):
3ß0þDförzM฿-4lFkhsn;
Starke Passwörter sind heute, wo gewaltige Rechenkapazitäten verfügbar sind, etwa 15 bis 20 Zeichen lang. Die wenigsten Menschen können sich so lange Passwörter fehlerfrei merken, besonders wenn sie länger Urlaub machen. Deswegen schreibt man sich das Password auf und steckt es in seine Brieftasche.
- Zum Schutz gegen unbefugte Verwendung hängt man noch einige Zeichen an, die man sich wirklich im Kopf merkt.
Nun ist es so, dass ein vergessenes Password mindestens so schlecht ist wie ein geknacktes. Einen Button "Passwort vergessen, neues per E-Mail zuschicken" gibt es bei Bitcoin nicht. Also folgt aus "Passwort weg" unweigerlich "Geld weg".
- Das erhaltenen Passwort schreibt man deswegen auf, und bewahrt es z.B. in seinem Bankschließfach (Kosten 40 Euro / Jahr) oder in einem feuersicheren Tresor auf. Da ist es "ziemlich" sicher vor Datendieben.
Spezielle Linux-Distributionen
Ein Windows-System umfassend abzusichern, ist aufwendig und schwierig. Eine Absicherung, welche für die Verwaltung fünfstelliger Beträge angemessen ist, setzt Kenntnisse voraus, welche der durchschnittliche Anwender nicht hat.
Es gibt als Alternative einige spezielle Linux-Distributionen, welche einen eigens für Bitcoin angelegten gesicherten Bereich schaffen können und fast keine Einrichtung brauchen:
- c't Bankix, eine für das Online-Banking angepaßte, natürlich kostenlose Variante von Ubuntu, die vom renommierten deutschem Heise-Verlag erstellt wurde.
- Knoppix
- LinuxCoin, das viele Zusatzfunktionen z.B. zum Minen bietet
Linux
Geschütztes Benutzerkonto
Der erste Schritt ist, einen neuen Benutzer anzulegen, das geht mit dem Kommando:
sudo adduser new_user_name
Auf die Meldung "Geben Sie einen neuen Wert an oder drücken Sie ENTER für den Standardwert" braucht man nur die Returntaste zu drücken.
Dann meldet man sich als der neue Benutzer an, z.B. mit "Benutzer wechseln" (bei Ubuntu unter dem Menü zum Abmelden). Wenn man angemeldet ist, sucht man die Dateiverwaltung, wählt in dieser das Home-Verzeichnis aus (Symbol mit dem Haus), dann mit der rechten Maustaste auf "Eigenschaften", dann die Zugriffsberechtigungen. Hier wählt man "Other" und setzt die Berechtigungen auf "niemand". Mit diesem Schritt können andere Programme anderer Benutzer die Geldbörse nicht mehr lesen.
Den neu angelegten sicheren Benutzer sollte man, um ihn auch sicher zu halten, ausschließlich für Bitcoin benutzen.
Es ist außerdem eine gute Idee, das Home-Verzeichnis dieses Benutzers zu verchlüsseln mit dem Programmpaket ecryptfs-utils.
- Wenn das Home-Verzeichnis nicht leer ist, solte zunächst ein Backup angelegt werden, indem der Inhalt auf eine CD oder einen Flash-Spaichger kopiert wird.
- Nun ecryptfs-utils installieren (für Ubuntu: sudo apt-get install ecryptfs-utils)
- aus X11 (dem graphischen System) abmelden und mit Ctrl+Alt+F1 in der Linux-Konsole anmelden - wenn man unter X11 eingeloggt ist, kann das Home-Verzeichnis nicht verschlüsselt werden.
- Das aktuelle Verzeichnis so wechseln, dass es nicht im Home-Ordner liegt, z.B. "cd /".
- Das Migrations-Tool ausführen: (in Ubuntu: sudo ecryptfs-migrate-home -u username)
- Wenn das geklappt hat, kann man nun ALT+F8 drücken um zurückzugehen und sich unter X11 einzuloggen.
- Das Kommando 'ecryptfs-unwrap-passphrase' ausführen und unbedingt den Code, den man erhält, aufschreiben und auf einem sicheren Medium speichern. Ohne diesen Code kann man auf die Daten - einschließlich der Geldbörse - nicht zugreifen, wenn das System nicht funktioniert.
- Das Kommando 'ecryptfs-setup-swap' ausführen, welches die Swap-Partition verschlüsselt. Sonst können Schlüssel aus der Geldbörse im Klartext auf die Swap-Partition gelangen, wo sie gestohlen werden könnten. Das bedeutet leider auch, dass "Ruhezustand" bzw. Hibernate nicht mehr benutzt werden kann, weil der Bootloader das Speicherabbild nicht wiederherstellen kann.
(Anleitung aus [1])
Individuelle Verschlüsselung der wallet.dat
- Zur individuellen Verschlüsselung der Geldbörse ist das plattformübergreifend verfügbare Programm ccrypt gut geeignet. Es verschlüsselt mit einer Variante des vom AES-Standard anerkannten Rijndael-Algorithmus, der als sehr sicher gilt. Die Klartext-Version der Wallet.dat wird dabei automatisch ersetzt. Wie bei allen starken Verschlüsselungen ist eine sorgfältige Sicherung von Daten und Schlüsseln dringend zu empfehlen - unter Linux ist das Verlustrisiko durch Vergessen der Schlüssel bisher viel höher als durch Rechnereinbrüche und Malware.
- Zur automatischen Speicherung verschlüsselter Kopien ist GnuPG gut geeignet. Man braucht dabei zum Verschlüsseln nur den öffentlichen Schlüssel, erst zum Entschlüsseln eines Backups wird der private Schlüssel gebraucht, den man sonst sicher im Safe aufbewahren kann. Das Verwenden eines festen Schlüsselpaares verringert die Gefahr eines Schlüsselverlustes durch unbemerkte Tippfehler bei der Eingabe.
- Einen zusätzlichen Schutz gegen Angriffe mit Keyloggern bieten Smartcards und Hardware Tokens wie der Crypto Stick der German Privacy Foundation oder die Fellowship Smartcard. Der besondere Vorteil ist, dass man GnuPG-Schlüssel, die aufgrund ihrer Länge sehr sicher sind, auf der Smartcard speichern kann. Ein sechsstelliger PIN-Code schützt den Inhalt der Smartcard; wird er mehrfach falsch eingegeben, so wird der Inhalt unwiderruflich gelöscht. Anleitung hier.
- Zusammen mit dem FUSE-Dateisystem EncFS lassen sich so auch einzelne Dateien wie die wallet.dat individuell sichern. Das Bitcoin-Verzeichnis kann allerdings wegen der verwendeten Datenbank nicht mit EncFS verschlüsselt werden.
Weitere Informationen
Windows
- Einen extra Benutzer anlegen, unter dem nur die Bitcoin-Software ausgeführt wird. So ist die Geldbörse vor Schadcode in anderen Nutzerapplikationen etwas geschützt:
- Wallet Security Dos and Don'ts (Windows) (englisch)
- Windows sicher für Heimbenutzer konfigurieren
- Microsoft Enhanced Mitigation Experience Toolkit (EMET) konfigurieren (schützt vor vielen klassischen Exploits)
- Applikationsprogramme wie Flash, Acrobat, etc auf fehlende Updates prüfen (und im abgesicherten Benutzerkonto am besten gar nicht verwenden)
Browser-Sicherheit
Firefox
Um den Browser abzusichern, startet man Firefox, geht ins Menü "Edit" (Bearbeiten), und wählt "Preferences" (Einstellungen).
- Nun fängt man bei den Karteikarten links an, wählt unter "Startup" die Option "Show a Blank Page" (Leere Startseite).
- Unter "Content" (Inhalt),
- die Option "Load Images automatically / Bilder automatisch laden" abwählen,
- ebenso "Enable Javascript/Javascript aktivieren" abwählen.
- In der Karteikarte "Privacy/Datenschutz" im Menü "History / Verlaufsgeschichte" auswählen "Never remember history" / "keinen Verlauf speichern".
- In der Karteikarte "Security" im Abschnitt "Passwords"
- die Option "remember Passwords / Passwörter speichern" abwählen,
- ebenso "use a master password" / "Masterpasswort".
- Schließlich in der Karteikarte "Advanced" / "Erweitert" die Option
- "Automatically check for updates" abwählen,
- ebenso "Add-ons" und
- "Search engines"/"Suchmaschinen" abwählen.
Wenn Javascript deaktiviert ist, wird die Seite linux download page zum Downloaden neuer Versionen des Bitcoin Clients nicht mehr automatisch einen Download starten, deswegen muss man auf den Link "direct link" beim Hinweis "Problems with the download? Please use this 'direct link' or try another mirror." klicken. Nachdem man sich die Mühe gemacht hat, überprüft man natürlich beim Herunterladen neuer Bitcoin Clients die Prüfsummen, die auf der Sourceforge Seite angegeben sind, mit dem Programm sha1.
Schutz vor Datenverlust: Backup
Die einzige Datei die man sichern muß, ist die wallet.dat. Vorher sichergehen, dass Bitcoin nicht mehr läuft! Am besten wäre es, die Datei zu verschlüsseln und irgendwo sicher zu verstauen.
Du kannst auch den backupwallet-JSON-RPC Befehl nutzten, um im laufenden Betrieb ein Backup zu erstellen.
Bitcoin-Ordner finden
Der Bitcoin-Ordner ist der Ordner, in dem sich die Daten mitsamt der Datei wallet.dat befinden.
Windows
Klicke auf "Start", dann auf Ausführen und gebe dies ein:
- %APPDATA%\BitCoin
Ein Ordner sollte sich nun öffnen, für die meisten wäre es:
C:\Dokumente und Einstellungen\Benutzername\Anwendungsdaten\BitCoin (XP) C:\Users\Benutzername\Appdata\Roaming\BitCoin (Vista und 7)
Linux
Bitcoin sollte einen versteckten Ordner im Home-Verzeichnis des ausführenden Benutzers erstellen.
~/.bitcoin/
Sollte es sich nicht dort befinden, kann man es evtl. durch
- find / -name wallet.dat -print 2>/dev/null
finden. Oder als Root
- updatedb
gefolgt von
- locate wallet.dat
Mac
Hinweis: die folgende Anleitung ist mangels Mac nicht vom Übersetzer überprüft. Bitte prüfen und gegebenenfalls korrigieren, dann Hinweis entfernen!
Das Bitcoin-Verzeichnis mit der wallet.dat befindet sich normalerweise hier:
~/Library/Application Support/Bitcoin/
Alle Daten sichern (500 Megabyte)
Mit diesen Schritten werden alle Daten von Bitcoin (Geldbörse und Block chain) auf ein verschlüsseltes Festplatten-Image gesichert:
- Disk Utility öffnen
- "New Image" anklicken, 500MB, 128-bit oder 256-bit (schneller oder sicherer) Verschlüsselung, eintelne Partition angeben.
- An einem Platz kopieren, wo man das Image nicht verlieren wird (z.B. Wuala, Strongspace ofer was auch immer)
- Ein starkes und sicheres Passwort wählen
- Alles aus ~/Library/Application Support/Bitcoin/ in das Image kopieren
- Symlink zum alten Platz anlegen, so dass die App es benuutzen kann
- ln -s /Volumes/Bitcoin ~/Library/Application Support/Bitcoin
Nicht vergessen, das Image vor der Benutzung von Bitcoin zu mounten und nachher zu unmounten.
Backup der Geldbörsen-Datei wallet.dat alleine (40MB)
Diese Schritte sichern nur die Datei wallet.dat. Das bewirkt ein kleineres Speicherabbild, ist aber komplizierter.
- Disk Utility öffnen
- "New Image" anklicken, 40MB, 128-bit oder 256-bit, single partition wählen.
- An einem Ort speichern, wo man das Backup nicht verlieren wird.
- Ein sicheres und starkes Passwort wählen
- Die Datei wallet.dat in das Image verschieben
- Symlink zum alten Ort anlegen, so dass die App die Datei finden und benutzen kann
- ln -s /Volumes/Bitcoin/wallet.dat ~/Library/Application Support/Bitcoin/wallet.dat
Nicht vergessen, das Image vor der Benutzung von Bitcoin zu mounten und nachher zu unmounten.
Achtung: Wenn man die Bitcoin applikation startet, ohne dass das Image gemounted ist, wird das Programm das Symlink (eine Art Shortcut) mit einer neuen wallet.dat überschreiben. Keine Panik! Benenne die neue wallet.dat um oder lösche sie, mounte das Image, und lege einfach ein neues Symlink an. Die alte wallet.dat darf natürlich auf keinen Fall gelöscht werden.
Automation: Mit dem Programm Automator (enthalten in OS X) kann man die Wallet automatisch mounten und die Bitcoin App starten.
Alternativ kann das folgende Shell-Skript benutzt werden, welches die wallet.dat automatisch entschlüsselt, den Bitcoin Client startet, und sie nachher wieder verschlüsselt. Das Skript funktioniert sowoghl for für OSX und Linux: bitcoin-launch-script
Allgemeine Lösung
wallet.dat ist normalerweise nicht verschlüsselt, jeder der Zugriff auf die Datei hat, kann über die Coins frei verfügen. Du kannst deine wallet.dat auch mit einem dieser Programme verschlüsseln, sollte es nur die kleinste Wahrscheinlichkeit geben, dass jemand anderes Zugriff hat.
Achtung: Verschlüsselung hilft nicht nachträglich und sie schützt auch nur höchst lückenhaft vor Malware!
Verschlüsselung mit Smart Card
Ordner können auch mit einer GnuPG-kompatiblen SmartCard verschlüsselt werden. Eine sehr sichere Lösung ist der Crypto Stick der German Privacy Foundation:
Aufbewahren des Archives
Am einfachsten wäre es, das Archiv als Anhang einer E-Mail an sich selbst zu senden. Zudem kann man die wallet.dat innerhalb des Archivs noch in etwas unauffälliges umbenennen, genauso wie das Archiv selber.
Auch eine Sicherung auf Flash-Medien / Memory Sticks und eine Aufbewahrung an sicheren Orten ist eine sinnvolle Lösung.
Für erfahrene Benutzer kann auch Steganographie in Betracht kommen. Für Linux-Benutzer gibt es steghide.
BOTG: Bitcoin Off The Grid
- Eine weitere Alternative, die für höchste Sicherheitsanforderungen geeignet ist, stellt "BOTG - Bitcoin Off-The-Grid" dar, Info in der Ankündigung zu LinuxCoin. Dabei handelt es sich um ein Skript, das ohne Internetverbindung ein Schlüsselpaar erzeugen kann. Da der Private Schlüssel auf einem System erzeugt wird, das gar keinen Internetanschluss hat, und er offline gespeichert wird, kann er auch nicht über Internet abhanden kommen. Der öffentliche Schlüssel kann weiter gegeben werden und ganz normal Transaktionen empfangen, welche im Block Explorer nachgeschaut werden können. Erst wenn man das Guthaben verwenden möchte, muß man den privaten Schlüssel in einen Bitcoin Client importieren. Ab dann gelten die normalen Sicherheitsvorkehrungen.