Ich versuche festzustellen, wie viele Bestätigungen einigermaßen sicher zu warten wären, bevor eine Bitcoin-Transaktion von einem Angreifer akzeptiert wird, der kein Miner ist und sich daher nicht auf Finney-Angriffe verlassen kann, der aber versuchen könnte, basierend auf seiner Beobachtung des Staates frei doppelt auszugeben der Blockchain.
Ich verstehe, dass bei 0-Bestätigung der Versuch einer doppelten Ausgabe durchaus funktionieren kann, wenn beispielsweise die Transaktionsgebühr der zweiten Transaktion höher ist und die erste Transaktion noch nicht weit verbreitet wurde (so dass Knoten sie nicht als doppelte Ausgabe ablehnen würden). .
Bei 1-Bestätigung wird jede doppelte Ausgabe automatisch von allen Knoten abgelehnt, die den ersten bestätigten Block akzeptieren. Sollte jedoch (i) die Blockchain „reorganisiert“ werden, wobei ein kleiner Fork übernimmt, was meines Wissens regelmäßig vorkommt (gibt es Statistiken dazu?), und (ii) die ursprüngliche Transaktion nicht in den Fork aufgenommen wird, könnte der Angreifer dies tun Versuchen Sie sofort erneut, doppelt auszugeben, in der Hoffnung, dass es in den nächsten Block aufgenommen wird.
Muss ich mir Sorgen um solche Blockchain-Reorganisationen machen, wenn ich n-Bestätigungstransaktionen akzeptiere? Habe ich recht, wenn ich sage, dass jede erfolgreiche 6-Block-Fork das Risiko mit sich bringen würde, die doppelten Ausgaben ALLER Transaktionen, die nicht in der Fork enthalten sind, mitzunehmen, nicht nur die, auf die der Schurken-Miner abzielt? Oder würden die meisten Nodes (einschließlich des Schurken-Miners) höchstwahrscheinlich die Trittbrettfahrer-Doppelausgabenversuche sowieso ablehnen (auch wenn ihre Transaktionsgebühren viel höher angesetzt sind), da die erste Transaktion zu diesem Zeitpunkt vollständig verbreitet wäre?
Muss ich mir Sorgen um solche Blockchain-Reorganisationen machen, wenn ich n-Bestätigungstransaktionen akzeptiere?
Forks treten ziemlich häufig auf , und wenn Sie nur eine einzige Bestätigung benötigen, hat die Gegenpartei die Möglichkeit, jedes Mal, wenn diese verwaisten Blöcke auftreten, die doppelte Ausgabe vorzunehmen.
Habe ich recht, wenn ich sage, dass jede erfolgreiche 6-Block-Fork das Risiko mit sich bringen würde, die doppelten Ausgaben ALLER Transaktionen, die nicht in der Fork enthalten sind, mitzunehmen, nicht nur die, auf die der Schurken-Miner abzielt?
Ja, ein erfolgreicher 6-Block-Fork würde doppelte Ausgaben für alle n-Bestätigungstransaktionen ermöglichen, die nicht im Fork enthalten sind, wobei n ≤ 6 ist.
Würden die meisten Nodes (einschließlich des Schurken-Miners) höchstwahrscheinlich die Trittbrettfahrer-Doppelausgaben-Versuche trotzdem ablehnen (selbst wenn ihre Transaktionsgebühren viel höher angesetzt sind), da die erste Transaktion zu diesem Zeitpunkt vollständig verbreitet wäre?
Schwer zu sagen. Das Bitcoin-Protokoll hat keine explizite Regel für n-Bestätigungen (dies ist nur eine akzeptierte Anzahl von Bestätigungen, nach der der Empfänger einer Transaktion ziemlich sicher sein kann, dass keine doppelten Ausgaben auftreten), also würden die Transaktionen laut Protokoll gültig sein. Ich bezweifle, dass es viele Miner mit eingebauter Logik gibt, um mit diesem Szenario umzugehen, denn wenn es mehr als nahezu unmöglich wird (eine Entität, die etwa die Hälfte der Rechenleistung des Netzwerks hat), wird die Währung wahrscheinlich keine Legitimität mehr haben (daher nein Wert darin, dass sie als Miner fungieren).
Nate Eldredge
Erwin Mayr