Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: SebastianJu on May 14, 2013, 11:19:03 AM



Title: Will change addresses really help anonymity?
Post by: SebastianJu on May 14, 2013, 11:19:03 AM
Hello,

im wondering if change addresses are really helping anonymity.

When you use a change address he sees another address you own because he can relatively sure the second sending address is no other payment but the sending to a change address. So he knows the second address. If youre unlucky he can see that this change address already had other changes inside (change addresses are used more than once) and he could find more of your addresses. As well as he could check out the other payments from the address you sent him bitcoins to with and find other change addresses. This way it could be possible theoretically to identify many of the addresses the sender owns.

But when you use a single address from your wallet then the receiver of an transaction only knows this single address is yours. He could check previous payments but only see sender and receiver, nothing he could judge from that its your address too.

I might be wrong but isnt this the opposite of more anonymity?

Thanks!
Sebastian


Title: Re: Will change address really help anonymity?
Post by: gmaxwell on May 14, 2013, 04:37:10 PM
When you use a change address he sees another address you own because he can relatively sure the second sending address is no other payment but the sending to a change address. So he knows the second address.
Yes, the party you are transacting with can make a reasonable guess about change— though multiple destinations in a single transaction is something regular users use. But one person knowing about your change is still much better than the whole world knowing.

Quote
If youre unlucky he can see that this change address already had other changes inside (change addresses are used more than once)
They are not reused in correctly written software.


Title: Re: Will change addresses really help anonymity?
Post by: piotr_n on May 14, 2013, 06:59:15 PM
No, I don't believe it does actually help anonymity.
And moreover, it creates a lot of hassle, forcing you to backup your wallet after every payment.

The change address belongs to the same wallet as the money that you have just spent, so a next transaction you make, will likely connect back this "anonymous" change address with some public address from your wallet, anyway.

The best and the cheapest way I know to launder coins is just sending them through Silk Road.
Though of course, then you end up with a question: how much can a trust a guy who runs Silk Road? :)


Title: Re: Will change addresses really help anonymity?
Post by: tom_o on May 14, 2013, 07:19:50 PM
No, I don't believe it does actually help anonymity.
And moreover, it creates a lot of hassle, forcing you to backup your wallet after every payment.

The change address belongs to the same wallet as the money that you have just spent, so a next transaction you make, will likely connect back this "anonymous" change address with some public address from your wallet, anyway.

The best and the cheapest way I know to launder coins is just sending them through Silk Road.
Though of course, then you end up with a question: how much can a trust a guy who runs Silk Road? :)

Launder coins by sending them through the most illegal bitcoin service about? Great idea.


Title: Re: Will change addresses really help anonymity?
Post by: gmaxwell on May 14, 2013, 07:42:05 PM
And moreover, it creates a lot of hassle, forcing you to backup your wallet after every payment.
It most certainly does not.


Title: Re: Will change address really help anonymity?
Post by: SebastianJu on May 14, 2013, 08:14:32 PM
When you use a change address he sees another address you own because he can relatively sure the second sending address is no other payment but the sending to a change address. So he knows the second address.
Yes, the party you are transacting with can make a reasonable guess about change— though multiple destinations in a single transaction is something regular users use. But one person knowing about your change is still much better than the whole world knowing.

Quote
If youre unlucky he can see that this change address already had other changes inside (change addresses are used more than once)
They are not reused in correctly written software.

Im really not sure that its regularly happening that one transaction contains more than one real transaction and its not a change-address involved. That is, because many wallets till now dont allow more than one transaction in one transaction (i dont know how to name a whole transaction). And its very uncommon anyway because how often do one want to send 2 transactions or more in one? Till now i didnt even meet the requirement to do so. Only theoretically... in case i have to pay back my groupbuyers it would make sense to make this at once.

But it doesnt matter much anyway because when a transaction means to send one part to the recipient and the whole rest that lies at this address is going to another address its even more likely that a change address is involved, because 2 transactions to 2 persons nearly never will lead to exactly zero at the sending address.

Ok, not reusing them is better. I see. In fact the whole change addresses makes much more sense with single used change addresses. Ill check this with the dev of my wallet. When i think about change addresses that arent reused then the whole effekt could at least be a bit better but not really a gain in anonymity. I mean when someone gets a transaction from a change-address he only needs to check where the money came from. If its a transaction where the sending address is empty afterwards and the second recipient address in the list is the address that sent now, then its relatively sure that its a change address. And that can be connected to the previous address again. So its not really very much more anonymous.

Can you give me a reason, why its better to use change addresses, i didnt found yet? I mean when one dont want that the recipient knows that an address is yours, you simply have to send the btc to a clean address in your wallet. The recipient cant tell then if the previous sending address is yours or if the sender is another person. Or wherent there a website that loops bitcoins through a couple of addresses, splitting it and so on, so that its not know at the end where the bitcoins came from?

So if there is a reason, i didnt get yet, to use change addresses please let me know.

What do you mean with "But one person knowing about your change is still much better than the whole world knowing."


Title: Re: Will change addresses really help anonymity?
Post by: piotr_n on May 14, 2013, 09:01:00 PM
Launder coins by sending them through the most illegal bitcoin service about? Great idea.
There is nothing illegal in sending your bitcoins to your SR account and then withdrawing them from it.
So unless you are ashamed of using SR, I don't see a problem to get advantage of their laundering system.
No, that I would need it :)


Title: Re: Will change addresses really help anonymity?
Post by: piotr_n on May 14, 2013, 09:15:44 PM
And moreover, it creates a lot of hassle, forcing you to backup your wallet after every payment.
It most certainly does not.
indeed, it does not.
but how is a simple user supposed to know when there was a new address generated for a change, so he should make a new backup?
there is no such indication - so basically, if you don't want to loose any money, you should do a backup after every send.


Title: Re: Will change addresses really help anonymity?
Post by: kjj on May 15, 2013, 11:32:41 AM
And moreover, it creates a lot of hassle, forcing you to backup your wallet after every payment.
It most certainly does not.
indeed, it does not.
but how is a simple user supposed to know when there was a new address generated for a change, so he should make a new backup?
there is no such indication - so basically, if you don't want to loose any money, you should do a backup after every send.

keypool (https://en.bitcoin.it/wiki/Key_pool)


Title: Re: Will change address really help anonymity?
Post by: wheatstone on May 15, 2013, 12:36:03 PM
What do you mean with "But one person knowing about your change is still much better than the whole world knowing."

Without supposing to speak for gmaxwell, the point is that sending change back to the originating address enables anyone with access to the transaction (i.e. "the whole world") to know exactly how much was spent. If address A contain 100 bitcoins and sends 99 to B and 1 to C (without accounting for tx fees), it's not immediately possible to tell whether 1 btc or 99 btc was spent.


Title: Re: Will change address really help anonymity?
Post by: SebastianJu on May 15, 2013, 06:09:19 PM
What do you mean with "But one person knowing about your change is still much better than the whole world knowing."

Without supposing to speak for gmaxwell, the point is that sending change back to the originating address enables anyone with access to the transaction (i.e. "the whole world") to know exactly how much was spent. If address A contain 100 bitcoins and sends 99 to B and 1 to C (without accounting for tx fees), it's not immediately possible to tell whether 1 btc or 99 btc was spent.

Wouldnt that only be true if the transaction to change address isnt the second transaction in the whole transaction? I mean every transaction that has more transactions in itself has to sort the transactions. Or is it somehow impossible to say whats the first transaction?

Edit: By the way... i found that the wallet i use reuses the same change address only for the same real address in the wallet. Is this then the correct implementation?
Edit 2: When i think about it... thats probably not correct. Because a user receiving money from the change address or from the real address so that he get the change address know can make assumptions from that.


Title: Re: Will change addresses really help anonymity?
Post by: SebastianJu on May 15, 2013, 06:17:49 PM
Launder coins by sending them through the most illegal bitcoin service about? Great idea.
There is nothing illegal in sending your bitcoins to your SR account and then withdrawing them from it.
So unless you are ashamed of using SR, I don't see a problem to get advantage of their laundering system.
No, that I would need it :)

Do they use a fee for this or sending, receiving bitcoins? And you get bitcoins from an unrelated address back?

I guess its better to receive the bitcoins divided in 2 different parts to 2 different addresses. Otherwise it could be seen in blockchain that the same amount of bitcoins, or the amount minus fees, are sent to an address and one could guess it might be connected. Though im not sure how good that could be done.