Mit Sicherheit

(c) Pepsprog / pixelio.de

(c) Pepsprog / pixelio.de

Ob Bargeld, Gold oder Bitcoins – Sicherheit ist hier wie da ein großes Thema. Beim Bitcoin wird die Sache dadurch erschwert, dass es sich um eine neue Technik handelt, die viele Nicht-Informatiker mit ihrer Komplexität überfordert. Aber es gibt Möglichkeiten, Bitcoins absolut sicher zu verwahren, und sofern Sie der glückliche Besitzer einer größeren Summe der virtuellen Währung sind oder dies zu werden planen, sollten Ihnen diese ans Herz gelegt sein.

Zwei Dinge, die Sie wissen sollten

Der erste Punkt ist: Das kryptographische Gerüst des Bitcoins ist absolut sicher. Dan Kaminsky hat versucht, ihn zu hacken, und er ist, wie so viele vor ihm, gescheitert. Wem es gelingt, den Bitcoin zu hacken, der findet einen Topf voll Gold; wäre es möglich, wäre es längst passiert. Kaminskys Urteil: „Die Kerntechnologie funktioniert tatsächlich, und sie funktioniert weiterhin in einem Ausmaß, die nicht jeder vorausgesagt hat.“

Die Dyson-Sphäre: Selbst wenn es gelänge, die komplette Energie der Sonne zu nutzen - SHA zwei bliebe stabil

Die Dyson-Sphäre: Selbst wenn es gelänge, die komplette Energie der Sonne zu nutzen – SHA zwei bliebe stabil

Im Prinzip ist der Bitcoin nicht mehr als ein Schlüsselpaar. Mit dem öffentlichen Schlüssel kann man in den Vorraum des Tresors, um in ihn hineinzuschauen. In den Tresor hinein und die Bitcoins herausholen kann jedoch nur der Besitzer des privaten Schlüssels, und dieser ist ausschließlich im Wallet gespeichert. Das Schlüsselpaar beruht auf dem kryptographischen SHA-2-Algorithmus, und es ist offensichtlich, dass Satoshi Nakamoto wußte, was er tat, als er ihn auswählte. Denn während andere kryptographische Algorithmen im Licht der Enthüllungen über die NSA als gefährdet gelten, scheint an SHA-2 weiterhin kein Makel zu sein. Es gibt nicht einmal in der Theorie ein Schlupfloch.

Wer den Schlüssel eines Bitcoins per Brute-Force knacken will, also indem er einfach so lange eine zufällige Hash nach der anderen generiert, bis die richtige dabei ist, müsste eine schrecklich große Menge an Hashes erzeugen: 2 hoch 256. Das ergibt eine Zahl mit 78 Stellen. Zum Beispiel:

115792089237316195423570985008687907852837564279074904382605163141518161494337

Mal angenommen, man würde alle Atome des Sonnensystems in einem Superrechner verbauen, der das thermodynamische Limit der Informationsverarbeitung ausschöpft – nur mal angenommen! – selbst dann würde es zu lange dauern, um energetisch möglich zu sein.

Der kryptographische Kern ist also sicherer als jede Bank. Dennoch kommt es immer wieder vor, dass Bitcoins geklaut oder verloren werden. Und damit sind wir bei der zweiten Sache, die Sie unbedingt wissen müssen: Wenn Ihr Bitcoin weg ist, ist er weg. Dann kann Ihnen keiner mehr helfen. Es gibt keine Möglichkeit, einen Bitcoin, der ihre Adresse verlassen hat, zurückzuzwingen. Keine.

Das Wallet

(c) Andrea Damm / pixelio.de

(c) Andrea Damm / pixelio.de

Die übliche Aufbewahrung Ihrer Bitcoins ist das Wallet, eine Art Brieftasche auf Ihrem Rechner. Das Wallet generiert und verwaltet ihr Schlüsselpaar. Bereits dabei kommt es zum ersten Risiko: Der private Schlüssel beruht auf Zufallszahlen. Da Prozessoren aber nicht fähig sind, eine im wahrsten Sinne des Wortes zufällige Zahl zu generieren, sondern nur Pseudozufallszahlen, können diese eine Schwäche haben. 2007 kam etwa heraus, dass der Zufallsgenerator von Windows XP Schwächen hat. Vor kurzem kam auch ein Fehler im Zufallsgenerator von Android-Systemen heraus, der eine gefährliche Sicherheitslücke für Wallets darstellte. Diese wurde aber von den Wallet-Entwicklern rasch behoben. Beim Stand der Dinge sollten die Zufallszahlen der gebräuchlichen Systeme jedoch ausreichend sicher sein.

Eine größere Gefahr für die Sicherheit ist der Nutzer selbst. Ob man den offiziellen Bitcoin-Clienten oder das leichtere Multibit verwendet – solange Ihr System unsicher ist, bleibt stets ein Restrisiko. Selbstverständlich ist dringend zu empfehlen, ein Backup zu machen, damit beim nächsten Festplattencrash nicht tausende von Euros mit kaputtgehen. Am besten Sie machen zwei Sicherheitskopien. Multibit bietet die Option „Privater Schlüssel exportieren“ an, beim QT-Clienten können Sie die in Ihrem Roaming-Ordner (i.d.R. benutzer/appdata/roaming/bitcoin) befindliche Datei wallet.dat kopieren. Sichern Sie zudem Ihr Wallet mit einem Passwort, so dass sich kein Dieb Ihres Laptops an Ihren Coins bereichern kann.

(c) Annamartha / pixelio.de

(c) Annamartha / pixelio.de

Damit sind Ihre Bitcoins aber noch nicht vor den Einbrechern und Taschendieben des Internets geschützt: Den Hackern und ihren Viren, Trojanern, Spyware und Key-Loggern. Wenn diese ein Stück Malware in Ihr System schleusen, könnte es passieren, dass dieses an den privaten Schlüssel kommt. Also: Halten Sie Ihr System so sicher wir möglich. Wir können dafür nur die üblichen Ratschläge geben. Aktualisieren Sie Viren- und Malware-Scanner, öffnen Sie keine Anhänge in unbekannten Emails, laden Sie nicht unbedacht Daten herunter, klicken Sie nichts an, was Ihnen nicht geheuer ist, updaten Sie regelmäßig Java und Flash, diese omnipräsenten, jedoch extrem anfälligen Module Ihres Browsers. Undsoweiter.

Dennoch gibt es keinen 100-prozentigen Schutz. Abgesehen vom Bitcoin-Gerüst gilt die Devise, dass man alles hacken kann. Wer wirklich paranoid ist, verteilt seine Bitcoins auf viele Adressen, so dass ein erfolgter Angriff – die Wahrscheinlichkeit ist sehr gering – nur einen minimierten Schaden nach sich zieht.

Das Online-Wallet

Die wohl einfachste und unkomplizierteste Art, Bitcoins zu lagern, ist ein Online-Wallet, sei es bei blockchain.info, input.io, coinbase oder bitcoin.de. So müssen Sie keine Software herunterladen und können bequem vom Browser heraus bezahlen.
Bei Online-Wallets werden Ihre Bitcoins in der cloud gelagert. Der Vorteil ist, dass ihre Sicherheit so nicht mehr vom eigenen System abhängt, sondern in den Händen von – idealerweise kompetenten – anderen liegt, die über mehr Ressourcen verfügen, um Angriffe abzuwehren. Kombiniert mit der 2-Factor-Authorisierung, bei der Sie entweder über eine externe App eine PIN erzeugen oder diese per SMS zugeschickt bekommen, bieten Online-Wallets durchaus Schutz vor Diebstahl. Zumindest bei bitcoin.de kam noch kein Nutzer zu Schaden.

Sind überall: Viren (c) Aka / pixelio.de

Sind überall: Viren (c) Aka / pixelio.de

Allerdings wird unter dem Aspekt der Sicherheit manchmal von ihnen abgeraten. Denn da nicht Sie, sondern der Betreiber den privaten Schlüssel verwaltet, ist das Online-Wallet nur so sicher, wie dieser vertrauenswürdig ist. Zum anderen gilt wieder, dass alles zu hacken ist und ein Online-Wallet prinzipiell ein heißeres Ziel darstellen sollte, da der Topf voll Gold am Ende des Hacks größer ist. Wenn Sie ein schwaches Passwort haben – zum Beispiel nur 6 oder 8 Buchstaben – kann Ihr Online-Wallet mit einer simplen Brute-Force-Attacke geknackt werden. Dagegen schützt etwa die 2-Factor-Authorisierung. Allerdings hilft diese auch nicht, wenn der Hacker nicht nur in ihr Konto, sondern in das System des Online-Wallets eindringt.
Wie gesagt: Die Betreiber von Online-Wallets wissen in der Regel, was sie tun und können ein hohes Maß an Sicherheit gewährleisten. Allerdings sind sie auch ein beliebtes Ziel für Hacker, weshalb ein Restrisiko bleibt.

Update: Input.io wurde gehackt. Dabei gingen rund 1.000 Bitcoins verloren, die der Besitzer nur zum Teil aus seinem eigenen Bestand erseten konnte.

Kalt speichern

Es gibt nur eine Möglichkeit, Bitcoins wirklich sicher aufzubewahren: Man muss den privaten Schlüssel vom Internet fernhalten. Solange kein Hacker an diesen kommt, kann Ihnen nichts passieren. Der Trick ist dabei überraschend einfach. Ausgehend von einem privaten Schlüssel kann man auch offline Adressen generieren. Und mithilfe der Signatur kann man die Adressen auch offline unterschreiben und dann durch einen USB-Stick auf einen mit dem Internet verbundenen Computer übertragen und von dort absenden. Gut, man braucht zwei Systeme, etwas Zeit und muss sich hineindenken. Armory, Electrum und MultiBit haben diese Option.

Darüber hinaus können Sie Paper-Wallets erstellen. Das ist ein Ausdruck Ihres privaten Schlüssels. Mit Armory kann man ein Paperwallet generieren, Electrum zeigt einen Seed an: Ein Brainwallet, durch das man als Passphrase den privaten Schlüssel wiederherstellen kann. Wenn das Paperwallet ausgedruckt ist, kann man das Wallet vom Computer löschen. Dann ist der privaten Schlüssel ebenfalls vom Internet weg. Und wo kein Internet ist, gibt es keine Hacker.

Es gibt auch Internetseiten, bei denen Sie Paperwallets generieren können. Diese sind allerdings mit Vorsicht zu wählen, da sie unter Umständen den privaten Schlüssel abgreifen können.

Trezor

Weil Bitcoiner ihre Sicherheit bis zur Grenze der Paranoia lieben, wurde Trezor zum Bitcoin-Projekt des Sommers 2013 gewählt. Hierbei handelt es sich um ein Hardware-Wallet. Wie Armory signiert Trezor die Transaktionen offline. Darüber hinaus operiert es in einer isolierten Umgebung, ist einfach zu handhaben und wartet mit einer Fülle weiterer Features auf. Das heiß erwartete Produkt ist noch in der Entwicklung, Vorbestellungen nehmen die tschechischen Entwickler jedoch bereits entgegen, erwartet wird die Auslieferung für Anfang 2014.

Über Christoph Bergmann (1545 Beiträge)
Das Bitcoinblog wird von Bitcoin.de gesponsort, ist inhaltlich aber unabhängig und gibt die Meinung des Redakteurs Christoph Bergmann wieder. Christoph hat vor kurzem ein Buch geschrieben: Bitcoin: Die verrückte Geschichte vom Aufstieg eines neuen Geldes. Das Buch stellt Bitcoin in seiner ganzen Pracht dar. Ihr könnt es direkt auf der Webseite Bitcoin-Buch.org bestellen - natürlich auch mit Bitcoin - oder auch per Amazon. Natürlich freuen wir uns auch über Spenden in Bitcoin, Bitcoin Cash oder Bitcoin SV an die folgende Adresse: 1BergmanNpFqZwALMRe8GHJqGhtEFD3xMw. Wer will, kann uns auch Hier mit Lightning spenden. Tipps für Stories sind an christoph.bergmann@mailbox.org immer erwünscht. Wer dies privat machen möchte, sollte meinen PGP-Schlüssel verwenden.

30 Kommentare zu Mit Sicherheit

  1. Ich verwahre mein Wallet in einer Truecrypt Datei auf.
    Fast unmöglich diese zu hacken.

    Bei online webdiensten bin ich mir unsicher, da die USA mittlerweile
    einfach mal Websites schliessen lässt.
    Wie sicher können wir uns da sein das nicht mal das hier auftaucht:

    http://www.libertyreserve.com/index.html

  2. Zum Thema Sicherheit von Online-Wallets…

    auf inputs.io trifft das nicht zu, wie sich jetzt gezeigt hat. Wie sieht es da mit Bitcoin.de aus?

    • Bitte haben Sie dafür Verständnis, dass wir keine detaillierten Angaben zu unseren Sicherheitsmaßnahmen machen können. Dies dient auch der Sicherheit unserer Kunden. Unsere Sicherheitsmaßnahmen sind sehr umfangreich und werden zudem regelmäßig von einem externen Unternehmen geprüft, das auch die Sicherheit von diversen Banken/Finanzdienstleistern und Energieversorgern regelmäßig prüft. Im kommenden Jahr streben wir zudem eine Zertifizierung unserer Sicherheitsmaßnahmen durch eine Sachverständigenorganisiation an.

      • Keine Angaben zur Sicherheit machen können klingt nach Security by obscurity … Was dabei raus kommt muss ich ihnen hoffentlich nicht erklären …

        Ein system ist erst dann sicher, wenn man jeder Person sagen kann wie es funktioniert und es trotzdem nicht geknackt werden kann – wie alle aktuell als sicher eingestuften Kryptografieverfahren

      • Ich muss hier meinem Vorredner, LittleFox, voll und ganz zustimmen. Mit der „Geheimhaltung“ derartiger Informationen beeindrucken Sie, wenn überhaupt, nur Unwissende. Vielleicht sollten Sie sich einmal mit dem bereits genannten Konzept „Security by Obscurity“ und dem Kerckhoffs’schen Prinzip auseinander setzen. Aussagen à la „unsere Sicherheitsmaßnahmen sind sehr umfangreich“ schaffen absolut kein Vertrauen – ganz im Gegenteil. Hier sind einzig und allein Details wichtig. Man kann vieles machen – aber leider halt auch falsch. Oft entstehen gerade aus dem Einsatz von vielen solcher eigentlich „sicherer“ Maßnahmen heraus Sicherheitsprobleme.

        Des Weiteren gibt es auch noch etwas zu den von Ihnen genannten Zertifizierungen zu sagen: Zwar mögen schöne Logos auf Ihren Seiten sowohl das Ihrige als auch das Gewissen Ihrer Kunden beruhigen, aber ein Garant für „echte“ Sicherheit ist das bei Weitem noch nicht. Andererseits soll das natürlich jetzt nicht heißen, dass derartige Bemühungen immer nutzlos sind, aber man sollte sich halt stets vor Augen führen was man zertifiziert und was dies sicherstellt bzw. was nicht.

        Das Thema „Sicherheit“ ist, wenn man es denn wirklich ernst nimmt, umfangreich und vielschichtig. Ab einer gewissen „Komplexität“ (wie auch immer man das genau quantifizieren mag), stellt sich mir – auch aufgrund der vielen entsprechenden Meldungen in den letzten Jahren – sowieso die Frage, ob das Ganze überhaupt umsetzbar ist. Wenn selbst die Netzwerke diverser Rüstungsfirmen, das U.S. Militär selbst und sogar Sicherheitsfirmen (wie z.B. RSA Security oder diverse CAs) infiltriert und kompromittiert werden, dann könnte man meinen, dass für ein „durchschnittliches“ Unternehmen wenig bis gar keine Hoffnung besteht.

        Zu guter Letzt noch kurz etwas bezüglich Ihrer Lobeshymne der Mehrfaktor-Authentifizierung. Ja, das kann die Sicherheit im Allgemeinen erhöhen, ist aber leider auch kein Allheilmittel gegen unautorisierten Zugriff. Das hat Bruce Schneier z.B. schon im Jahr 2005 (!) in einem Essay namens „Two-Factor Authentication: Too Little, Too Late“ festgestellt. So schützt das Ganze z.B. nicht vor aktiven Angriffen in Form eines Man-in-the-Middle. Überhaupt ist der Einsatz des Google Authenticators, welchen Sie ja auch einsetzen, nicht ganz unproblematisch. Das mit jedem Benutzer vereinbarte Geheimnis, welches als Basis zur Berechnung der OTPs herangezogen wird, müssen Sie notgedrungen parallel zum eigentlichen Benutzernamen und Passwort vorhalten. Insofern ist stark davon auszugehen, dass dies im Falle eines „Leaks“ etwaigen Angreifern mit in die Hände fällt und somit ziemlich sinnfrei wird.

        Letztendlich bleibt wohl nur festzuhalten, dass es für jeden Benutzer durchaus einiges gibt, dass man unternehmen kann (und sollte!), um nicht Opfer von ganz „billigen“ bzw. „oberflächlichen“ Angriffen zu werden. Darunter fallen z.B. auch die o.g. „Standardprozedere“ (Backups, sichere Passwörter, Anti-Virenprogramme, E-Mails nicht öffnen, Updates rechtzeitig einspielen, gesunder Menschenverstand, usw.). Andererseits ist es aber äußerst schwierig sich komplett abzusichern. Bemühungen, die in Richtung „Trezor“ gehen (sprich Auslagerung in eine hoffentlich sichere Umgebung), hören sich aber interessant und vielversprechend an. Mal sehen was letztendlich daraus wird und inwiefern das Ganze mit dem Bitcoin-Ökosystem harmoniert.

        Mit freundlichen Grüßen,
        Karol Babioch

  3. Bezüglich „Truecrypt“:

    Ich kann das ebenfalls nur empfehlen. Bin selbst davon absolut überzeugt. Das ist wahrlich ein Tresor! Daher eher für größere Guthaben zu empfehlen, da der Zugang zur Datei und den dort abgespeicherten privaten Schlüsseln aufgrund der hochgradigen Verschlüsselung dempentsprechend aufwendiger ist.
    Aber allemal für jeden Bitcoin-Fan/Nutzer einen Versuch wert!

  4. Truecrypt ist nicht wirklich OpenSource also nicht vertrauenswürdig. Niemand weiß was da genau passiert, niemand kann übedrprüfen ob es Hintertürchen gibt. Egal ob diese vom Hersteller gewollt sind oder ein Versehen sind. Sicherheitsrelevante Anwendungen sind nur als OpenSource vertrauenswürdig, wo Schwachstellen von jedem Experten untersucht werden können. Absolute Sicherheit kann es nicht geben, auch nicht bei OpenSource. Aber nur einer begenzten Anzahl von Entwicklern einer Firma zu vertrauen ist reichlich naiv.

    • http://www.heise.de/security/meldung/Verschluesselungssoftware-TrueCrypt-Ein-Zweifel-weniger-2035104.html
      Habe ich auf die Seite von heisse gefunden. Ich persönlich benutze truecrypt auch, und mit keepas tausche ich alle 3 Monate die passwörter aus.

    • Ich wüsste mal gerne weshalb du solche falschen Informationen in Umlauf bringst. Selbstverständlich ist truecrypt open source. Und der Programmcode kann von jeder Person eingesehen werden. Dadurch ist gerade sichergestellt, dass es keine Schwachstellen oder Hintertüren im Programm gibt. Truecrypt ist daher jeder kommerziellen oder nicht open source Software zur festplattenverschlüsselung vorzuziehen. Das höchste risiko geht hier allenfalls vom user selbst aus, für einen sicheren Umgang mit truecrypt gibt es aber auf der Website ausführliche Anleitungen.

    • Wer sowas schreibt hat keine Ahnung von Truecrypt

  5. Eine 100 % Absicherung der Coins ist meiner Meinung noch nicht möglich. Dafür ist das System noch zu sehr in den Kinerschuhen.

    Sichere Verwahrungsstellen im Vergleich zur Wallet sind aber auch Bitcoinbörsen denen man großes Vertrauen schenken kann. Darunter zählen auch bitcoin.de gerade weil Sie Ihren Sitz auch in Deutschland haben.

    Mac PCs bieten zudem höhere Sicherheit da diese so gut wie nicht Virenanfällig sind.

    • Standort in Deutschland ist egal – das Internet ist international 😉

      Und mac und nicht virenanfällig? OK, weniger als Windows aber das ist keine Kunst

      Für so etwas nimmt man ein anständiges Linux wie Debian zum Beispiel

      • Feathercoin // 3. Dezember 2013 um 9:18 //

        Standort in Deutschland ist egal – das Internet ist international ….

        Ja das stimmt natürlich 😉

        Trotzdem kommste bei Verlust auf einer deutschen Seite wieder leichter an dein Geld zurück (hat Bitcoin.de eine Einlagensicherung wie eine Bank?) wie auf einer Seite die sich irgendwo auf einem Inselstaat oder sibirischen Einöde niedergelassen hat 😀 schon so manche Börse ist mit den Coins ins nichts verschwunden…

        Falls sich jemand für die Anmeldung interessiert hier ist mein Affiliate Link https://www.bitcoin.de/de/r/sk64hv oder der normale http://www.bitcoin.de

        Bin seit nem Jahr dabei guter Support, bislang nichts negatives erlebt.

  6. Der truecrypt sourcecode steht unter http://www.truecrypt.org/downloads2 zum download zur Verfügung. Die Lizenz lässt Modifikationen und freie Weitergabe zu. Viel opensourciger kann Software nicht sein.

    Grundsätzlich erzeugt Truecrypt einen (AES|Twofish|) verschlüsselten Container einer frei wählbaren Grösse (eine Datei auf der Platte oder eine ganze Partition). Dieser Container wird verschlüsselt und mit Zufallsdaten befüllt. Nach dem Entschlüsseln können beliebige Dateien in den „geöffneten“ Container kopiert werden – ist der Container wieder geschlossen ist nicht ersichtlich, welche Datentypen/-mengen enthalten sind. Nett ist, das in einem Container ein weiterer untergebracht werden kann. Sollte man mal gefoltert werden, kann man so plausibel verneinen weitere Geheimnisse zu haben. 🙂

  7. Hi,
    trcrypt ist sicher schon eine sehr gute Idee, allerdings schützt das nur, solange man die Wallet nicht mounted, also entschlüsselt. Sobald ihr das Volumen mounted wird der Zugriff auf die Wallet jedem Programm, also z.b. Trojanern und Viren direkt ermöglicht.

    Offline wallet in truecrypt erstellen und danach nicht mehr mounten – so ließe sich Sicherheit herstellen. Einfacher ist natürlich Armory offline mit zweitem Rechner. Bei dem aktuellen Kurs sollten 1-200€ für ein altes Notebook ja nicht so sehr ins Gewicht fallen.

  8. Hallo,

    vielen Dank für den informativen Input und die interessanten Kommentare. Ich beschäftige mich erst seit kurzem mit dem Thema und inhaliere daher möglichst viele Informationen.

    Danke dafür!

  9. TrueCrypt ist für mich auch allererste Wahl um offline zu sichern.

    Aber wie alles andere auch angreifbar, z.B. mit Bootkits, Keyloggern, Auslesen des Arbeitsspeichers, Abgreifen von Daten bei Funktastaturen etc.

  10. Der ganze Hype um TrueCrypt hier in den Kommentaren sollte vielleicht doch etwas kritischer betrachtet werden und ihr solltet euch klar machen wovor genau das schützt. Eine Walletverschlüsselung bietet meines Wissens nach nämlich das GUI der Standardapplikation bereits nativ an. Inwiefern es Sinn macht das Ganze darüber hinaus nochmal zu verschlüsseln ist fragwürdig. Entgegen der Intuition ist nämlich doppeltes Verschlüsseln nicht unbedingt doppelt so „sicher“! Stichwort hier wäre z.B. „Meet-in-the-Middle“.

    Vor „ausgefeilter“ Malware die darauf wartet, dass der Benutzer selbst eine Transaktion anstößt und im Rahmen dieser die entschlüsselte Wallet bzw. die dazugehörigen privaten Schlüssel zur Verfügung stellt, schützt euer TrueCrypt Modell jedenfalls auch nicht. Und ein solches Vorgehen wäre, zumindest meiner Einschätzung nach, durchaus im Rahmen des Möglichen aktueller Schadsoftware.

    Mit freundlichen Grüßen,
    Karol Babioch

  11. Hallo,
    Entschuldigung, aber der Absatz über die kryptographische Sicherheit stimmt vorne und hinten nicht:

    1. SHA-2 ist *keine* kryptographische Funktion, sondern eine Hash-Funktion. Die Basis von Bitcoin sind elliptische Kurven (secp256k1 in Bitcoins Fall), genauer gesagt der ECDSA (Elliptic Curve Digital Signature Algorithm). Der Unterschied ist: Eine Hash-Funktion ist eine Einweg-Funktion, d.h. man kann damit nichts entschlüsseln. Mit ECDSA kann man eine Nachricht signieren und beweisen, dass man der Author der Nachricht ist. Damit kann man z.B. laienhaft folgende Nachricht signieren „Ich, Bitcoin-Adresse 12345, gebe 54321 genau einen BTC“. Die Miner überprüfen ob man die benötigen Bitcoins für diese Transaktion hat (durch die vorherigen Transaktionen kann man dies nachvollziehen) und falls die Transaktion gültig ist, findet diese signierte Nachricht ihren Weg in die Blockchain und ist damit dort verewigt.

    2. Ein Bitcoin ist auch kein Schlüsselpaar. Eine Bitcoin-Adresse ist ein Schlüsselpaar. Ein Bitcoin ist nichts weiter als eine Zahl, die einer Bitcoin-Adresse gehört, verifiziert durch ECDSA.

    • Danke. Wenn Sie es jetzt noch so ausdrücken, dass es allgemein verständlich ist, tun Sie diesem Blog einen riesigen Gefallen.

      • nobody44 // 4. Dezember 2013 um 23:41 //

        Ich dachte das wäre verständlich.

        Es geht um die Basis von Bitcoin, und die sind elliptische Kurven. Es gibt mehrere elliptische Kurven und man einigt sich auf genau eine Kurve mit der man arbeitet. Bei Bitcoin hat man sich auf die Kurve „secp256k1“ geeinigt. Eine elliptische Kurve ist eine Sammlung von Punkten die einer bestimmten Gleichung genügen: „y^2 = x^3 + a*x + b“. Und jetzt das Schlüsselpaar: Ein Schlüsselpaar bei elliptischen Kurven besteht aus zwei Schlüsseln, einem öffentlichen Schlüssel den jeder kennen darf und einem privaten Schlüssel, den niemand außer man selbst kennen sollte. Man kann aus dem öffentlichen Schlüssel *bisher* nicht den privaten Schlüssel berechnen. Diese Tatsache macht Bitcoins sicher.

        Man kann sich das wie folgt vorstellen: Man hat eine magische Truhe die mit einem Schloss versehen ist. Dieses Schloss hat genau zwei Schlüssellöcher, eins für den öffentlichen und eins für den privaten Schlüssel. Der private Schlüssel passt in jedes Schlüsselloch, der öffentliche nur in das passende Loch.
        Versucht man mit dem öffentlichen Schlüssel die Truhe zu öffnen, kann man zwar hineinschauen und sehen wieviele Bitcoins darin gelagert sind, aber man kann die Bitcoins nicht entnehmen. Man kann allerdings, wenn man möchte, noch Bitcoins hineinschmeißen. Öffnet man die Truhe mit dem privaten Schlüssel kann man die Bitcoins entnehmen.
        Den öffentlichen Schlüssel kann man beliebig häufig kopieren und auch gerne an andere weiterreichen. Alles was andere damit machen können ist dir Bitcoins geben oder sehen wieviele Bitcoins du hast.

        Sobald jemand deinen privaten Schlüssel kopiert hast du ein Problem. Er kann jederzeit alle Bitcoins aus der Truhe entnehmen und du kannst nichts dagegen unternehmen (du kannst ihm natürlich zuvor kommen und die Bitcoins in eine neue Truhe packen).

        Nun zurück zu den Elliptischen Kurven:

        Der öffentliche Schlüssel eines EC Schlüssels ist ein Punkt auf der Kurve, d.h. X- und Y-Koordinaten. Der private Schlüssel ist eine zufällige Zahl. Um es mal salopp zu formulieren:

        Stellt dir eine Operation vor wie die Multiplikation von zwei Zahlen: 131 * 191. Die Rechnung kannst du in den Taschenrechner eingeben und du hast das Ergebnis in kurzer Zeit in deinen Händen. Was wäre wenn ich dir nur das Ergebnis nenne (25021), und du sollst mir beide Zahlen (131 und 191) nennen. Dieses Problem ist bekannst als das Faktorisierungsproblem und es trifft zwar nicht 100%ig auf elliptische Kurven zu, verdeutlicht aber das Problem: Man hat eine mathematische Operation die in eine Richtung einfach und schnell durchzuführen ist. Der Rückweg ist allerdings nicht trivial bzw. mit unglaublich viel Rechenaufwand verbunden.

        Bei elliptischen Kurven ist es ähnlich:
        Man wähle eine zufällige Zahl s (für *secret*, die ist geheim), und multipliziert einen ganz bestimmten Punkt auf der Kurve (den jeder kennt) mit dieser Zahl:

        s*G = p

        Das Ergebnis p ist ein Punkt auf der Kurve. Das ist der öffentliche Schlüssel. Wie möchte man alleine aus dieser Gleichung s bestimmen wenn man G und p kennt? Will man den Punkt p durch den Punkt G teilen? Diese Rechenoperation ist nicht möglich.

        Du möchtest Bitcoin hacken? Finde heraus, wie man an s kommt.
        Darauf basiert die Sicherheit von Bitcoin. Sicher, es gibt noch andere Angriffspunkte, aber das ist der den du versucht hast zu beschreiben.

      • nobody44 // 4. Dezember 2013 um 23:45 //

        Nochwas: Aus dem öffentlichen Schlüssel kann man letztendlich die Bitcoin-Adresse berechnen. Hinter *jeder* Bitcoin-Adresse verbirgt sich ein Schlüsselpaar wie oben beschrieben (s ist der private Schlüssel und p der öffentliche (secret und public)).

        Man kann aus einer Bitcoin-Adresse zwar nicht den öffentlichen Schlüssel berechnen, aber sobald man Bitcoins überweist taucht der öffentliche Schlüssel in der Blockchain auf und ist für jeden sichtbar.

      • nobody44 // 4. Dezember 2013 um 23:48 //

        Ich wäre gerne bereit einen Artikel über die Kryptografie hinter Bitcoin zu schreiben…

    • Sorry, aber wenn du schon genau sein willst, dann bitte richtig. SHA-2 ist sehr wohl eine *kryptografische* Funktion, nämlich eine sog. *kryptografische* Hash-Funktion. An eine solche stellt man nämlich ganz andere Anforderungen als an eine „einfache“ Hash-Funktion. Von Ver- bzw. Entschlüsselung war in diesem Kontext gar nicht die Rede und mir scheint es fast so, dass du nur auf das gängige Missverständnis (Hash vs. Verschlüsselung) hinweisen willst, obwohl dieser Fehler hier gar nicht gemacht wurde.

      Der Rest der Kritik ist dann allerdings schon gerechtfertigt. Der Autor scheint nicht unbedingt mit den kryptografischen Grundlagen hinter dem Konzept vertraut zu sein und würfelt die Begriffe Hash, Schlüsselpaar und Bitcoin ziemlich wild durcheinander. Das ist ein Phänomen auf das man leider viel zu oft stößt, wenn man über die (technischen) Details des Ganzen liest. Gerade von bitcoin.de erwartet man hier allerdings mehr und ich bin mir ziemlich sicher, dass es nicht allzu schwierig sein dürfte einen technischen „Reviewer“ für solche Beiträge zu beauftragen, der entsprechendes kryptografisches Hintergrundwissen mitbringt.

      • Ja, ich bin Autor, kein Kryptograf, und Bitcoin.de ist ein Marktplatz, kein Verlag. Selbstverständlich würden sich einigen Mitarbeitern von Bitcoin.de wohl genauso die Haare sträuben wie Ihnen, wenn ich die technischen Begriffe durcheinanderbringe. Aber diese arbeiten mit Hochdruck daran, Bitcoin.de weiterzuentwickeln und haben kaum die Zeit, das Blog zu lektorieren. (vor allem derzeit, wir werden bald eine News haben, die einen internationalen Durchbruch darstellen wird). Aber falls Sie bereit sind, ein technisches Review solcher Beiträge zu übernehmen, begrüße ich das natürlich sehr.

        Edit: Dass die Definition, was ein Bitcoin ist, auf technischer Ebene etwas komplizierter ist, weiß ich. Allerdings war der Sinn dieses Abschnitts, einem Leser mit wenig Vorwissen zu vermitteln, dass es da einen privaten Schlüssel gibt und dass seine Bitcoins, soweit er diesen exklusiv besitzt, so sicher sind wie der Sonnenuntergang. W

      • nobody44 // 5. Dezember 2013 um 10:48 //

        Ich habe am Anfang erwähnt, dass SHA-2 eine Hash-Funktion ist, allerdings habe ich gedachte dass Hash-Funktionen nicht in den Bereich der Kryptografie gehören. Da lag ich wohl falsch…

  12. Martin Burrows // 4. Dezember 2013 um 16:39 // Antwort

    Für meine Pensionskasse würde ich einen private-Key mit 99 Würfelwürfen selbst erstellen und daraus die Bitcoin-Adresse berechnen.

    Das kann man am einfachsten machen, indem man sie das bitadress.org – javascript herunterläd, und auf einem offline-Computer ausführt. (Simple Windows Installation mit Javascript völlig ausreichend)
    Hier kann man dann die Würfelergebnisse als 99-Stellige Base6 Zahl eingeben.
    Zufälliger und sicherer gehts nimmer, es sei denn man benutz einen gezinkten Würfel 😉

    Das Ergebnis druckt man dann vom offline-PC aus aus (über Kabel), und schmeisst dann die Festplatte in einen aktiven Vulkan oder in eine Schrottpresse 😉

    Die Adresse ist sicherer als Abrahams Schoß.. Lediglich den Ausdruck muss man hüten wie seinen Augapfel 😀

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s