22 / 736BLK

Block

Der gemeinsame Datensatz bestätigter Bitcoin-Transaktionen

Ein Block fasst ausgewählte Transaktionen zusammen, verknüpft sie mit der bisherigen Geschichte und wird von jedem vollständigen Knoten selbst geprüft.

Ein Block ist die nächste Gruppe von Transaktionen in der Bitcoin-Geschichte. Gelangt Ihre Zahlung in einen gültigen Block der von Ihrem Knoten verfolgten Kette, erhält sie ihre erste Bestätigung. Darüber entscheidet kein zentraler Verwalter: Ein Miner baut den Block, andere Knoten prüfen seine Übereinstimmung mit den Bitcoin-Regeln.

Sie senden eine Bitcoin-Zahlung, und die Wallet zeigt zunächst an, dass die Bestätigung aussteht. Die Transaktion verbreitet sich zwischen Knoten und kann in deren Mempools gelangen, die lokalen Listen unbestätigter Transaktionen. Ein Miner wählt einige für einen Blockentwurf aus. Findet er den erforderlichen Proof of Work (ein Rechenergebnis aus dem Mining, das die Netzwerkregeln erfüllt) und nehmen Knoten den Block in ihre aktive Kette auf, erhält eine darin enthaltene Zahlung ihre erste Bestätigung. Der nächste darauf aufbauende Block erhöht die Zahl auf zwei. Angestrebt sind durchschnittlich etwa zehn Minuten zwischen Blöcken, nicht die Abwicklung jeder Zahlung innerhalb von zehn Minuten. [1] [3]

Jeder Block hat einen kurzen Header und seine Transaktionen. Der Header enthält unter anderem den kryptografischen Fingerabdruck des Vorgängerblocks, also einen Verweis, der sich bei einer Änderung dessen Daten verändert. So entsteht eine zusammenhängende Geschichte statt eines losen Stapels von Zahlungen. Ein weiterer Fingerabdruck im Header fasst die Transaktionen des Blocks zusammen: die Merkle root. Der Miner probiert Header-Varianten, bis deren Hash, ein zahlenförmiger Fingerabdruck, den vorgegebenen Schwierigkeitsgrenzwert erfüllt. Das beweist noch nicht die Korrektheit der Zahlungen. Ein vollständiger Knoten prüft auch Signaturen, Ausgabeberechtigungen und weitere Regeln. Gültiger Proof of Work macht keine ungültige Transaktion gültig. [1] [3]

Die erste Transaktion heißt Coinbase Transaction. Darin darf der Miner höchstens die erlaubte neue Ausgabe von Bitcoin und die Gebühren der enthaltenen Transaktionen beanspruchen. Anschließend prüft der Knoten die gewöhnlichen Transaktionen der Reihe nach: Bisher unverbrauchte Beträge werden ausgegeben, neue entstehen. Diese einzelnen Beträge heißen UTXOs. Eine Zahlung darf innerhalb desselben Blocks den Output einer früheren Zahlung ausgeben, sofern alle weiteren Bedingungen erfüllt sind. Derselbe Output darf aber nicht zweimal ausgegeben werden. Die neue Coinbase-Vergütung lässt sich nicht schon in diesem Block ausgeben; dafür gilt eine besondere Wartefrist von 100 Blöcken. [1]

Ein Block hat keine feste Zahl von Zahlungsplätzen. Einfache Transaktionen benötigen weniger Daten als komplexe; dieselbe Kapazität kann daher unterschiedlich viele Transaktionen aufnehmen. Seit SegWit (einer Änderung der Bitcoin-Regeln zur Speicherung und Zählung von Transaktionsdaten) wird sie über Gewicht mit einer Grenze von 4.000.000 Einheiten abgerechnet. Das ist eine technische Datenzählung, keine physische Masse. Daneben gelten weitere Regeln. Ein Miner muss die Kapazität nicht ausschöpfen. Ein sogenannter leerer Block kann gewöhnliche Zahlungen weglassen, enthält aber weiterhin die Coinbase. Leer bedeutet deshalb weder transaktionsfrei noch automatisch ungültig. [1] [2]

Manchmal finden zwei Miner fast gleichzeitig Blöcke auf demselben Vorgänger. Beide können gültig sein, bilden aber konkurrierende Zweige. Ein Knoten wählt zwischen gültigen Zweigen nach insgesamt nachgewiesener Arbeit, nicht durch eine einfache Abstimmung oder allein nach Blockzahl. Der Wechsel heißt Reorganisation. Eine Zahlung im verlassenen Block kann Bestätigungen verlieren. Ist sie weiterhin gültig und fehlt im neuen Zweig, kann sie erneut auf Aufnahme warten. Weitere Bestätigungen erhöhen normalerweise die Sicherheit, sind aber kein mathematisches Unwiderruflichkeitsversprechen. Zur technischen Einordnung: Der Header hat 80 Bytes. Die Merkle root ist ein Fingerabdruck aus den Transaktionskennungen, den txids, in ihrer Reihenfolge im Block. SegWit-Witness-Daten, etwa Signaturen zur Prüfung einer Ausgabe, haben einen weiteren kryptografischen Fingerabdruck, der über die Coinbase festgehalten wird. Anhand dieser Verknüpfungen kann ein Knoten prüfen, ob die gelieferten Daten zum Block gehören. [1] [2]

Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Block Header, Transaktion, Timechain / Blockchain, Mining. Auf diesen Eintrag verweisen außerdem Block Header, Merkle Tree, Bestätigung, Coinbase-Transaktion.

DOC · 001Bitcoin Core v29.0: block validationPrimärquelle DOC · 002BIP 141: block weight and witnessPrimärquelle DOC · 003Bitcoin Developer Guide: Block ChainPrimärquelle
Überarbeitet: Quellenbasiert · Keine Anlageberatung