just got a question here:
Does this flowchart accurately show the step-by-step workings of a typical crypto-miner software? I'm a newbie in the cryptocurrency business. Though I welcome comments and objections, please be understanding...
Bitcoin Stack Exchange is a question and answer site for Bitcoin crypto-currency enthusiasts. It only takes a minute to sign up.Sign up to join this community
About your new diagram: https://imgur.com/a/RaRgWEb
Firstly "execute mining software" implies that you have maybe at least 1% of the network hash and solo mining. Otherwise, the process is just:
Then every node verifies the block. This would be the bottleneck, so instead it's enough that
and checking for the target is done by the hardware, in the mining loop.
So it's the hardware that mines.
Instead of "mining software stores coins into miner's wallet address", it's the block template that has the destination address. When the generated block is valid, so is the new coinbase transaction, and the coins are minted.
Does this flowchart accurately show the step-by-step workings of a typical crypto-miner software?
Just to take one example of many errors:
Verification node sends reward (mined coins) to miner's software.
This is not how Bitcoin mining works at all. The Bitcoin whitepaper does not define Bitcoin nodes that are specifically verification nodes nor does it define Bitcoin nodes with some special power to send mined Bitcoins to Bitcoin miners.
When Bitcoin miners construct a block and hash it, they construct a block with a first transaction that places a mining reward "into" the Bitcoin miner's wallet. There is no need for any third party to do anything. If the hash meets the target criteria (less than current difficulty level) and the other block contents are valid, then the block will be generally accepted by other Bitcoin nodes and other blocks will therefore be built on top of it (i.e. reference it) eventually making it possible for the Bitcoin miner to spend the "coin" in their wallet.
Bitcoin mining pools can be organised any way their creators can dream up. It would be possible to create a Bitcoin mining pool API that separated Bitcoin mining and verification roles and which had verification nodes that distributed shared rewards to pool participants. However there is no necessity for different pools to work the same way as each other.