Homework on Bitcoin Transactions and UTXO - Questions
- Describe what Unspent Transaction Outputs (UTXO) are.
A UTXO is a transaction output that has not been used for an input of another transaction (or sent). The output amount is allocated on the blockchain to the public key that can be accessed using the private key in the wallet of the recipient the funds have been sent to.
By the wallet referencing the blockchain for all UTXO associated with the public key, then adding them up, a balance can be shown of available funds. Once the recipient uses the UTXO as an input for another transaction from their wallet, the UTXO changes status to an input for this transaction and is no longer a balance of that wallet.
Tx Input = Tx Output + Fee
-
What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
Multiple UTXO’s from previous transactions are used until the Tx Input is greater than the Tx Output + Fees so that the transaction can be fulfilled.
-
How would a bitcoin wallet specify the transaction fee when creating a transaction?
It doesn’t, it calculates the fee from the blockchain by using the sum of the Tx Ouputs of the transaction and subtracting them from the sum of the UTXO’s used for the Tx Input, with the remainder being the Fee.
Eg: Tx Input = Tx Output + Fee
If Transaction Fee is 0.5
Tx Input = (UTXO A = 2 + UTXO B = 3) = 5 total UTXO value
Tx Output = (C = 1 + D = 3 + E = 0.5) = 4.5 total Tx Output value
Therefore Fee = Tx Input - Tx Output = 5 - 4.5 = 0.5 total Fee for transaction
- How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
By using multiple wallets, make multiple Tx Outputs to another wallet or wallets using different public keys, at the same time as a ‘real’ transaction and which a ‘transfer’ making it more difficult to understand which Tx Output and UTXO would be for example, for transferring some funds to your mate or payment of goods and which is to another of your wallets.