Inhalt
Wenn Sie an
Krypto-Währungen denken, fallen Ihnen wahrscheinlich die Begriffe "
Blockchain" oder "Distributed Ledger Technology" ein. Seit der Einführung von
Bitcoin wurden Hunderte weiterer Krypto-Währungen geschaffen. Die meisten von ihnen basieren auf einer ähnlichen Netzwerkarchitektur. Ihre Datenstrukturen ermöglichen es den Benutzern, Werte zu übertragen oder mit dezentralisierten Anwendungen zu interagieren.
In einer Blockchain wird einer wachsenden Chain von Blöcken periodisch ein neuer
Block hinzugefügt. Jeder Block ist mit dem vorhergehenden Block durch eine Art kryptographische Verbindung verbunden (konkret durch einen
Hash). In jedem dieser Blöcke befinden sich aktuelle Transaktionen, die von Benutzern gesendet wurden.
Aber oft gibt es eine Wartezeit zwischen der Übertragung einer Transaktion und ihrer Aufnahme in einen Block. Stellen Sie sich das wie das Warten auf einen Zug an einem Bahnhof vor. Abhängig von der Größe der Waggons (Blockgröße) und der Anzahl der anderen wartenden Personen (anstehende Transaktionen) kann es sein, dass Sie nicht einmal den nächsten Zug bekommen. Oder sogar den danach. Sie können zwischen Sekunden und Stunden warten, bis die Transaktion
bestätigt ist.
Für viele ist dies ein anständiger Kompromiss. Schließlich bietet es ein sehr hohes Maß an Sicherheit, ohne sich auf einen zentralen Koordinator zu verlassen. Für andere hat die Blockchain-Technologie ein Verfallsdatum. Kritiker glauben, dass auf lange Sicht die Probleme der
Skalierbarkeit, mit denen die Blockchain-Technologie konfrontiert ist, eine Akzeptanz bei der allgemeinen Bevölkerung verhindern werden.
Einige glauben, dass die Zukunft der Zahlungsnetzwerke für Krypto-Währungen in einer völlig anderen Architektur liegt – den Directed Acyclic Graphs (oder DAGs).
Ein DAG ist eine andere Art von Datenstruktur – stellen Sie es sich wie eine Datenbank vor, die verschiedene Informationen miteinander verbindet. "Directed Acyclic Graph" ist ein gewichtiger Begriff, also lassen Sie uns damit beginnen, ihn Stück für Stück zu erklären.
Ein Directed Acyclic Graph.
Konzeptionell sehen DAGs in etwa so aus. Sie bestehen aus Eckpunkten (den Kreisen) und den Ecken (den Linien, die sie verbinden). Sie sind gerichtet (englisch: directed), weil sie in eine Richtung gehen (Sie können dies mit den Pfeilen illustriert sehen). Sie sind azyklisch (d.h. nicht zyklisch), weil die Eckpunkte nicht auf sich selbst zurückführen – wenn Sie an einem Punkt beginnen und dem Graphen folgen, können Sie nicht zum selben Punkt zurückkehren. Dies wird in Kürze klarer werden.
Solche Datenstrukturen werden im Allgemeinen zur Modellierung von Daten verwendet. Im wissenschaftlichen oder medizinischen Bereich kann man sich auf eine DAG verlassen, um die Beziehung zwischen Variablen zu beobachten und festzustellen, wie sie sich gegenseitig beeinflussen. Sie könnten zum Beispiel Dinge wie Ernährung, Schlafzyklen und körperliche Symptome nehmen, und Verbindungen zwischen ihnen herstellen, um festzustellen, wie sie sich auf einen Patienten auswirken.
Für unsere Zwecke sind wir mehr daran interessiert, wie sie dazu beitragen können,
Konsens in einem verteilten Netzwerk von Krypto-Währungen zu erreichen.
In einer DAG-basierten
Krypto-Währung stellt jeder Eckpunkt in der Struktur eine Transaktion dar. Hier gibt es weder den Begriff
Blöcke, noch ist
Mining zur Erweiterung der Datenbank erforderlich. Anstatt also Transaktionen in Blöcken zusammenzufassen, wird jede Transaktion auf einer anderen aufgebaut. Dennoch gibt es eine kleine
Proof-of-Work-Operation, die durchgeführt wird, wenn ein
Node eine Transaktion einreicht. Dies stellt sicher, dass das Netzwerk nicht mit Spam überschwemmt wird und validiert auch frühere Transaktionen.
Damit eine neue Transaktion hinzugefügt werden kann, muss sie auf älteren Transaktionen aufbauen. Angenommen, Alice erstellt eine neue Transaktion. Damit sie bestätigt werden kann, muss diese Transaktion auf vorherige Transaktionen verweisen. Das ist in etwa so, wie ein Block in Bitcoin auf den Block verweist, der vor ihm kam, aber es werden mehrere Transaktionen referenziert.
In einigen Systemen wählt ein Algorithmus aus, auf welchen Transaktionen (oder "Tips") eine neue Transaktion aufbauen muss. Tips werden mit größerer Wahrscheinlichkeit ausgewählt, wenn sie ein größeres akkumuliertes Gewicht haben – ein Maß dafür, wie viele Bestätigungen der Weg zu dem Tip hat.
Die Transaktionen, auf denen Alice aufbauen wird, sind unbestätigt. Aber sobald Alice sie referenziert, werden sie bestätigt. Die Transaktion von Alice ist nun unbestätigt, so dass jemand anderes darauf aufbauen muss, bevor sie akzeptiert wird.
Die Benutzer bestätigen eher Transaktionen mit einem "schwereren" Gewicht, so dass das System weiter wächst. Andernfalls würde nichts die Benutzer davon abhalten, kontinuierlich auf älteren Transaktionen aufzubauen.
Mit Blockchains ist der Schutz vor
Doppelausgaben sehr einfach. Ein und dasselbe Geld kann nicht zweimal in einem Block ausgegeben werden – die Nodes können jeden Versuch leicht erkennen und weisen jeden Block mit widersprüchlichen Transaktionen zurück. Da es für Miner so teuer ist, die Blöcke zu produzieren, haben sie einen Anreiz, fair zu spielen.
Die DAGs haben auch einen Mechanismus zur Verhinderung von Doppelausgaben. Es ist ähnlich, aber ohne Miner. Wenn ein Node ältere Transaktionen bestätigt, bewerten sie einen ganzen Pfad zurück bis zur allerersten Transaktion der DAG, um sicherzugehen, dass der Absender über genug Guthaben verfügt. Es könnte mehrere Pfade geben, aber nur einer muss überprüft werden.
Wenn Benutzer auf einem ungültigen Pfad aufbauen, laufen sie Gefahr, dass ihre eigene Transaktion ignoriert wird. Ihre könnte legitim sein, aber weil die vorherige Transaktion nicht legitim war, wird niemand auf diesen speziellen Pfad aufbauen wollen.
Es erscheint zunächst unintuitiv – könnten Sie nicht in eine Situation geraten, in der es mehrere Zweige gibt, die sich gegenseitig nicht kennen? Könnte man dann nicht die gleichen Mittel für diese verschiedenen Zweige ausgeben?
Das ist in der Tat eine Möglichkeit, aber sie wird mit einem Auswahlalgorithmus gelöst, der Tips mit einem höheren akkumulierten Gewicht bevorzugt. Das bedeutet, dass Sie mit der Zeit einen Zweig erhalten, der viel stärker ist als der Rest. Schwächere werden aufgegeben, und das Netzwerk wird weiterhin auf dem stärksten Zweig aufbauen.
Wie bei Blockchains gibt es keine absolute Endgültigkeit – man kann nie 100% sicher sein, dass eine Transaktion nicht rückgängig gemacht wird. Es ist ziemlich unwahrscheinlich, aber man könnte theoretisch einen
Bitcoin- oder
Ethereum-Block und alle darin enthaltenen Transaktionen "rückgängig" machen. Je mehr Blöcke nach dem Block, in dem sich Ihre Transaktion befindet, hinzugefügt werden, desto mehr Vertrauen können Sie in diese Transaktion haben. Aus diesem Grund wird empfohlen, sechs Bestätigungen abzuwarten, bevor Sie Gelder ausgeben.
In einer DAG wie Tangle bei
IOTA, gibt es eine Idee von
Vertrauen durch Bestätigung. Der Auswahl-Algorithmus wird 100 Mal durchlaufen, und Sie zählen, wie oft Ihre Transaktion in den ausgewählten Tips direkt oder indirekt genehmigt wurde. Je höher der Prozentsatz, desto mehr Vertrauen können Sie haben, dass Ihre Transaktion "abgewickelt" bleibt.
Dies könnte den Anschein erwecken, dass es zu einer schlechten Benutzererfahrung führt. Aber das ist nicht der Fall. Wenn Alice Bob 10 MagicDAGTokens schickt, braucht sie sich nicht um die Auswahl der richtigen Tips des Graphen zu kümmern. Unter der Haube macht ihre Wallet Folgendes:
- Wählen von starken Tips (denken Sie daran, dass dies diejenigen mit den meisten gesammelten Bestätigungen sind).
- Den Weg zurück durch frühere Transaktionen verfolgen, um sicherzustellen, dass die Tips genug Guthaben zum Ausgeben haben.
- Sobald diese Bedingungen erfüllt sind, fügen sie ihre Transaktion der DAG hinzu und bestätigen die Transaktionen, auf denen sie aufgebaut sind.
Für Alice wird dies einfach wie der reguläre Ablauf bei Krypto-Währungen aussehen. Sie gibt Bobs Adresse und den Betrag, den sie ausgeben möchte, ein und drückt dann auf Senden. Die obige Liste ist der Arbeitsnachweis (Proof of Work), den jeder Teilnehmer beim Anlegen einer Transaktion ausführt.
Vorteile eines DAG
Geschwindigkeit
Ohne Einschränkungen durch Blockzeiten kann jeder jederzeit senden und seine Transaktionen bearbeiten lassen. Es gibt keine Beschränkung für die
Anzahl der Transaktionen, die Benutzer einreichen können, vorausgesetzt, sie bestätigen dabei ältere Transaktionen.
Kein Mining
DAGs verwenden keine
PoW-Konsens-Algorithmen, wie wir es gewohnt sind. Ihr Kohlenstoffausstoß ist daher nur ein Bruchteil dessen, was andere
Krypto-Währungen, die mit Hilfe des
Mining ihr Blockchain-Netzwerk absichern, erzeugen.
Keine Transaktionsgebühren
Da es keine Miner gibt, müssen die Nutzer keine Gebühren für die Übertragung ihrer Transaktionen zahlen. Einige verlangen jedoch, dass für spezielle Arten von
Nodes eine geringe Gebühr gezahlt wird. Niedrige Gebühren (oder besser: null Gebühren) sind verlockend für Zahlungen mit sehr geringen Beträgen (Micro-Payments), da ihr Nutzen durch erhebliche Netzwerkgebühren zunichte gemacht wird.
Keine Probleme mit der Skalierbarkeit
Unabhängig von Blockzeiten können DAGs viel mehr
Transaktionen pro Sekunde verarbeiten als herkömmliche Blockchain-Netzwerke. Viele Befürworter glauben, dass sie dadurch für Anwendungsfälle im
Internet der Dinge (IoT), in denen alle möglichen Geräte miteinander interagieren, wertvoll werden könnten.
Nachteile eines DAG
Nicht vollständig dezentralisiert
Protokolle, die sich auf DAGs stützen, haben verschiedene Elemente der Zentralisierung. Für einige ist es angeblich eine kurzfristige Lösung, das Netzwerk zu starten, aber es bleibt abzuwarten, ob DAGs ohne die Intervention von Dritten gedeihen können. Wenn nicht, öffnen sie sich Angriffsvektoren, die ihre Netzwerke schließlich lahm legen könnten.
Nicht im Maßstab getestet
Obwohl es DAG-basierte Krypto-Währungen schon seit einigen Jahren gibt, haben sie noch einen langen Weg vor sich, bis sie weit verbreitet sein werden. Daher ist es schwierig, vorherzusagen, welche Anreize die Nutzer haben könnten, dieses System in Zukunft zu nutzen.
Directed Acyclic Graphs sind sicherlich eine interessante Technologie für den Aufbau des Netzwerks einer
Krypto-Währung. Bisher gibt es nur sehr wenige unvollständig entwickelte Projekte, die diese Datenstruktur verwenden.
Wenn sie jedoch ihr Potenzial ausschöpfen können, könnten sie massiv skalierbare Ökosysteme antreiben. Die DAG-Technologie hat eine Vielzahl von Anwendungsfällen in Bereichen, die einen hohen Durchsatz und keine Gebühren erfordern, wie zum Beispiel im
Internet der Dinge (IoT) und bei Mikrozahlungen.