Was ist ein Finney-Angriff? Extrapunkte für die Erläuterung des Zwecks, der Voraussetzungen dafür, wie der Angriff durchgeführt werden kann und der Herkunft des Namens "Finney-Angriff".
Der Finney-Angriff ist nach Hal Finney benannt , der ihn in diesem Kommentar vorgeschlagen hat . (Hal ist zufällig der erste Empfänger einer Bitcoin-Transaktion und die erste Person, die die Veröffentlichung des Bitcoin-Quellcodes kommentiert.)
Es handelt sich um einen Double-Spending- Angriff mit den folgenden Merkmalen:
Es funktioniert nur, wenn der Händler unbestätigte Transaktionen akzeptiert.
Es funktioniert jedoch immer noch, wenn der Händler einige Sekunden wartet, um zu überprüfen, ob alle im Netzwerk damit einverstanden sind, dass er bezahlt wurde.
Es erfordert, dass der Angreifer den Inhalt seiner Blöcke abbaut und kontrolliert; er kann dies jedoch theoretisch mit jeder Hashrate tun, insbesondere mit deutlich weniger als 50 % der Netzwerk-Hashrate.
Es geht wie folgt vor:
Der Angreifer baut Blöcke normal ab; In den Block, den er zu finden versucht, fügt er eine Transaktion ein, die einige seiner Münzen an sich selbst zurücksendet, ohne diese Transaktion zu übertragen.
Wenn er einen Block findet, sendet er ihn nicht; Stattdessen schickt er dieselben Münzen für Waren oder Dienstleistungen an einen Händler.
Nachdem die Händler die Zahlung akzeptiert und den Dienst unwiderruflich erbracht haben, sendet der Angreifer seinen Block; Die in diesem Block enthaltene Transaktion, die die Münzen an sich selbst sendet, überschreibt die unbestätigte Zahlung an den Händler.
Wenn die Zeit vom Finden des Blocks bis zum Senden der Zahlung durch den Angreifer und Akzeptieren durch den Händler t beträgt und die durchschnittliche Zeit zum Finden eines Blocks T beträgt, besteht eine Wahrscheinlichkeit von t/T, dass in diesem Netzwerk ein weiterer Block gefunden wird Zeit; In diesem Fall schlägt der Angriff fehl und der Angreifer verliert die Blockbelohnung von B.
Dies bedeutet, dass die durchschnittlichen Kosten für den Angriffsversuch etwa (t/T) * B betragen; als Faustregel sollte der Händler mindestens t=V*T/B warten (V ist der Wert der Transaktion), um sicherzustellen, dass der Versuch, diesen Angriff gegen ihn durchzuführen, nicht rentabel ist; Dies reicht jedoch möglicherweise nicht aus, da ein flinker Angreifer denselben Block für mehrere Angriffe verwenden und möglicherweise den gesamten Wert gewinnen kann.
Je niedriger die Hashrate des Angreifers ist, desto weniger Möglichkeiten hat er, den Angriff auszuführen. Wenn der Angriff darauf abzielt, ein illiquides Gut zu erhalten, ist es schwierig, die Notwendigkeit dieses Guts mit dem Finden einer Blockade zusammenfallen zu lassen. Wenn der Angriff darauf abzielt, etwas Flüssiges zu erhalten (z. B. Bitcoins gegen anderes Geld einzutauschen), ist eine Gelegenheit immer vorhanden, aber der Händler wird wahrscheinlich einige Bestätigungen benötigen. Dies erschwert die Anwendung des Angriffs in der Praxis.
Der Finney-Angriff ist eine Variation eines Double-Spend-Angriffs. Der Angreifer erstellt zwei Transaktionen – eine, die dem Opfer gutgeschrieben wird, und eine, die sich selbst gutschreibt. Sie behalten die erste Transaktion vorerst und versuchen, die zweite in einen Block zu minen. Wenn sie erfolgreich sind (dies kann eine Weile dauern), tätigen sie schnell einen Kauf mit der ersten Transaktion, erhalten die gekauften Waren und geben dann den vorab geschürften Block frei. Auf diese Weise wird die erste Transaktion ungültig, selbst wenn sie durch das gesamte Netzwerk verbreitet wird.
Diese Variante des Double-Spend-Angriffs ist schwieriger auszuführen (einen Block selbst zu minen war schon lange nicht mehr einfach), aber bis zur vollständigen Ausführung nicht nachweisbar. Die einzige Möglichkeit, sich gegen einen solchen Angriff zu schützen, besteht darin, mindestens eine Transaktionsbestätigung zu verlangen, bevor gekaufte Waren ausgegeben werden, und mehr Bestätigungen für Transaktionen mit höherem Wert.
Schrittmacher
DerPiachu
Schrittmacher
DerPiachu
Schrittmacher
DerPiachu
hqt
DerPiachu
hqt
exactly that same 3 coins
(sieht aus, als hätte jede Münze etwas Ähnliches wie eine ID). Können wir diese Aktion kontrollieren? DankeDerPiachu
Suraj Jain
DerPiachu
Suraj Jain
DerPiachu
Suraj Jain
Suraj Jain