Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: No_2 on April 30, 2014, 02:47:33 PM



Title: Can I spend a sub set of the outputs of a tx with a presigned lock_time tx?
Post by: No_2 on April 30, 2014, 02:47:33 PM
Can I sped a sub set of the outputs of an existing transaction with a presigned lock_time transaction that is valid for that transaction at a future time, but some of the outputs have already been spent.

To give an example:

Party A and Party B agree to lock up some funds as a deposit – Party A creates the deposit transaction and spends 6 bitcoins to a transaction that has outputs of 1BTC, 2BTC and 3BTC and broadcasts this to the network. This deposit transaction is then mined into a block. At the same time Party A sends Party B a signed lock_time transaction valid to redeem all three outputs from the 6BTC deposit transaction they just made. The lock_time transaction is valid at 100 blocks in the future, so if A and B never communicate again B can claim all three outputs at 100 blocks in the future.

However before Party B can collect his bitcoins, Party A then spends 2BTC output from the deposit transaction to another transaction.

Is Party B then still able to claim the remaining funds in that transaction? I.e. is each input on the lock_time transaction he holds singed separately or signed across all the inputs by Party A? Is there any way Party B can separate these out to generate a new lock_time transaction and get the funds?

Please let me know if I’ve got the above correct or misunderstood anything.


Title: Re: Can I spend a sub set of the outputs of a tx with a presigned lock_time tx?
Post by: jl2012 on April 30, 2014, 03:03:17 PM
Without SIGHASH_ANYONECANPAY: no

With SIGHASH_ANYONECANPAY: yes

https://en.bitcoin.it/wiki/OP_CHECKSIG