Welche Anzahl an Bestätigungen gilt in Ethereum als sicher?

Bei Bitcoin gelten 6 Bestätigungen als sicher (sehr geringe Wahrscheinlichkeit einer Transaktions-/Blockumkehrung).

Was ist die aktuelle Zahl in Ethereum?

Eth, du sprichst hier davon, einen Block zu bestätigen, richtig? Ich frage wegen des Kommentars, den lungj hier zu meiner Frage gemacht hat: ethereum.stackexchange.com/questions/21686/… - Ihre Klarstellung wäre großartig.
@Tesa Ich verstehe, dass die Terminologie nicht großartig ist. Sie würden sagen, eine Transaktion hat 6 Bestätigungen; aber wir sagen nicht wirklich, dass Blöcke bestätigt werden, und es ist ungewöhnlich zu sagen, dass ein Block 6 Bestätigungen hat. Eine gut geschriebene Definition von Bitcoin : „Bestätigungen stellen die Anzahl der Blöcke in der Blockchain dar, die seit dem Block, der die Transaktion enthält, vom Netzwerk akzeptiert wurden.“ (Wenn wir zum Proof of Stake kommen, gibt es Vorstellungen von Blöcken, die abgeschlossen werden.)

Antworten (6)

Von George Hallam :

12 Firmungen; Börsen und Unternehmen, die sehr große Mengen an Ether handhaben, werden jedoch häufig immer noch dazu ermutigt, zwei verschiedene Ethereum-Implementierungen zu betreiben und nur Transaktionen zu akzeptieren, die von beiden für maximale Sicherheit bestätigt wurden (z. B. Go & C++).

Als Referenz: 12 Bestätigungen sind ungefähr 3 Minuten.

Können Sie bitte einen Hinweis geben, warum 12 Bestätigungen eine gute Zahl sind?
Dieser Artikel behandelt das Warten auf einen angemessenen Wert, der von Minern gesammelt wird, bevor die Transaktion als abgeschlossen betrachtet wird. Der Wert ist proportional zu dem Wert, den Sie tätigen. Im Artikel „Ou-Regel“ genannt: medium.com/@nic__carter/…
Was passiert, wenn ein Fork über 12 Blöcke hinausgeht, Sie aber nur nach 12 Bestätigungen suchen?

Der Geth-Client wartet 5 Blöcke auf die Bestätigung frisch geprägter Blöcke (ca. 1 Minute).

I0201 19:07:07.354260    9098 worker.go:349] 🔨  Mined block (#1483 / a2648b58). Wait 5 blocks for confirmation

Um sicherzustellen, dass ein Block kein Onkel ist oder eine in einem Block enthaltene Transaktion nicht in einem Ommer auflegt, würde ich vorschlagen, 7 Bestätigungen (ca. 2 Minuten) zu warten. Aus dem Whitepaper :

Ein in Block B enthaltener Onkel muss die folgenden Eigenschaften aufweisen: [...] Er muss ein direktes Kind des Vorfahren der k-ten Generation von B sein, wobei 2 <= k <= 7. [...]

Bergleute müssen die Parameter der letzten 250 Blöcke überprüfen. Wenn Sie auf der sichersten Kette sein wollen, mit allen Beinen auf dem Boden, machen Sie es wie die Miner und warten Sie auf 250 Bestätigungen (ca. 1 Stunde).

Einige Börsen praktizieren ein Double-All-In und warten sogar auf 500 Bestätigungen (ca. 2 Stunden). Dies kann mit der überall lesbaren Sicherheitswarnung einhergehen, da die Grenze immer noch nicht als stabil gilt. Ich denke, das ist übertrieben.

Zusammenfassend hängt es immer von Ihrer Anwendung und dem damit verbundenen Wert ab, welche Anzahl von Bestätigungen als sicher gilt .

Was ist ein Omer?
FWIW, ich würde nicht zu weit in die 5-Block-Nummer im Geth-Client hineinlesen. Ich habe es geschrieben, aber keine gründliche Analyse der besten Tiefe durchgeführt, und kein Rezensent hat die Tiefe kommentiert .

Ethereum nähert sich aufgrund des GHOST-Protokolls theoretisch in kürzerer Zeit der Endgültigkeit als Bitcoin. Das bedeutet, dass bei einer Blockzeit von 15 Sekunden ungefähr 40 Blöcke benötigt werden, um die 60 Minuten zu erreichen, die 6 Bitcoin-Blöcke benötigen.

Unter der Annahme, dass es keine größeren Konsensfehler gibt, sollten 40 Bestätigungen daher sicherer sein als 6 Bestätigungen in Bitcoin. In der Praxis sollten etwa 20-25 Bestätigungen für Transaktionen in angemessener Größe ausreichen.

Warum 20-25? In ethereum.stackexchange.com/a/203/76 erwähnt Vitalik das Warten auf 12 Bestätigungen für „irreversible“ Änderungen an Daten
Ethereum implementiert GHOST nicht wirklich; Die Kettenauswahlregel ist die gleiche wie bei Nakamoto. Die DAG-Struktur ermöglicht es, unbeabsichtigte Onkel zu bezahlen, um die Zentralisierung zu demotivieren.

Von Vitalik Buterin sagt im Ethereum-Blog am 14.09.2015 über das Diskussionsthema „ On Slow and Fast Block Timeshttps://blog.ethereum.org/2015/09/14/on-slow-and-fast- Blockzeiten/

nur eine kleine Anzahl zusätzlicher Bestätigungen (um genau zu sein, etwa zwei bis fünf) auf der schnelleren Kette sind erforderlich, um die Lücke zu schließen; Daher wird die 17-Sekunden-Blockchain wahrscheinlich zehn Bestätigungen (~ drei Minuten) benötigen , um ein ähnliches Maß an Sicherheit unter diesem probabilistischen Modell wie sechs Bestätigungen (~ eine Stunde) bei der Zehn-Minuten-Blockchain zu erreichen.

Aus dem Artikel schließe ich, dass es auf den Angriff ankommt, also gilt das Zehn-Bestätigungs -Gebot nur für den „Normalfall“, nicht für den byzantinischen und den wirtschaftlichen Angriff.

Ich habe gesehen, dass Börsen 375-Bestätigungen verwenden. Aber als die Schwierigkeit zunahm und das Netzwerk dezentraler wurde, ist es sicher, weit darunter zu gehen.

Natürlich hängt es davon ab, wie kritisch die Transaktion ist. Warten Sie als Faustregel mindestens 5 Bestätigungen für Beträge über 500 $. Fügen Sie dann 5 Bestätigungen für jeweils 1000 $ hinzu, die die Transaktion wert ist.

Ist dies Ihre persönliche Faustregel oder eine branchenweite Best Practice, die von einer maßgeblichen Quelle (vielleicht der Ethereum Foundation) gefördert wird? Bitte klären Sie die Quelle, um diese Antwort zu verbessern
Ohne auf die Zahlen einzugehen, scheint es sinnvoll, bei der Verarbeitung großer Mengen größere Vorsicht walten zu lassen. Aber denken Sie daran, dass 100 Transaktionen im Wert von jeweils 100 $ den gleichen Wert/Risiko wie eine Transaktion von 10.000 $ haben, also sollten beide Situationen mit gleicher Vorsicht behandelt werden.
@joeytwiddle: Das macht Sinn, aber es gibt einen Unterschied. Bei 100 Transaktionen im Wert von 100 USD besteht tatsächlich ein Risiko von 10.000 USD, aber die Wahrscheinlichkeit, dass alle rückgängig gemacht werden, ist deutlich geringer als die Wahrscheinlichkeit, dass eine Transaktion von 10.000 USD rückgängig gemacht wird. Technisch gesehen ist das Risiko in diesem Fall also geringer.
@Symeof Ich stimme zu, dass dies für normale (erwartete) Umkehrungen gilt. Wie Roland in seinem Kommentar sagte , hängt es wirklich von der Art des Angriffs ab, gegen den Sie sich verteidigen. Ich dachte an eine Börse, die sich gegen ein seltenes, aber ernstes Problem verteidigt, wie zum Beispiel einen Zero-Day-Exploit. (Die Hard Fork von 2016 hat ~165 Blöcke zurückgesetzt , was möglicherweise das von Ihnen angegebene Limit von 375 informiert.)
@joeytwiddle: Wir stimmen zu.

Ich bin auf ein sehr interessantes Forschungspapier mit dem Titel „On the Security and Performance of Proof of Work Blockchains“ gestoßen.

die autoren geben folgendes an:

Aufgrund der kleineren Blockbelohnungen und der höheren Stale-Block-Rate von Ethereum2 im Vergleich zu Bitcoin (von 0,41 % auf 6,8 % aufgrund der schnelleren Bestätigungszeit) benötigt Ethereum (Blockintervall zwischen 10 und 20 Sekunden) mindestens 37 Bestätigungen , um mit Bitcoins übereinzustimmen Sicherheit (Blockintervall von durchschnittlich 10 Minuten) mit 6 Blockbestätigungen gegen einen Gegner mit 30% der gesamten Mining-Power.

Sie finden die Demonstration in der Zeitung