One of the most common questions I have seen has to do with Bitcoin pool luck and the overall network luck rate. Referred to as "luck" it applies to finding a Bitcoin block.
Overall network luck and the network hash rate are impossible to tell apart in the short term.
There is nothing to stop a block from being obtained/solved every 30 seconds for the next hour. If the hash is above target to solve a block, the block is found simple as that. There is nothing telling the Bitcoin network a million hashes were completed in the last second; it is represented by a period of blocks found.
Bitcoin network luck Example:
- 111 Blocks discovered
- 1000 minutes elapsed
- 10 Billion current difficulty
- 1000/111= 9.009 or a ~11% increase
This can mean that there was an increase of 11% in mining rigs, or during that time a lucky/unlucky streak happened.
Bitcoin Pool luck is a little different, mainly due to the fact people are involved instead of just numbers.
Mining speed of a pool is a measure of how many hashes have been submitted to the pool server. The only person that knows if this number is correct is the mining pool operator.
There is no way to measure how many hashes have been submitted to the pool by end users, the same principal as the overall network.
The pool server counts the shares submitted and should just echo the results. If you were a shady operator simple as (shares submitted * 1.05)/Block payout would give the pool a 5% edge, likely just appearing to be bad luck to any end users.
Redirecting hashes to a different port or changing the payout address would also be trivial. A Stratum miner at port:3333 could easily be forwarded to port:3334 by the server or a different payout address used.
There are so many ways to accomplish this there is no use elaborating further.
Either your pool operator is going to make money with a fee or they are going to make money, and you will not know it. All you can do is your due diligence on the pool you choose and realize you are going to pay fees somehow.
Block withholding attacks against pools were a common occurrence and difficult to pinpoint.
A DDOS attack provides a short-term disruption to a mining operation and requires a constant effort. A block withholding attack is used as a much more elegant way to cripple a pool by alienating the user base or in old payout methods bankrupting the pool altogether.
For a pool to detect a user submitting valid shares, but withholding one block funding share would be almost impossible. There are only a few defenses against this, most of them easy to bypass, so enforcement is impractical.
In summary I am trying to keep this simple, explaining a concept that has two points of view.
Network luck is what it is; pool luck more complicated because it can be altered by so many factors. You as the miner have to be proactive on your mining pool choice.