Candidate Block
Ein Candidate Block ist ein Block, den ein Mining-Node (Miner) zu schürfen versucht, um die Blockbelohnung zu erhalten. Ein Candidate Block kann also als temporärer Block beschrieben werden, der entweder validiert oder vom Netzwerk verworfen wird. Die Schürfer konkurrieren miteinander, um den nächsten Block zu validieren und der Blockchain hinzuzufügen, aber zunächst müssen sie einen Candidate Block erstellen, um am Schürfwettbewerb teilzunehmen.
Candidate Blocks werden von Minern erstellt, indem sie mehrere unbestätigte Transaktionen aus dem Speicherpool sammeln und organisieren. Die Transaktionen werden dann gehasht, um eine Merkle-Baumstruktur zu bilden, die schließlich eine Merkle-Wurzel (oder Wurzelhash) ergibt. Die Merkle-Wurzel ist ein einziger Hash, der alle früheren Hashes dieses Baums und damit alle Transaktionen repräsentiert, die in diesem bestimmten Block enthalten waren.
Der Root-Hash wird zusammen mit dem Hash des vorherigen Blocks und einer Zufallszahl, der so genannten Nonce, in den Blockheader aufgenommen. Der Blockheader wird dann vom Miner gehasht, wobei eine Ausgabe erzeugt wird, die auf diesen Komponenten (Root-Hash, Hash des vorherigen Blocks und Nonce) sowie einigen anderen Elementen basiert. Die resultierende Ausgabe ist der Block-Hash und dient als eindeutiger Bezeichner des neu erzeugten Blocks (Candidate Block).
Um als gültig zu gelten, muss die Ausgabe (Blockhash) mit einer bestimmten Anzahl von Nullen beginnen (weniger als ein vom Protokoll festgelegter Zielwert). Das bedeutet, dass der Mining-Prozess auf mehreren Versuchen (Trial and Error) beruht, da die Mining-Nodes eine Vielzahl von Hash-Funktionen mit unterschiedlichen Nonce-Werten durchführen müssen, bis schließlich ein gültiger Block-Hash erzeugt wird. Der erzeugte Block-Hash ist der Beweis dafür, dass der Schürfer seine Arbeit gemacht hat (daher Proof of Work).
Nachdem ein Schürfer einen gültigen Blockhash gefunden hat, wird sein Candidate Block an die übrigen Nodes des Netzwerks gesendet, die die Echtheit des Hashs überprüfen. Wenn alles in Ordnung ist, wird der Candidate Block in der Blockchain gespeichert. Zu diesem Zeitpunkt aktualisiert jeder validierende Node seine Kopie der Blockchain-Daten, um den kürzlich geminten Block wiederzugeben, und der Miner erhält die Blockbelohnung.
« Zurück zum Glossar Index