Nehmen wir an, ich habe eine Brieftasche X mit Geld aus 3 nicht ausgegebenen Ausgängen (UTXOs) A, B und C.
Ich mache eine nlocktime-Transaktion, um 2 meiner 3 UTXOs (A & B) für Wallet Y auszugeben, 1 Monat in der Zukunft, unterschreibe es und gebe es jemandem (eigentlich dem Besitzer von Wallet Y), damit diese Person es übertragen kann später.
Nehmen wir an, eine Woche später, bevor die Blockierung von nlocktime auftritt, gebe ich einen der UTXOs der nlocktime-Transaktion aus (A), aber nicht den anderen (B).
Wird die Person, die die 1. Transaktion erhält, den UTXO B am Ende ausgeben können? Oder würde meine 2. Transaktion die gesamte 1. Transaktion ungültig machen?
Vielen Dank
Da eine der Eingaben der nLockTime
Transaktion bereits ausgegeben wurde, nLockTime
wird die Transaktion ungültig, da nicht alle referenzierten Eingaben für Ausgaben verfügbar sind.
Dies wird im Bitcoin-Entwicklerhandbuch explizit als Möglichkeit beschrieben, eine Locktime-Transaktion abzubrechen:
Wenn einer der Unterzeichner seine Meinung ändert, kann er eine neue Non-Locktime-Transaktion erstellen. Die neue Transaktion verwendet als eine ihrer Eingaben eine der gleichen Ausgaben, die als Eingabe für die Sperrzeittransaktion verwendet wurde. Dadurch wird die Locktime-Transaktion ungültig, wenn die neue Transaktion zur Blockchain hinzugefügt wird, bevor die Zeitsperre abläuft.
Bevor die für die Transaktion festgelegte Zeit oder Blockhöhe nLockTime
erreicht ist, gilt die Transaktion als ungültig und wird nicht gespeichert oder von (anderen) Knoten weitergeleitet. Dies wurde in 0.9.0 abgeschwächt, sodass Transaktionen innerhalb eines Blocks nLockTime
für die Weiterleitung akzeptiert werden, aber noch nicht für die Aufnahme.
Brieftasche Y erhält keine Zahlung, bis die nLockTime-Bedingung abgelaufen ist und die Transaktion in einen Block aufgenommen wurde.
AFAIK die meisten Peers werden nlocktime nicht mit 1 Monat in der Zukunft weitergeben. https://bitcoin.stackexchange.com/a/26983/12049
Sobald die Transaktion in die Blockchain aufgenommen wurde, kann sie nicht mehr rückgängig gemacht werden.
Also ist die zweite Transaktionsausgabe B gültig, und die erste Transaktionsausgabe A+B ist ungültig DOPPELTE AUSGABE!
Jannes