How and why Qtum implements UTXO-based funds accounting model. Description of UTXOs.
Qtum is looking to learn from what is working for the Bitcoin Network and for the Ethereum network and improve their accomplishments, at the same time getting rid of the things that are problematic.
One of the things that Qtum developers believe is working really well for Bitcoin is its UTXO approach of management of the funds.
The Ethereum blockchain works with account balances in a way a regular bank would approach the issue of management of funds. The Bitcoin ledger works in a different way. It uses the concept of UTXOs or unspent transaction outputs. Account balances are easier to work with, which is why the creators of Ethereum chose them over UTXOs, yet Qtum developers believe that UTXOs are a better way to validate transactions. With UTXOs, a network can also process multiple transactions simultaneously, which makes a UTXO network more scalable and more secure at the same time.
Ethereum has introduced smart contracts to the blockchain-based networks. Smart contracts on Ethereum run with the help of Ethereum Virtual Machine, or EVM. The EVM from the beginning has been created for the Ethereum network, which is why is assumes that all the value transfers would be occurring on the account-based method of Ethereum and not UTXO-based method of Bitcoin. Qtum chose UTXO over account-based calculations. For this reason, Qtum developers have created an account layer that converts the UTXO-based model to account-based interface of Ethereum and Ethereum Virtual Machine so that Qtum is compatible with Ethereum.
An introduction to UTXOs
Practically speaking, a UTXO is a bag of the smallest possible denominations of a cryptocurrency. For example, with the United States dollar, 1 cent coin is the smallest denomination of the currency. For this reason, any amount of United States dollars can be represented as a sum of 1 cent coins. $1 would be 100 coins, $1.49 would be 149 coins and so on. Just like that, amounts of funds of a crypto currency can be represented in the smallest amounts of that currency. For example, the smallest amount of Bitcoin is Satoshi, which is a one-hundred millionth of one Bitcoin. This means that when a user on the Bitcoin network has 1 bitcoin in the wallet, he or she has one hundred million Satoshis in his or her wallet. However, just like it doesn’t make sense for a person to be carrying bags of pennies around instead of carrying just a few bills, it doesn’t make sense for digital networks to calculate all the amounts in the smallest possible denominations. While it is possible and it is easier to deal with Satoshis digitally than it is to carry pennies around, representing all the transactions in the smallest denominations would increase the size of the data about the transactions, which is not the optimal way to send information on a digital network, be it the Bitcoin network or some other network.
This is where the concept of UTXO comes to help. Instead of possible dealing with millions of Satoshis, the Bitcoin network can deal with just several UTXOs that are a much more efficient way to manage data.
UTXOs are really efficient because the one of the differences between a digital currency and a regular currency is that a digital currency doesn’t have to have pre-set denominations.
All regular currencies (also known as fiat currencies) do have preset denominations. For example, with the United States dollar there are coins and there are paper bills. Coin values are 1c, 5c, 10c, 25c, 50c and $1. Paper bills come in the denominations of $1, $2, $5, $10, $20, $50, $100. There are also larger denominations that the United States government is no longer issuing, but that are still valid for legal tender. They are $500, $1,000, $5,000, $10,000, and $100,000. Because the United States dollar has these denominations, any cash transaction needs to be a sum of these denominations. For example, if you needed to pay someone $13.27, you couldn’t break the amount into a $9 bill, a $4 bill and a 27-cent coin because $9 bill, $4 bill, and 27-cent coin do not exist. You would have to use a combination of existing bills and coins, such as a $10 bill, three $1 bills, a 25-cent coin and two pennies. The reason the denominations of the currency and of all other regular currencies exist is that it would be extremely impractical for the governments to create more denominations. Not only would this increase the costs of bill creation and printing, but also people using the currency would be getting confused more often and would have to carry more bills and coins that they wouldn’t be able to use as often as they do the coins and bills of existing denominations.
However, with a digital currency this problem simply doesn’t exist. Because most digital currencies run on transparent decentralized networks, one of their goals is to make peer-to-peer transactions as effective and as efficient as possible. From this perspective, it makes sense to use the concept of UTXO.