Author

Topic: Unspent output ownership (Read 721 times)

legendary
Activity: 3682
Merit: 1580
sr. member
Activity: 336
Merit: 250
Cuddling, censored, unicorn-shaped troll.
September 12, 2013, 12:27:55 PM
#3
...Great, crystal clear explanation...

Thanks a lot, that was just about exactly the post I was hoping for.
Your inputs are very precious!
legendary
Activity: 3472
Merit: 4801
September 12, 2013, 12:18:34 PM
#2
the one crafting the Tx needs to know the private key of all the addresses, right?

This isn't necessarily true in all cases, but in most cases with most wallets/clients it tends to be true.

So most likely, in such transactions, all the unspent output used are owned by the same person?

This depends a bit on what you mean by "owned", but in the majority of current transactions your assumption would be correct.  You can't/shouldn't depend on this or assume that it is always correct, but it can be a useful assumption in many cases.

Am I right? And if I am, are there any scenario you can think of where this is not true?

The most common example would be web hosted wallets where you don't control the private keys associated with the "receiving address" that the hosting service provides you.  As an example, MtGox.  MtGox provides each user with a address (or addresses) that they can give out to receive bitcoins into their MtGox account.  However, when the MtGox user sends bitcoins from their MtGox account, the unspent outputs that MtGox chooses to spend for the transaction are not "owned" or "controlled" directly by the user that is requesting the transaction.

It is also possible for multiple bitcoin users to combine their desired transactions into a single transaction to obscure ownership of the private keys:
Multiple users could each provide a list of the unspent outputs that they control and the destination where they want the associated bitcoins to be sent.  Then one of the users could construct a single unsigned transaction that spends all the outputs from all the users and sends the value to all the desired addresses.  This single transaction could then be passed around with each user adding their own signature as needed.  Once all signatures have been applied, the resulting signed transaction can be broadcast into the bitcoin network.  I *think* that the blockchain.info "shared send" service does this.
sr. member
Activity: 336
Merit: 250
Cuddling, censored, unicorn-shaped troll.
September 12, 2013, 11:57:35 AM
#1
Sorry for this noobish question, but I was browsing through the blockchain and a question came.
I did a quick search but could not find a definite answer, so I'm asking here.

in such a transaction:

https://blockchain.info/fr/tx/3497b473d040a7c8b74f445542894064c1421d6ecd4ce6812f508bdb2af8ad3f

which uses several unspent outputs, the one crafting the Tx needs to know the private key of all the addresses, right?
So most likely, in such transactions, all the unspent output used are owned by the same person?

Am I right? And if I am, are there any scenario you can think of where this is not true?
Jump to: