0

To my understanding after researching on the infrastructure of Bitcoin, the block chain maintains transaction records between two parties represented by their public keys. At the same time, the Bitcoin system needs miners to verify the blocks in order to maintain the system. Then my questions go as following:

  1. How are miners identified for a given block? And, how is this piece of information in the block chain?

  2. Is "coinbase transaction" stored as part of a block, and thus records the gross reward for mining such block? Or, what element/record within a block is recording the amount of "reward"?

  3. In addition to this part of "reward" issued by the system, miners can also collect transactions fees (light reference). Please correct me if I am wrong: transaction fees are free-floating voluntary residuals from normal transactions, to be collected solely by the miner who consolidated the block. Then, how are transaction fees "paid" to the miner? It seems that there needs to be another entry of record nested within in the block denoting the amount the miner has declared. How may I identify this record?

1

How are miners identified for a given block? And, how is this piece of information in the block chain?

Miners are only identified if they choose to identify themselves. That is usually done by adding a message to the scriptSig of the coinbase transaction, or by taking credit for mining the block on a website.

Is "coinbase transaction" stored as part of a block, and thus records the gross reward for mining such block? Or, what element/record within a block is recording the amount of "reward"?

Every block has a coinbase transaction. The coinbase transaction is always the first transaction in the block. The sum of the amounts of each output of the coinbase is the reward that the miner claims. The reward must be equal or less than than the current block reward plus the transaction fees. If a miner claims less than they are entitled to, the extra money is gone.

transaction fees are free-floating voluntary residuals from normal transactions, to be collected solely by the miner who consolidated the block. Then, how are transaction fees "paid" to the miner? It seems that there needs to be another entry of record nested within in the block denoting the amount the miner has declared. How may I identify this record?

Each transaction has inputs and outputs. The sum of the amounts of the inputs minus the sum of the amounts of the outputs equals the transaction fee.

A miner is entitled to claim the fees of all of the transactions in their block. They claim this by increasing the reward they claim to the block reward plus the transaction fees.

  • Thanks, Nick! One more question with "identification": if I step back to the level of public key, does the miner who mined the block leave his public key in the scriptSig? – llinfeng Nov 8 '16 at 4:34
  • @llinfeng No, but the miner does identify who may spend the reward using a public key in the scriptPubKey. – Nick ODell Nov 8 '16 at 7:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.