The Bitcoin protocol is open. Its source code is available to everyone and anyone can adapt the original code to mine Bitcoins. If that’s the case, then why do I need to join a mining pool? Why can’t I run my own mining rig?!
As it turns out, it did work like that in the early days! The original Bitcoin Core came with Bitcoin mining functionality enabled in it! Once you opened the program, it’d run a full Bitcoin node in the background and would automatically start mining coins for you. It worked like magic!
But then we all know what happened next, as GPUs and ASICs made CPU mining obsolete.
In Satoshi’s original vision, Bitcoin would be mined by the participating nodes as a reward paid in exchange for each node’s contribution to verifying blocks. This is equivalent to mining without participating in a pool, also known as solo mining.
Therefore, solo mining was the original Bitcoin vision, not pooled mining.
As ASICs dominated the mining scene, solo mining became impractical. If you simply leave a Bitcoin node running, there is a infinitesimal chance that you’ll eventually solve a block before all the millions of ASIC miners out there. But this chance is astronomically harder than winning the most difficult lottery.
A scheme was then devised to distribute work to thousands of miners so a collective effort could be made to mine the next block. This is how mining pools came to be.
Pools assemble blocks from transactions on the mempool (chosen among the TX’s with the highest fees) and derive the Merkle Root for that block. This information is then sent to miners along with different values of a number called a nonce. Different miners get different slices of the nonce search space, so that miners don’t waste energy trying nonces that have already been tried by other miners in the pool.
Once a pool participant solves a block, the pool distributes a piece of the reward to everyone who also tried, even if they didn’t get anywhere close to solving the block. This is a system based on Proof of Work itself and it uses calculations based on the network difficulty to try and determine how much each participant should get paid for their effort. It is important to reward even the smallest miners, as it becomes an incentive to keep participating in the pool.
While mining in a pool, miners must submit back answers to challenges sent by the pool every few seconds. The answers to these challenges reveal to the pool how much work each miner has performed and makes sure no one is defrauding the system.
Once a block is solved, the block reward is split into slices proportional to the mining power contributed to the pool by each miner, as determined by these periodic challenges, and then is split as fairly as possible among participating miners.
The user who actually finds the block may receive a bonus from the pool, but this is not a general rule.
Different pools may offer different incentives for different achievements. For example, even if you do not solve a block, but have submitted a very difficult hash back (containing many zeroes in front), the pool may offer a small reward for this contribution, even if it doesn’t really produce a block reward from the latest block.
As you can see, mining pools are a way for smaller rigs to be able to participate in the mining system.
Most individual rigs would never solve a block by themselves so, by contributing to a larger effort, they get credited small amounts with every solved block. This small incentive is keeps most the mining ecosystem alive for altcoins like Dogecoin, Litecoin and others.
If it weren’t for pooled mining, home users would not be able to participate in the network at all. Or maybe they could, but solving a block would be like winning the world’s most difficult lottery. In fact, solo mining is often not profitable, since your contributed efforts do not get rewarded if you do not solve a full block by yourself. In solo mining there is no reward for contributed hashrate “shares”, but only for fully solved blocks – it’s all or nothing!
Although the above explanation was based on Bitcoin, it works the same for most, if not all, PoW-based cryptocurrencies.
Proof of Stake coins like Avalanche, Ethereum and Cardano take a different approach to mining. In fact, when a block is solved in Proof of Stake systems, we don’t say coins were mined, but we use the term minted instead.
Staking is the process by which you lock a certain amount of AVAX on a validator node (which is analog to a miner on Bitcoin). The amount of staked AVAX gives you a certain amount of “votes” on the network (it’s not really votes, but “weight”, an abstract measure of your “influence” in the network).
Just like having more hashrate increases your chance at finding Bitcoin block solutions, staking more AVAX increases your rewards during a validation period.
How is block integrity guaranteed in a PoS system?
Remember you staked the coins prior to participating in the network? Those coins are locked for a period you selected. During that period, the validator where you locked the coins will check transactions, blocks and decide whether they are legitimate or not. If they’re not, the block is rejected and whoever submitted it may get blocked by other nodes. When an Avalanche node is blocked by too many people, it is detected as being down. A validator with less than 80% uptime will lose 100% of its rewards in that month. Since there’s a minimum amount of AVAX (2000 currently) that you must lock in order to become a validator, it becomes really expensive to defraud the network.
The whole point of both Proof of Stake and Proof of Work is to make fraud more expensive than the potential reward.
In some cryptocurrencies, like Cardano, stakeholders who don’t own a large amount of coins can join staking pools, just like PoW miners can join mining pools.
Staking pools combine the smaller stakes into a larger stake (like mining pools combine smaller hashrates into a large combined one), which can mine larger amounts and which has a bigger probability to be selected as a slot or block leader. Stakeholders are then rewarded proportionally to the size of their stake.
Staking pools are a very interesting concept, because nodes are not constantly grinding numbers looking for a solution.
Only the chosen slot leader performs some simple computations in order to verify a block and the lottery system used to determine the slot leader is also usually very lightweight.
In Avalanche, for example, nodes don’t need to be doing heavy processing when blocks aren’t waiting for validation. Contrary to Bitcoin where miners must be working at foll throttle 24×7 in order to validate transactions.
We hope this article helped you better understand the purpose of mining pools and why you should join one!
We didn’t include a large list, because pools for each cryptocurrency can be easily found via Google.
Before joining a pool, make sure to perform due diligence. Search for complaints about the pool on social media and filter out shill posts to find real reviews. There are many ways in which a pool can defraud its users, since they have full control of the mining process.
It is important to join a pool which has a good reputation and which ideally has a large number of contributors. This is important because small pools have little chance at finding blocks, and they can only reward participants if the pool collectively finds the block solution.
Blocks solved by other mining pools, where you’re not participating, do not pay any reward, so it’s important to balance the chances of your pool finding blocks, with the potential reward which will get split among all participants.
Unfortunately, this tends to favor large pools which keep getting larger. Today, there are less than 20 Bitcoin mining pools solving most blocks. It’s how Proof of Work functions and there’s no way around it.
Mining requires discipline, lots of technical know-how and a lot of hard work. In a different article, we offer some advice for mining newbies.
If you’re just getting started, then by all means do join a mining pool. It will give you hands-on mining experience and you’ll feel the thrill of watching ACCEPTED messages scrolling by your terminal and enjoying the sound of coins being dropped in your crypto bag!