- Describe what Unspent Transaction Outputs (UTXO) are.
In bitcoin you don’t really have a balance. You have utxos (unspent transaction outputs). This comes into place when you construct a new transaction. If your mom, dad, sister and your dog sends you 0.25 btc each, you will have 4x0.25 utxos as your balance. So you now have the sum of 1 bitcoin. Say you now want to send 0.4 bitcoin to your cousin. Now you will create a transaction of utxos available (2x0.25), which is 0.5 bitcoin. The inputs and outputs needs to be the same. So the output will be 0.4 to your cousin and 0.1 back to you. You will now have three utxos (0.25, 0.25 and 0.1 (the one you just sent back to yourself)) which will be a total amount of 0.6 bitcoin.
- What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
You add utxos together, so it is at least large enough for the transaction, and if there are exceeded bitcoin you send them back to yourself.
- How would a bitcoin wallet specify the transaction fee when creating a transaction?
The transaction fee is specified at an amount so a miner would register the transaction. They register the highest fee they can find. The fee isn’t specified in the transaction, but it is always the amount of the input minus output. (input = output + fees) (input - output = fees)
- How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
People observing transactions will not know what sort of outputs are back to you or the one you are sending bitcoin too. People wouldn’t know what goes to goods or services you are paying for, or if it is back to yourself. If you have several addresses in the same wallet, you can send them back and forth in the same wallet, and your bitcoin will only be known to you.