Können Undercutting-Angriffe gemildert werden?

Ein Undercutting-Angriff, wie er in diesem Artikel beschrieben wird, ist eine Mining-Strategie, bei der neue Blöcke nicht auf der längsten bekannten Kette produziert werden, sondern stattdessen die längste Kette „unterboten“ wird, indem ein Block erstellt wird, der weniger der verfügbaren Transaktionsgebühren einnimmt kürzere Kette. Dieses Verhalten schafft einen direkten Anreiz für einen anderen Miner, jetzt neue Blöcke in der „Undercutting“-Kette zu bauen, da eine höhere Summe an Transaktionsgebühren für sie zu erheben ist.

In dem Paper beschreiben die Autoren, wie dies dazu führen kann, dass ein 51%-Angriff mit weniger als 51% der Hashing-Power des Netzwerks erfolgreich durchgeführt werden kann. Dies wird ermöglicht, weil die Undercutters Blöcke verwaisen und die effektive Hashing-Leistung des Netzwerks verringern (die 51% Angreifer haben einen Vorteil, da sie ihre eigenen Blöcke nicht verwaisen müssen, aber die ehrlichen oder unterbietenden Miner arbeiten mit einer kumulativ niedrigeren Hash-Rate zum möglichen Verwaisen höherwertiger Blöcke).

Gibt es Lösungen, die das Undercutting-Verhalten abschrecken? Oder kann das Verhalten durch eine Änderung des Protokolls gemildert werden?

Vielleicht finden Sie diesen Artikel informativ: medium.com/@bergealex4/…

Antworten (2)

1. Sie werden niemals in der Lage sein, den vorherigen Block erneut zu minen und mehr Gebühren zu erhalten.

Der in diesem Dokument beschriebene Angriff besteht darin, einen Block erneut zu schürfen, um weniger Gebühren zu verlangen und andere Schürfer dazu anzuregen, ihn fortzusetzen, anstatt in der ehrlichen Kette zu schürfen. Die Bedrohung durch den Gegenangriff wurde vor langer Zeit angesprochen.

Seit Bitcoin Core 0.11.0 (Juli 2015) beinhalten Transaktionen eine Gebühr, nLockTimeum Sniping zu verhindern und sicherzustellen, dass sie nur in einer Höhe abgebaut werden können, die größer ist als die aktuelle Höhe. Ihre Gebühren können nur durch Vorwärtsbewegung und nicht durch Unterbieten des vorherigen Blocks eingezogen werden. Obwohl die Akzeptanz nicht weit verbreitet ist, können Sie damit rechnen, wenn diese Bedrohung glaubwürdig wird. Außerdem wird eine Kette, die dem nächsten Miner weniger Gebühren hinterlässt, für andere Miner weniger attraktiv sein, weiterzumachen.

2. Mempool wird nicht flach genug sein, damit aufeinanderfolgende Blöcke deutlich unterschiedliche Belohnungen haben.

Wenn die Nachfrage nach Blockraum steigt oder sein Angebot abnimmt, wird er teurer. Bitcoin-Benutzer müssen immer abwägen, ob sie etwas länger warten müssen, um ihre Transaktionen in Blöcke zu bringen (bis die Überlastung nachlässt), und höhere Gebühren zu zahlen.

Wir können beobachten, dass je mehr Transaktionen im Mempool in die Warteschlange gestellt werden, desto höher der Preis für Blockplatz und desto flacher die Steigung der Gebührensatzverteilung. Je geringer also die Differenz zwischen zusammenhängenden Blockbelohnungen ist. Ungewöhnlich hohe Gebühren für Transaktionen mit hoher Priorität, die zwischen den Blöcken veröffentlicht werden (dieser Haufen auf der linken Seite der Diagramme), stellen einen kleineren Bruchteil der Gesamtbelohnung dar, wenn der Mempool ausgelastet ist.

Überprüfen Sie den klaren Schnitt bei 250 sat/WU für die meisten Transaktionen vom 22. Dezember 2017. Wenn die Gebühren erheblich hoch werden, zeigen viele Leute, dass sie es mit der Transaktionsbestätigung doch nicht so eilig haben, und Sie können nicht erwarten, dass sie bereit sind zu zahlen viel mehr, damit ihre Transaktionen in 6 Stunden statt in 7 Stunden abgebaut werden.

Gebühren 09.05.2018 Gebühren 30.5.2019 Gebühren 22.12.2017

Die Belohnungen unmittelbar nach dem Finden eines Blocks sind sicherlich NICHT null, „was es für jeden Miner unrentabel macht, zu minen“, wie sie behaupten.

3. Miner können das Unterbietungsrisiko jederzeit absichern.

Bergleute könnten eine Ausgabe, die jeder ausgeben kann, als Prämie in ihre Blöcke aufnehmen, um das Risiko zu mindern, dass andere Bergleute sie unterbieten, wenn ihre Belohnungen viel wertvoller sind als die im Mempool verbleibenden Gebühren (dies kann nur passieren, wenn einige Transaktionen sich auszahlen). wirtschaftlich irrationale Gebührenbeträge). Es besteht also keine Notwendigkeit, die Transaktionsauswahl zu ändern, um dies zu ermöglichen, selbst in unwahrscheinlichen Szenarien.

"Gebührenvariabilität zwischen zusammenhängenden Blöcken sollte sehr gering sein" erscheint mir nicht offensichtlich. Angesichts der Tatsache, dass das Blockintervall erheblich variieren kann, würde dies zu einer Abweichung bei den Blockbelohnungen führen, aber dann ist die Blockspace-Nachfrage stark von anderen Marktentwicklungen sowie täglichen und wöchentlichen Zyklen abhängig.
Dieser Tweet wiederholt nur den Punkt, dass die Belohnungen flach sind, geht aber nicht auf den Denkprozess ein, um die Behauptung zu untermauern. Gibt es irgendwo eine Beschreibung in längerer Form?
Danke für die Ausarbeitung!

Ja, das wird auch als Fee Sniping bezeichnet.

Die meisten Wallets, die ich kenne ( * ), setzen das nLockTimeauf den Tipp, damit die erstellte Transaktion nur in den nächsten Block aufgenommen werden darf (oder der Block würde von allen verifizierenden Nodes abgelehnt und der Miner würde Geld verlieren : the nLockTimeRegel ist eine Konsensregel).

( * ) Bitcoin-Core , Electrum, C-Lightning , Joinmarket