Lightning Network und eine grobe Schätzung seiner Wirksamkeit

Die überwiegende Mehrheit der Leute, die klug genug sind, um zu verstehen, was Kryptowährungen sind, Probleme mit der Leistung der Blockchain des Bitcoin- und Blitznetzwerks, glaubt immer noch naiv, dass diese Technologie alle Probleme über Nacht lösen kann und es ermöglicht, die Blockchain fast bis unendlich zu skalieren.

Ich werde versuchen, diese Missverständnisse zu zerstreuen.

Die klassische Blockchain in ihrer reinsten Form, bei der jeder Knoten alle Transaktionen über sich selbst durchläuft, ist nach dem derzeitigen Stand der Technik nicht in der Lage, eine große Anzahl von Transaktionen zu speichern und zu verarbeiten. Selbst wenn Sie die Größe des Transaktionsspeicherblocks nicht auf ein Limit beschränken (in Bitcoin sind es 1 MB + 3 MB von der Segwit-Sidechain), wird die Transaktionsverarbeitungsgeschwindigkeit durch die Funktionen der Endknoten begrenzt (ich spreche nicht von SPV-Wallets, die der Transaktionsüberprüfung mit vollständigen Knoten voll vertrauen), jetzt gibt es nur noch wenige hundert Millionen Transaktionen pro Tag (250 Millionen Transaktionen werden beim ersten Blockchain-Download mit einer Neuinstallation von bitcoin-qt auf einem modernen Computer vollständig überprüft. Dies dauert etwa 12 Stunden, mit einer hervorragenden Internetverbindung und einer SSD-Festplatte. schwache Intel-Celeron-Maschine - das Laden dauert 3 Tage) - jetzt sind es ungefähr 5-6.000 Transaktionen pro Sekunde (zum Beispiel zeigen die Bitshares-Blockchain-Tests der Graphen-Infrastruktur 2500 tps, aber bei Verwendung von Serverhardware mit einer großen Anzahl von Prozessoren beträgt das theoretische Maximum dagegen 150 t tps). .

Die Aufgabe, Transaktionen zu überprüfen, wird linear skaliert, wenn Sie die Last auf mehrere Computer verteilen, erhöht jedoch auch linear die Kosten für Geräte aus der Last im gesamten Netzwerk. Dies ist unpraktisch, wenn Sie Ihren Dienst aktualisieren möchten, der Gelder von Benutzern akzeptiert und keinem anderen vertrauen kann Service.

Dies ist offensichtlich - die Blockchain benötigt Technologien, um ihre Leistung nicht linear zu skalieren.

Sidechains sind die besten, die in letzter Zeit in der Kryptoökonomie vorgeschlagen wurden, und gleichzeitig potenziell fatal für die Komponente von Kryptowährungen, für die sie geliebt werden - Unabhängigkeit von einem einzigen Fehlerpunkt und Zentralisierung der Kontrolle über die Benutzerfinanzen.

Sidechains, die zusätzliche Informationen in ihrem Repository speichern


Ein gutes Beispiel für eine solche Sidechain ist - segwit, dieses Krücken-Update, mit dem Sie die Funktionen der Bitcoin-Blockchain (und ihrer Gabeln) erweitern können, ohne die Kompatibilität mit alten Kunden radikal beeinträchtigen zu müssen. Mit segwit können Sie die Anzahl der Transaktionen in einem Block hauptsächlich erhöhen, ohne sie zu erweitern, indem Sie einen Teil der Transaktionsinformationen in einen separaten Speicher übertragen. Das heißt, Jede Transaktion hinterlässt eine Markierung in der Blockchain.

Dies führt nicht zu einer spürbaren Steigerung der Blockchain-Leistung, der durchschnittlichen Prognosen - 2-2,5-fache Steigerung und des theoretischen Maximums - 4-mal mehr Transaktionen, wenn alle von ihnen multisig p2sh sind (z. B. LN-Clearing).

Wenn Sie segwit mit der üblichen Erhöhung der Blockgröße auf 4 MB vergleichen, ist dies nicht anders, auch wenn eine etwas höhere CPU-Last erzielt wird. Segwit brachte jedoch andere Technologien sowie die Kompatibilität mit Legacy-Kunden mit sich. Dies ist eine notwendige Maßnahme, die schwer abzulehnen ist.

Die einfachste und effektivste Sidechain ist eine reguläre Bank (oder einige Börsen).


... mit einem Kryptowährungskonto - Sie überweisen Münzen auf Ihr Bankkonto und können Ihre Münzen zwischen Kunden dieser Bank übertragen, ohne Transaktionen in die öffentliche Blockchain aufzunehmen (für einige Kryptowährungsbörsen ist dies eine Codeübertragung). Natürlich speichert die Bank diese Transaktionen in ihrem Format für sich selbst und zur finanziellen Überwachung. Es ist klar, dass beim Versuch, eine Überweisung an eine andere Bank vorzunehmen, eine Blockchain-Transaktion angezeigt wird. Die Banken können sich jedoch darauf einigen, diese Überweisungen nach ihren eigenen Regeln vorzunehmen, indem sie beispielsweise den Staat als Garant für die Ausführung von Transaktionen verwenden.

Somit können Transaktionen niemals in die Blockchain gelangen und diese dadurch vollständig entladen.

Die Nachteile gewöhnlicher Banken sind elementar - volles Vertrauen in die Bank ist erforderlich, und es gibt keine Garantie dafür, dass die Münzen, die Sie zur Aufbewahrung an sie überwiesen haben, unbrauchbar bleiben. Darüber hinaus ist es üblich, Benutzerinvestitionen für Ihre eigenen Bedürfnisse zu verwenden. Dies ist eine sehr faule Praxis und das Ergebnis des regelmäßigen Zusammenbruchs der Bankensysteme, da Banken im Krisenfall einfach nicht ihren Verpflichtungen nachkommen und bereits von ihren Kunden ausgegebenes Geld ausgeben können.

Fortschrittlichere Technologie - Blitznetzwerk


... wenn Sie der Bank nicht blindlings Ihr Geld anvertrauen, können Sie sich auf ein Zwei-Wege-Versprechen einigen, wenn ein Benutzerpaar (von dem einer nicht unbedingt eine Bank ist) eine spezielle Transaktion (Vertrag) in der Blockchain blockiert, und zwar in gleicher Höhe, so dass die Differenz der Guthaben beträgt gegenseitige Schuldenverpflichtungen zeigen. Und am wichtigsten ist, dass es bei solchen Vereinbarungen möglich ist, ein Netzwerk von Benutzern aufzubauen, die an Verpflichtungen gebunden sind und mit ihren gesperrten Guthaben antworten, um Transaktionen an sie weiterzuleiten.

Eine Netzwerkübertragung zwischen Teilnehmern ist eine gleichzeitige Änderung der gegenseitigen Schuldenverpflichtungen in Höhe der Übertragung der Teilnehmer, die online zwischen dem Absender und dem Empfänger sind. Diese Änderungen spiegeln sich in keiner Weise in der Blockchain wider. Wenn jedoch die Anzahl der Einwegtransfers insgesamt die Anzahl der gesperrten Gelder überschreitet, müssen Sie die Guthaben auf irgendeine Weise ausgleichen, z. B. mithilfe von Schleifen im LN-Netzwerk oder durch Senden der erforderlichen Mittel durch die Blockchain.

Von hier aus sehen wir, dass die einzige Strategie, mit der Sie mit LN die Anzahl der verarbeiteten Transaktionen unendlich skalieren können, darin besteht, dass Benutzer Münzen mit einer durchschnittlichen Gesamtveränderung der Guthaben von Null aneinander senden. Dies ist natürlich nur möglich, wenn das Netzwerk zu einem zentralen Knoten degeneriert, in dem alle Clients Benutzer der Blockchain sind, aber es nicht erforderlich ist, ihre Gelder zu speichern und ihr zu vertrauen.

Zuverlässig, effizient und zentralisiert , da es in einem solchen System möglich ist, die Überweisung von Münzen unter einem beliebigen Vorwand zu verweigern , um beispielsweise alle Überweisungen von Personen zu blockieren, die die Anforderungen der Finanzüberwachung nicht erfüllen. Wenn Ihr Land beispielsweise plötzlich unter die Sanktionen einer der größten Wirtschaftszonen fällt - der Europäischen Union / USA / China / ... -, werden Ihre Sicherheiten möglicherweise durch Gerichtsbeschluss blockiert, oder wenn die Bank Ihnen das Risiko eines Geldverlusts auferlegen möchte, wenn Transaktionen wurden gegen Waren oder Dienstleistungen ausgetauscht, die verboten sind und die die Regierung zu ihren Gunsten auswählen konnte.

Es wird nicht so beängstigend sein, wenn LN nicht die einzige verfügbare Möglichkeit ist, die Blockchain zu verwenden, aber es besteht die Gefahr, wie ich zuvor geschrieben habe, wenn die Anzahl der Transaktionen im Block auf 1 oder 2 MB begrenzt bleibt.

Inwieweit kann das Beleuchtungsnetzwerk die Übersetzungsleistung steigern?


Basierend auf dem Hauptmerkmal von LN muss anstelle der Gesamtzahl der Transaktionen die Anzahl der Blockchain- und Clearing-Transaktionen berücksichtigt werden, die für einen bestimmten Zeitraum pro Benutzer erforderlich sein können, da sich die Benutzer den gleichen Betrag nacheinander in beliebigen Mengen ohne Provisionen senden können, wenn Es gibt keine Zwischenknoten zwischen ihnen.

Erstens muss jeder neue Benutzer des Netzwerks mindestens eine Auffüllung seiner Brieftasche vornehmen, und dies sollte eine Blockchain-Transaktion sein. LN-Benutzer können nur ein Guthaben ungleich Null haben.

Zweitens ist zum Herstellen einer Verbindung mit dem LN-Netzwerk eine Eröffnungstransaktion erforderlich, die die Salden des Eingabeknotens und des Benutzers blockiert.

Drittens, aber nicht unbedingt, ist es eine abschließende Transaktion für einen Benutzer, das LN-Netzwerk zu verlassen, beispielsweise zu einem anderen Netzwerkknoten zu wechseln, um die Gebühren zu optimieren.

Viertens ist das größte Transaktionsvolumen das Clearing, das Ausgleichen von Guthaben auf den Konten von LN-Knoten. Jede größere Übertragung durch das Netzwerk erhöht die Wahrscheinlichkeit einer solchen Transaktion und jedes Zwischenknotens im Netzwerk. Darüber hinaus ist es möglich, dass bei der nächsten Transaktion eines Benutzers jeder Knoten im Netzwerk eine Löschung ausstellen muss, wenn das Netzwerk nicht effizient aufgebaut ist (es gibt keine Zyklen). Je höher der Wert der Sicherheiten zwischen den LN-Knoten ist, desto seltener muss gelöscht werden. Große Knoten sind in der Lage und optimieren ihre Ausgaben so, dass das Löschen durch die Blockchain minimiert oder sogar eliminiert wird, aber normale Benutzer können dies nicht. Selbst im besten Fall blockieren aktive Benutzer nur einen kleinen Teil des durchschnittlichen Nachschubs (z. B. einmal im Monat ein Gehalt zahlen oder eine Vergütung für die Arbeit erhalten), was bedeutet, dass sie in der Zeit zwischen dem Erhalt von Geldern Clearing-Transaktionen benötigen. Im Idealfall führt ein Benutzer 1 Blockchain-Transaktion pro Monat durch.

Das vierte Element trägt die meisten Transaktionen bei, und Sie können abschätzen, wie viele solcher aktiven Benutzer die Blockchain verwenden können.

Die Anzahl der Transaktionen in der Blockchain mit 1 MB Limit ohne Segwit beträgt 262 t. pro Tag oder 7883t. im Monat. Wir multiplizieren den Koeffizienten, der dank segwit verfügbar sein wird, mit 2,5. Wir erhalten 19 Millionen Transaktionen.

Das Ergebnis sind 19 Millionen aktive Benutzer. Dies ist das Maximum, wie viel 1 MB Legacy-Bitcoin-Block sich selbst aufnehmen kann.

Und keine einmaligen Erweiterungen des Blocklimits auf 2 oder bis zu 8 MB merklich wird sich diese Zahl nicht ändern. 19 Millionen Menschen oder 190 Millionen sind katastrophal klein. Die Zukunft der Kryptowährungen sind Milliarden aktiver Benutzer.

Natürlich ist es offensichtlich, dass ein typischer aktiver Bitcoin-Benutzer in naher Zukunft, 1-3 Jahre, kein monatliches Gehalt erhält und seine Ausgaben auch nicht regelmäßig sind, was bedeutet, dass eine Schätzung von 1 Clearing pro Monat möglicherweise fehlerhaft ist, aber eine ernsthafte Blockchain-Analyse erforderlich ist, um dies zu bewerten , und dies ist nicht die Art von Arbeit, die im Rahmen des Schreibens eines einfachen Artikels geleistet werden kann.

Wenn Sie während dieser Zeit keine technische und organisatorische Lösung finden, um die Begrenzung der Blockgröße zu erhöhen, müssen Netzwerkbenutzer die Verwendung und Speicherung ihrer Gelder unter ihrer eigenen Kontrolle für lokale Geldbörsen, Online-Geldbörsen und Banken aufgeben. Und die steigenden Kosten für Blockchain-Transfers werden sie dazu bringen, dies zu tun.

Source: https://habr.com/ru/post/de406655/


All Articles