Was würde passieren, wenn es zwei „getrennte“ Bitcoin-Versionen mit der gleichen Popularität gäbe? [Duplikat]

Im Moment haben wir eine akzeptierte Version von Bitcoin (der Software) und die meisten Miner und Full Nodes verwenden einige Versionen davon.

Was jedoch sehr gut passieren kann, ist eine Spaltung innerhalb der Bitcoin-Entwickler über einige Details – sagen wir, Halbierung der Zeit, Blockgröße, minimale Gebühr, bessere Hashing-/Verschlüsselungsalgorithmen nach einem erfolgreichen kryptografischen Angriff, was auch immer. (Es passiert mit Open-Source-Projekten.)

Stellen Sie sich vor, dies wäre passiert und es gäbe zwei "Versionen" von Bitcoin, die unterschiedliche Blöcke als gültig akzeptieren - stellen Sie sich im schlimmsten Fall vor, dass die Sätze gültiger Blöcke plötzlich getrennt werden (was für die eine Version akzeptiert wird, gilt nicht für die andere). Und für das Worst-Case-Szenario stellen Sie sich vor, dass die Verteilung zwischen Minern und Full Nodes 50:50 beträgt.

Was genau würde passieren? Wie genau würde sich das Problem "selbst lösen"? Wenn wir davon ausgehen, dass reguläre Transaktionen (nicht die Mining-Transaktionen) zwischen beiden Versionen gesendet werden, was würde dann damit passieren?

(Entschuldigung, wenn diese Frage zu theoretisch erscheint, aber ich persönlich kann das sehen.)

Antworten (1)

Dies wird als Hard Fork betrachtet, vorausgesetzt, dass beide Hälften ihre Gründe haben, ihre Versionen nicht zu ändern, und dass vorherige Blöcke in der Blockchain in beiden Clients als gültig angesehen werden, dann haben wir 2 Arten von Coins.

  • Coins, die vor dem Fork (A) generiert werden, sind frei verwendbare Transaktionen mit dieser Art von Eingaben, die von beiden Gruppen von Minern akzeptiert und als gültig angesehen werden.

  • Münzen, die nach dem Fork (B, C) generiert werden, nicht doppelt auszahlbar sind und Transaktionen, die diese Art von Münzen verwenden, werden nur von einer der Gruppen akzeptiert, die andere wird sie verwerfen.

Solange Sie A in Ihren Transaktionen nur mit B oder C mischen, werden sie von der Hälfte der Miner akzeptiert, Sie könnten B und C nicht mischen, da Ihr Kunde nur eine Blockchain hat.

Dienste und Clients, die mit dem Netzwerk verbunden sind, verwenden Kette B oder C und tauschen sogar wirklich große Teile der Kette aus und führen Reorgs durch, wenn der Client beide Ketten für gültig hält, aber zu einem bestimmten Zeitpunkt kann ein Client nur eine Kette haben oder das andere.

In einem solchen Szenario wählen Kunden und Händler aus welchen Gründen auch immer B oder C und erhalten einen Kunden, der so modifiziert wird, dass er nur B- oder C-Blöcke zulässt, wodurch Angriffe mit doppelten Ausgaben gegen denselben Händler deaktiviert werden (aber immer noch doppelte Ausgaben zwischen Händlern mit unterschiedlichen Ketten möglich sind). ). Vielleicht werden neue Clients erstellt, um alle Transaktionen mit A-Coins zu blockieren.

Wie auch immer, im wirklichen Leben würde dies keine Rolle spielen, wenn ein solches Ereignis länger als ein paar Stunden eintritt, werden die Fork- und Double-Spending-Probleme den Bitcoin-Wert zum Absturz bringen, Händler werden sich vom Netzwerk trennen und die Annahme von Bitcoins einstellen und Miner werden keinen Grund haben Um B oder C weiter zu minen, wäre es besser für sie, einen ganz neuen Coin zu starten (Bitcoin 2 und Bitcoin^2), als weiter daran zu arbeiten.