Ein Timewarp Attack manipuliert koordiniert die Zeitstempel der Blockheader und verfälscht damit die Berechnung der nächsten Schwierigkeit. Diese kann ohne entsprechenden Hashrate-Rückgang sinken, wodurch Blöcke schneller entstehen.
Bitcoin berechnet die Schwierigkeit nach jeweils 2016 Blöcken neu und strebt durchschnittlich 10 Minuten zwischen Blöcken an. Vom Zeitstempel des letzten Blocks einer Periode wird der des ersten abgezogen: Das erfasst nur 2015 Intervalle. Das Intervall zwischen dem letzten Block einer Periode und dem ersten der nächsten fehlt in diesen Differenzen. Dort kann die Zeit zurückspringen, ohne dass beide Berechnungen die Perioden lückenlos verbinden. [4] [3]
Ein neuer Block muss einen Zeitstempel oberhalb von Median Time Past (MTP) haben, dem Median der vorherigen 11 Blockzeiten. Er muss aber nicht neuer als der unmittelbar vorherige Block sein. Angreifer können die meisten Zeiten nur 1 Sekunde über MTP setzen, den letzten Block der Periode ungefähr mit der realen Zeit versehen und anschließend wieder eine ältere Zeit wählen. Sie verändern neue Blöcke, nicht bereits bestätigte Header. [1]
Das klassische Szenario setzt eine Hashrate-Mehrheit voraus oder eine Minderheit mit zusätzlichem Einfluss auf die Blockreihenfolge, etwa durch Selfish Mining. Die Zeitreihe muss dauerhaft kontrolliert werden; ein einzelner ungewöhnlicher Zeitstempel reicht nicht. Der klassische Angriff benötigt ungefähr einen Monat Vorbereitung, deren Spuren öffentlich in der Kette sichtbar sind. [1]
In der zweiten angegriffenen Periode können die Zeiten durchschnittlich 20 Minuten pro Block vortäuschen und die Schwierigkeit ungefähr halbieren. Die nächste Periode wird schneller geschürft, doch manipulierte Zeiten verlangen erneut eine Senkung. Die Begrenzung eines einzelnen Anpassungsfaktors auf vier verhindert Wiederholungen nicht. Die theoretische langfristige MTP-Grenze entspricht etwa 6 Blöcken pro Sekunde; sie verspricht keine praktisch nutzbare Netzkapazität. [1] [3]
Schnellere Blöcke würden künftige Blocksubventionen in einen kürzeren Zeitraum vorziehen; allein dadurch steigt die Grenze von 21 Millionen BTC nicht. Nodes müssten Daten schneller prüfen und weiterleiten. Überlastete Prozessoren, unzureichende Verbindungen, konkurrierende Zweige und häufige Reorganisationen würden Bestätigungen unzuverlässiger machen. [1]
BIP 113 verwendet MTP des vorherigen Blocks für absolute nLockTime-Sperren, die als Zeit angegeben sind. Höhenbasierte Sperren richten sich weiterhin nach der Blockhöhe. Beim Angriff kann MTP viel langsamer als reale Uhren voranschreiten. Vertragsmittel könnten länger als erwartet gesperrt bleiben; komplexere Abläufe könnten ihre zeitliche Abstimmung verlieren. [5] [1]
Der Vorschlag beschränkt die Zeit des ersten Blocks einer Periode: Sie darf höchstens 7200 Sekunden, also zwei Stunden, vor der Zeit des vorherigen Blocks liegen. Der letzte Block darf außerdem keinen früheren Zeitstempel als der erste haben. Die Spezifikation hat den Status Complete. Das bedeutet fertiggestellt, nicht aktiviert: Neue Konsensregeln im Mainnet durchzusetzen erfordert eine gesonderte Aktivierung. [2]
Vergleichen Sie Header-Zeiten, MTP, Grenzen nach je 2016 Blöcken, tatsächliches Mining-Tempo, Schwierigkeit und Hashrate. Unterscheiden Sie klassischen Timewarp von der Murch–Zawy-Variante sowie Testnet- von Mainnet-Regeln. Software kann vorsorglich sicherere Blockvorlagen erzeugen; das heißt noch nicht, dass das gesamte Netzwerk jeden Block ablehnt, der gegen den vorgeschlagenen Schutz verstößt. [3] [2]
Für ein möglichst vollständiges Bild lies diesen Eintrag zusammen mit Difficulty Adjustment, Mining, Proof of Work, Consensus Cleanup, Timelock, Reorg. Auf diesen Eintrag verweisen außerdem Consensus Cleanup.
01Braucht der Angriff eine Hashrate-Mehrheit?+
Das klassische Szenario setzt eine Mehrheit oder einen anderen Vorteil voraus, der genügend Einfluss auf die Blockreihenfolge verschafft. Ein kleinerer Miner ohne diesen Vorteil kontrolliert die Zeiten nicht ausreichend.
02Reicht Median Time Past als Schutz?+
Nein. MTP begrenzt einzelne Zeitstempel, schließt aber die Lücke an den Periodengrenzen nicht. BIP 54 schlägt zusätzliche Beschränkungen für das Verhältnis zwischen erster und letzter Blockzeit vor.