Was ist ein Block in der Blockchain? 

Alex Roos

von Alex Roos

Am · Lesezeit: 6 Minuten

Alex Roos

Alex Roos absolvierte einen B.Sc. in "Management, Philosophy & Economics" an der Frankfurt School of Finance & Management und schrieb seine Bachelorarbeit über die "Anwendungsfelder und Adaption der Blockchain Technologie". Ihn begeistern vor allem "pure" Kryptowährungen wie Bitcoin und Monero.

Teilen

Quelle: Shutterstock

BTC13,812.83 $ 2.18%

Bitcoin basiert auf der Blockchain, das weiß jeder. Nur was ist diese Blockchain? Genauer: Wie kann man sich die einzelnen Bestandteile der Blockchain, die Blöcke, vorstellen? 

Die Blockchain ist eine Verkettung von Datenblöcken. Jeden Block kann man sich wie eine Seite in einem Hauptbuch vorstellen. Die einzelnen Blöcke setzen sich aus mehreren Komponenten zusammen. Grob lassen sich diese in den Kopf des Blocks (Block Header) und seinen Körper (Block Body) unterscheiden.

Block Header


Der Kopf des Blocks teilt sich in sechs Bestandteile auf:

  1. die Versionsnummer der Software
  2. der Hash des vorigen Blocks
  3. der Root Hash des Merkle Trees
  4. die Zeit in Sekunden seit 1970-01-01 T00:00 UTC
  5. das Ziel der aktuellen Schwierigkeit
  6. die Nonce

Die Versionsnummer der Software

Die Versionsnummer der Software spielt in den meisten Fällen keine große Rolle. Allerdings kann ein Miner mit einer bestimmten Versionsnummer signalisieren, welche Protokollentscheidungen er unterstützt.

Der Hash des vorherigen Blocks

Der Hash des vorherigen Block ist sozusagen die Kette der Blockchain. Weil der Hash des vorigen Blocks im Hash des neuen Blocks enthalten ist, bauen die Blöcke der Blockchain alle aufeinander auf. Ohne diese Komponente bestünde keine Verbindung und Chronologie zwischen den einzelnen Blöcken.

Der Root Hash des Merkle Trees

Alle Transaktionen, die in einem Block enthalten sind, können in einem Hash gesammelt dargestellt werden. Das ist der Root Hash des Merkle Trees.

Die Zeit in Sekunden seit 1970-01-01 T00:00 UTC

Ein Zeitstempel im Block selbst. Die Zeit wird in Sekunden seit dem 1.1.1970 angegeben.

Das Ziel der aktuellen Schwierigkeit

Das Ziel gibt an, wie klein der neue Hash sein muss, um Gültigkeit zu beanspruchen. Mit anderen Worten: Jeder Hash hat eine Größe in Bits. Je niedriger das Ziel in Bits ist, desto schwieriger ist es, einen passenden Hash zu finden. Ein Hash mit vielen Nullen am Anfang ist kleiner als ein Hash ohne Nullen. Mehr über die Schwierigkeit des Proof of Work erfährst du hier.

Die Nonce

Die Nonce ist die Variable, die beim Proof of Work hochgezählt wird. Auf diese Art und Weise errät der Miner einen gültigen Hash, also einen Hash, der kleiner als das Ziel ist.

Diese sechs Komponenten bilden also den Block Header. Der Block Header spielt eine fundamentale Rolle in Bitcoin, denn er verbindet alle Blöcke miteinander. Man kann ihn sich vorstellen wie das Cockpit eines LKWs. Hier liegen die wichtigen Papiere, mit denen der LKW durch die Kontrollen des Netzwerks kommt.

Block Body

Der Block Body ist vorstellbar wie der Laderaum eines LKW. Er enthält alle Transaktionen, die mit dem Block bestätigt werden.

Wenn ein Miner einen Block konstruiert, überprüft er die Transaktionen auf ihre Gültigkeit. Das heißt, er überprüft, ob der Versender auch tatsächlich über genug Geld verfügt, das er ausgeben kann. Diese Information kann er einfach aus der Blockchain lesen. Der Miner schaut also in den vergangenen Blöcken nach, ob der Versender einmal zehn Bitcoin bekommen hat, wenn er zehn Bitcoin verschicken möchte.

Die Transaktionen in einem Block stehen nicht einfach in einer Liste, sondern in einem sogenannten Merkle Tree.

Was ist ein Merkle Tree?

Der Merkle Tree hat seinen Namen von dem Mathematiker Ralph Merkle. Die Entdeckung war, dass viele Informationen in einem einzigen Hash dargestellt werden können. Dafür werden zuerst die Daten selbst gehasht. Anschließend werden die Hashes erneut gehasht und zusammengeführt. Schlussendlich ist der Merkle Tree in einem einzigen Hash zusammengeführt. Dieser letzte Hash trägt auch den Namen Root Hash, also die Wurzel des Baumes. Er repräsentiert alle Informationen seiner „Blätter“ (einzelne Transaktionen) und „Zweige“ (Hashes der Blätter) in einer relativ kurzen Zeichenfolge.

Den Root Hash zu erzeugen funktioniert einfach und schnell, sofern alle Zweige und Blätter bekannt sind. Wir erinnern uns an die Funktion einer Hash-Funktion: In die eine Richtung funktioniert sie eindeutig und schnell, in die andere Richtung lässt sie sich unmöglich aufschlüsseln. Wenn der Root Hash bekannt ist, die Transaktionen allerdings unbekannt sind, ist es unmöglich, die Transaktionen zu erraten.

Ein Root Hash allein reicht also nicht aus, auch der restliche Block muss gespeichert werden. So kann der Miner den Root Hash jederzeit validieren, indem er die im Block enthaltenen Informationen erneut hasht. Solang die Hash-Funktion dieselbe ist, bekommen die Miner für einen bestimmten Input an Daten immer denselben Hash. Das ist sehr praktisch, denn sie können nur mit dem Hash überprüfen, ob sie auf dem gleichen Stand sind.

Mining: Die Suche nach einem besonderen Hash

In diesem Kontext fällt es leichter, das Mining des Proof of Work zu verstehen. Beim Mining wird der Block Header des Blocks inkremental verändert, um einen besonderen Hash zu erhalten. Der Header besteht aus fünf Konstanten und einer Variable. Die Konstanten sind die Versionsnummer der Software, der Hash des vorigen Blocks, der Root Hash des Merkle Trees, der Zeitstempel und die Zielgröße des gesuchten Hashs in Byte.

Die Variable ist die Nonce. Die Nonce ist eine Zahl, die um eins erhöht wird. Dann hasht der Miner die Daten und überprüft, ob die Daten in einen Hash resultieren, der unter dem gesuchten Zielwert liegt. Wenn der Hashwert größer ist als das Ziel, wiederholt der Miner den Prozess; erhöht die Nonce also um eins, hasht und überprüft erneut. Dies wiederholt er solange, bis er einen Hash gefunden hat, der unter dem Ziel liegt, oder er von einem anderen Miner aus dem Netzwerk einen Block erhält, dessen Hash unter dem Ziel liegt. Dann nimmt er sich diesen neuen Block und verwendet ihn als Grundlage für den nächsten Block (indem er den neuen Hash als „Hash des vorigen Blocks“ benutzt).

Mining ist also ein hyper-repetitiver Prozess, dessen Ziel es ist, einen besonderen Hash zu finden. Ist der Hash gefunden, geht das Spiel von vorne los. Die Wahrscheinlichkeit, einen besonderen Hash zu finden, hängt von der Schwierigkeit ab. Im Schnitt wird bei Bitcoin alle zehn Minuten ein neuer Block gefunden. Die Schwierigkeit passt sich immer wieder an, sodass dieser Durchschnitt bestehen bleibt.

Das Besondere an diesem Vorgang ist, dass der besondere Hash nur durch Erraten gefunden werden kann. Dieses Raten kostet Rechenleistung und damit Energie. Ein Blick auf den besonderen Hash reicht, um zu erkennen, dass er besonders ist, denn er fängt mit Nullen an.

Hier ein Beispiel für solch einen Hash aus der Bitcoin Blockchain:

000000000000000000094bfa4edb1245c347e42452e4418e9fe5a1d24e335b16

Hashes: Die Matrjoschka der Blockchain

Einen Block kann man sich vereinfacht wie eine Matrjoschka vorstellen. Die kleinste Puppe ist die ungehashte Transaktion. Die nächste Hülle ist die gehashte Form dieser Transaktion. Danach werden zwei gehashte Transaktionen zusammen gehasht. So werden die Hashes immer weiter zusammengeführt. Am Ende bleibt nur noch ein Hash, der Root Hash, oder die größte Matrjoschka übrig.

BTC-ECHO

Anzeige

Bitcoin handeln auf Plus500

Bitcoin, Ethereum, Ripple, IOTA und die bekanntesten Kryptowährungen (CFD) auf Plus500 sicher handeln.

Warum Plus500? Führende CFD Handelsplattform; 40.000 EUR Demo-Konto; Mobile Trading-App; starker Hebel; große Auswahl an verschiedenen Finanzprodukten (Kryptowährungen, Gold Aktien, Rohstoffe, ETFs, Devisen, Indizies).

Jetzt Konto eröffnen

76,4% der Kleinanlegerkonten verlieren Geld beim CFD-Handel mit diesem Anbieter [Anzeige].


Teilen

Die aktuellsten News kostenlos per E-Mail

Ich stimme zu, dass meine E-Mail-Adresse für den Versand des Newsletters gespeichert und verarbeitet wird. Weitere Hinweise

Kryptokompass #40

Der Finanzmarkt im Fegefeuer

Polkadot (DOT)

Der Brückenbauer für das Internet von Morgen

Peter Großkopf

Der Blockchain CTO oder „der Banker mit Mütze“

Bitcoin.de

Der Bitcoin-Marktplatz Made in Germany

BTC-ACADEMY

Kryptowährungen einfach handeln

Plus500 der führende CFD Anbieter

  • Direkt mobil handeln
  • Einzahlung per Kreditkarte oder PayPal
  • Bitcoin,Ether,IOTA,Ripple, uvm.
  • inkl. Demokonto

76,4% der Kleinanlegerkonten verlieren Geld beim CFD Handel mit diesem Anbieter