Sharding
Sharding ist ein Skalierungsansatz, der die Aufteilung des Blockchain-Status in Partitionen mit Status und Transaktionsverlauf ermöglicht, sodass jeder Shard parallel verarbeitet werden kann.
Was ist Sharding?
Sharding ist eine Technik zum Partitionieren von Datenbanken, die zum Skalieren von
Blockchains verwendet werden kann. Sie ermöglicht Blockchains, mehr
Transaktionen pro Sekunde zu verarbeiten, was auch als höherer
Durchsatz bezeichnet wird. Sharding teilt das Blockchain-
Netzwerk in kleinere Partitionen auf. Diese sogenannten Shards verarbeiten nur einen Teil der Daten der gesamten Blockchain, was sie unabhängig von anderen Shards macht und ihnen unnötiges Rechnen erspart.
Dank Sharding kann ein Netzwerk mehr Transaktionen berechnen und somit besser auf Transaktionsgeschwindigkeiten, die man von zentralisierten Ledgern gewohnt ist, skalieren. Kritiker weisen jedoch darauf hin, dass Shards anfällig für Angriffe sind und die Netzwerksicherheit verringern.
Wie funktioniert Sharding?
Blockchain-Netzwerke bestehen aus
Knotenpunkten (Nodes), die die Transaktionen in einem Netzwerk validieren. Nodes sind voneinander unabhängig und speichern die Daten-Chronik einer Blockchain. Alle
Full Nodes (vollständigen Knotenpunkte) speichern den gesamten Verlauf einer Blockchain, was zwar die Sicherheit und Dezentralisierung einer Blockchain erhöht, ihre Transaktionsgeschwindigkeit allerdings verlangsamt.
Sharding verteilt die Arbeitslast von Knotenpunkten auf verschiedene Shards. Im Wesentlichen muss nicht jeder Knotenpunkt jede Transaktion validieren. Das belastet Nodes nur unnötig und verlangsamt das Netzwerk. Stattdessen wird die Arbeit auf verschiedene Shards aufgeteilt. Die Blockchain-Datenbanken sind horizontal partitioniert, d. h. die verschiedenen Shards werden entsprechend ihrer Eigenschaften aufgeteilt. Shards können beispielsweise für die Speicherung von Transaktionen eines bestimmten Typs verantwortlich sein, während andere Shards basierend auf der Art des Krypto-Vermögenswertes, den sie speichern, unterteilt werden.
Das Ergebnis ist, dass nicht jeder Knotenpunkt jede Transaktion bestätigt. Dies reduziert die Belastung einer Blockchain drastisch und erhöht ihre Geschwindigkeit.
Wie sicher ist Sharding?
Sharding erhielt Kritik dafür, dass es die Dezentralisierung und Sicherheit einer Blockchain potenziell verringert. Shards könnten korrupt werden, wobei ein Shard einen anderen übernimmt, was zu einem Verlust von Informationen oder Daten führen könnte. Ein
Hacking-Angriff könnte zum Beispiel einen Shard übernehmen und falsche Transaktionen einbringen, was bei anderen Shards zu Verwirrung über die Gültigkeit der Daten führen würde.
Wie verwendet Ethereum Sharding?
Ethereum plant, Sharding als Teil seines Skalierungsansatzes zu verwenden, um den Durchsatz der Blockchain zu erhöhen. Das Netzwerk wird in Zukunft 64 neue geshardete Chains einführen, die unterschiedliche Verantwortlichkeiten haben und die Belastung des
Hauptnetzes von Ethereum, der sogenannten
Beacon Chain, erheblich reduzieren werden. Dieser Prozess wird im Rahmen der Skalierung von Ethereum stattfinden, bei dem auf
Proof-of-Stake als
Konsensmechanismus umgestellt wird. Die Umstellung wird
The Merge (Zusammenführung oder Fusion) genannt. Sharding wird einer der
nächsten Schritte für Ethereum in seiner Skalierungs-Roadmap sein.