Das rapide Wachstum von dezentralen Finanzanwendungen (DeFi) und von nicht-fungiblen Token (NFTs) haben das Ethereum-Netzwerk mehrfach in die Knie gezwungen. Das sogenannte Sharding soll Ethereum zu neuen Höhen in Bezug auf den Durchsatz und Transaktionsgeschwindigkeiten verhelfen.
Der modulare Ansatz von Ethereum beim Blockchain-Design ermöglicht eine Optimierung innerhalb jeder Komponente und beseitigt einige der Ineffizienzen, die bei monolithischen Blockchains auftreten. Sowohl Layer 2s als auch Sharding werden den Durchsatz jeweils um das Hundertfache erhöhen und die Bandbreite wird voraussichtlich mindestens im nächsten Jahrzehnt um 50% pro Jahr wachsen. Wird Ethereum so 1 Million Transaktionen pro Sekunde (TPS) erreichen?
Das Blockchain-Trilemma
Blockchains sind leistungsfähige Netzwerke, die den Nutzern einen gemeinsamen digitalen Ledger zur Verfügung stellen. Die Architektur, die diesen Ledgers zugrunde liegt, führt jedoch zu einem Kompromiss zwischen Dezentralisierung, Sicherheit und Skalierbarkeit. Dieses Problem, bei dem sich eine Blockchain für zwei dieser drei Eigenschaften entscheiden muss, ist als "Blockchain-Trilemma" bekannt. Traditionell haben sich die meisten Blockchains, wie Bitcoin (BTC) und Ethereum (ETH), für Dezentralisierung und Sicherheit auf Kosten der Skalierbarkeit entschieden. Wir erläutern die von Ethereum unternommenen Schritte für die Skalierung der Bockchain, ohne dabei Kompromisse bei den beiden anderen Eigenschaften einzugehen.
Das Trilemma hat die Branche bereits seit Jahren belastet. Viele alternative Layer 1 haben sich deshalb dafür entschieden, die Dezentralisierung zugunsten der Geschwindigkeit zu opfern. Mit diesem Kompromiss konnte ein besseres Nutzererlebnis gewährleistet werden. Dennoch hat das Ergebnis der zentralisierten Blockchains sich von der Innovation, der Kultur und den Vorteilen, die mit einem dezentralen Paradigma verbunden sind, entfernt. Es gab viele Versuche, dieses Problem zu lösen (z.B Plasma- und Sidechains). Trotz allem konnten verfehlten auch diese Lösungen die angestrebten Ziele.
Aufgabenverteilung als Notwendigkeit zur Skalierung
Auf einem hohen Level betrachtet, erfüllen Blockchains drei Hauptaufgaben: Ausführung, Konsens und Datenverfügbarkeit.
- Die Ausführung ist der Ort, an dem alle Transaktionen stattfinden.
- Der Konsens ist der Ort, an dem sich die Netzwerkteilnehmer über das Geschehene einigen.
- Die Datenverfügbarkeit ist die Garantie, dass die Daten für alle zugänglich sind.
Von Anfang an waren Blockchains monolithisch, d.h. es wurde erwartet, dass Blockchains alle drei Aufgaben auf einer einzigen Kette erfüllen. Mehr als ein Jahrzehnt später sind nun modulare Blockchain-Architekturen auf dem Vormarsch. Eine modulare Blockchain macht sich das Konzept der Spezialisierung zunutze und entscheidet sich für die Aufteilung dieser Aufgaben auf separaten Ketten.
Wenn Ethereum in wenigen Wochen auf Proof of Stake umsteigt, werden verschiedene Ketten für jede Aufgabe verwendet werden. Der Konsens wird von der Proof of Stake (PoS) Beacon Chain verwaltet, die Datenverfügbarkeit wird von der aktuellen Ethereum-Chain verwaltet und die Ausführung wird von Layer 2s verwaltet. Layer 2s sind separate Blockchains, die auf Ethereum (Layer 1) aufgesetzt werden und dabei helfen, den Layer 1 mit schnellerem Durchsatz und niedrigeren Gebühren zu skalieren. Gleichzeitig sollen sie die Dezentralisierung und Sicherheit wahren.
Obwohl bereits viele Layer 2s lanciert wurden oder in Produktion sind, ist die Skalierungs-Roadmap noch lange nicht abgeschlossen. Ethereum wickelt derzeit etwa 10 TPS (Transaktionen pro Sekunde) ab, sodass eine 100-fache Verbesserung erforderlich ist, um die Skalierungsziele zu erreichen. Zum Vergleich: Ein Netzwerk wie Visa kann etwa 65'000 TPS verarbeiten. Um auf 1 Million TPS zu skalieren, benötigt Ethereum drei weitere Implementierungen - verbesserte Rollups, Sharding und eine höhere Bandbreite. Auf diese Technologien wird im Folgenden näher eingegangen.
Rollups als Layer 2-Lösungen für Ethereum
Wie bereits erwähnt, versucht Ethereum seinen Betrieb mithilfe von Rollups/Layer 2 zu skalieren. Dabei handelt es sich um separate Blockchains, die die Last der Transaktionsausführung auffangen. Auf diese Weise kann sich Ethereum auf den Konsens und Datenverfügbarkeit konzentrieren. Viele Transaktionen werden auf Layer 2s ausgeführt und dann zu einer einzigen Transaktion zusammengefasst, die anschliessend zur Überprüfung in die Ethereum Blockchain übertragen wird. 99% Prozent der Gasgebühren hängen mit der Ausführung zusammen, daher spart die Verlagerung auf eine andere Blockchain mehr als nur Zeit. Im Folgenden wird eine vereinfachte Beziehung zwischen Transaktionen verschiedener Rollups und einem Ethereum-Block veranschaulicht.
Die Überprüfung der Gültigkeit einer gebündelten Transaktion kann um eine Grössenordnung schneller sein als die Durchführung jeder einzelnen Transaktion. Die Bündelung vieler Transaktionen zu einer einzigen ermöglicht mehr Transaktionen pro Sekunde (TPS), verringert die Netzüberlastung und senkt die Gasgebühren für die Nutzer. Die Verlagerung der Berechnungen auf Layer 2 bietet somit ein grösseres Potential für Skalierbarkeit und ermöglicht mehr Optimierungen in Bezug auf Durchsatz und Latenzzeit. Die Off-Chain-Ausführung könnte das Ethereum-Netzwerk um den Faktor 10 skalieren.
Sobald die Rollups dezentralisiert sind, werden die Transaktionsdaten zur Verifizierung zurück auf die Kette übertragen, wodurch die Sicherheits- und Dezentralisierungsvorteile des Ethereum-Netzwerks erhalten bleiben. Mit dieser Lösung könnten die Probleme des Blockchain-Trilemmas gelöst werden. Mit verbesserten Datenkomprimierungstechniken lassen sich jedoch weitere Optimierungen erzielen. Bei der Datenkomprimierung wird die Anzahl der Details reduziert, die zur Darstellung derselben zugrunde liegenden Informationen erforderlich sind. Die Übermittlung komprimierter Daten an Ethereum senkt die Kosten weiter und könnte die Skalierbarkeit wieder um das Zehnfache verbessern.
Data Sharding und seine Möglichkeiten
Die Layer 2s kümmern sich also um die Ausführung, während Ethereum sich auf den Konsens und die Datenverfügbarkeit konzentriert. Sharding ist eine Netzwerkarchitektur, die für die Skalierung der Datenverfügbarkeit entwickelt wurde. Derzeit muss jeder Konsens-Teilnehmer alle Daten eines Blocks herunterladen und die Daten unabhängig voneinander verifizieren, bevor er einen Block signiert.
Dies ist ein ineffizienter Prozess und ein erheblicher Engpass für das Netz. Fehlen diese Daten jedoch, kann das Netz nicht überprüfen, ob die Blöcke gültig sind. Die Datenverfügbarkeit ist also die Garantie dafür, dass der Antragsteller des Blocks alle erforderlichen Transaktionsdaten veröffentlicht hat und die Transaktionsdaten den anderen Netzwerkteilnehmern zur Verfügung stehen. Das Sharding ermöglicht es den Netzwerkteilnehmern, nur eine Stichprobe aller Daten herunterzuladen und gleichzeitig die Datenverfügbarkeit zu garantieren. Angesichts der Komplexität dieses Konzepts wird das Sharding in zwei Phasen durchgeführt: dem Proto-Danksharding und dem vollständigen Danksharding.
Proto-Danksharding (auch bekannt als EIP-4844) ist ein Vorschlag zur Umsetzung des grössten Teils der Logik. Allerdings nicht alles, was eine vollständige Danksharding-Spezifikation ausmacht. Bei der Proto-Danksharding-Spezifikation muss jeder Netzwerkteilnehmer noch unabhängig überprüfen, ob der gesamte Datensatz verfügbar ist. Die wichtigste Neuerung, die das Proto-Danksharding mit sich bringt, ist eine neue Transaktionsart: Die so genannte Blob-Transaktion. Blob-Transaktionen können für Layer 2 wesentlich kostengünstiger sein als die derzeitige Transaktionsart und könnten die Skalierbarkeit ebenfalls um den Faktor 10 verbessern. Full-Danksharding führt ein Sampling der Datenverfügbarkeit ein, so dass die Netzwerkteilnehmer nur einen kleinen Teil der Daten benötigen, um einen Block zu verifizieren. Im Folgenden wird die Beziehung zwischen Blobs und der Beacon-Chain veranschaulicht.
Weitere Errungenschaften in Bezug auf die Bandbreiten
Für eine Blockchain sind verschiedene Rechenressourcen erforderlich. Dazu gehören CPU-Zyklen, Speicherplatz, Festplatten-E/A und Bandbreite. Ethereum beabsichtigt, zu einer zustandslosen Architektur überzugehen, die die ersten drei Ressourcen nicht benötigt. Erforderlich ist jedoch weiterhin Bandbreite. Diese letzte Komponente unterscheidet sich von den beiden anderen in dem Sinne, dass sie von externen technologischen Fortschritten abhängt, um das Netzwerk zu skalieren.
Der Grund dafür ist, dass die Bandbreite der Verbraucher jedes Jahr um etwa 50% zunimmt (ähnlich dem Mooreschen Gesetz). Angesichts dieses exponentiellen Wachstums würde es etwa fünf bis sechs Jahre dauern, um eine 10-fache Steigerung der Bandbreite zu erreichen (und weitere 5 Jahre für eine 100-fache Verbesserung). Es gibt guten Grund zu der Annahme, dass sich die Bandbreite weiterhin in diesem Tempo verbessern wird, da die Bandbreite ein inhärent parallelisierbarer Prozess ist. Im Folgenden wird das Wachstum der Bandbreite von 1983 bis 2019 dargestellt.
Angesichts der Bedeutung der Skalierbarkeit für die Massenadoption von Ethereum werden diese Technologien zu den Hauptprioritäten werden, sobald der Merge erfolgreich zustande gekommen ist. Diese Technologien sind also nur noch einige Jahre entfernt. Kombiniert mit dem durchschnittlichen jährlichen Bandbreitenwachstums halten wir es für angemessen, in den nächsten sechs Jahren 1 Million TPS zu erwarten.