Was passiert mit ausgestorbenen Blockchains und Transaktionen darin?

Während ich das Konzept der Blockchain und des Arbeitsnachweises verstehe, verwirren mich einige Dinge. Bergleute betrachten immer die längste Kette (nach Schwierigkeitsgrad) und arbeiten daran, sie zu erweitern. Nehmen wir nun an, zwei Miner (Miner A und Miner B) kommen gleichzeitig (fast gleichzeitig) auf die Lösung für einen Block und geben ihre Lösung öffentlich bekannt. Dann erhalten einige Bergleute zuerst die Lösung von A, später sehen sie, dass B auch die Lösung hat (genau das Gegenteil passiert einigen anderen Bergleuten, sie bekommen zuerst B). Die Miner, die A zuerst gesehen haben, beginnen also, die Lösung von A für den nächsten Block zu überarbeiten und sparen einen anderen Zweig von B, wenn er länger wird. Jetzt wird die Krawatte gebrochen, wenn der nächste Arbeitsnachweis gefunden wird, und die Miner, die an einem anderen Zweig gearbeitet haben, werden zum längeren wechseln. Jetzt habe ich ein paar Fragen:

  1. Was passiert mit Transaktionsaufzeichnungen, die in der abgelehnten Filiale gespeichert wurden?

  2. Wird es überhaupt Transaktionsaufzeichnungen für beide Blockbranchen geben? (Dann nehme ich an, dass neue Transaktionsdatensätze im letzten Block vor der Verzweigung gespeichert werden).

  3. Was wird das Szenario der Coinbase-Generierung sein? Wenn A gewinnt, erhält A die Coinbase, spätere Transaktionen sollten im generierten Block von A gespeichert werden. Aber es wird bereits die Lösung des nächsten Blocks (Proof of Work) auf der Verzweigung A gefunden. Neue Transaktionen werden also im nächsten Block gespeichert (sagen wir, generiert von C..C erhält die nächste Coinbase). Bedeutet das, dass es in dem von A generierten Block nur einen Transaktionsdatensatz (Coinbase) geben wird?

Antworten (2)

Dieser Prozess, der allgemein als Forking bekannt ist, erstellt zwei parallele Ketten, die inkompatibel sind, d. h. es gibt einige Transaktionen, die für eine Kette gültig sind, aber nicht für die andere.

  1. Wenn es parallele Zweige gibt, kann ein Miner beide im Auge behalten. Sobald eine Kette abgelehnt wird, werden Transaktionen in dieser Kette mit der akzeptierten verglichen. Inkompatible oder doppelte Transaktionen werden einfach verworfen, während die verbleibenden zurückgehalten werden können, um in den nächsten Block zu gehen (oder Blöcke, da es möglicherweise zu viele Transaktionen für nur eine gibt).

  2. Transaktionsaufzeichnungen bleiben für die akzeptierte Kette intakt, aber Aufzeichnungen für die abgelehnte Kette werden wie oben beschrieben mit der alten Verzweigung zusammengeführt. Es wäre unmöglich, diese Transaktionen an den letzten Block vor der Verzweigung anzuhängen, daher werden sie von Minern aufbewahrt und wie gewohnt in die Blockkette eingefügt.

  3. Es könnte hier ein wenig Verwirrung geben ... sobald ein Block abgebaut wurde, kann er nicht mehr geändert werden, daher ist es unmöglich, weitere Transaktionen in diesem Block zu speichern. Darüber hinaus wird dieser Block genau eine Coin-Base-Transaktion haben. Alle Transaktionen, die nach dem Mining stattfinden, werden jeweils in nachfolgenden Blöcken gespeichert, aber jeder dieser Blöcke hat genau eine Transaktion auf Coin-Basis, wie es das Bitcoin-Protokoll vorschreibt. Also ja, es wird nur eine Coinbase-Transaktion in dem von A generierten Block geben.

Es gab eine Bearbeitung, die hinzufügte, dass Coinbase-Transaktionen erst nach 100 Bestätigungen ausgegeben werden können. Ich glaube nicht, dass das stimmt, und ich kann auch keine Beweise dafür finden. Außerdem schienen diese Informationen für die eigentliche Antwort irrelevant zu sein. Danke für die Rechtschreibkorrektur bei "mined"; jedoch.
Coinbase-Transaktionen produzieren tatsächlich „unreife Coins“, die erst nach 100 Bestätigungen ausgegeben werden können. Sie können darüber hier lesen: Was war das Ziel bei der Schaffung des Merkmals der unreifen Münzen?

Was passiert mit Transaktionsaufzeichnungen, die in der abgelehnten Filiale gespeichert wurden?

Es hängt davon ab, ob. Andere Knoten sehen sich den abgelehnten Zweig an und versuchen, die Transaktionen gemäß diesen Regeln in zukünftige Blöcke aufzunehmen:

  1. Doppelte Transaktionen werden verworfen.
  2. Widersprüchliche Transaktionen (z. B. aufgrund eines Double-Spend-Angriffs) werden verworfen.
  3. Die Coinbase wird nie aufbewahrt.
  4. Die Transaktionen müssen die üblichen Gebührenanforderungen erfüllen.