Wer setzt neue Konsensregeln in Bitcoin durch?

Ich habe an einigen Stellen gelesen, dass Miner neue Konsensregeln durchsetzen werden . Beispiele:

https://twitter.com/BitMEXResearch/status/1391014115968274433

https://twitter.com/ajtowns/status/1390496379487744001

04:20 < AaronvanW> aj: Ich denke, „meine“ Art von Futures-Markt könnte mit „Ihrer“ Art von Futures-Markt kombiniert werden? Mein Futures-Markt würde Miner informieren, ob der Markt möchte, dass sie aktiviert werden oder nicht, Ihr Futures-Markt würde sie informieren (nach der Aktivierung), ob sie sie durchsetzen sollten oder nicht. Ich denke, der zweite Futures-Markt ( erzwingen oder nicht ) wäre in diesem Zusammenhang irgendwie sinnlos, da der Markt den Bergleuten bereits gesagt hat, sie sollten (neben anderen Gründen) aktiviert werden, aber hey, wenn die Leute darauf wetten wollen, können sie es. (Und ich denke, das sollte Matts Punkt/Sorge ansprechen.)

04:32 < AaronvanW> Der zweite Terminmarkt hätte einen asymmetrischen Vorteil zugunsten der Durchsetzung , aber ich würde sagen, das ist eine gute Sache. (Auch hier denke ich, dass dieser Futures-Markt irgendwie sinnlos wäre ... hier nur auf Bedenken eingehen.)

http://gnusha.org/taproot-activation/2021-05-04.log

Nach meinem Verständnis:

  1. Entwicklercodeimplementierung für ein BIP, gefolgt von Überprüfungen und Diskussionen

  2. MASF: Miner werden gebeten, Bereitschaft zu signalisieren, neue Konsensregeln werden aktiviert, wenn die meisten Miner rechtzeitig bereit sind. Blöcke, die nach der Aktivierung nicht den neuen Konsensregeln folgen, werden von Full Nodes abgelehnt.

  3. UASF: Bergleute werden über eine Frist informiert, neue Konsensregeln werden unabhängig von der Bereitschaft der Bergleute aktiviert, wenn nicht genügend Bergleute vor Ablauf der Frist signalisieren. Blöcke, die nach der Aktivierung nicht den neuen Konsensregeln folgen, werden von Full Nodes abgelehnt. (In BIP 148 werden Blöcke verworfen die nicht signalisieren und BIP 8 hat eine MUST_SIGNAL Phase und lockinontimeout)

In beiden Fällen werden Regeln von vollständigen Knoten „ durchgesetzt “.

„Befolgen“ Miner nach der Aktivierung die neuen Konsensregeln, denen sie zugestimmt haben, sie zu aktivieren, und signalisieren Bereitschaft, oder „erzwingen“ Miner neue Konsensregeln? Wenn sie neue Konsensregeln durchsetzen, welche Rolle spielen Full Nodes? Und wenn Bergleute neue Konsensregeln durchsetzen, können wir das Signalisieren der Bergleute als Abstimmung betrachten?

Antworten (1)

Konsensregeln werden von wirtschaftlichen Full Nodes durchgesetzt, dh von Full Nodes, die tatsächlich ihre Full Nodes verwenden, um ihre eigenen Transaktionen zu überprüfen und zu überwachen. Punkt. In diesem Sinne setzt ein theoretischer Miner, der keinen wirtschaftlichen Full Node betreibt, keine Konsensregeln durch, er versucht, Blöcke mit Regeln abzubauen, die vom Netzwerk wirtschaftlicher Full Nodes durchgesetzt werden. Wenn dieser theoretische Miner einen Block schürft, der diese Konsensregeln nicht erfüllt, werden die wirtschaftlichen Full Nodes diesen Block ablehnen.

Wenn Sie jedoch versuchen, die reibungslose Aktivierung einer Soft Fork zu koordinieren, besteht eine der Möglichkeiten, die Aussicht auf große Reorgs, Verwirrung und Störungen zu minimieren, darin, Miner dazu zu bringen, Bereitschaft zu signalisieren. (Die Bereitschaft zu signalisieren bedeutet nicht, für die Änderungen in der Soft Fork zu "stimmen".) Idealerweise möchten Sie, dass alle Miner nach der Aktivierung weiche Regeln durchsetzen, denn wenn einige Miner sie nicht durchsetzen, wird eine Transaktion nicht diesen Soft Fork-Regeln entsprechen könnte sich in einen Block einschleichen und eine größere als normale Neuorganisation verursachen. Bergleute, die die Soft-Fork-Regeln durchsetzen, würden den Block ablehnen und schließlich erfolgreich auf einem alternativen Block minen, aber es würde Zeit brauchen, um sich selbst zu klären. Natürlich verlieren die Miner, die Blöcke haben, die schließlich abgelehnt werden, Blockbelohnungen,

Der Fokus liegt nur auf der Miner-Signalisierung für beispielsweise die Taproot-Aktivierung, da wir eine reibungslose Aktivierung einer Soft Fork sicherstellen möchten. Wir möchten wissen, dass Miner bereit sind, die zusätzlichen Konsensregeln der Soft Fork durchzusetzen, da sie wissen, dass viele wirtschaftliche Full Nodes sie möglicherweise nicht sofort nach der Aktivierung durchsetzen. Wenn jedoch ein „Blockgrößenkrieg“ im Gange ist und Streitigkeiten darüber bestehen, ob ein Soft Fork aktiviert werden sollte oder nicht (wie es wohl 2017 bei SegWit der Fall war), kommt es letztendlich darauf an, welche Konsensregeln die wirtschaftlichen Full Nodes durchsetzen und nicht das, was Miner signalisieren. In diesem Notfall-ähnlichen Szenario würden Sie wahrscheinlich viel wirtschaftlichere Full Nodes sehen, die die Soft-Fork-Regeln unmittelbar nach der Aktivierung durchsetzen.

Zusammenfassend lässt sich sagen, dass Miner-Koordination und Miner-Signalisierung in Friedenszeiten ihre Arbeit gut erledigen und wir kein Problem haben, wenn eine Reihe von wirtschaftlichen Full Nodes die neuen Soft-Fork-Regeln nicht sofort nach der Aktivierung durchsetzen. Vollständige Knoten erstellen keine neuen Blöcke und können daher keinen Block mit einer darin enthaltenen Transaktion erstellen, die die neuen Konsensregeln nicht erfüllt. (Idealerweise würden alle wirtschaftlichen Full Nodes sie durchsetzen, aber es ist kein Problem, wenn sie nicht davon ausgehen, dass eine Mehrheit der Bergleute dies tut). In Kriegszeiten liegt die Last jedoch bei den wirtschaftlichen Vollknoten, um zu bestimmen, welche Konsensregeln das Netzwerk durchsetzt. Miner-Signalisierung ist insofern irrelevant, als sie nicht beeinflusst, welche Konsensregeln wirtschaftliche Full Nodes durchsetzen.