I am new to Bitcoin and have gone through a couple of video introductions and articles. I have few questions on Bitcoin transactions:

1) I read that the sender needs to encode the numbers of remaining Bitcoins with him in the transaction. This is to say if Alice has 50 Bitcoins and she wants to transfer 40 to Bob, her transaction data would have two destinations: 40 BTC to Bob's address and 10 BTC to Alice. But I looked at the below link with transaction data:


This does not have any case where the sender is same a recipient. Is it that this info is excluded for web reporting or am I missing something.

2) How are the number of transactions in a block decided? I know that block size has a limit but how is it determined which transactions would a block pick from pool of unconfirmed transactions?

Regards, Gaurav

  • Hi Gaurav, Your other question is answered here: How do miners select which transactions to include in a block? – Murch Sep 19 '16 at 21:57
  • Thanks Murch. But I think I am still not totally clear. My understanding was that the address is associated with a user & acts as public key which helps in verifying that transaction was made by the user. Also, user can spend Bitcoins which his address has received earlier. Is it that in implementation, the sending address keeps on changing whenever the user make a transaction. Also, is receiving address for an account normally fixed except when the user is receiving change. As per the explanation, I think for change the client creates a temporary address and links it to the account. – user41562 Sep 22 '16 at 1:30
  • Each user has as many addresses as they like. There is not a single sending address in a Bitcoin transaction, instead transactions are funded by use of UTXO. Each input is associated with the address that the bitcoins was received to. You should not use addresses for receiving bitcoins more than once. – Murch Sep 22 '16 at 7:17

Browse other questions tagged or ask your own question.