BitcoinVonInnen

Kryptographie

Hashes, Signaturen und Merkle-Bäume als kryptografische Grundlage von Bitcoin.

Block 951.468Live

Bitcoin funktioniert ohne zentrale Instanz, weil kryptografische Verfahren Dinge überprüfbar machen.

Nodes müssen niemandem glauben, sondern können selbst nachrechnen, ob Daten verändert wurden, ob die Signatur für die Transaktionsdaten und den angegebenen öffentlichen Schlüssel gültig ist, ob eine Transaktionwirklich zu einem Block gehört und ob dieser Block wirklich auf den vorherigen verweist.

Kryptografie sorgt dabei dafür, dass Manipulation bei der Prüfung erkennbar wird.

Schon kleine Änderungen erzeugen komplett andere Hashes, ungültige Signaturen werden bei der Validierung erkannt und falsche Daten passen nicht mehr zur restlichen Chain.

Don't trust, verify.

Nicht blind vertrauen, sondern selbst prüfen: Kryptografie macht das technisch möglich. Dadurch entsteht ein System, in dem überprüfbare Regeln Vertrauen in zentrale Instanzen ersetzen. Mehr dazu unter Verifizieren statt Vertrauen.

Kryptografie ist dabei ein zentraler Baustein von Bitcoin, aber nicht das gesamte System. Sie liefert Werkzeuge wie Hashes, Signaturen und Schlüssel. Das Bitcoin-Protokoll und die unabhängige Validierung durch Nodes bestimmen, welche Transaktionen und Blöcke gültig sind.

Drei kryptografische Bausteine

Hashfunktionen

SHA-256 · HASH160

Deterministische Hash-Abbildung

Datenintegrität

Block-Hash · Tx-ID · Adressen

Hashfunktionen bilden beliebige Daten auf feste kryptografische Hashes ab. Kleine Eingabeänderungen erzeugen völlig andere Ausgaben.

Digitale Signaturen

ECDSA · Schnorr

Autorisierung und Verifizierung

Authentizität

Privater Schlüssel → Signieren · Öffentlicher Schlüssel → Verifizieren

Nur der private Schlüssel kann Ausgaben autorisieren. Jeder kann die Signatur unabhängig verifizieren.

Kryptografische Komposition

Merkle-Bäume · MAST · Taproot

Hierarchische Commitments und effiziente Proofs

Verifizierbare Strukturen

Merkle Root · Taproot · MAST

Bitcoin nutzt Hash-Strukturen, um viele Daten in einem kompakten Wert zusammenzufassen und einzelne Teile daraus effizient überprüfbar zu machen.

Hashfunktionen

Hashfunktionen bilden beliebige Daten auf feste kryptografische Hashes ab.

Schon kleinste Änderungen an der Eingabe erzeugen völlig andere Ergebnisse. Dadurch können Nodes prüfen, ob Daten unverändert geblieben sind.

Bitcoin verwendet Hashfunktionen unter anderem für:

Die wichtigste Hashfunktion in Bitcoin ist SHA-256.

Digitale Signaturen

Digitale Signaturen ermöglichen Autorisierung und unabhängige Verifikation.

Ein privater Schlüssel erzeugt eine Signatur, ein öffentlicher Schlüssel prüft sie.

Dadurch kann das Netzwerk überprüfen, ob eine Transaktion wirklich vom Besitzer eines Schlüssels autorisiert wurde, ohne den privaten Schlüssel offenzulegen.

Bitcoin verwendet dafür:

  • ECDSA
  • Schnorr-Signaturen

Kryptografische Komposition

Bitcoin kombiniert kryptografische Primitive zu größeren verifizierbaren Strukturen.

Dazu gehören unter anderem:

Diese Strukturen ermöglichen effiziente Prüfungen großer Datenmengen, kompakte Nachweise und komplexe Ausgabebedingungen, ohne alle Daten vollständig offenlegen zu müssen.

Vertiefung

Die nächsten Seiten gehen Schritt für Schritt in die kryptografischen Verfahren von Bitcoin:

Hashfunktionen

Adress-Encodings

  • Base58 & Base58Check
  • Bech32 & Bech32m

Digitale Signaturen

Kryptografische Komposition

  • Merkle-Bäume
  • MAST
  • Taproot

Erweiterte Themen

  • MuSig
  • Silent Payments
  • Scriptless Scripts