Wie kann ich nach einer Bestätigung feststellen, ob meine Transaktion betrügerisch ist?

Nehmen wir an, die Transaktion tx_1 hat eine Bestätigung. Aber der tx_1 ist betrügerisch. Kann es rückgängig gemacht werden? Hier speichere ich die bestätigten Blöcke und wenn meine Transaktion in Block-1 ist, dann ist die Bestätigung von tx_1 1 und immer wenn die Blöcke nach Block-1 kommen, wird die Bestätigung weiter erhöht. Aber nach einer Bestätigung, wenn der tx_1 betrügerisch ist, wie kann man dann diese Transaktion stoppen?

Antworten (1)

Sie können eine bestätigte Transaktion nicht trivial rückgängig machen. Das ist einer der Hauptvorteile eines Netzwerks wie Bitcoin.

Wenn Ihr tx nur 1 Bestätigung hat, können Sie ihn möglicherweise noch löschen, indem Sie zwei Blöcke auf dem übergeordneten Block des Blocks abbauen, der tx_1 enthält. Dazu müssen Sie jedoch über genügend Hashpower verfügen, bevor jemand die Kette erweitert, die auf dem Block mit tx_1 aufbaut, was nicht trivial ist. Selbst wenn Ihnen dies gelingt, besteht außerdem die Möglichkeit, dass jemand den Block, den Sie fallen gelassen haben, abbaut und ihn wieder in die längere Kette umwandelt.

Üblicherweise gelten sechsmal bestätigte Sperren als irreversibel. Praktischerweise ist sogar 1 Bestätigung in der Bitcoin-Kette praktisch irreversibel, es sei denn, Sie haben Zugriff auf eine große Menge an Hash-Power (obwohl gelegentlich verwaiste Blöcke vorkommen).

Angenommen, ich verfolge eine bestimmte Bitcoin-Transaktion „TX_1“. Ein bestätigter Block hatte die Transaktionsinformationen, nachdem ich den Block dekodiert hatte, und ich habe meine Datenbank aktualisiert als: {transaction: 'TX_1', 'confirmation': 1} nun, wie erhöhe ich die Anzahl der Bestätigungen, vorausgesetzt, ich höre immer noch auf die Netzwerk über ZMQ. Sollte ich davon ausgehen, dass dieselbe Transaktion „TX_1“ in kommenden Blöcken vorhanden ist?
Wenn Sie den nächsten Block erhalten, überprüfen Sie den prevblock-Hash. Wenn es mit dem Block mit Ihrem TX übereinstimmt, erhöhen Sie um eins. Vergleichen Sie für den n+2-Block den prevblock-Hash mit dem n+1-Block und erhöhen Sie ihn um 1. So weiter und so fort. Solange neue Blöcke auf einer Kette aufbauen, einschließlich des Blocks mit Ihrem TX, werden weiterhin Bestätigungen hinzugefügt