Wie funktioniert eine Blockchain?

Blockchain basiert auf einer simplen P2P-Datenbank. Innerhalb dieser können Teilnehmer direkt miteinander agieren. Es gibt keinen zentralen Part, der sich um Regulierung, Kontrolle, Steuerung oder die Kontoverwaltung kümmert.

Zentral vs. Dezentral

Diese Eigenschaft erscheint zunächst trivial, ist jedoch enorm wichtig. Viele heutige Anwendungen scheinen ebenfalls eine direkte Interaktion zu ermöglichen, tun dies aber nicht wirklich. Ob bei einem Messengerdienst wie Whatsapp, einem Bezahldienst wie PayPal oder einem Onlinemarktplatz wie eBay – stets ist hier eine zentrale Partei zwischengeschaltet, die Informationen speichert, Gebühren erhebt oder bestimmt, welche Teilnehmer im Zuge der Kontoeröffnung am System teilnehmen dürfen.

Private Key und Public Adress

Das P2P-System (P2P = peer to peer) führt unter anderem zu einer dezentralisierten Kontoverwaltung. Im zentralen System wird das Konto über den Intermediär eröffnet, wie zum Beispiel bei einem Bankkonto oder der Erstellung einer Mailadresse. Der Intermediär kann durch Abgleich doppelte Adressen vermeiden und dabei Informationen und Daten der Person sammeln. Im dezentralen System der Blockchain werden Konten nach Zufallsprinzip mittels Kryptografie generiert, ohne dass diese untereinander abgeglichen werden. Jeder Teilnehmer erhält bei Erstellung eines Kontos, einen zufällig generierten "Private Key", eine Art Passwort. Es gibt 2256 Möglichkeiten für die Erstellung, was in etwa so viele Variationen sind wie es Atome im Universum gibt. Ein doppelt generierter Private Key gilt daher als quasi unmöglich. Er wird meist in hexadezimaler Form, bestehend aus einer Kombination von 64 Zahlen und Buchstaben, angezeigt und sieht zum Beispiel so aus:

5d37862bf515e6c76c295a2d8fdb504644fz39dd327c8f178i1498320b67fd6a

Private Key

Daraus wird anschließend eine sogenannte "Public Adress" abgeleitet. Sie verhält sich zum Private Key wie die Mail-Adresse zum Passwort und repräsentiert das eigene Konto im System. Diese Ableitung funktioniert lediglich unidirektional. Von der Public Adress ausgehend kann man nicht den Private Key ableiten. Sollen Informationen, zum Beispiel über den Besitz von Bitcoin, übertragen werden, adressiert man diese an die Public Adress einer Person. Möchte beispielsweise Sarah zwei Bitcoin an Karl übertragen, loggt sie sich mit ihrem Private Key in ihr Konto ein und definiert die Public Adress von Karl als neuen Besitzer. Lediglich Karl kann mittels seines Private Key nun darauf zugreifen und weitere Änderungen vornehmen.

Unabhängig davon kann jeder die Transaktionen aller Adressen untereinander einsehen. Diese Transparenz basiert auf dem Prinzip des Distributed Ledgers (dt. verteiltes Kassenbuch) und soll im folgenden Abschnitt dargelegt werden.

Halten wir fest, dass wir uns in einem P2P-System befinden, in dem Teilnehmer mittels kryptografisch verschlüsselter Konten interagieren.

Distributed Ledger

Eine Besonderheit des Systems stellt die Art dar, wie Informationen verarbeitet und dokumentiert werden. Dies geschieht mittels eines sogenannten Distributed Ledger, was man als verteiltes Kontenbuch übersetzen kann. Es ersetzt quasi den zentralen Server des Systems. Zwei Eigenschaften von diesem sind entscheidend. Zum einen bekommen alle neuen Informationen einen Eintrag in das Kontenbuch, selbst wenn eine vorangegangene Information lediglich geändert oder nichtig gemacht werden soll. (Einmal verfasste Einträge in das Kontenbuch können nicht geändert werden – dazu später mehr.) Stattdessen wird im neuen Eintrag die Anpassung der vorherigen Information eingefügt. Hat zum Beispiel Sarah zwei Bitcoin an Karl übertragen, bekommt diese Information einen Eintrag. Gibt Karl die zwei Bitcoin anschließend an Sarah zurück, womit wieder alles beim Alten wäre, wird der alte Eintrag nicht gelöscht. Stattdessen wird ein neuer Eintrag mit der Information hinzugefügt, dass die zwei Bitcoin wieder von Karl zu Sarah übertragen wurden.

Distributed Ledger

Zum anderen wird das komplette Kontenbuch mit jedem neuen Eintrag aktualisiert, kopiert und separat jedem, der aktiv am Betrieb der Blockchain beteiligt ist, zur Verfügung gestellt. Hierdurch wird ein Aspekt der Dezentralität sichergestellt. Möchte in unserem oben genannten Beispiel Sarah nun betrügen und sagt, dass sie die Rückzahlung der zwei Bitcoin von Karl niemals erhalten hat, kann sie nun dieser Lüge überführt werden, da es ein dezentrales und öffentlich einsehbares Kontenbuch gibt, in dem alle Informationen, bzw. Transaktionen dokumentiert sind.

Halten wir fest, dass wir uns in einem manipulationssicheren und transparenten P2P-System befinden, in dem Informationen dezentral dokumentiert sind und Teilnehmer mittels kryptografisch verschlüsselter Konten interagieren.

Warum der Name Blockchain?

Widmen wir uns nun den Einträgen in das Kontenbuch, welche der Blockchain, also Blockkette, seinen Namen geben. Jeder Eintrag besteht aus mehreren Informationen, die zusammengefügt einen Block ergeben. Diese Blöcke werden hintereinander gereiht, indem der neueste Block mit dem vorherigen kryptografisch verkettet wird. So entsteht eine unveränderbare Kette, bei der ältere Einträge nicht mehr geändert werden können. Dies liegt an der Art der Verbindung, welche auf einer unidirektionalen kryptografischen Verkettung basiert. Jedem Block werden bei seiner Erstellung bestimmte Informationen hinzugefügt, unter anderem ein Header, eine ID, ein Zeitwert, ein sogenannter Hashwert, als auch ein Verweis auf den Hashwert des vorangegangen Blocks.

Blockchain - Irreversible Transaktionen
Quelle: ben.co

Hashwerte und Kryptografie

Bei dem Hash handelt es sich um einen Wert, der sich mittels komplexer mathematischer Verfahren aus einem digitalen Inhalt ergibt, in diesem Fall den Informationen eines Blocks. Der Hashwert ist stets identisch, wenn sich der Inhalt nicht ändert und aus dem Inhalt kann man stets wieder denselben Hashwert errechnen. Jedoch kann man andersherum nicht den Inhalt aus dem Hashwert ableiten.

Ein vereinfachtes Beispiel liefert hier die Quersumme. Wenn der Inhalt eines Blocks aus den Zahlen 1,3,4 besteht, lautet die Quersumme, quasi der Hash, 8. Aus dem Inhalt lässt sich immer wieder einfach der Hash ableiten. Andersherum geht dies aber nicht, da die Quersumme 8 auch aus anderen Zahlenkombinationen wie 2,2,4 oder 1,1,6 bestehen kann. In der Realität sind die Funktionen zur Berechnung des Hashwerts deutlich komplexer, sodass eine Änderung des Inhalts sofort auffällt. Bitcoin nutzt zum Beispiel das Verfahren SHA-256. Wichtig ist hierbei die Tatsache, dass durch die angewendete Hashfunktion eine sogenannte Kollisionsresistenz vorherrscht, die es unmöglich macht, dass unterschiedliche Inhalte denselben Hashwert kreieren. Jeder Block besitzt durch den Hash eine Art digitalen Fingerabdruck, der ihn eindeutig identifiziert und darüber hinaus unveränderlich mit den Nachbarblöcken verkettet. Würde man die Information aus einem alten Block ändern, würden alle Folgeblöcke dies "bemerken", da sich bei jedem der jeweilige Hash ändert.

Aufbau einer Blockchain

Halten wir fest, dass wir uns in einem manipulationssicheren und transparenten P2P-System befinden, in dem Informationen dezentral und unabänderlich dokumentiert sind und Teilnehmer mittels kryptografisch verschlüsselter Konten interagieren. Die Blockchain repräsentiert die mittels Hashwerten verketteten Blöcke, welche die Informationen des verteilten Kontenbuchs beinhalten.

Mining - Belohnungssystem der Blockchain

Der Wert der Blockchain liegt also unter anderem in der sicheren Dokumentation von Informationen innerhalb der Blöcke begründet. Um so einen Block inklusive seines Hashwerts zu kreieren, benötigt es einen gewissen Aufwand in Form von Rechenleistung. Je größer eine Blockchain wird, desto aufwendiger wird der Prozess. Es stellt sich die Frage, wer die Rechenleistung liefert, um die Blöcke zu generieren und damit das System am Laufen zu halten? Hierzu wenden wir uns den sogenannten Minern zu.

Bei den Minern handelt es sich um Teilnehmer des Blockchain-Netzwerks, die ihre Rechenleistung freiwillig zur Verfügung stellen, um Informationen zu validieren und daraus Blöcke zu kreieren. Sie sind existenziell für das System. Um sicherzustellen, dass es genug Miner gibt, wird diesen ein finanzieller Anreiz in Aussicht gestellt. Jeder Miner erhält für seine Leistung eine gewisse Menge an Systemcoins, besser bekannt als Kryptowährungen (zum Beispiel Bitcoin), die wiederum monetarisiert werden können.

Da es innerhalb einer Blockchain mehrere Teilnehmer geben kann, die die lohnende Rechenarbeit erledigen möchten, entsteht ein Wettbewerb. Dieser stellt einerseits sicher, dass zeitgleich immer nur ein Block an die Kette angehängt wird. Andererseits bestimmt der Wettbewerb, welcher Teilnehmer den Zuschlag erhält. Diese Einigung zwischen den Minern wird Konsensus genannt. Es gibt verschiedene Möglichkeiten zum Konsensus zu gelangen.

Proof of Work

Proof of Work

Im vorliegenden Fall beziehen wir uns auf die Variante, die auch Bitcoin zugrunde liegt: Proof of Work (POW). Hier bestimmt der Aufwand, wer den Zuschlag erhält. Dazu müssen Teilnehmer (bzw. deren Hardware) komplexe Rechenaufgaben erledigen, die im Grunde genommen daraus bestehen, komplizierte Hashwerte zu erraten (Die Berechnungen laufen automatisch durch Rechenpower). Wer die Aufgabe zuerst löst, bekommt den Zuschlag für die Erstellung eines Blocks. Sobald der Gewinner den Block erstellt hat, gibt er diesen an weitere Miner des Systems zur Kontrolle weiter. Nach einer bestimmten Menge an Prüfungen werden der Block und die zugrunde liegenden Informationen als valide angesehen. Dieser Prozess wird für jeden Block auf ein Neues initiiert.

Der POW-Algorithmus (und der damit entstehende Rechenaufwand) verhindert zudem sogenannte Sybil-Attacken. Bei einer Sybil-Attacke werden unzählige Fake-Teilnehmer generiert, um Mehrheitsabstimmungen (z.B. ob ein Block valide oder nicht) innerhalb der Blockchain zu beeinflussen. Weitere Details zu Proof of Work auf Wikipedia.

Halten wir zum Abschluss fest, dass wir uns in einem manipulationssicheren und transparenten P2P-System befinden, in dem Informationen dezentral und unabänderlich dokumentiert sind und Teilnehmer mittels kryptografisch verschlüsselter Konten interagieren. Die Blockchain repräsentiert die mittels Hashwerten verketteten Blöcke, welche die Informationen des verteilten Kontenbuchs beinhalten. Die Blöcke werden von Teilnehmern des Systems kreiert (sog. "Miner"), die als Belohnung Kryptowährungen (z.B. Bitcoin) erhalten. Ein Konsensus-Algorithmus (z.B. Proof of Work) bestimmt hierbei durch ein spezielles Verfahren, welche Teilnehmer dafür ausgewählt werden.

Weiter zum nächsten Artikel Zurück zur Übersicht

Verpasse keine Neuigkeiten

Wir informieren dich gerne über Neuigkeiten auf Cryptolist.
Trage dich jetzt kostenlos für unseren Newsletter ein.

Kostenlos eintragen
zurück Zurück zur Übersicht

Verpasse keine Neuigkeiten

Wir informieren dich gerne über Neuigkeiten auf Cryptolist - kein Spam, versprochen.
Trage dich jetzt kostenlos für unseren Newsletter ein.

Kostenlos eintragen