478 / 736H

Cryptographic Entropy

Kryptografische Entropie: Was ein Geheimnis schwer erratbar macht

Eine lange, komplizierte Zeichenfolge ist nicht zwangsläufig sicher. Bei einer Wallet zählt vor allem, wie ihr Geheimnis entstanden ist und was andere darüber wissen könnten.

In der Kryptografie beschreibt Entropie die Unsicherheit, die einem Angreifer beim Erraten eines geheimen Werts bleibt. Bei einer Bitcoin-Wallet ist sie schon wichtig, wenn die Grundlage ihrer Schlüssel entsteht. Entscheidend ist nicht, ob die Zeichen kompliziert aussehen, sondern wie viele Ergebnisse tatsächlich möglich waren, wie wahrscheinlich sie waren und was der Angreifer über den Vorgang weiß.

Stellen Sie sich vor, jemand bildet ein Geheimnis aus Datum und Uhrzeit der Wallet-Erstellung. Nach der Kodierung sieht es vielleicht wie ein langer Zeichensalat aus. Kennt ein Angreifer aber den ungefähren Zeitpunkt und das Verfahren, muss er möglicherweise nur wenige Möglichkeiten ausprobieren. Eine längere Darstellung erschwert ihm die Arbeit nicht unbedingt. Deshalb unterscheidet RFC 4086 zwischen Unvorhersehbarkeit und einem bloß zufälligen Aussehen. Ein einzelner Schlüssel verrät Ihnen seine Entropie nicht; dafür müssen Sie seine Entstehung kennen. [3]

Ein Bit ist eine grundlegende Dateneinheit mit dem Wert 0 oder 1. Die Zahl der Bits allein sagt jedoch nicht, wie viel Unsicherheit für einen Angreifer bleibt. Wenn eine Wallet eine Seed Phrase nach BIP39 erstellt, braucht sie zuerst eine zufällige Eingabe. Erst danach wird diese in Wörter umgewandelt. Bei 12 Wörtern sind es 128 Eingabebits und 4 Prüfsummenbits, bei 24 Wörtern 256 Eingabebits und 8 Prüfsummenbits. Die Prüfsumme hilft, bestimmte Schreibfehler zu erkennen, fügt aber keine Entropie hinzu: Sie wird aus der vorhandenen Eingabe berechnet. Mehr Wörter können daher eine schlecht erzeugte Zufälligkeit nicht reparieren. Es zählt, wie die Sicherung entstanden ist, nicht nur ihre Wortzahl. [4]

Eine Wallet muss nicht für jedes neue Byte, also eine Gruppe aus 8 Bits, eine neue physikalische Messung vornehmen. Sie kann einen kryptografischen Generator namens DRBG nutzen: einen Algorithmus, der aus einem geheimen Anfangszustand weitere Werte erzeugt. Bei richtiger Konstruktion und Verwendung lassen sich die Ausgaben ohne Kenntnis des Zustands schwer vorhersagen. Der Algorithmus ist dennoch deterministisch: Derselbe vollständige Zustand und dieselben Eingaben ergeben dieselbe Fortsetzung. Mehr erzeugte Bytes bedeuten daher nicht automatisch mehr neue physikalische Entropie. Sowohl die Anfangseingabe als auch der Schutz des internen Zustands sind wichtig. [2]

Eine Hashfunktion berechnet aus Daten einen Fingerabdruck fester Länge, der zufällig wirken kann. Wer die Eingabe kennt, kann jedoch dasselbe Ergebnis berechnen. Vollständig bekannte Eingaben werden dadurch nicht geheim. Der Fachbegriff conditioning bezeichnet eine Verarbeitung, die Verzerrungen verringern und bereits vorhandene Unsicherheit konzentrieren kann. Sie erzeugt kein Geheimnis aus dem Nichts. Auch die Entropie mehrerer Quellen lässt sich nicht automatisch addieren: Die Quellen können voneinander abhängen und dieselbe Information liefern. [1] [3]

Eine elektronische Rauschquelle kann ausfallen oder ihr Verhalten bei veränderten Umgebungsbedingungen ändern. NIST SP 800-90B verlangt deshalb beim Start und im Betrieb Prüfungen des unverarbeiteten Rauschens, noch vor der Aufbereitung. Diese Kontrollen suchen nach Anzeichen für Fehler; sie beweisen nicht, dass jede Ausgabe sicher ist. Entwickler müssen die Quelle, ihre Grenzen und mögliche Abhängigkeiten verstehen. Ein erkannter Ausfall muss der Anwendung gemeldet werden, die die Daten nutzt. Bei einem dauerhaften Fehler darf die Quelle keine Ausgabe mehr liefern. Ein als Zufallsgenerator bezeichneter Chip allein genügt nicht. [1]

Gelangt ein Angreifer an den internen Zustand eines DRBG, kann er je nach Konstruktion weitere Ausgaben vorhersagen. Um die Unvorhersehbarkeit wiederherzustellen, ist ausreichend neue Eingabe nötig, die der Angreifer nicht kennt. Das Zuführen solcher Entropie heißt reseeding. Einfach weiterzurechnen oder eine bekannte Uhrzeit hinzuzufügen garantiert diesen Schutz nicht. Unterscheiden Sie außerdem zwischen der Reparatur des Generators und der Sicherheit vorhandener Gelder: Ein wieder sicher arbeitender Generator macht einen bereits offengelegten Schlüssel nicht ungültig. [2]

Ein statistischer Test kann etwa verdächtige Wiederholungen aufdecken. Er kann aber nicht sicher feststellen, ob ein Angreifer die geheime Eingabe oder eine Methode zur Vorhersage der Ausgabe kennt. NIST SP 800-22 weist ausdrücklich auf diese Grenze hin. Tests sind ein nützlicher Teil der Prüfung, ersetzen jedoch nicht die Untersuchung des gesamten Generators. Eine Datei voller scheinbar zufälliger Zahlen beweist deshalb für sich genommen nicht, dass eine Wallet sicher ist. [5]

Anfänger müssen die Entropie ihrer Wallet nicht selbst ausrechnen. Hilfreicher ist ein nachvollziehbar dokumentiertes Verfahren: Woher kommt die Zufälligkeit, wie wird sie verarbeitet, wie reagiert die Wallet auf Fehler und wie schützt sie Geheimnisse? NIST SP 800-90C behandelt genau diese Verbindung von Entropiequellen und DRBG zu einem vollständigen Generator. Der Verweis auf einen Standard oder einen bekannten Chip beweist aber noch nicht, dass eine bestimmte Wallet-Version ihn richtig verwendet. Entscheidend sind belegte Eigenschaften der tatsächlichen Implementierung. [1] [6]

Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Entropy Bit, CSPRNG, Dice Roll Entropy, Private Key. Auf diesen Eintrag verweisen außerdem BIP85, Dice Roll Entropy, Entropy Bit, Brute Force Search Space.

DOC · 001NIST SP 800-90B — Entropy source design and health testsSpezifikation DOC · 002NIST SP 800-90A Rev. 1 — Deterministic generation and reseedingSpezifikation DOC · 003RFC 4086 — Unpredictability and source limitationsSpezifikation DOC · 004BIP39 — Entropy, checksum and mnemonic encodingSpezifikation DOC · 005NIST SP 800-22 Rev. 1a — Limits of statistical testingDokumentation DOC · 006NIST SP 800-90C — Complete random bit generator constructionsSpezifikation
Überarbeitet: Quellenbasiert · Keine Anlageberatung