Warum kommt es nur bei einer Hard Fork zu einem dauerhaften Kettensplit?

Habe eine Reihe von Artikeln darüber gelesen, was Hard Fork und Soft Fork eigentlich sind. Aber konnte das Wesentliche nicht wirklich erfassen. Mein Verständnis ist, dass Hard Fork eine Änderung im Kern-Blockchain-Code (Konten, Transaktionen, Blöcke) mit sich bringt. Der Konsens bricht also tatsächlich, weil die Knoten, die aktualisiert und nicht aktualisiert wurden, zwei separate Versionen von Blockchain haben.

Während im Fall von Soft Fork der Blockchain-Kerncode derselbe bleibt, kann es sein, dass der Mining-Client einige Einschränkungen hat. Im Grunde, wenn ich Soft Fork sagen möchte, Block Gas Limit von 1,5 mil auf 1 mil, anstatt den Blockchain-Kerncode selbst zu ändern, wenden die Mining-Clients und Full Nodes einfach einen externen Filter an, um nur bis 1 mil Gas Limit zu akzeptieren. Unabhängig davon, ob alle Knoten aktualisiert werden oder nicht, unterliegen sie demselben Blockchain-Code. Daher müssen alle Splits in derselben Kette auftreten und durch das GHOST-Protokoll aufgelöst werden.

Bin ich klar mit meinem Verständnis? Jemand bitte klären

Antworten (1)

Ihr Verständnis ist nahe, aber es ist nicht ganz richtig.

Ein Soft Fork ist eine Änderung, die einen Block, der zuvor legal war, illegal macht.

Ein Hard Fork ist eine Änderung, die einen Block, der zuvor illegal war, legal macht.

Stellen Sie sich nun vor, dass die Mehrheit des Netzwerks die Änderung angewendet hat, und betrachten Sie dies aus der Sicht eines Knotens, der die Änderung nicht angewendet hat.

Im Falle einer Soft Fork erscheinen alle Blöcke in der längsten Kette legal. Es kann gelegentlich Blöcke geben, die von nicht aktualisierten Minern erstellt wurden, die vom Rest des Netzwerks als illegal angesehen werden, aber sie werden bald von der Mehrheit verwaist sein, obwohl der nicht aktualisierte Knoten manchmal eine andere Meinung darüber haben wird, welcher der längste ist Kette als die Mehrheit, wird diese Situation nicht lange anhalten.

Im Falle einer Hard Fork erscheinen die Blöcke, die in der längsten Kette erstellt wurden, illegal. Ein nicht aktualisierter Knoten baut also nicht auf ihnen auf, sondern baut stattdessen auf der längsten Kette auf, die von seinen nicht aktualisierten Knoten erstellt wurde.

Bei einem Soft Fork wird sich das Netzwerk also gelegentlich teilen, aber schnell zusammenlaufen, während sich das Netzwerk bei einem Hard Fork in zwei separate Ketten aufteilt, die auf unbestimmte Zeit parallel weiter wachsen.

Danke. Die Zeile „Im Falle einer Soft Fork erscheinen alle Blöcke in der längsten Kette legal“ machte es deutlich.