1

This question already has an answer here:

There are two possible models, the UTXO model and the account model. Each has advantages and disadvantages. Bitcoin chose the UTXO model. XRP and Ethereum for example use an account model.

What are the advantages and disadvantages of each model?

marked as duplicate by Pieter Wuille, Andrew Chow May 1 '18 at 19:48

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

  • It is not. My question is generic as you can see he asks something specific. – Ini Apr 30 '18 at 19:09
  • Maybe the question isn't, but I think my answer there covers your question as well. – Pieter Wuille Apr 30 '18 at 19:10
  • Nop. If this would be the case @David Schwartz would not have suggested to open a new question about this topic in this thread: bitcoin.stackexchange.com/questions/20611/… – Ini Apr 30 '18 at 19:11
  • 1
    That question only addresses scaling and doesn't address any of the other benefits of the account model, such as the ability to manage properties of accounts. – David Schwartz Apr 30 '18 at 20:21
  • 1
    No, it explains how it adds complications (which are solvable, as you point out) while worsening privacy. As a result, I believe there are no advantages to the account model - encouraging linkage of transactions is giving up on creating a fungible currency. – Pieter Wuille Apr 30 '18 at 20:57
5

The primary advantages of the UTXO model are simplicity of implementation and improved privacy.

With the UTXO model, transactions just consume some UTXOs and create some UTXOs. This tight constraint on what transactions can do makes transactions simpler and easier to execute in parallel.

The UTXO model also improves privacy by making it more difficult to associate transactions issued by the same party.

The primary advantages of the account model are improvements in transaction flexibility, account management, and multi-currency capabilities. A transaction in an account model can do much more than just consume and create UTXOs, it can modify persistent data associated with an account. This permits functions like order books and cross-currency payments.

Perhaps most importantly, it allows an account to be managed. For example, the XRP Ledger permits accounts to change their cryptographic credentials. You can have a publicly known receiving address and change the key needed to spend funds sent to that address without having to communicate a new address or move funds.

On a multi-currency system, accounts can specify assets that they're willing to accept as payment. So, for example, if I owe you US dollars, I can check your account settings to see what assets you accept for dollar payments. The enables the XRP Ledger's foreign asset system, enabling the largest decentralized exchange in the world.

Lastly, an account model makes it easier to bring new servers up. The number of accounts will generally be much less than the number of UTXOs in a comparably sized system. This means less data needed to bring on new nodes.

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