>A change address is designed to enhance anonymity on the blockchain
Don't think that's actually true. A change address may help for anonymity, but the design of bitcoin (specifically, "outputs"), means that change addresses must be used. I doubt the idea was specifically to help anonymity.
Yes, but that's if you want it all to go to one place. I don't see any specific design choice involving change addresses that seems specifically for anonymity.
Change addresses aren't part of the design at all. Multiple outputs are. By convention, an output to an address you control is called a change address, but it's just a convention on top of the protocol, not something the protocol is aware of.
And yes, their purpose is very explicitly extra anonymity. Gavin named a branch without change addresses a "noprivacy" branch:
>By convention, an output to an address you control is called a change address, but it's just a convention on top of the protocol, not something the protocol is aware of.
I'm aware of that, it's part of what I was trying to say.
>Gavin named a branch without change addresses a "noprivacy" branch:
That branch apparently just sends it to the sending address.
Don't think that's actually true. A change address may help for anonymity, but the design of bitcoin (specifically, "outputs"), means that change addresses must be used. I doubt the idea was specifically to help anonymity.