Homework on Bitcoin Transactions and UTXO - Questions

  1. UTXOs are the outputs of a transaction before next transaction is created by the recipient.
  2. In that case, other UTXOs will be utilised.
  3. The fee is implied into transactions.
  4. By creating different addresses for new transactions.

Exactly, and mathematically a transaction fee for a transaction is the total amount of inputs - total amount of outputs

1 Like
  1. Describe what Unspent Transaction Outputs (UTXO) are.

Outgoing transactions that reference this bitcoin address and have not yet been used as input for another transaction.

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

The wallet combines several UTXOs to cover the required output. Any change will be sent back to the own address after deduction of the fees. If there are insufficient balances (UTXO), the transaction is not valid and will not be accepted.

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

Based on fees from previous transactions and size (byte’s) of transaction.

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

Sending the output to a different address or wallet.

1 Like

UTXO’s are the outputs that the wallet adds up to show how much money is available to spend. These are unspent transaction outputs. These are the funds that the wallet received.
If I don’t have any single UTXO that is large enough to cover for the transaction, the wallet would add up multiple UTXO’s and spend all while returning the rest back to me.
The bitcoin wallet would specify the transaction fee by subtracting the output from input.
You could increase the number of outputs being sent to different addresses in order to increase your privacy.

1 Like

Describe what Unspent Transaction Outputs (UTXO) are.

Each new transaction is constructed out of unspent transaction outputs. Comparing unspent transaction outputs in a blockchain to cash is the simplest way of explaining their functionality. Each crypto wallet has many UTXO’s which vary in size but when added up together, they make up the wallet’s entire balance. When, for example, you want to send someone 1 BTC and you have four 0.25 BTC UTXO’s in your wallet, your transaction will be sent by spending these 4 UTXO’s.

Chances are that none of your UTXO’s or any combination of them fit what you want to send to another wallet. In this case, your wallet will send an UTXO bigger than the sum that you want to send. Afterwards, the wallet will receive new, smaller UTXO’s as “change.”

The amount of these received UTXO’s will be equal to the difference between the amount of sent UTXO and the amount that you actually wanted to send.

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

The wallet will combine enough of your UTXOs to equal or exceed the amount of the current transaction plus the fee. The remainder will be sent back to you as another UTXO you can spend later.

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

The fee is calculated from the remainder of all inputs minus the outputs of a transaction.

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

Generate new output addresses so can’t tell which output goes back to the sender.

1 Like
  1. Describe what Unspent Transaction Outputs (UTXO) are.

UTXO are input or output going through a transaction.
A receiving wallet receive UTXO that it can now spend
A sending wallet use previously stored UTXO to send a SpendTX

There is no balance in any wallet, there is a directory of UTXO defining how much can be spent

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

Your wallet will query the blockchain and combine all your UTXO to execute the transaction, Total UTXO must be equal to Output.
If the sum of your UTXO isnt enough for a transaction, it will not work. If it it greated, the wallet will send back to you the UTXO minus the fee.

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

Wallet automatically define the transaction fee by querying the blockchain and figuring out what is the best transaction fee depending how fast you want to execute the transaction. input = output + fee

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

since every transaction is created from a wallet (private key + signature) it is always private

1 Like
  1. Describe what Unspent Transaction Outputs (UTXO) are.
    —Unspent transaction outputs are the leftover outputs from the transaction after the recipient has been paid, they are sent back to a wallet that the original inputer controls.

  2. What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
    —If you don’t have any single UTXO that is large enough to cover for your transaction the transaction will not be completed, nothing will happen.

  3. How would a bitcoin wallet specify the transaction fee when creating a transaction?
    —Transaction fee = Input - Output

  4. How could you use the notion of transaction inputs and outputs to increase privacy in your transaction
    —You could use a different address for many different outputs to confuse anyone looking. To make it more complicated you could send a very small amount to many different addresses, and a large amount to one, then combine the smaller ones into one wallet so there is only one left.

1 Like
  1. UTXO basically stand for the balance in your wallet
  2. Transaction gets declined if UTXO is not enough to cover the value.
  3. Wallet checks the blockchain and determines the correct fee.
  4. A few addresses and outputs can be an outcome of one single input.
1 Like
  1. UTXOs are unspent output from bitcoin transactions.
  2. The transaction would be declined and invalid.
  3. This would be calculated as Input - Output= transaction fee. However, the transaction fee is not specific, but it’s more of implied.
  4. How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
    You can create multiple outputs from inputs, so it will be difficult to track the transactions
1 Like
  1. Sum of UTXOs is a wallet balance.
  2. Transaction would not be possible.
  3. Output - Input = fee
  4. Always make new addresses
1 Like
  1. it means the balance of your wallet or unspent balance
    2.Automatically reject if your balance is not enough
    3.The difference between input and ouput it means the transaction fee is implied
    4.the sender will send the output or can control the transaction
1 Like
  1. UTXOs are data packets that define what kind of a transaction took place. they reside in a block on the block chain. they say what went where from where.
  2. more UTXOs would be summed, until the transaction output is reached. if there are not enough input UTXO transactions to cover the output, the transaction would be invalid, it should be denied at the source (wallet), but will also be denied by miners later.
  3. the fee is input - output, but sometimes wallet specify a suitable transaction fee based on recent activity on the blockchain.
  4. easiest would be to use multiple personal addresses for sending transactions to, so using new addresses for any single transcation from the same wallet (private key)
1 Like
  1. A UTXO is an “unspent transaction output”. It is an output from a transaction that is not an input of any (later) transaction.

  2. Your wallet program will say it is not a valid transaction, however, if you make your own wallet-program allowing it, the transaction will be ignored by the miners and not included in a block.

  3. The fee is just the difference: (Inputs - Outputs), so it doesn’t need a separate “field”.

  4. When receiving BTC, always use a new unused address. That way nobody knows just by looking at the address that it is associated with the same wallet-seed used for other addresses. This relies on the fact that just by looking at two adresses it is not computationally feasible to determine whether they belong to the same wallet-seed or not.

1 Like

Well, kind of. But if someone knows your public address, he can track how much balance you have on the blockchain (for example an exchange has your KYC data, when you withdraw from the exchange, they know what your address is). You can mitigate this by using a new address every time you receive funds :slight_smile:

1 Like

UTXOs are Unspent Transaction Outputs :slight_smile: their sum defines your balance :slight_smile:

1 Like

Everyone would still know you own the funds, even if they don’t know your private key. All addresses on the bitcoin blockchain are public. In order to increase your privacy you would need to make a lot of outputs in your transaction. This way I wouldn’t be sure which addresses you still own and which you don’t.

3 Likes

You could always combine multiple UTXOs. If the sum of all UTXOs is not large enough, then the trasaction would still be invalid.

2 Likes

Exactly. The wallets sets the fee using a unit of measurement called satoshi per byte. But we calculate the total fee with the formula you provided. :slight_smile:

3 Likes
  1. Describe what Unspent Transaction Outputs (UTXO) are.
    Answer - UTXO is the input of the transactions received in someone’s wallet and ready to be spent. In essence, this is the “potential” buying power until it is realized fully or partially when some ore all UTXO sent to a different wallet (including your other wallet).

  2. What would happen if you don’t have any single UTXO that is large enough to cover for your transaction?
    Answer - hopefully I will have other UTXO’s available in my wallet that I can combine in order to arrive at the amount needed to enable the transaction. If this is not the case the transaction cannot be executed.

  3. How would a bitcoin wallet specify the transaction fee when creating a transaction?
    Answer - the wallet would calculate the fee (one of the functions of the wallet) following the following formula input = output + Tx fee. Therefore, in order to arrive at the transaction fee the output needs to be substracted from the input.

  4. How could you use the notion of transaction inputs and outputs to increase privacy in your transaction?
    Answer - despite the fact that the blockchain is a distributed ledger that is available to everybody, it does not run the tally of the totals of the amounts for the specific transaction (not to mention it does not show who and what/how much is getting as a result of a transaction). All the information is kept encrypted and all we can see the wallets to what certain amounts were sent (as input) as well as those wallets receiving certain amounts (as outputs). Therefore, when we look a the Bitcoin blockchain, all we can see is the direction of a particular transaction and the amount of the BTC that is being transacted as well as the encrypted wallets addresses that are either receiving or sending BTC. This mode of operation provides a high degree of security as well as anonymity.

1 Like
  1. The various inputs that make up the bitcoin balance in a wallet.

  2. Your wallet combines enough smaller UTXO’s to cover the transaction or the transaction fails if your balance is not enough to cover it.

  3. It would find a reasonable fee based on recent on chain transactions.

  4. Send your bitcoin to yourself at anonymous bitcoin addresses with every transaction. Use multiple hardware, software, paper, cold storage devices.

1 Like