Eine Blockchain ist also eine spezielle Art von Datenbank, bei der Daten nur ergänzt (und nicht entfernt oder verändert) werden können. Transaktionen sind periodisch zu einer Blockchain in sogenannten Blöcken (bestehend aus Transaktionsinformationen und anderen bedeutenden) hinzugefügt.
Die Struktur wird als Kette bezeichnet, weil die Metadaten jedes Blocks eine Information enthalten, die ihn mit dem vorherigen Block verbindet. Genauer gesagt enthält er einen Hash des vorherigen Blocks, den man sich wie einen einzigartigen digitalen Fingerabdruck vorstellen kann. Die Möglichkeit, dass zwei Daten die gleiche Ausgabe einer Hash-Funktion liefern, ist verschwindend gering. Wenn also jemand versucht, einen älteren Block zu ändern, würde sein Hash anders sein, was bedeutet, dass der Hash des nächsten Blocks ebenfalls anders wäre, usw. .
Der von jedem Block erzeugte Hash wird in den nächsten Block aufgenommen. So entsteht die Kette der Blöcke, die Blockchain.
Die Blockchain kann von den Netzwerkteilnehmern vollständig heruntergeladen werden. Können Sie sich noch daran erinnern, dass wir gesagt haben, dass jeder Transaktionen und Signaturen mit Public-Key-Kryptographie validieren kann? Wenn ein Node mit einem Block empfangen wird, führt dieser eine Reihe von Prüfungen durch. Wenn etwas ungültig ist, wird der Block abgelehnt.
Wenn ein Node den Block empfängt, erstellt er davon eine eigene Kopie und propagiert diesen Block dann an weitere Nodes. Dann machen sie das Gleiche, bis sich der Block im ganzen Netzwerk verbreitet hat. Ein solcher Prozess wird auch für unbestätigte Transaktionen geführt – also für Transaktionen, die gesendet wurden, aber noch nicht in der Blockchain enthalten sind.
Eine Blockchain wird in ihrer Integrität unterminiert, wenn falsche Finanzinformationen erfasst werden können. Zugleich gibt es in dem verteilten System keinen Administrator oder Anführer, der das Hauptbuch verwaltet – wie stellen wir also sicher, dass die Teilnehmer aufrichtig handeln? Satoshi schlug ein Proof-of-Work-System vor, das es jedem erlaubte, einen Block vorzuschlagen, der an die Blockchain angehängt werden sollte. Proof of Work ist das am meisten erprobte Schema, um einen Konsens zwischen den Benutzern zu erreichen, aber es ist bei weitem nicht das einzige. Alternativen wie Proof of Stake werden immer mehr erforscht, obwohl sie in ihrer wahren Form noch keine richtige Implementierung gesehen haben (auch wenn es) schon seit einiger Zeit hybride Konsensmechanismen gibt.
Der oben beschriebene Prozess wird als Mining bezeichnet. Wenn der Miner eine Antwort findet, könnte der von ihm erstellte Block die Kette verlängern. Als Folge davon würden sie eine Prämie erhalten, die auf die native Aktivität der Blockchain abgestimmt ist.
Das kryptografische Rätsel, das Miner lösen müssen, beinhaltet das wiederholte Hashing von Daten, um eine Zahl zu erzeugen, die unter einen speziellen Wert fällt. Hashing mit einer Einwegfunktion meint, dass es angesichts der Ausgabe praktisch unmöglich ist, die entsprechende Eingabe zu erraten. Aber gegeben die Eingabe, ist es trivial, die Leistung zu überprüfen. Auf diese Art und Weise kann jeder Teilnehmer überprüfen, ob der Miner einen „richtigen“ Block produziert hat, und lehnt solche ab, die ungültig sind. In einem solchen Fall erhält der Miner keine Entschädigung und hat Ressourcen verschwendet, indem er versucht hat, einen ungültigen Block zu fälschen.
Hieraus ergibt sich eine interessante Spieltheorie, die es für einen Akteur kostspielig macht, einen Betrugsversuch zu unternehmen, aber profitabel für ihn, wenn er ehrlich handelt. Keine böse Entität hat die Ressourcen, um ein stabiles Netzwerk auf unbestimmte Zeit zu attackieren. Daher erwarten alle, die über Ressourcen verfügen, dass sich ihre Investition durch eine korrekte Teilnahme rentiert.
Verteilte Netzwerke sind, wie Sie wahrscheinlich wissen, nicht sehr effizient. Kryptowährungen können leider nur dann sicher und Zensur-resistent sein, auch wenn alle Nodes eine Kopie der Blockchain synchronisieren können. Denn je niedriger die Anforderungen sind, um mithalten zu können, desto einfacher wird es für die Leute, teilzunehmen.
Man sieht, warum eine Blockchain, die alle zehn Minuten nur einen kleinen Block hinzufügt, in der Hinsicht einer Blockchain vorzuziehen ist, die alle fünf Minuten einen riesigen Block hinzufügt. Bei Letzterem wäre es erforderlich, dass die Nodes Computer mit hoher Leistung betreiben, um synchron zu bleiben, und dass sie Computer mit geringerer Leistung dazu bringen, offline zu gehen. In diesem Fall würde es zu einer stärkeren Zentralisierung kommen, da es weniger Peers im Netzwerk gibt.
Mit kleineren Blöcken können wir jedoch nicht viele Transaktionen pro Sekunde (TPS) erreichen. Das heißt auch, dass es in Stoßzeiten etwas dauern kann, bis Transaktionen in die Blockchain aufgenommen werden. Das ist unbequem, wenn Sie eine schnelle Zahlung vornehmen wollen, doch das ist der Preis, den man für die Dezentralisierung zahlen muss.
Dieses Problem nennt man ein Skalierbarkeit-Dilemma. Das System ist gut skalierbar und kann sich leicht an einen erhöhten Durchsatz mit minimalen Nachteilen anpassen. Blockchains skalieren nicht gut – wie schon erklärt, untergräbt die einfache Erhöhung des Durchsatzes durch größere Blöcke den gesamten Zweck des verteilten Netzwerks.
Die Skalierung außerhalb der Kette scheint ein praktikabler Ansatz zu sein, um die TPS auf eine Weise zu erhöhen, die der Dezentralisierung des Netzwerks nicht schadet. Dazu gehört eine breite Palette von Lösungen – zentralisiert und dezentralisiert -, die es ermöglichen, Transaktionen durchzuführen, ohne sie in der Blockchain zu protokollieren.
Kryptowährungsnetzwerke funktionieren nach dem Opt-in-Prinzip.Es zwingt Sie niemand, eine Software zu verwenden, die Sie nicht wollen. Bei einem guten Protokoll wird der Code vollständig Open-Source sein, damit die Benutzer sich der Fairness und Sicherheit des Systems sicher fühlen können.
Prinzipiell ermöglichen Kryptowährungen jedem, sich an ihrer Entwicklung zu beteiligen. Jede neue Funktion oder Änderung des Codes wird von einer Gemeinschaft von Entwicklern geprüft, das heißt, es wird darüber abgestimmt und veröffentlicht. Anschließend kann der Benutzer den Code selbst überprüfen und entscheiden, ob er ihn laufen lassen wollen oder nicht.
Einige Updates werden abwärtskompatibel sein, d. h. aktualisierte Nodes werden weiterhin mit älteren Nodes kommunizieren. Andere werden nicht abwärtskompatibel sein – ältere Nodes werden aus dem Netzwerk „geworfen“, wenn sie nicht aktualisiert werden.
Wenn Sie in Kryptowährung einen Gewinn machen möchten, müssen Sie nicht bezahlen, Tesla zeigt es leicht und, sicher, Elon Musk geht keine Risiken in fruchtlosen Investitionen ein.