Hashing und der Lawinen-Effekt
Bitcoins gesamte Sicherheit ruht auf einer einzigen mathematischen Funktion: SHA-256. Bevor du verstehst, wie Mining, Adressen oder die Timechain funktionieren, musst du verstehen, was ein Hash tut.
Was ist eine Hash-Funktion?
Eine Hash-Funktion nimmt eine beliebige Eingabe und erzeugt daraus eine Ausgabe fester Länge. Bei SHA-256 sind das immer exakt 256 Bit (64 Hex-Zeichen).
| Eigenschaft | Bedeutung |
|---|---|
| Deterministisch | Gleiche Eingabe → immer gleicher Hash. Überall. |
| Einweg | Vom Hash kann man nicht auf die Eingabe zurückrechnen. |
| Kollisionsresistent | Zwei verschiedene Eingaben mit gleichem Hash zu finden ist praktisch unmöglich. |
Dazu kommt die Eigenschaft, die für Bitcoin am wichtigsten ist: der Lawinen-Effekt.
Dein erstes Experiment
Gib im Tool unten einen beliebigen Text ein. Dann ändere ein einziges Zeichen — etwa einen Groß- in einen Kleinbuchstaben — und beobachte den Hash.
// Eingabe A
// SHA-256 Hash A
// Eingabe B (zum Vergleichen)
// SHA-256 Hash B
// Was ist SHA-256?
- Deterministisch: Gleiche Eingabe → immer gleicher Hash
- Einweg: Vom Hash kann man die Eingabe nicht zurückberechnen
- Lawinen-Effekt: 1 Bit Änderung → ~50% der Hash-Bits ändern sich
- Kollisionsresistent: Es ist praktisch unmöglich, zwei verschiedene Eingaben mit gleichem Hash zu finden
- Feste Länge: Egal ob 1 Byte oder 1 GB Eingabe — der Hash ist immer 256 Bit (32 Bytes)
- Gib
Bitcoinein (mit großem B) und merke dir die ersten 4 Zeichen des Hashes - Ändere zu
bitcoin(kleines b) - Vergleiche: Wie viele der 256 Bits haben sich geändert?
- Probiere
Bitcoi(ein Zeichen weniger) — völlig anderer Hash, obwohl fast identische Eingabe
~50% aller Bits kippen bei jeder noch so kleinen Änderung. Deshalb ist SHA-256 eine Einweg-Funktion: Vom Hash kannst du nicht zurückschließen, was sich geändert hat oder was die Eingabe war. Du kannst nur raten und prüfen. Genau das tun Bitcoin-Miner — milliardenfach pro Sekunde.
Warum SHA-256 für Bitcoin unverzichtbar ist
SHA-256 ist nicht irgendein Baustein — es ist das Fundament:
Mining: Miner hashen den Block Header mit variierender Nonce, bis der Hash zufällig unter dem Target liegt. Ohne Lawinen-Effekt könnte man die Nonce berechnen statt raten.
Block-Verkettung: Jeder Block enthält den Hash des vorherigen. Ändert man ein Byte in einem alten Block, bricht die gesamte Kette — der Lawinen-Effekt propagiert durch jeden folgenden Block.
Merkle Trees: Tausende Transaktionen werden paarweise gehasht bis ein einziger Root-Hash übrig bleibt — 32 Bytes repräsentieren den gesamten Block-Inhalt.
Adressen: Public Key → SHA-256 → RIPEMD-160 → Adresse. Selbst wer die Adresse kennt, kann den Schlüssel nicht zurückrechnen.
Entropie: Warum guter Zufall lebenswichtig ist
SHA-256 erzeugt gleichmäßig verteilte Ausgaben — aber nur wenn die Eingabe genügend Zufall (Entropie) enthält. Bei der Erzeugung von privaten Schlüsseln ist das überlebenswichtig.
// Eigene Entropie erzeugen
Dein Input → SHA-256
Einsen: — / 256
Nullen: — / 256
Ratio: —
// Schwache vs. Starke Entropie
Schwach (Zähler)
Erkennbares Muster — vorhersagbar!
Stark (CSPRNG)
Visuelles Rauschen — nicht vorhersagbar
// Wie groß ist 2^256?
// Warum ist Entropie lebenswichtig?
- Ein Bitcoin Private Key ist eine 256 Bit Zufallszahl
- Schlechter Zufall = vorhersagbarer Key = Bitcoin gestohlen
- Guter Zufall (CSPRNG) = selbst mit allen Computern der Welt nicht erratbar
- Deshalb: Niemals selbst Zufallszahlen erfinden — immer die Wallet-Software den Zufall generieren lassen
Vergleiche die beiden Bitmaps im Tool oben: Schwach (links) und Stark (rechts). Die schwache Entropie hat erkennbare Muster — das bedeutet, ein Angreifer kann den Suchraum drastisch einschränken. Klicke auf “Neue starke Entropie generieren” und beobachte: Echtes Rauschen sieht jedes Mal anders aus, hat aber nie ein Muster.
256 Bit Entropie = 2²⁵⁶ mögliche Schlüssel. Das sind mehr als die Atome im Universum. Aber schlechter Zufall kann das auf 2³⁰ reduzieren — und ein Laptop knackt 2³⁰ in Sekunden. Deshalb: Niemals selbst Wörter für eine Seed Phrase ausdenken. Immer die Wallet den Zufall generieren lassen.
SHA-256 in Zahlen
Eingabe: beliebig lang (0 bis 2⁶⁴ − 1 Bits)
Ausgabe: immer 256 Bits (32 Bytes, 64 Hex-Zeichen)
Rundenzahl: 64 Kompressions-Runden
Entworfen: NSA (2001), standardisiert als FIPS 180-4
Status: Kein praktischer Angriff bekannt (seit 20+ Jahren)
Weiterführend
- Mining und Proof of Work — SHA-256 im Einsatz: Nonces durchprobieren, bis der Hash passt
- Blöcke und die Timechain — Wie Blöcke über Hashes verkettet werden
- Adressen und Schlüssel — Wie aus Entropie eine Bitcoin-Adresse wird
Diskussion via Nostr
Kommentare werden über das dezentrale Nostr-Netzwerk geladen. Du brauchst eine Nostr-Identität und eine Browser-Extension wie nos2x oder Alby.