In a way, bitcoin mining (and more generally, proof-of-work mining) is the process of “guessing” what the next block in the Bitcoin blockchain could be.
By combining random numbers (“nonces”) with all other content of a (potential) Bitcoin block, the resulting “block hash” may come out as valid, but this is a matter of trial and error. Specialized mining hardware is designed to make an enormous amount of guesses per second, but for each individual guess it’s very unlikely the result checks out.
The random nature of mining opens individual miners up to a lot of variance or “luck.” Even if a very large miner would control, say, 1 percent of all hash power on the Bitcoin network, that doesn’t guarantee they’ll consistently find one in every 100 blocks. Instead, they could get lucky on one day and find three blocks, but get unlucky over the next three days (or more) and find zero blocks.
Pooled mining is a way for individual miners to combine their hash power so that they can mine as if they are one big miner. The individual miners (in the context of pooled mining, these are also referred to as “hashers”) share in the reward of any blocks found by the combined pool, adjusted by their contributed share of the hash power. This guarantees that they will find blocks more regularly and thus smoothes out the earnings from mining rewards.
With pooled mining, miners can earn a relatively steady income, instead of a huge payday sporadically.
There are different variants of mining pools, and from time to time new methods are proposed and introduced.
Most typically, however, a mining pool operator sets up a service for hashers to connect to. Over this connection, the mining pool operator will send “block templates” to the hashers. These block templates are, as the name suggests, templates for what the next Bitcoin block could look like, but without the required proof of work (the “guessing”) performed on it.
Using this block template, hashers start guessing what the next block is: They perform proof of work on it. If they guess correctly, they return the valid Bitcoin block to the mining pool, and the mining pool broadcasts the block to the Bitcoin network, earning the block reward. It then cuts the block reward into small pieces to pay all of the hashers in the pool, according to the ratio of their contributed hash power.
Mining pool operators can make an approximation of how much hash power each hasher contributed because hashers don’t only submit valid blocks; they also submit “almost valid” blocks: Guesses that weren’t quite right but close. Since even “almost valid” blocks require hash power to produce, the amount of “almost valid” blocks that each hasher submitted is an indicator of that hasher’s contributed work.
Some alternative designs for mining pools don’t rely on a mining pool operator (instead, the mining pool uses a sort of “mini-blockchain”) or let hashers create their own block templates (that still need to be approved by the mining pool).
On average, no, bitcoin mining in a mining pool is not more profitable than bitcoin mining solo. On a long enough timeline, the variance of solo mining should work itself out, and a solo miner should earn at least as much as they would in a mining pool. In fact, since the mining pool operators typically charge a fee for their services, mining solo would probably be more profitable.
However, “on a long enough timeline” could mean it would take longer than a lifetime for the variance to work itself out. Many miners prefer a more stable form of income, even if that means it costs them a small fee.
In the most common bitcoin mining pool setup, as explained above, the mining pool operator creates block templates for hashers to perform proof of work on. This means that the mining pool operator gets to decide which transactions are being mined in the block that the entire pool is working on. This is a form of mining centralization; all else being equal, an ecosystem where all bitcoin miners mine individually would be more decentralized than an ecosystem where they mine in mining pools.
This centralization gives some amount of power to the mining pool operator. They could, for example, decide not to include certain transactions (“censorship”) on behalf of the mining pool, and perhaps even try and perform 51 percent attacks (although this would be more difficult).
Whether or not this is a real problem, and how big this problem is, depends on many factors. For example, it depends on how big the mining pool is, and it depends on how hard or easy it is for hashers to switch to a different mining pool, or how hard or easy it is to start a new mining pool. So far, pooled mining has not caused very serious problems for Bitcoin.
On the flip side, the existence of mining pools probably allows more people to participate in bitcoin mining in the first place, which also contributes to the decentralization of the system. (Again, whether this type of decentralization is actually useful also depends on many other factors.)
Some alternative bitcoin mining pool designs (as mentioned above) seek to limit some of the risks of pooled mining, but tend to come with their own trade-offs and haven’t really caught on in a big way (yet).
No, pooled mining is not a part of the Bitcoin protocol itself, and there is no reason to believe Satoshi Nakamoto intended mining to be done by pools.
Instead, pooled mining was invented in 2011 by Marek “Slush” Palatinus, who also founded Bitcoin’s first mining pool: Slush Pool. Mining pools use their own protocols, although some of these have become so standardized today that they might as well be considered to be part of the Bitcoin protocol.
Of course, while it wasn’t designed for it, the Bitcoin protocol does allow for bitcoin mining. (That’s why it can exist.)
If you want to mine in a bitcoin mining pool, you simply connect your mining hardware to your mining pool of choice. (Mining without specialized hardware is not really an option anymore these days.) The mining pool’s website should have more specific instructions on how to do this.