do miners run node software too and know if block going to be accepted or not by the nodes, aren’t they economically incentivised to produce valid blocks, otherwise their work will be wasted?
Because miners run in pools (typically), the pool (something like Stratum) will create a candidate block and distribute the block header to each miner in the pool for them to work on. In this scenario, miners don't actually have much say over which block they work on.
Miners typically don't even download the full block of transactions as it takes up more memory than required and therefore lessens performance.
That being said, Stratum V2 does allow miners to create their own blocks (as with other miners who use BIP22 getblocktemplate)
reply
Right that makes sense and yeah I’ve heard about stratum v2 being in the pipeline. Hopefully rolls out soonish, sounds like will reduce a potential attack vector. thanks @gd I’ve so much to learn about mining.
reply
It's crazy how deep the rabbit hole goes...
reply
Yes, I am pretty sure they do and you are exactly right about the incentive.
reply