Wie funktioniert eine Blockchain?

Du hast dich bestimmt schon oft gefragt was eine Blockchain genau ist. In diesem Artikel erfährst du mehr über die technische Funktionsweise sowie über Anwendungsfälle in der Praxis. Dazu zeigen wir dir wie eine Blockchain aufgebaut ist mit Hilfe von Javascript und du lernst wie man selbst eine programmiert.

Aufbau einer Blockchain

Die Blockchain ist nichts anderes als eine Liste mit der jeder Eintrag durch Hashes verknüpft ist. Dazu entstehen die Fragen „Wie sieht diese Liste aus?“ und „Was sind überhaupt Hashes?“.

Linked List

Zum einen nennt man diese Liste eine „Linked List“. Das ist eine spezielle Datenstruktur aus der Informatik. Eine linked List ist objektorientiert aufgebaut das bedeutet, dass jedes Element in dieser Liste ein Objekt darstellt. Linked bedeutet, dass jedes Element auf seinen Vorgänger verlinkt. Das heißt das erste Element verlinkt auf „nichts“ und alle folgenden Elemente bzw. Objekte verlinken auf das davor.

Hashes

Hashes kommen aus der Kryptographie und dienen dazu, beliebig lange Daten zu einem fixen (= immer gleiche Länge), sogenannten „Hash“, umzuwandeln. Eine Hash-Funktion, ist eine mathematische Funktion, welche diese Hashes dann erzeugt.

Der Clou ist dabei, dass die Hash-Funktion eine Einwegfunktion ist. Mit dieser lässt sich die Integrität der zuvor eingegebenen Daten feststellen. Werden also die Daten verändert und danach der Hash noch mal erzeugt, so entsteht ein völlig anderer Hash-Wert.

Zusammenspiel von Hash und Linked List

Sind also die technischen Grundlagen einigermaßen klar, so können mit diesen beiden Konzepten eine Blockchain erstellt werden. Eine Blockchain ist als eine Datenkette die nicht veränderbar ist und dennoch verteilt werden kann. Dadurch wird das Problem des Mittelsmanns bei vielen Anwendungen gelöst. Zum Beispiel bei Banken (Person A will Person B Geld geben und vertraut dabei auf eine Bank) oder bei Verträgen (Person A will einen Vertrag mit Person B machen und vertraut dabei auf einen Notar)

Weiterführende Links

https://anders.com/blockchain/blockchain.html