feed
Bitcoin does not use an “account-balance” model to represent value. Instead, it uses coins as the overarching concept, with each coin being held by a Bitcoin user.
An unspent transaction output (UTXO) represents a “full block” of Bitcoin. UTXOs are used as inputs for Bitcoin transactions.
The UTXO model makes Bitcoin better than traditional financial systems in terms of auditability, transparency and efficiency.
What is UTXO?
An unspent transaction output (UTXO) represents a certain amount of bitcoin. Multiple UTXOs can be combined and a single UTXO can be split to make any denomination required for payment.
We can understand UTXOs as physical currencies because they must be used as a complete unit. If you want to spend 50 cents, you can’t break a 1 dollar coin to pay. Instead, you have to spend the entire 1 dollar and get 5 cents of change. However, unlike physical currency, UTXO has no standard denomination. A UTXO can be any amount of Bitcoin.
As the name suggests, a UTXO is the output of a Bitcoin transaction. Outputs exist as UTXOs until they are used as inputs to another transaction, at which point they are no longer unspent.
At any point in time, the set of existing UTXOs is called the UTXO set. Bitcoin nodes keep track of the UTXO set to determine which coins are not spent and who can spend them. This system allows Bitcoin to solve the Double Spend problem. The double-spending problem has long plagued digital currency attempts.
How are UTXOs created?
New UTXOs are created by spending existing UTXOs. Every Bitcoin transaction consists of inputs and outputs. Inputs spend existing UTXOs and outputs create new UTXOs.
So, if a new UTXO is created by destroying an existing UTXO, how did the original UTXO come about?
Coinbase Trading
A Coinbase transaction is a special type of transaction that rewards miners for finding blocks by creating new bitcoins. Since new bitcoins are created, coinbase transactions have no inputs, but produce one or more outputs. Like all normal outputs, the output of a coinbase transaction is a new UTXO.
The history of each UTXO can be traced back to one or more outputs of a coinbase transaction.
Understanding Bitcoin’s UTXO Model
Bitcoin’s UTXO model is different from most digital currency systems. This is because Bitcoin is designed to be different from the traditional financial system. The original intention of Bitcoin was to achieve complete transparency, fairness, and auditability. UTXOs can help Bitcoin achieve these goals. So how does the UTXO model work?
Address and UTXO
In the traditional financial system, a transaction takes money from one account and transfers it to another. Bitcoin’s UTXO model has no accounts, so there is no dedicated sender account/address. The address, although used to receive UTXO, is never recorded directly on the blockchain. Bitcoin addresses are encodings of scriptPubKeys that are included in the output of each transaction.
When bitcoins are spent, the input contains only the signature and public key necessary to execute scriptPubKey, and does not mention which address on the blockchain the bitcoins came from. However, the previous address of the UTXO can be easily calculated. Each transaction input is identified by its transaction id as its predecessor, and its index is used to indicate which output of that predecessor is used (essentially referencing an existing UTXO). The scriptPubKey of the referenced transaction output can be converted to a bitcoin address.
Bitcoin’s monetary policy
The UTXO model allows all Bitcoin nodes to reach a consensus on the existence of Bitcoin at any time. That is, anyone can audit the total supply of Bitcoin to ensure that Bitcoin’s monetary policy is strictly followed.
Combining and splitting UTXOs
A Bitcoin transaction can contain any number of inputs and outputs. Therefore, users can combine and split UTXOs arbitrarily to complete payments of any amount.
For example, Alice holds two UTXOs worth 0.5 BTC and 0.7 BTC respectively . When she pays Bob 1 BTC, she can use these two UTXOs as inputs, and then send the 1 BTC input to Bob.
Alice also creates an additional output of 0.199 BTC to send herself as change. She cannot send herself 0.2 BTC due to transaction fees.
Transaction fees are not in the form of transaction outputs (UTXOs). It is derived from the difference between the input value and the output value.
Transaction verification
The UTXO model allows Bitcoin nodes to effectively verify every transaction on the chain. When a node receives a transaction, regardless of whether the transaction has been packaged into a block or not, it can verify whether the UTXO in the transaction is really valid and has not been spent. Because of this, Bitcoin can solve the double spending problem without relying on a trusted third party.
UTXO Model vs. Account Model
Most financial systems (including banks and cryptocurrencies) do not use the UTXO model. Therefore, instead of relying on certain tokens to control assets, users use one or more accounts, each with a balance. The account model allows financial institutions and merchants to accurately record the borrowing and lending of personal accounts, avoiding the problem of change and currency selection.
Account Model Reliability Issues
The advantages of the account model come at the expense of transparency and auditability. It is impossible to audit the total dollar amount in all bank accounts.
Additionally, most account models suffer from issues such as chargebacks and account overdrafts. Since Bitcoin transactions must reference the UTXO to be spent, invalid transactions cannot be added to the blockchain.
Privacy Issues with UTXO Models
The UTXO model provides users with privacy advantages. Bitcoin users can store each UTXO in a different address and process it separately. In this way, users can hide the connection between their UTXO holdings and avoid exposure to the public eye. Determining which UTXOs belong to which users becomes more difficult for blockchain watchers.
Bitcoin’s design greatly reduces the difficulty of generating new addresses. Account model systems (especially in traditional financial systems) make generating new accounts cumbersome or even impossible, forcing users to keep all or most of their funds in one account.
Chain analysis companies have attempted to undermine Bitcoin’s privacy and determine ownership of UTXOs through various methods. However, these methods rely on assumptions and circumstantial evidence rather than strict logic.
related terms
trade
A transaction is a record of Bitcoin being transferred from one address to another. All transactions are recorded in blocks on the blockchain.
UTXO set
A UTXO set is the set of all UTXOs that exist at a point in time. The total amount of all UTXOs is the current supply of Bitcoin.
Transaction ID (txid)
A transaction ID (txid) is a string of letters and numbers that identifies a specific transaction. This string is just the hash of the second SHA 256 calculation of the transaction.
multiple payments
So-called multiple payments are when someone spends the same money more than once and convinces one or both parties that they have gotten it. Bitcoin solves the double-spending problem with a decentralized ledger and time-stamped blockchain.
scarcity
Currency scarcity refers to the fact that currency is difficult to find or create. While popularization of money is important, once money can be easily created, it can have a negative impact on the economy.