Ethereum Blockgröße: Der aktuelle Stand und zukünftige Entwicklungen

⒈ Wie groß ist die Ethereum -Blockchain (wie hoch ist die Höhe des Ethereum -Blocks)

Ethereum Public Chain Blockhöhe

Laut früheren Nachrichten wird die Ethereum -Blockhöhe jetzt auf 4730660 angepasst! Ethereum ist eine brandneue offene Blockchain -Plattform, mit der jeder dezentrale Anwendungen einrichten und verwenden kann, die über Blockchain -Technologie auf der Plattform ausgeführt werden.

Wie Bitcoin wird Ethereum weder von irgendjemandem noch von irgendjemandem kontrolliert - es handelt sich um ein Open -Source -Projekt, das von vielen Menschen auf der ganzen Welt erstellt wurde. Was sich vom Bitcoin -Protokoll unterscheidet, ist, dass Ethereum sehr flexibel und anpassungsfähig ist. Das Erstellen neuer Anwendungen auf der Ethereum -Plattform ist sehr einfach. Mit der Veröffentlichung von Homestead kann jeder Anwendungen auf der Plattform sicher verwenden.

Ethereum ist eine programmierbare Blockchain. Es gibt Benutzern keine Reihe von Voreinstellungen, ermöglicht Benutzern jedoch, komplexe Operationen zu erstellen, wie sie es wünschen. Auf diese Weise kann es als Plattform für eine Vielzahl von dezentralen Blockchain -Anwendungen dienen.

Ethereum Blockchain-Größe

Im Gegensatz zum Bitcoin-Netzwerk begrenzt Ethereum die Größe jedes Blocks nicht explizit, sondern erzwingt stattdessen die Größe jedes Blocks durch Blockgaslimit.

Ethereums Blockgaslimit -Einstellung begrenzt effektiv das Transaktionsvolumen, das in einem Block verpackt werden kann. Der Gaslimit -Parameter wird gemeinsam von Ethereum -Bergleuten bestimmt, dh dynamisch erhöht oder verringert der gaslimitische Wert durch Abstimmung.

Die jüngste Abstimmung war in der zweiten Halbzeit 2019. Die Bergleute stimmten zusammen, um den Gaslimit von Ethereum Block von den ursprünglichen 8 Millionen Gaseinheiten auf 10 Millionen zu erhöhen, was die Größe jedes Blocks im Vergleich zum vorherigen Block um etwa 25% erhöhte, was theoretisch das TPS des Ethereum -Netzwerks erhöhte.

Was ist die Blockchain -Expansion?

Die Fähigkeit eines normalen Benutzers, Knoten auszuführen, ist entscheidend für die Dezentralisierung von Blockchain

Stellen Sie sich vor, Sie erhalten gegen 2 Uhr morgens einen Notruf von jemandem vom anderen Ende der Welt, der Ihnen hilft, den Bergbaupool zu betreiben (Pool einzubinden). Ab vor etwa 14 Minuten haben sich Ihr Pool und mehrere andere von der Kette getrennt, während das Netzwerk immer noch 79% seiner Rechenleistung beibehält. Abhängig von Ihrem Knoten sind die meisten Kettenblöcke ungültig. Zu diesem Zeitpunkt trat ein Gleichgewichtsfehler auf: Der Block schien 4,5 Millionen zusätzliche Token an eine unbekannte Adresse in die Irre geführt zu haben.

Eine Stunde später haben Sie und zwei weitere kleine Mining-Pool-Teilnehmer, die ebenfalls auf einen Unfall gestoßen sind, einige Blockbrowser und Börsen, jemanden, der einen Twitter-Link in einem Chatraum veröffentlichte, beginnend mit "Ankündigung eines neuen Fonds für nachhaltige Vertragsentwicklung".

Am Morgen waren die Diskussionen auf Twitter und in einem Community -Forum, das Inhalt nicht zensierte, weit verbreitet. Bis dahin wurde jedoch ein großer Teil der 4,5 Millionen Token in andere Vermögenswerte umgewandelt, und es wurden Milliarden von Dollar an Defi -Transaktionen durchgeführt. 79% der Konsensknoten sowie alle wichtigen Blockchain -Browser und leichten Brieftaschenendpunkte folgen dieser neuen Kette. Vielleicht finanziert der neue Entwicklerfonds einige Entwicklungen, oder vielleicht wird all dies durch führende Bergbaupools, Börsen und deren Cronyme verschluckt. Unabhängig davon, was das Ergebnis ist, ist der Fonds tatsächlich zu einem Erleichterungen geworden, und gewöhnliche Benutzer können nicht widerstehen.

Vielleicht gibt es einen solchen Themenfilm. Vielleicht wird es von Molochdao oder anderen Organisationen finanziert.

Wird dies in Ihrer Blockchain geschehen? Die Eliten Ihrer Blockchain -Community, einschließlich Bergbaupools, Blockbrowser und Hosting -Knoten, sind möglicherweise gut koordiniert und sind wahrscheinlich im selben Telegrammkanal und in der WeChat -Gruppe. Wenn sie wirklich plötzlich die Regeln der Vereinbarung zu ihrem Vorteil ändern wollen, können sie diese Fähigkeit haben. Die Ethereum -Blockchain löst den Konsensfehlern in zehn vollständig aufStd. Wenn es sich um eine Blockchain handelt, die nur von einem Client implementiert ist und nur Codeänderungen an Dutzenden von Knoten bereitstellen muss, kann dies schneller Änderungen an den Client -Code koordinieren. Der einzig zuverlässige Weg, solchen sozialen kollaborativen Angriffen zu widerstehen, ist die "passive Verteidigung", und diese Macht stammt von einer dezentralen Gruppe: Benutzer.

Stellen Sie sich vor, ein Benutzer führt einen Blockchain -Überprüfungsknoten (unabhängig davon, ob es sich um eine direkte Überprüfung oder eine andere indirekte Technologie handelt) und lehnt automatisch Blöcke ab, die gegen Protokollregeln verstoßen, selbst wenn mehr als 90% der Minen sich entwickeln, wenn sich die Geschichte entwickelt, wenn sich der Arbeiter oder der Staker diese Blöcke unterstützt.

Wenn jeder Benutzer einen Validierungsknoten ausführt, wird der Angriff bald fehlschlagen: Einige Bergbaupools und Börsen werden während des gesamten Prozesses dumm aussehen. Aber auch wenn nur einige Benutzer den Überprüfungsknoten ausführen, kann der Angreifer keinen großen Sieg gewinnen. Im Gegenteil, Angriffe können zu Verwirrung führen, und verschiedene Benutzer sehen unterschiedliche Blockchain -Versionen. Im schlimmsten Fall wird die folgende Marktpanik und die potenziell laufenden Kettengabeln die Gewinne der Angreifer erheblich verringern. Die Idee, auf einen solchen langwierigen Konflikt zu reagieren, kann selbst die meisten Angriffe stoppen.

HASUs Ansicht dazu:

"Eine Sache, die wir klar machen müssen, ist, dass wir böswilligen Protokolländerungen widerstehen können, weil eine Kultur der Blockchain von Benutzerverifizierung von Benutzern vorhanden ist, nicht wegen POW oder POS." Wenn jeder Knoten ausführt, scheitert der Angreifer. Wir wissen nicht, was der genaue Schwellenwert für die Beginn der Herdenimmunität gegen einen kollaborativen Angriff, aber eines ist absolut klar: Je mehr gute Knoten, desto weniger böswillige Knoten werden es sein und wir brauchen definitiv mehr als ein paar hundert oder tausend.

Wie hoch ist die Obergrenze für die vollständige Arbeit?

Um so viele Benutzer wie möglich zu ermöglichen, den vollständigen Knoten auszuführen, konzentrieren wir uns auf gewöhnliche Verbraucherhardware. Selbst wenn Sie problemlos dedizierte Hardware kaufen können, die den Schwellenwert für einige volle Knoten senken können, ist die Verbesserung der Skalierbarkeit nicht so gut, wie wir es uns vorgestellt haben.

Die Fähigkeit des vollständigen Knotens, eine große Anzahl von Transaktionen zu verarbeiten, ist hauptsächlich durch drei Aspekte begrenzt:

Rechenleistung: Wie viele CPUs können wir dividieren, um Knoten auszuführen?

Bandbreite: Wie viele Bytes kann ein Block basierend auf der aktuellen Netzwerkverbindung basieren?

Speicher: Wie viel Platz können wir Benutzer zum Speichern bitten? Wie schnell sollte seine Lesegeschwindigkeit außerdem sein? (D.h. Wir können diese drei Faktoren wiederum diskutieren:

Computerleistung

Fehler Antwort: 100% des CPUs sollten zur Blockverifizierung verwendet werden

Richtige Antwort: etwa 5-10% der CPUs können für die Blockverifizierung verwendet werden. Bei Angreifern, die Codeschwächen verwenden, benötigen die längeren Verarbeitungszeit als herkömmliche Transaktionen. Wenn ich eine Minute lang getrennt werde, sollte ich die Synchronisation in wenigen Sekunden vervollständigen können. Der laufende Knoten sollte den Akku nicht sehr schnell abtropfen lassen, und es sollte auch andere Anwendungen verlangsamt. "Warum nur 5-10%?" konzentrierengleichzeitig Blöcke. Es gibt viele Korrekturen für dieses Problem, z. B. Bitcoinng oder den POS -Beweis für den Einsatz. Aber diese haben die anderen vier Probleme nicht gelöst, sodass sie bei der Skalierbarkeit nicht große Fortschritte erzielten, wie viele erwartet hatten.

Parallelität ist auch keine magische Medizin. Im Allgemeinen wurden auch Clients, die anscheinend einsthread-Blockchains zu sein scheinen, parallelisiert: Signaturen können durch einen Thread überprüft werden, während die Ausführung durch andere Threads durchgeführt wird, und es gibt einen separaten Thread, der die Transaktionspool-Logik im Hintergrund verarbeitet. Je näher die Nutzungsrate aller Threads auf 100%liegt, desto mehr Energieverbrauch konsumieren die laufenden Knoten und je niedriger der Sicherheitsfaktor für DOS.

Bandbreite

Falsche Antwort: Wenn 10 MB-Blöcke in 2-3 Sekunden generiert werden, sind die meisten Benutzer-Netzwerke größer als 10 MB/s. Natürlich können sie mit diesen Blöcken umgehen. Richtige Antwort: Vielleicht können wir 1-5 MB Blöcke alle 12 Sekunden verarbeiten, aber das ist immer noch schwierig. Heutzutage hören wir oft von Internetverbindungen. Statistiken darüber, wie viel Bandbreite bereitgestellt wird: 100 Mbit / s oder sogar 1 Gbit / s sind häufig. Es gibt jedoch einen großen Unterschied zwischen der behaupteten Bandbreite und der erwarteten tatsächlichen Bandbreite aus folgenden Gründen: "Mbps" bedeutet "Millionen von Bits pro Sekunde"; Ein bisschen ist 1/8 eines Byte, daher müssen wir die beanspruchte Bitnummer um 8 teilen, um die Anzahl der Bytes zu erhalten.

Netzwerkbetreiber machen wie andere Unternehmen oft Lügen aus.

Es gibt immer mehrere Anwendungen, die dieselbe Netzwerkverbindung verwenden, sodass der Knoten nicht ausschließlich die gesamte Bandbreite besetzen kann.

P2P-Netzwerk führt unweigerlich Overhead ein: Knoten laden normalerweise mehrmals denselben Block herunter und laden neu auf (ganz zu schweigen davon, dass Transaktionen über Mempool ausgestrahlt werden, bevor sie in den Block verpackt werden).

Als Starkware 2019 ein Experiment durchführte, veröffentlichte sie erstmals einen 500 -KB -Block, nachdem die Kosten für Handelsdatengase reduziert worden waren und einige Knoten keine Blöcke dieser Größe verarbeiten konnten. Die Fähigkeit, große Blöcke zu handhaben, wurde und wird weiterhin verbessert. Aber egal was wir tun, wir können immer noch nicht die durchschnittliche Bandbreite in MB/Sec bekommen, und überzeugen uns, dass wir eine 1 -Sekunde -Verzögerung akzeptieren und die Fähigkeit haben, Blöcke dieser Größe zu verarbeiten.

Speicher

Falsche Antwort: 10TB

Richtige Antwort: 512GB

Wie Sie vielleicht erraten haben, ist das Hauptargument hier der gleiche wie an anderer Stelle: Der Unterschied zwischen Theorie und Praxis. Theoretisch können wir 8-TB-Festkörpertreiber bei Amazon kaufen (SSD oder NVME benötigt; HDD ist für Blockchain-Zustandspeicher zu langsam). Tatsächlich hat der Laptop, den ich in diesem Blog geschrieben habe, 512 GB, und wenn Sie die Leute zu Hardware kaufen lassen, werden viele Leute faul (oder sie können sich nicht $ 800 8 TBSSD leisten) und nutzen zentrale Dienste. Selbst wenn Sie eine Blockchain auf ein Speichergerät laden können, kann eine Menge Aktivität die Festplatte schnell abtropfen und Sie dazu zwingen, neue zu kaufen.

Eine Gruppe von Blockchain -Protokollforschern befragte den Speicherplatz aller Scheiben. Ich weiß, dass die Beispielgröße klein ist, aber immer noch

= "ikqb_image_caption"> Klicken Sie hier, um die Bildbeschreibung zu geben. Alle Daten, die ein vorhandener Knoten speichern muss, sind die Daten, die der neue Knoten herunterladen muss. Diese anfängliche Synchronisationszeit (und die Bandbreite) ist auch ein wichtiges Hindernis für Benutzer, um Knoten auszuführen. Während ich diesen Blog -Beitrag schrieb, brauchte ich ungefähr 15 Stunden, um einen neuen Getth -Knoten zu synchronisieren. Wenn die Nutzung von Ethereum um das 10 -fache zunimmt, dauert es mindestens eine Woche, um einen neuen Geth -Knoten zu synchronisieren, und führt eher zu eingeschränkten Internetverbindungen zu den Knoten. Dies ist bei einem Angriff umso wichtiger, bei dem eine erfolgreiche Antwort auf einen Angriff erfordert, dass der Benutzer einen neuen Knoten aktiviert, wenn ein Benutzer zuvor keinen Knoten ausgeführt hat.

InteraktionEffekt

Zusätzlich gibt es einen Interaktionseffekt zwischen diesen drei Arten von Kosten. Da die Datenbank eine Baumstruktur intern verwendet, um Daten zu speichern und abzurufen, steigt die Kosten für das Erhalten von Daten aus der Datenbank mit der logarithmischen Größe der Datenbank. Da die obere Ebene (oder die ersten Stufen) in RAM zwischenstrichen werden können, sind die Kosten für die Datenträgerzugriffskosten proportional zur Datenbankgröße und sind ein Vielfaches der zwischengespeicherten Datengröße im RAM.

Verstehe diesen Diagramm nicht wörtlich, verschiedene Datenbanken funktionieren unterschiedlich, normalerweise ist der Teil des Speichers nur eine separate (aber große) Ebene (siehe LSM -Baum, die in LevelDB verwendet werden). Aber die Grundprinzipien sind gleich.

Zum Beispiel, wenn der Cache 4 GB ist und wir annehmen, dass jede Schicht der Datenbank 4 -mal größer ist als die vorherige Schicht, erfordert der aktuelle ~ 64 -GB -Status von Ethereum ~ 2 Zugriffe. Wenn die Zustandsgröße jedoch um das 4 -fache auf ~ 256 GB steigt, erhöht sich dies auf ~ 3 Besuche. Daher kann eine 4-fache Zunahme der Gasgrenze tatsächlich in eine ~ 6-fache Erhöhung der Blocküberprüfungszeit umgewandelt werden. Dieser Effekt kann sogar noch größer sein: Die Festplatte dauert länger, wenn es darum geht, zu lesen und zu schreiben, wenn es voll ist, als wenn er im Leerlauf ist.

Was bedeutet das für Ethereum?

Ausführen eines Knotens ist jetzt eine Herausforderung für viele Benutzer, obwohl es immer noch möglich ist, reguläre Hardware zu verwenden (ich habe gerade einen Knoten auf meinem Laptop synchronisiert, als ich dies schrieb!). Daher sind wir im Begriff, einen Engpass zu begegnen. Das wichtigste Problem für Kernentwickler ist die Speichergröße. Daher werden derzeit Computer- und Daten Engpässe aufgelöst, selbst Änderungen der Konsensalgorithmen dürften eine signifikante Verbesserung der Gaslimit bewirken. Auch wenn Ethereums größte DOS -Schwäche gelöst wird, kann sie nur um 20%um 20%erhöhen.

Die einzige Lösung für das Problem der Speichergröße ist ein Staatelo und staatlich überfällig. Bei Stauress ermöglicht es, dass die Knotengruppe überprüft wird, ohne den dauerhaften Speicher aufrechtzuerhalten. Der überfällige Status wird den kürzlich nicht besuchten Zustand inaktivieren, und der Benutzer muss manuelle Nachweise zur Aktualisierung vorlegen. Diese beiden Wege wurden seit langem untersucht und haben eine Implementierung der Konzept-Nachweis über Staatenlosigkeit begonnen. Die Kombination dieser beiden Verbesserungen kann diese Bedenken erheblich lindern und Platz für eine signifikante Verbesserung der Gaslimit eröffnen. Aber auch nach der Implementierung eines überfälligen und staatlichen Staates kann Gaslimit nur sicher um das dreifache 3 -fache ansteigen, bis andere Beschränkungen funktionieren.

Eine weitere mögliche Zwischenmitte ist die Verwendung von ZK-Snarks, um Transaktionen zu validieren. ZK-SNARKS kann sicherstellen, dass gewöhnliche Benutzer ihren eigenen Status nicht speichern oder Blöcke überprüfen müssen, auch wenn sie noch alle Daten im Block herunterladen müssen, um vor Daten nicht verfügbar zu schützen. Auch wenn der Angreifer ungültige Blöcke nicht einreichen kann, wenn es zu schwierig ist, einen Konsensknoten auszuführen, besteht immer noch ein Risiko einer koordinierten Überprüfung des Angriffs. Daher können ZK-SNARKs die Knotenfunktionen nicht unendlich verbessern, sie können sie aber dennoch erheblich verbessern (möglicherweise 1-2 Größenordnungen). Einige Blockchains untersuchen diese Form auf Layer1, während Ethereum über das Layer2 -Protokoll (auch als Zkrollups bezeichnet) wie ZkSync, Loopring und Starknet profitiert.

Was passiert nach dem Sharding?

rasieren löst grundlegend die oben genannten Einschränkungen, da sie die Daten, die auf der Blockchain enthalten sind, aus den Daten entkoppelt, die ein einzelner Knoten verarbeiten und speichern muss. Knotenüberprüfungsblöcke erfolgen nicht durch das Herunterladen und Ausführen persönlicher, sondern verwenden fortschrittliche mathematische und kryptografische Techniken, um Blöcke indirekt zu überprüfen.

. Sharded-Blockchains können also sicher sehr hohe Durchsatzwerte aufweisen, die nicht-Sand-Blockchains nicht erreichen können. Dies erfordert eine Menge kryptografischer Techniken, um die naive vollständige Überprüfung effektiv zu ersetzen, um ungültige Blöcke abzulehnen. Dies kann jedoch getan werden: Die Theorie ist bereits im Fundament und ein Beweis für das KonzeptBasierend auf Entwurfsspezifikationen ist bereits im Gange.

Ethereum plant eine quadratische Sharding, wobei die allgemeine Skalierbarkeit durch die Tatsache begrenzt ist, dass die Knoten eine einzelne Shard- und Beacon -Kette gleichzeitig verarbeiten können, und die Beacon -Ketten müssen für jede Shard einige feste Managementarbeiten ausführen. Wenn die Scherben zu groß sind, kann der Knoten keinen einzigen Shard mehr verarbeiten, und wenn es zu viele Scherben gibt, kann der Knoten keine Beacon -Kette mehr verarbeiten. Das Produkt dieser beiden Einschränkungen stellt die Obergrenze dar.

Es kann sich vorstellen, dass wir durch kubisches Sharding oder sogar exponentielles Sharding weiter gehen können. In einem solchen Design wird die Datenverfügbarkeitsabtastung sicherlich komplexer, dies ist jedoch möglich. Ethereum übertrifft jedoch den quadratischen Fall nicht, da die zusätzlichen Skalierbarkeitsvorteile von Scherben von Transaktionsscherben zu Transaktionsschirten nicht tatsächlich erzielt werden können, unter der Prämisse, dass andere Risikoniveaus akzeptabel sind.

Was sind diese Risiken?

Mindestanzahl von Benutzern

Es kann sich vorstellen, dass eine Nicht-Segment-Blockchain, solange ein Benutzer bereit ist, teilzunehmen, ausgeführt werden kann. Dies ist jedoch bei Sharded Blockchains nicht der Fall: Ein einzelner Knoten kann nicht die gesamte Kette verarbeiten, sodass genügend Knoten benötigt werden, um die Blockchain gemeinsam zu verarbeiten. Wenn jeder Knoten 50 tPs und die Kette 10000 TPs verarbeiten kann, benötigt die Kette mindestens 200 Knoten, um zu überleben. Wenn die Kette zu irgendeinem Zeitpunkt weniger als 200 Knoten enthält, kann der Knoten dazu führen, dass der Knoten nicht mehr synchronisiert wird, oder der Knoten hört auf, ungültige Blöcke zu erkennen, oder viele andere schlechte Dinge können je nach Einstellungen der Knotensoftware stattfinden.

In der Praxis ist die minimale Anzahl von SAFES aufgrund der Notwendigkeit einer Redundanz (einschließlich Datenverfügbarkeitsabtastung) mehrmals höher als die einfache "Ketten -TPS geteilt durch Knoten -TPS". Für das oh2e Beispiel setzen wir es auf 1000 Knoten.

Wenn die Kapazität einer Sharded -Blockchain um das 10 -fache zunimmt, steigt die Mindestzahl der Benutzer ebenfalls um das 10 -fache. Jetzt fragen Sie sich vielleicht: Warum beginnen wir nicht mit geringerer Kapazität und erhöhen sich, wenn es viele Benutzer gibt? Weil dies unser tatsächlicher Bedarf ist und die Anzahl der Benutzer fällt und die Kapazität verringert?

Hier gibt es mehrere Fragen:

Blockchain Es ist nicht möglich, zuverlässig festzustellen, wie viele einzigartige Benutzer darauf sind, so Die Regierungsführung von Kapazitätsbeschränkungen kann leicht zur Quelle von Teilung und Konflikt werden.

Was ist, wenn viele Benutzer plötzlich gleichzeitig versehentlich getrennt werden?

Erhöhung der Mindestanzahl von Benutzern, die zum Starten einer Gabelung erforderlich sind, erschweren noch schwieriger gegen böswillige Kontrolle.

Die minimale Anzahl von Benutzern beträgt 1.000, was fast in Ordnung ist. Andererseits ist die minimale Anzahl von Benutzern auf 1 Million festgelegt, was definitiv nicht möglich ist. Sogar die Mindestzahl der Benutzer beträgt 10.000, was als riskant werden kann. Daher erscheint es schwierig, eine geschmierte Blockchain mit mehr als ein paar hundert Scherben zu rechtfertigen.

Historische Abrufbarkeit

Das wichtige Attribut von Blockchain, dass Benutzer wirklich Wert dauerhaft sind. Wenn ein Unternehmen bankrott geht oder das Ökosystem aufrechterhält, genutzt keine Vorteile mehr, bestehen die auf dem Server gespeicherten digitalen Vermögenswerte nicht mehr innerhalb von 10 Jahren. Und NFTs auf Ethereum sind dauerhaft.

Ja, 2372 Personen können Ihre verschlüsselte Katze immer noch herunterladen und überprüfen.

Aber sobald die Blockchain eine zu hohe Kapazität aufweist, wird es schwieriger, all diese Daten zu speichern, bis irgendwann ein großes Risiko auftritt, und einige historische Daten werden irgendwann niemand wird es speichern.

Es ist einfach, dieses Risiko zu quantifizieren. Multiplizieren Sie mit ~ 30, um die Daten pro Jahr (TB) in Einheiten der Datenkapazität der Blockchain (MB/Sec) zu erhalten. Die Datenkapazität des aktuellen Shard -Plans beträgt ca. 1,3 MB/s, so dass es ungefähr 40 TB/Jahr beträgt. Wenn es zunimmt10 Mal ist es 400 TB/Jahr. Wenn wir nicht nur auf die Daten zugreifen möchten, sondern auch bequem, benötigen wir auch Metadaten (z. Internetarchiv (Internet Archive) verwendet 50pb. Es kann also gesagt werden, dass dies die Obergrenze der Sicherheitsgröße der Sharded Blockchain ist.

Es scheint also, dass das Ethereum -Shard -Design in diesen beiden Dimensionen tatsächlich einem angemessenen maximalen Sicherheitswert sehr nahe ist. Die Konstante kann ein wenig erhöht werden, aber nicht zu viel.

Schlussfolgerung

Es gibt zwei Möglichkeiten, die Blockchain zu erweitern: grundlegende technische Verbesserungen und einfacher Verbesserung der Parameter. Erstens klingt die Steigerung der Parameter attraktiv: Wenn Sie auf Essenspapier mathematisiert werden, ist es leicht zu der Annahme, dass ein Laptop der Verbraucher-Grade Tausende von Transaktionen pro Sekunde abwickeln kann, ohne dass ZK-Snark, Rollups oder Scherben erforderlich sind. Leider gibt es viele subtile Gründe, warum dieser Ansatz grundsätzlich fehlerhaft ist.

Computer, die Blockchain -Knoten laufen, können nicht 100% ihrer CPU verwenden, um Blockchains zu überprüfen. Sie benötigen einen großen Sicherheitsrand, um unerwarteten DOS -Angriffen zu widerstehen. Sie benötigen die Sicherungskapazität, um Aufgaben wie die Verarbeitung von Transaktionen in Speicherpools auszuführen, und Benutzer möchten sie nicht gleichzeitig verwenden, wenn sie Knoten auf dem Computer ausführen. Die Bandbreite ist ebenfalls begrenzt: Eine 10 -MB/s -Verbindung bedeutet nicht, dass 10 MB Blöcke pro Sekunde verarbeitet werden können! Vielleicht können 1-5 MB Blöcke alle 12 Sekunden verarbeitet werden. Gleiches gilt für die Speicherung. Die Erhöhung der Hardwareanforderungen für das Ausführen von Knoten und die Begrenzung dedizierter Knotenbetreiber ist nicht die Lösung. Bei dezentralen Blockchains ist es entscheidend, dass gewöhnliche Benutzer Knoten ausführen und eine Kultur bilden können, dass laufende Knoten ein universelles Verhalten ist.

Was zu tun, wenn Blockchain -Netzwerkstaus

1

Was ist Netzwerkstaus

normalerweise auf ein Phänomen des Netzwerkausfalls bezieht: Ein Büro -LAN -Computer verwendet einen ADSLModem+Hub mit Routing -Funktion, um das Internet zu teilen. Wenn die Anzahl der Personen gleichzeitig relativ locker ist, wird das Netzwerk gleichzeitig nach und nach der Anzahl der Personen online ein und das Hub -Kollisionsanzeige -Licht blinken kontinuierlich.

In Blockchain -Anwendungen, unabhängig davon, ob es sich um digitale Währung, intelligente Verträge, dezentrale Handelssysteme usw. handelt, bestehen ihre Netzwerke aus unabhängigen Knoten. Verschiedene Operationen, die in Knoten wie Übertragungstransaktionen, Änderungen des Vertragsstatus usw. auftreten, werden in Form von Transaktionstransaktionsdaten an das Netzwerk übertragen und über Bergleute in den neuen Block verpackt, und bestätigt schließlich alle diese Vorgänge als Teil der Hauptkette.

Wenn es viele Knoten und eine Menge Gebrauch gibt, hat eine große Anzahl von Transaktionen keine Zeit, die innerhalb der normalen erwarteten Zeit verpackt werden kann, da sie alle im Netzwerk überlastet sind, und diese wartenden bestätigten Transaktionsdaten werden normalerweise im Gedächtnis des Knotens beibehalten.

2

Wie kommt es zu Netzwerkstaus. Da das Transaktionsvolumen weiter wächst, ist es für das Bitcoin -Netzwerk schwierig, Transaktionen schnell zu bestätigen, und das Blockchain -Netzwerk hat häufig eine Überlastung.

Das höchste im Blockchain -Netzwerk besteht darin, dass ein Rückstand von Zehntausenden von Transaktionen vorhanden ist und einige Transfertransaktionen bis zu Dutzende von Dollar sind. Wenn das Netzwerk überlastet ist, dauern die Transaktionen sogar mehrere Tage, um verpackt zu werden.

In der Tat gibt es für jede Art von Blockchain -Anwendung dieses Problem, wodurch Benutzer ständig über Transaktionsverzögerungen beschwert werden, aber auch indirekt die weit verbreitete Anwendung und die Zunahme des Benutzervolumens.

Was sollen wir also tun, wenn diese Probleme auftreten?

3

Wie zu lösenNetzwerkstaus

Es gibt nur die folgenden Methoden.

Die erste Art der Kapazitätserweiterung verbessert die Verarbeitungskapazität.

Die zweite Art des Abfangens besteht darin, die Anzahl der Blockchain -Pakete zu begrenzen.

Die oh2en zwei Methoden werden kombiniert. Forscher

Universität von Sydney haben ein neues Blockchain -System entwickelt, das in 100 Maschinen einen Durchsatz von 440.000 Transaktionen pro Sekunde erzielen kann, während der Transaktionsprozessor von Visa pro Sekunde 56.000 beträgt. Im Vergleich dazu sind Bitcoin -Transaktionen auf 7 Transaktionen pro Sekunde begrenzt, während die Ethereum -Blockchain 20 Transaktionen aufweist.

Nach dem Start des Jadechain Public Chain Systems wird das Problem der Netzwerküberlastung in Jade -ökologischen Anwendungen vollständig gelöst.

⒉ Wie groß ist der Block, als Bitcoin zum ersten Mal etabliert wurde?

es war 1 MB. Zu Beginn der Bitcoin -Einrichtung überschritt die Anzahl der Blöcke 36 Megabyte Transaktionsdaten nicht und die Blockgröße betrug nur 1 m. Die Blockgröße beträgt genau 1 m. Bitcoin -Block muss Datentransaktionen im BTC -Netzwerk dauerhaft aufzeichnen. Sobald die Daten klassifiziert sind, bildet sie ein Hauptbuch und fügt sie der Blockchain hinzu. Wenn der Block zu groß ist, wird er vom Netzwerk eingeschränkt und abgelehnt. Die Blockgröße kann die Validierungspassrate des Datenvolumens beeinflussen. Es verhindert, dass Blöcke gefüllt werden, vermeidet es, Netzwerke zu verursachen, und die Transaktionsgebühren steigen weiter. Da Bitcoin -Transaktionen immer mehr Aufmerksamkeit erregen, werden Bitcoin -Operationen und -Transaktionen häufiger und die im Bitcoin -Netzwerk aufgezeichneten Daten werden komplizierter, BTC -Netzwerke werden überfüllt, und die Transaktionsverdrahtgebühren sind höher, da die Anzahl der Transaktionen und Blockgrößen ein Grenzwert erreicht. Wie groß ist der Block? Was ist die Struktur des Blocks?

Blockgröße bezieht sich auf die maximale Menge an Blockdaten. In der Blockchain -Technologie ist der Block eine grundlegende Einheit zum Speichern von Transaktionsinformationen. Jeder Block enthält eine Reihe von Daten, und die Größe dieser Daten wird als Blockgröße bezeichnet.

Die Blockstruktur besteht hauptsächlich aus zwei Teilen: Blocktitel und Blockkörper:

Blockheader:

feste Größe: Behobener Blocktitel, normalerweise 80 Bytes. Komponenten: Versionsnummer: Identifizieren Sie die aktuelle Version des Blockchain -Protokolls. Hash -Header -Block -Elternteil: Der Hash -Header -Wert -Block zeigt auf den vorherigen Block, der verwendet wird, um die Kontinuität des Blocks zu gewährleisten. Merkel Tree Root Hash: Der Wert des Wurzelhashes, der nach dem Himodieren aller Transaktionen im aktuellen Block erhalten wurde, wird verwendet, um die Integrität und Variabilität der Transaktion zu gewährleisten. Schwierigkeitsziele: Wird zur Bestimmung von Bergbauschwierigkeiten verwendet. Zeitstempel: Aufzeichnung der aktuellen Blockerstellung. Zufällige Zahl: Wird für den Wettbewerb im Bergbauprozess verwendet, um die Einzigartigkeit des Blocks zu gewährleisten.

Block:

Enthält Transaktionsinformationen: Der Block enthält Informationen zu allen im aktuellen Block abgewickelten Transaktionen, wie z. Um den Blockraum zu speichern, werden die Signaturinformationen normalerweise in einen erweiterten Block außerhalb des Blocks eingewickelt. Größengrenze: Obwohl die Größe der Blockheader und der Blockkörper einschränken, die normalerweise als Blockgrößengrenzen (z. B. 1 m) bezeichnet werden, beziehen sich hauptsächlich die Blockkörpergröße und einen Teil der Transaktionsinformationen. Da die Signaturinformationen separat gespeichert werden, kann die Differenz auftreten, wenn die Größe des Blocks tatsächlich berechnet wird, da die Signaturinformationen eingegeben werden.

Zusammenfassend ist die Blockgröße ein wichtiges Konzept der Blockchain -Technologie, das die Anzahl der Transaktionen und Daten bestimmt, die jeder Block aufnehmen kann. Die Blockstruktur gewährleistet die Kontinuität, Integrität und Sicherheit des Blocks.

⒊ Was soll ich tun, wenn die Blockchain -Informationen größer werden?

Samoto Nakamoto berücksichtigte auch dieses Problem, und er glaubte, dass sich auch die Technologie entwickelt und bessere Speicher- und Netzwerktechnologien in der Lage waren, die wachsende Blockchain zu speichern und zu übertragen. Trotzdem hat Satoshi Nakamoto eine Größengrenze von 1 m pro Block festgelegt, um eine Überflation der Blockchain zu vermeiden. Lassen Sie uns eine Berechnung durchführen: Eine Blockchain wird alle zehn Minuten erzeugt, also 10 Jahre nach der Geburt von Bitcoin, dh bis 2019 kann die Größe der Blockchain: 10 * 365 * 24 * 6 ~ 525 g sein. In weiteren 10 Jahren bis 2029 wird es fast 1 t sein. Auch jetzt ist das Problem nicht wichtig. Mach dir also keine Sorgen zu sehr.

Aber der Blockchain -Raum entwickelt sich nicht nur im Laufe der Zeit. Jetzt ist der Raum von 1 m pro Block nicht mehr in der Lage, die Entwicklung von Bitcoin zu respektieren. Wofür? Da das Transaktionsvolumen signifikant ist, beträgt jeder Blockraum nur 1 m und die Anzahl der Transaktionen, die begrüßt werden können, ist begrenzt. Daher müssen wir in Betracht ziehen, die Blockchain zu erweitern, um diese Einschränkung zu enträtseln. Im Jahr 2015 diskutierte die Community mehrmals die Ausweitung der Blockchain. Am Ende wird der Blockchain -Raum der Größe 1m immer noch aufrechterhalten, aber die "Quarantäne -Zeugen" -Technologie, die mehr Transaktionen aufnehmen kann, wird erzeugt, was der erste Schritt in der Blockchain -Erweiterung sein kann. Es wird andere "Blitznetzwerk" -Technologien geben, um das Problem des engen Raums der Blockchain zu mildern. Aber was auch immer passiert, die Bitcoin -Blockchain kann sich nicht endlos entwickeln. In meinem Gedanken wird die Bitcoin -Blockchain irgendwann ein Anker. Andere Anwendungen haben ihre eigenen Datenspeichermethoden. Sie müssen nicht auf der Bitcoin -Blockchain aufgezeichnet werden, aber das Merkle -Datenrouch kann auf der Bitcoin -Blockchain gespeichert werden, um gleichzeitig die Datensicherheit zu gewährleisten.