Blockchain: Unterschied zwischen den Versionen

Aus Bitcoin Wiki
Wechseln zu: Navigation, Suche
(Seite erstellt)
(kein Unterschied)

Version vom 19. Dezember 2012, 01:08 Uhr

Blocks in der main chain (schwarz) sind teil der längsten Serie von Blocks ausgehend vom Genesis Block (grün) bis zum aktuelle Block. Orphan blocks (lila) sind Blöcke, die nicht zu der längstens Kette gehören.

Eine Blockchain ist eine Datenbank mit Transaktionen, die über alle Nodes verteilt ist, die am auf dem Bitcoin-Protokoll basierenden System teilnehmen. Eine komplette Kopie der aktuellen Blockain enthält jede Transaktion, die jemals bis zum aktuellen Zeitpunkt an ausgeführt wurde.

Jeder Block enthält einen Hash des vorhergehenden Blocks. Das hat eine Kette von Blöcken vom Genesis Block bis zum aktuellen Block zur Folge. Es ist sichergestellt, das jeder Block zeitlich nach dem vorhergehenden Block kommt, weil der Hash des vorhergehenden Blocks sonst nicht bekannt wäre. Jeder Block ist außerdem aufgrund der verwendeten Algorithmen nicht nachträglich änderbar sobald er sich einige Blöcke lang in der Blockchain befindet, da jeder Folgeblock ebenfalls neu berechnet werden müsste. Da sich die in Bitcoin verwendeten Algorithmen der Gesamtrechenleistung aller Nodes anpassen ist dies absolut unwahrscheinlich bis unmöglich. Dadurch wird das Double Spending, das doppelte Ausgeben von Bitcoins sehr schwierig. Die Blockchain ist die Hauptinnovation an Bitcoin.

Ehrliche Erzeuger bauen nur auf einem Block auf wenn er der letzte Block in der längsten, gültigen Kette von Blöcken ist.

Für jeden Block in der Blockchain gibt es nur einen Pfad zum Genesis Block. Ausgehend vom Genesis Block kann es allerdings Abzweigungen geben. Abzweigungen mit nur einem Block werden von Zeit zu Zeit erzeugt, wenn zwei Blöcke nur einige Sekunden kurz hintereinander erzeugt werden. Wenn das passiert bilden Nodes ihre Blöcke auf dem Block, den sie zuerst bekommen haben. Alle Folgeblöcke werden wieder an den Block gehangen, der in der längsten Kette hängt.

Blöcke in kürzeren (oder ungültigen) Ketten nennen sich "Orphan Blocks". Diese werden zwar in der Blockchain gespeichert, aber für nichts weiter benutzt. Wenn ein Block ein Orphan Block wird werden alle seine gültigen Transaktionen wieder in den Pool unabgearbeiteter Transaktionen hinzugefügt und werden in einem der späteren Blöcke eingebettet. Die Belohnung für einen erzeugten Orphan Block verfällt. Das ist auch der Grund weswegen das Netzwerk eine Wartezeit von 100 Blöcken verlangt bevor die Belohnung für einen erzeugten Block ausgezahlt wird.

Weiterführende Links