Warum nicht?
Nehmen wir obiges Szenario an, in der grünen Chain passiert folgendes:
Ich schicke dir in Block 39 0,01 Coins, da du im BTC Talk Gewinnspiel richtig getippt hast. Somit verschwindet meine Tx aus dem Mempool. Die Transaktion wird durch das Finden von Block 40 bestätigt.
In Block 40 hat Käufer K 100 BTC an den Juwelier überwiesen - danach wird Block 41 gemined und die Tx erhält eine Bestätigung. Mein Output hat nun bereits 2 Bestätigungen während K gemütlich aus dem Laden herausspaziert.
Währenddessen hat K jedoch leere Blöcke gemined. Nach dem Finden von Block 41 veröffentlicht K nun seine Chain bis inklusive Block 42, woraufhin die rote Chain die längste wird.
Nun wurde meine Transaktion an dich rückgängig gemacht und muss nochmal gemined werden. Wo ist mein Gedankenfehler?
Deine Transaktion landet einfach wieder im mempool.
Du könntest natürlich auch eine neue tx erstellen und diese in die neue Chain aufnehmen, dann hättest du erfolgreich einen double spend durchgeführt.
Die erste tx wäre nun obsolet bzw. erfolgreich rückgängig gemacht worden.
Meine Aussage war aber die Folgende.
Auch wenn man 51% der Hashrate kontrolliert, kann ein Angreifer keine Transaktionen anderer Teilnehmer rückgängig machen. Es ist auch nicht möglich Coins zu versenden, die einem nicht gehören.
Seine eigenen Transaktionen könnte ein Angreifer aber rückgängig machen.
Als Unbeteiligter bekomme ich das jedoch erst später mit. Wird meine Transaktion dann wieder in den Mempool gepackt?
ja, die Transaktionen aus den verwaisten Blöcken landen wieder im mempool AUSSER die Transaktionen waren auch in der 'Gewinner'- Chain vorhanden (wie es bei einem double spend der Fall ist).