1

Some context

As far as I understand there are two ways in which an individual (or a company) can mine Bitcoin:

  • Solo: if one has enough hashrate to secure a block often enough to pay for the electricity bills, or one is just a hobbyist playing Bitcoin lottery, that's usually a person who controls very low hashrates and its willing to go mine at a loss.
  • Or through a mining pool: somewhere in between the previous two cases, a person that needs to secure a revenue for every kWh of energy it consumes but with a hashrate too low to produce a block in a reasonable amount of time.

When is solo mining trustless?

Mining solo through your own bitcoin full node is the ideal way to contribute to the decentralization of the consensus and strength of the network.

But I've seen there are alternative solo mining configurations, in which the miner equipment can be pointed to other people's server. solo.ckpool.org is one example and another example is public-pool.io to which nerd miners are connecting to. In this case I see room for bad behavior from the pool operator that could be sending block templates to the miners in which the coinbase transaction pays to some bitcoin address that's not the solo miner address. Unless there is a way to verify on the miner side that the hardware is actually working on the block with the correct coinbase destination address every time a block template is received.

Pool mining is completely based on trust

On the other hand, as far as I understand, pool mining is fully based on trusting the pool operator not to run away with the Bitcoin reward, because the coinbase address is controlled by the pool operator and not the single miners.

It has happened recently that F2Pool mined a block with a 20BTC fee on one transaction, and that money didn't go to the miners but it was refunded to the company to made that transaction. It wouldn't have happened if there was some kind of smart contract in the coinbase lock script that bind the reward to the miners instead of giving it all to the pool address.

Another possible situation is that a pool gets coerced by the local government to request KYC from participant miners (eg. Foundry USA) or the miner share doesn't get paid.

Wrapping up

I would like to ask this community:

  1. Are there mining pools that do not require trust?

  2. Is there any protocol that pool operators could use to make mining trustless?

Secondary questions, just for debating the implications of this issue with respect to Bitcoin mission:

  1. Why is it that 90% of the hashrate is concentrated on trust-based pools?

  2. Why is it that such an important aspect of the Bitcoin protocol (mining) has been neglected to the point that a mid-size miner has to connect to a Pool that either requires KYC or can steal the reward at will?

3
  • 1
    Not a full answer, but look into p2pool. It's effectively a separate "blockchain", with faster "blocks", which are pool shares. It can only reduce the variance by a relatively small constant factor however, and it appears that mining pool users like more variance reduction over the need to trust the pool to some extent. Oct 4, 2023 at 12:01
  • @PieterWuille, thanks P2Pool seems very interesting indeed. However, it looks the pool is defunct: the last mail in the mailing list dates back to 2017, the website for statistics is down and last commit in the github repository was in 2018.
    – Lagrang3
    Oct 5, 2023 at 6:04
  • Yeah I think the variance reduction it offers compared to solo mining is just not enough for most users' taste. Oct 5, 2023 at 12:51

1 Answer 1

1

some kind of smart contract in the coinbase lock script that bind the reward to the miners instead of giving it all to the pool address.

I'm no expert1 on pools but an obvious obstacle is that the coinbase transaction has to be decided ahead of time but the distribution of mining effort by pool members is not known until a block is mined.

I think there is no obvious way for a Bitcoin script, written in advance, to measure subsequent mining effort and apportion rewards accordingly.


1. i.e. fairly ignorant

1
  • This is a good point.
    – Lagrang3
    Oct 3, 2023 at 18:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.