8

What's the concept behind ethereum transactions that allows them not to require change addresses? What's the underlying difference compared to - for example - bitcoin?

3 Answers 3

11

The fundamental difference between Ethereum and Bitcoin is that while Bitcoin uses a UTXO model, Ethereum uses a state-transition model.

In Bitcoin, in order for a transaction to be valid, it must point to a set of Unspent Transaction Outputs, which then become the inputs for that transaction. The output value of the transaction must equal the sum of the inputs, so there will generally be change, which is deposited into a change account.

In Ethereum, every account simply has a balance, which increases when it recieves transactions, and decreases when it sends transactions. There is no need for change addresses, because all transactions simply deduct from one account and add to another, without needing to reference old transactions or spend quantized amounts.

5

Change addresses are a privacy feature, not a bug.

The idea is users would choose a different change address for each transaction. Someone analyzing the blockchain would then not be able to tell which address was the receivers, and which was the change.

In reality, most wallets do not use change addresses in this manner. When a user buys something, the change is automatically returned to their original address.

Ethereum developers decided the privacy potential of change addresses were not worth the additional complexity they required. Possibly, they foresaw on-chain trustless mixers as a viable and more scalable alternative.

4
  • do you have sources? the answer sounds like what-you-think could be correct.
    – q9f
    Jan 25, 2016 at 12:17
  • AFAIK Satoshi never explicitly stated the reason for UTXOs, so you are right that its merely what I think could be correct. However I fail to see any other possible explanation. Doesn't mean there isn't one, just I don't know of any others. Obviously I can't provide a source something doesn't exist =3.
    – A F
    Jan 25, 2016 at 17:34
  • Here's a link to some previous discussion bitcoin.stackexchange.com/questions/38246/…
    – A F
    Jan 25, 2016 at 17:40
  • if i want to know how much value moved in an ethereum transaction, i can know that. if i want to know how much value moved in a bitcoin transaction, i do not know that. i can look at a bitcoin transaction arriving from an ip address, and i still cannot know. change addresses are an important privacy feature. mixing is a better alternative. Jun 20, 2017 at 19:40
0

Creating a change address may also increase security as it decreases the number of publicly available signed messages made by one address https://www.reddit.com/r/Bitcoin/comments/3euuka/still_confusedwhy_is_it_not_secure_to_reuse/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.