Homework on Bitcoin Transactions and UTXO - Questions

1. Describe what Unspent Transaction Outputs (UTXO) are.
Is an output of the transaction that user own and is able to spent later in another transaction. Your total balance is a sum of your all UTXO that you have in your wallet.
2. What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
It will use more than one of your UTXO that sum will be large enough to cover the transaction.
3. How would a bitcoin wallet specify the transaction fee when creating a transaction?
The transaction fee is the difference between the transaction inputs and transaction outputs.
4. How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
I am not sure if I understood this correctly…
Having more input & output addresses increases the difficulty of tracking

1 Like

You are correct though :stuck_out_tongue: using a new address for each transaction would help increasing privacy.

2 Likes
  1. They represent a certain amount of output in a transaction. The total of a users UTXO’s represents the balance they essentially have to spend.

  2. If one UTXO isn’t large enough then you would have to gather more UTXO’s to input that will total up to make the correct amount. Any excess can be paid back to yourself.

  3. Using the formula Inputs = outputs + transaction fee. Rearrange this for transaction fee = inputs- outputs.

  4. Multiple recipients including yourself can be addressed from a single input.

1 Like
  1. UTXO are unspent coin balances on the blockchain
  2. Your wallet will sum all of the UTXOs available to you, subtract from that sum the amount you want to spend, inclusive of mining fee then send the Unspent balance back to the blockchain as a UTXO.
  3. Mining (transaction) fees are automatically applied by the wallet when the transaction is created although higher transaction fees are often offered in return for quicker confirmations.
  4. Use different wallet addresses for each transaction if possible. This improves privacy tremendously.
1 Like

Thank you for correcting :smiley:

1 Like

Being relatively new to this, I did not know you could do more than one UTXOs in the same transactions, or at least overlooked it as it’s not something I have ever experienced or even given the option within any of my wallets… how is this possible?

Is this like when I send an erc20 coin My fee is taken in eth…?

1 Like

Would I go from wallet to wallet to wallet etc…?

Or create my own wallet, ( is that possible? Or difficult I suppose I should be saying?)

1 Like
  • Describe what Unspent Transaction Outputs (UTXO) are.
    Exactly as they sound, the amount of unspent bitcoin transactions you have… effectively your balance

  • What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
    You’d have to supplement with another UTXO, greta enough to cover the transaction, plus any fees

  • How would a bitcoin wallet specify the transaction fee when creating a transaction?
    can be worked out by subtracting the output from the input (accounting also for any return transaction - as in your ‘change’)

  • How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
    you could specify a separate address for any return transactions to increase your privacy

1 Like

Describe what Unspent Transaction Outputs (UTXO) are .

UTXOs are btc available for you to spend. The sender’s input becomes the receiver’s UTXO. Then the new owner uses the UTXO as an input (which then ceases to be a UTXO) for the next transaction, which then becomes a UTXO for the next receiver.

Your wallet collects all your UTXOs in the network and collates them into a single total which acts as your btc balance.

What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?

Your wallet would combine multiple UTXOs available to you until your transaction amount is covered eg. Your tx needs 1 btc. You have 0.3 btc, 0.9 btc as UTXOs. You will use both 0.3, 0.9 as inputs as well as another input of 0.2 sent back to you as “change”

How would a bitcoin wallet specify the transaction fee when creating a transaction?

The wallet would identify recent fees from previous blocks as a guide to what fee amount you need to pay to satisfy a reasonably fast confirmation.

For each transaction, the inputs = total outputs + fee

How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?

Each transaction contains multiple inputs and outputs and therefore multiple addresses on the blockchain. This makes it difficult to know which output belongs to which person.

1 Like

No worries. It’s a bit of a tricky question to be honest. :smiley:

2 Likes

That is how we can calculate the total fee, but keep in mind that the wallet still needs to decide what that fee will be. It does this by looking at current/previous transactions and setting a unit of measurement called satoshi per byte. :slight_smile:

3 Likes

Most wallets do this automatically. If you bought bitcoin two times with the amount of 0.1 bitcoin, your wallet would simply say you have 0.2btc. You don’t need to worry, the wallet will combine 0.1 + 0.1 once you initiate a transaction for sending all of your bitcoins to another address. :smile:

Here is an example of a transaction. If you look at the left side (inputs), you can see that the address:
3JXRVxhrk2o9f4w3cQchBLwUeegJBj6BEp had 3 different UTXO’s in that transaction.

Ethereum does not work like bitcoin, and it has no UTXO’s. In bitcoin, you pay fees in satoshi, and in ethereum, you pay with gas.

2 Likes

You would want to create a transaction with a lot of outputs. Creating a lot of outputs would confuse me, as I would no longer be sure what outputs you still control and which you don’t. :smiley:

Creating a wallet wouldn’t help you. A wallet only stores your private key. Everything you do will still be visible on the public ledger no matter which wallet you use. :slight_smile:

2 Likes

Would you specify only 1 address or more?

2 Likes
  1. They are the result of a transaction that will be “stored in a wallet”.
  2. UTXOs that I have available will be added until they cover the full amount of the transaction.
  3. It would automatically calculate it for you or it could also allow you to set it manually.
  4. I guess you could send (input) a transaction to (output) another wallet that you also own?
1 Like
  1. Describe what Unspent Transaction Outputs (UTXO) are.
    UTXOs are all Inputs together. All added together is also the Wallet Balance.
  2. What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?it would not be broadcasted to the network.
  3. How would a bitcoin wallet specify the transaction fee when creating a transaction?
    In bites per Satoshi, when you have more inputs, the transaction fee is higher… It doesn’t matter how much BTC you send in a transaction when it comes to the fee, it’s more that the more complicated with the inputs, the more expensive fee…
  4. How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
    You can basically send BTC yourself and to others at the same time, then it’s more difficult to trace back.
1 Like

I’s the amount of leftover cryptocurrency change that you receive from each transaction.

If a single UTXO is not large enough to satisfy the demand of the input amount, then the wallet will use a second, a third, etc until the total is greater than or equal to the amount your sending.

UTXO minus UTXO Input = Fee

By creating more output addresses.

The fees are dynamic and will be calculated by your wallet after you input the amount you want to send.

1 Like

I’m guessing you put this in quotes because you know its not true? :wink:

Yes, also using a new address each time you receive funds :slight_smile:

1 Like

Thanks for reviewing my homework man! really appreciated! … and yes, we call it a “wallet” :wink: Good point about using a new address when receiving funds! love it!

1 Like

1 Describe what Unspent Transaction Outputs (UTXO) are.
the amount of the transaction you are receiving on the wallet
2 What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
No free lunch , you can’t spend what you don’t possess
3 How would a bitcoin wallet specify the transaction fee when creating a transaction?
it’s a predefined amount, percentage deduced from the output
4 How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
Use a different address for each transaction

1 Like