25. Juni 2024

Beschleunigen Sie die Blockchain auf 710.000 Transaktionen pro Sekunde: Überprüfung des Proof of History-Algorithmus

Patenschaft

Eines der Probleme bei Kryptowährungen ist die Knotensynchronisation. ZuWenn Transaktionen ausgeführt werden, müssen Knoten einen Block in die Blockchain schreiben. Dazu kommunizieren sie und erzielen einen Konsens.

Dieser Vorgang braucht Zeit. Bitcoin-Durchsatz - 4 Transaktionen pro Sekunde (TPS), EOS-Blockchain - weniger als 50 TPS. Gleichzeitig verarbeitet das Visa-Zahlungssystem 65.000 TPS.

Während der Tests zeigte Solana 60.000 TPS. Laut Entwicklern kann die theoretische Netzwerkbandbreite 710.000 TPS erreichen. Das Projekt erreichte solche Indikatoren dank seiner eigenen Lösungen: Proof of History, Tower Byzantine Fault Tolerance (TBFT), Turbine, Gulfstream, Sealevel, Pipeline, Cloudbreak und Archivers.

Wir sprechen darüber, wie Proof of History funktioniert und warum der Blockchain-Durchsatz wichtig ist.

Über Solana

Solana ist ein amerikanisches Projekt, das ein skalierbares Blockchain-Protokoll zur Erstellung dezentraler Anwendungen und intelligenter Verträge entwickelt.

Zum Solana-Team gehören der ehemalige Qualcomm-Hauptentwickler Anatoly Yakovenko, der BREW OS-Entwickler Greg Fitzgerald und der promovierte Teilchenphysiker Eric Williams.

Das Projekt wurde 2017 gegründet. Im Jahr 2018 startete das Team die Alpha-Version des Testnetzwerks und im Jahr 2019 erhielt es Risikokapitalinvestitionen in Höhe von 20 Mio. USD.

Solana verwendet das SOL-Dienstprogramm-Token, um Hosts zu belohnen, die das Netzwerk unterstützen.

Das Projekt kündigte eine niederländische Auktion von SOL-Tokens an. Sie findet am 24. März um 08:00 Uhr (Moskauer Zeit) auf der Coinlist-Plattform statt. Der anfängliche Preis des SOL-Tokens beträgt 4 $. Ab dem 17. März können Sie Wetten platzieren.

Sie können sich auf der Auktionsseite für Gebote registrieren. Benutzer können Token innerhalb der Garantie innerhalb von 12 Monaten zurückgeben. In diesem Fall wird Solana sie für 90% des gesamten Auktionspreises einlösen.

Was ist der Beweis der Geschichte?

Proof of History (PoH) ist ein Blockchain-Synchronisationsalgorithmus. Es hat eine interne Uhr, die auf allen Knoten die gleiche Zeit anzeigt.

Netzwerkknoten arbeiten nach einem Zeitplan. Dank der Synchronisierung können sie die Zeit zwischen Transaktionen auf der Blockchain überprüfen.

Wofür ist die Knotensynchronisation?

Um einen Konsens zu erzielen, müssen die Knoten Informationen austauschen - synchronisieren. Dies kann je nach Datenrate zwischen den Knoten bis zu 40 Sekunden dauern.

Die Synchronisationsgeschwindigkeit beeinflusst den Durchsatz der Blockchain. Je schneller es ist, desto mehr Transaktionen pro Sekunde verarbeitet das Netzwerk.

Stellen Sie sich vor: Sie befehligen die Bodentruppen und geben den Generälen den Befehl, sie informieren seine Soldaten. Wenn Sie zu den Generälen rufen können, ist die Synchronisation schnell. Wenn Sie jedoch Befehle an Tauben senden, erfolgt die Synchronisierung nur langsam. Während die Panzertruppen auf die Taube warten, wird die Kavallerie den Befehl erfüllen.

Das passiert in der Kryptowährung:

  • ein Knoten findet einen neuen Block und informiert einen anderen Knoten darüber;
  • zusammen senden sie Nachrichten über den gefundenen Block an die anderen beiden Knoten, die ihn an den Rest senden.

Bergleute, die nichts über den gefundenen Block wissen, setzen den Bergbau fort. Dadurch können Miner zwei Blöcke gleichzeitig abbauen. Einer der Blöcke wird abgelehnt (verwaister Block).

Verwaiste Blöcke teilen die Blockchain in zwei Zweige. Dies gibt die Möglichkeit, doppelte Ausgaben und andere Angriffe auszugeben.

Bei Bitcoin suchen Knoten nach einem Block von 10 Minuten undin 15 Sekunden synchronisiert. Verwaiste Blöcke erscheinen selten – einmal alle 10.000 Blöcke. Wenn Sie das Block-Mining beschleunigen, ohne die Synchronisierungszeit zu beeinträchtigen, werden verwaiste Blöcke häufiger angezeigt.

Die Entwickler von Ethereum erhöhten die Geschwindigkeit des Blockabbaus auf 13 Sekunden, und Bergleute bauen regelmäßig abgelehnte Blöcke ab.

Timing-Problem

Um die Zeitsynchronisation nutzen zu können, benötigen Sie eine Uhr. Kryptowährungen haben eine eigene Uhr und einen eigenen Zeitstempel. Es ist nicht genau, weil es keine zentrale Uhr gibt, die konsultiert werden kann.

Der Knoten kann dem Zeitstempel nicht vertrauen und ermittelt daher den Durchschnitt dieses Werts:

  1. Fordert Ortszeit von anderen Knoten an.
  2. Zählt den Median der Zeitstichprobe.
  3. Passt seine Zeit basierend auf diesem Median an.

Eine solche Synchronisation ist nicht ideal: Wenn Sie sich auf den Zeitstempel konzentrieren, wird möglicherweise ein neuer Block früher als der vorherige angezeigt.

Aber die Zeit muss nicht in Sekunden gezählt werden.Dazu können Sie beliebige Intervalle wie fallende Wassertropfen nutzen. Hauptsache, die Uhrzeit ist auf allen Uhren gleich. Wenn die Uhr eines Soldaten schnell geht, greift er vor den anderen Soldaten an.

Um das Problem der Zeitsynchronisation zu lösen, hat Solana eine dezentrale Uhr erfunden – das Proof of History-Protokoll.

Wie der Beweis der Geschichte funktioniert

Proof of History funktioniert wie eine Sanduhr. Die Sandkörner in der Uhr sind wie Perlen mit einem Faden zusammengebunden. Sand fließt von der oberen Schüssel zur unteren.

Die Sandkörner fallen mit unterschiedlicher Geschwindigkeit, aber wir können die Anzahl der Sandkörner in der unteren Schüssel berechnen:

  1. Malen wir ein Sandkorn grün, das andere rot, den Rest malen wir nicht an.
  2. Zuerst fällt ein grünes Sandkorn, dann mehrere farblose und ein rotes.
  3. Wir kennen das Intervall der Sandkörner in Sekunden nicht, aber wir wissen, wie viele farblose Sandkörner zwischen Grün und Rot fielen. Wir können sagen: Das rote Sandkorn fiel durch N Sandkörner nach dem Grün.
  4. Wenn wir die Sandkornkette entlang des Fadens an den Anfang zurückspulen, werden wir feststellen, dass das grüne Sandkorn X in der Zählung ist. Rotes Sandkorn - X + N.

Proof of History ist eine Hash-Funktion mitbestätigte Vorlaufzeit. Wenn wir PoH durchlaufen und das Ergebnis für die nächste Berechnung verwenden, ist die Ausgabe eine Kette verwandter Hashes - ein Faden mit Sandkörnern.

Beschleunigen Sie die Blockchain auf 710.000 Transaktionen pro Sekunde: Überprüfung des Proof of History-Algorithmus 

Wie funktioniert Proof of History?Validatoren zählen PoH und zeichnen die Ergebnisse auf:PoH-Hash und Hashing-Sequenznummer – Anzahl. Anhand dieser Ergebnisse kann überprüft werden, dass der Leiter jeden PoH berücksichtigt hat. Sie können auch die Reihenfolge nachweisen, in der die Hashes erhalten wurden: Hash Y wurde nach Hash X und vor Hash Z erhalten.

Sandkörner Proof of History kann gemalt werden -schreibe ihnen Ereignisse. Wenn Sie die Hashes ab dem ersten PoH-Wert zählen, können Sie die relative Zeit des Ereignisses bestimmen. Validatoren überprüfen die Reihenfolge der PoH-Hashes und ermitteln die chronologische Reihenfolge der Transaktionen.

Wie PoH den Blockchain-Durchsatz erhöht und blockierte Blockprobleme löst

Solana erstellt einen Zeitplan für die Leader Schedule-Knoten, um ihre Aktionen zu synchronisieren. Die geplante Zeit wird in Proof of History-Hashes gemessen. So funktioniert es:

  1. Der erste Validator wird zum Leader für den Zeitraum von 0 bis 1000 PoH-Hashes.
  2. Es berechnet den Proof of History-Hash, verifiziert die Transaktion und stempelt sie. Es enthält den öffentlichen Schlüssel, den Wert und die Sequenznummer des PoH-Hashs.
  3. Der Leiter sendet die Transaktion an zwei Prüfer. Sie überprüfen es und geben es an andere Prüfer weiter.
  4. Der Führungszeitraum des nächsten Validators beträgt 1001 bis 2000 Hashes. Der Validator zählt die Zeit im Proof of History und weiß, wann er zum Anführer wird.

Der Leader-Rotationsalgorithmus reduziert die ProduktionszeitBlock bis zu 0,4 Sekunden und löst das Problem der verwaisten Blöcke. Validatoren werden nach einem Zeitplan zu Führungskräften. Ihre Arbeitsschichten (Slot) überschneiden sich nicht: Der Validator erstellt den abgelehnten Block nicht in einer anderen Schicht.

Solana-Erfahrung: Skalieren ohne Scherben

Die Entwickler von Ethereum planen, das Skalierungsproblem durch Sharding zu lösen: Das Netzwerk wird in mehrere Subnetzwerke (Shards) mit einer separaten Blockchain und Knoten unterteilt. Diese Lösung hat Nachteile:

  • Es ist einfacher, einen 51% igen Angriff mit verwaisten Blöcken durchzuführen.
  • schwieriger zu validierende Daten;
  • Dies kann sich negativ auf die Dezentralisierung auswirken.

Solana skaliert dank solcher Entwicklungen ohne Scherben:

  • Transaktionsübertragungsprotokolle für Turbinen und Gulfstream;
  • verteilte Speicherung von Daten von Archivierern;
  • Optimierung von Cloudbreak-Transaktionsdatensätzen.

Turbine und Gulfstream teilen Transaktionen in Chargen auf:

  1. Der Leiter übergibt Teile der Transaktion an zwei zufällige Prüfer. Dies ist schneller als das Übergeben vollständiger Blöcke an Knoten.
  2. Validatoren tauschen diese Teile aus und sammeln so die gesamte Transaktion.

Beschleunigen Sie die Blockchain auf 710.000 Transaktionen pro Sekunde: Überprüfung des Proof of History-Algorithmus 

Austausch von Transaktionsteilen

Archiver sind einzelne Knoten, die Stapel von zufälligen Validatoren aufzeichnen. Das Archivierungsprotokoll verteilt die Blockchain unter den Archivierern.

Cloudbreak optimiert die Multithread-Aufzeichnung auf Festplatte: Archivierer zeichnen schnell kleine Datenmengen auf.

Wenn Sie eine 1-Gigabyte-Blockchain zwischen brechenBei Hunderten von Archivierern beträgt die Gesamtmenge der Blockchain im Netzwerk 1,33 GB: 1 Gigabyte Blockchain und 0,33 Gigabyte Bestätigungscodes. In Bitcoin speichern Knoten insgesamt 1 Gigabyte Blockchain - 100 Gigabyte.

Warum Blockchain hohe Bandbreite

Während der Tests verarbeiteten 50 Knoten im Solana-Netzwerk 191.000 Transaktionen pro Sekunde bei Spitzenlast. Die durchschnittliche Netzwerkbandbreite beträgt 60.000 TPS.

Für ressourcenintensive Systeme und Anwendungen ist ein hoher Durchsatz erforderlich: Austausch, Werbeplattformen und Dateispeicher.

Ein praktisches Beispiel ist die Arbeit von 5G-Anbietern. 5G-Türme haben eine geringe Reichweite. Für Türme mit einer Geschwindigkeit von 20 Mbit / s - weniger als 200 Meter.

Anbieter brauchen viele 5G-Türme. Mit der Zunahme der Zahl der Türme wird es schwieriger, die Verifizierung der Abonnenten zu überwachen und Zahlungen für das Internet zu berechnen.

„Anbieter müssen Tausende verarbeitentechnische Anforderungen jedes neuen Turms. Blockchain wird dazu beitragen, die Verkehrsabrechnung zu automatisieren, Zahlungen zu berechnen und Benutzer zu überprüfen “, kommentierte der Entwickler Solana

Nach Schätzungen des Solana-Projekts sind Smartphone-BesitzerSenden Sie Türme 50.000 technische Anfragen pro Sekunde. Solana wird in der Lage sein, eine solche Anzahl von Transaktionen zu verarbeiten und die Überprüfungs- und Zahlungsprozesse für Anbieter zu vereinfachen. Dank dessen wird der 5G-Service billiger und die Tarife günstiger.

Schlussfolgerungen

Wenn Kryptowährungen mit zentralisierten Systemen konkurrieren wollen, müssen sie ihren Durchsatz erhöhen. Und um dies zu erreichen, beschleunigen Sie die Synchronisierung von Knoten.

Zentralisierte Systeme verwenden eine interne Uhr. Google synchronisiert Datenbanken mithilfe von Atomuhren, Yandex synchronisiert Datenbanken mithilfe eines zentralen NTP-Servers. Proof of History ist ihr dezentrales Gegenstück.

Vielleicht zukünftige zentralisierte ProjekteSie verwenden Proof of History, um Aktionen einfacher zu synchronisieren: Umschalten der Betriebsmodi, Sichern von Datenbanken und verteilte Berechnungen.