8 Min. Lesezeit

Der Bitcoin Block Header erklärt

Jeder Bitcoin-Block beginnt mit einem 80-Byte-Header – einer kompakten Datenstruktur, die das gesamte Mining, die Verkettung der Blöcke und die Sicherheit des Netzwerks steuert. Der Block Header ist ein zentrales Element des Bitcoin-Protokolls.

«Each timestamp includes the previous timestamp in its hash, forming a chain, with each additional timestamp reinforcing the ones before it.»

Satoshi Nakamoto, Bitcoin Whitepaper, 2008

Überblick

Ein Bitcoin-Block besteht aus zwei Teilen: dem Block Header (80 Bytes) und dem Block Body (die Liste aller Transaktionen). Der Header ist die kompakte Zusammenfassung des gesamten Blocks. Miner hashen ausschliesslich den Header – nie die Transaktionsdaten direkt. Die Transaktionen fliessen über den Merkle Root indirekt ein.

Der Header enthält exakt sechs Felder, die zusammen 80 Bytes ergeben. Diese kompakte Struktur ermöglicht es Light Clients (SPV-Nodes), die Blockchain zu verifizieren, ohne alle Transaktionsdaten herunterzuladen.

Aufbau des Block Headers

Die sechs Felder des Block Headers im Detail:

1. Version (4 Bytes)

Die Versionsnummer signalisiert, welche Konsensregeln der Block unterstützt. Durch den BIP-9-Signaling-Mechanismus nutzen Miner das Versionsfeld, um ihre Bereitschaft für Soft Forks anzuzeigen. Die aktuelle Basisversion ist 0x20000000 — dabei ist Bit 29 gesetzt, was das BIP-9-Signaling für Soft Forks aktiviert. Die restlichen Bits können von Minern genutzt werden, um Bereitschaft für neue Upgrades zu signalisieren.

2. Previous Block Hash (32 Bytes)

Der SHA-256d-Hash (doppeltes SHA-256) des vorherigen Block Headers. Dieses Feld verkettet die Blöcke zu einer Kette und ist das fundamentale Element der Blockchain-Sicherheit. Der Genesis Block (Block 0) enthält als einziger Block einen Nullwert in diesem Feld.

3. Merkle Root (32 Bytes)

Der Merkle Root ist die Wurzel eines binären Hash-Baums (Merkle Tree), der alle Transaktionen im Block zusammenfasst. Jedes Transaktionspaar wird gehasht, die Ergebnisse wieder paarweise gehasht – bis ein einziger 32-Byte-Hash übrig bleibt. So repräsentieren 32 Bytes den gesamten Transaktionsinhalt eines Blocks, egal ob er 1 oder 4'000 Transaktionen enthält.

4. Timestamp (4 Bytes)

Ein Unix-Zeitstempel (Sekunden seit dem 1. Januar 1970). Der Timestamp muss grösser sein als der Median der letzten elf Blöcke und darf nicht mehr als zwei Stunden in der Zukunft liegen. Diese Regeln verhindern Manipulation der Zeitberechnung für das Difficulty Adjustment.

5. Difficulty Target / Bits (4 Bytes)

Das Bits-Feld kodiert den aktuellen Difficulty Target in einem kompakten Format. Es definiert den maximalen Hashwert, den ein gültiger Block haben darf. Je kleiner der Target, desto schwieriger das Mining. Alle 2'016 Blöcke (etwa zwei Wochen) wird der Target angepasst, sodass die durchschnittliche Blockzeit bei 10 Minuten bleibt.

6. Nonce (4 Bytes)

Die Nonce (Number used once) ist der Wert, den Miner variieren, um verschiedene Hashes zu erzeugen. Der Nonce-Raum umfasst 232 (ca. 4,3 Milliarden) Möglichkeiten. Da moderne Miner den gesamten Nonce-Raum in Sekundenbruchteilen durchlaufen, werden zusätzlich der Timestamp, die Coinbase-Transaktion oder das extraNonce-Feld verändert.

80 Bytes – weniger als eine SMS – enthalten alle Informationen, die zur Validierung und Verkettung eines Blocks nötig sind. Diese Effizienz ist ein Grund, warum Bitcoin-Nodes auch auf bescheidener Hardware betrieben werden können.

Wie Mining den Header nutzt

Beim Mining wird der 80-Byte-Header durch Double SHA-256 gehasht: SHA-256(SHA-256(header)). Das Ergebnis ist ein 256-Bit-Hashwert. Ein Block ist gültig, wenn dieser Hashwert kleiner ist als der aktuelle Difficulty Target.

Der Ablauf: Der Miner setzt die Nonce auf 0, hasht den Header, prüft das Ergebnis. Ist der Hash zu gross, erhöht er die Nonce um 1 und versucht es erneut. Dieser Prozess wiederholt sich milliardenfach pro Sekunde. Die Hashrate des gesamten Netzwerks liegt Anfang 2026 bei über 800 Exahashes pro Sekunde (EH/s) – das sind 800 × 1018 Versuche pro Sekunde.

Wenn der gesamte 4-Byte-Nonce-Raum erschöpft ist, ohne einen gültigen Hash zu finden, ändert der Miner ein anderes Feld – typischerweise das extraNonce in der Coinbase-Transaktion. Das verändert den Merkle Root und eröffnet einen komplett neuen Nonce-Raum.

Block Hash

Ein verbreitetes Missverständnis: Der Block Hash ist nicht im Header enthalten. Er wird aus dem Header berechnet. Jeder Node berechnet den Hash selbst, indem er Double SHA-256 auf den Header anwendet. Der Block Hash dient als eindeutiger Identifikator des Blocks und wird vom nächsten Block als „Previous Block Hash" referenziert.

Der Block Hash wird üblicherweise in hexadezimaler Notation dargestellt und beginnt bei aktuellen Schwierigkeitsgraden mit vielen Nullen. Zum Beispiel: 00000000000000000002a7c4.... Die führenden Nullen sind ein visueller Ausdruck der Schwierigkeit – je mehr Nullen, desto mehr Rechenarbeit war nötig.

Verkettung der Blöcke

Die Blockchain-Sicherheit ergibt sich aus der Verkettung: Jeder Block enthält den Hash des vorherigen Blocks. Würde ein Angreifer eine Transaktion in Block N ändern, würde sich der Merkle Root ändern, damit der Header, damit der Block Hash. Block N+1 referenziert aber den alten Hash – die Kette bricht.

Um die Manipulation unbemerkt zu machen, müsste der Angreifer Block N und alle nachfolgenden Blöcke neu berechnen – schneller als das gesamte restliche Netzwerk neue Blöcke produziert. Bei der aktuellen Hashrate ist das praktisch unmöglich. Jeder zusätzliche Block über einer Transaktion macht sie exponentiell sicherer.

Immutabilität: Die Verkettung durch Hashes ist der Grund, warum Bitcoin als unveränderlich gilt. Es ist nicht physisch unmöglich, die Blockchain zu ändern – aber der dafür nötige Aufwand übersteigt jeden denkbaren wirtschaftlichen Nutzen bei Weitem.

Difficulty Target

Das Bits-Feld im Header kodiert den Difficulty Target in einem kompakten Format. Die ersten zwei Hex-Ziffern geben den Exponenten an, die restlichen sechs den Koeffizienten. Daraus wird der maximale Hashwert berechnet, den ein gültiger Block haben darf.

Alle 2'016 Blöcke vergleicht das Netzwerk die tatsächliche Zeit mit der Sollzeit (2'016 × 10 Minuten = 20'160 Minuten). War das Netzwerk zu schnell, wird der Target verkleinert (Mining wird schwieriger). War es zu langsam, wird der Target vergrössert. Die maximale Anpassung pro Zyklus ist Faktor 4 in beide Richtungen.

Dieses Difficulty Adjustment ist ein zentraler Mechanismus von Bitcoin: Es sorgt dafür, dass unabhängig von der Hashrate – ob sie sich verzehnfacht oder halbiert – im Durchschnitt alle 10 Minuten ein neuer Block entsteht.

Quellen

Nächste Schritte

BTC ...