Eine Hashfunktion nimmt beliebige Eingabe – ein Wort, eine Datei oder einen ganzen Block – und erzeugt eine kurze Ausgabe fester Länge, genannt Hash oder Digest. Bitcoin nutzt hauptsächlich SHA-256, das immer 256 Bit ausgibt, meist als 64 hexadezimale Zeichen geschrieben.
Vier nützliche Eigenschaften
Deterministisch: dieselbe Eingabe ergibt immer denselben Hash.
Lawineneffekt: ändere ein einziges Zeichen, und die Ausgabe sieht völlig anders aus. „bitcoin“ und „Bitcoin“ ergeben unverwandte Hashes.
Einweg: aus einem Hash gibt es keinen praktischen Weg zur Eingabe zurück – außer immer wieder zu raten.
Kollisionsresistent: zwei verschiedene Eingaben mit demselben Hash zu finden ist, soweit bekannt, praktisch unmöglich.
Wo Bitcoin Hashes nutzt
Blöcke verknüpfen. Jeder Block speichert den Hash des vorherigen. Ändere etwas in der Historie, und die Hashes passen nicht mehr. Das macht die Blockchain manipulationsersichtlich.
Mining. Beim Proof of Work hashen Miner einen Block-Header wieder und wieder, ändern jedes Mal eine kleine Zahl, bis das Ergebnis unter ein von der Schwierigkeit gesetztes Ziel fällt. Weil Hashes unvorhersagbar sind, ist die einzige Strategie Brute Force – deshalb kostet Mining echte Energie.
Transaktions-IDs und Adressen. Jede Transaktion wird durch ihren Hash identifiziert. Viele Adresstypen entstehen durch Hashen eines öffentlichen Schlüssels, was eine Schutzschicht hinzufügt.
Ein Fingerabdruck, keine Verschlüsselung
Hashen ist keine Verschlüsselung. Nichts wird versteckt, das man später „entschlüsseln“ könnte. Ein Hash ist ein Fingerabdruck: winzig, einzigartig und unmöglich in das Original zurückzuverwandeln. Dieses einfache Werkzeug trägt einen überraschend großen Teil von Bitcoins Sicherheit.