How mining pools distribute workload among clients connected to it?
-
Hi,
I’ve been reading a lot about mining. In fact, I my self set up a CPU miner and connected to a pool.
To be honest, I don’t think its giving me fare reward! My apologies, if this sounds harsh. I don’t mean to insult anyone who is running pools, because I am a newbie in mining.I am trying to understand that how pools distribute work among clients connected to it. I mean there is one hash to find out that has specific level of difficulty. I read that pool can ask a client to solve a hash with lower difficulty. What’s the point of doing it. It still not gonna solve the actual block that needs to be part of solved blockchain!!!
What am I missing? Can some expert please throw some light on this topic please?
I appreciate all guidance from you guys.
Thanks. -
A pool does ask a client to solve a lower level difficulty, or rather it accepts one as a “share”, which is a proof that your doing work. Eventually a client will happen upon a nonce that produces a hash of a high enough difficulty, and that’s a share too. When the block is found, it contains the address of the pool for the reward, so the solution won’t work if you change it to your own address. This means that you can hash for the pool, and submit lower than acceptable shares as proof that you’re trying, and get paid proportionate to how many shares you can produce, or you can hash for yourself, and hope that you get the higher level difficulty hash, and get it all for yourself.
It’s entirely conceivable that a given client will NEVER produce a hash of the correct difficulty, but will regularly produce hashes of acceptable pool difficulty to capture some percent of the reward anyway.