Unspent Transaction Output (UTXO) is a phrase used with cryptocurrencies to describe a balance of a given digital currency that has been sent from one wallet address to another but has not yet been transferred from the receiver to somebody else.
For example, if Alice sends 1 Bitcoin to Bob, Bob is then in possession of a UTXO for as long as he hasn't spent the BTC he received from Alice. As soon as Bob spends the 1 BTC, the lifespan of the UTXO ends.
The purpose of classifying UTXOs as such is to enable transaction validators in a cryptocurrency network to easily distinguish valid transactions from invalid transactions.
Supposing that Bob's wallet has only ever been involved in one transaction in which Bob receives 1 BTC from Alice, transaction validators know that Bob's UTXO balance is 1 BTC. If Bob sends that 1 BTC to Carol, his UTXO immediately becomes 0 BTC. If Bob then tries to double-spend his coins in a second outgoing transaction, validators will see that his UTXO balance is insufficient to be used as an input in the second transaction and the honest validators will not propagate or confirm his double-spend transaction.
- BitcoinBitcoin is a cryptocurrency and a digital payment system invented by an unknown programmer, or a group of programmers, under the name Satoshi Nakamoto. It was released as open-source software in 2009.
- Double-spend attack (blockchain)A double-spend attack is often considered the primary attack vector against blockchain based cryptocurrencies. It can be performed by sending a transaction to another user, then racing against the honest nodes to produce blocks without that transaction present, allowing the adversarial node to retain the initial funds.
- Cryptocurrency miningCryptocurrency mining is the process by which transactions are validated and new coins are minted in a decentralized cryptocurrency network.
- Transaction propagationTransaction propagation refers to the process of how a transaction is spread through a distributed network, until it is included in a block on the blockchain as confirmation.
- Transaction validationTransaction validation is the process of determining if a transaction conforms to certain protocol requirements to deem it as valid.