Is there a way to limit the hashrate for miners?

+3 votes
Currently we use permissioned mining, but we would like to move to permissionless pow mining. However, we would like to impose a limitation on the hashrate so that CPUs can be used for the pow mining. Additionally, this would also prevent ASICs from taking over. We were thinking that we could either disconnect miners exceeding a hashrate threshold or maybe ignore their submitted proof of work.

Do you have any suggestions that we could try? Is there something we can implement via the configuration files, or would we have to edit the source and recompile?
asked Oct 18 by lbunproject

1 Answer

0 votes
I'm afraid this is not implemented, so you would need to modify the source code. Please also note that, even if you were to do this, someone could modify their node to allow a higher hash rate, and they could hide this from the other nodes in the network. A permissioned mining algorithm, like MultiChain's mining diversity, is exactly what is required to prevent this.
answered Oct 19 by MultiChain
Thank you for the quick answer. So, we'll keep the permissioned mining configuration. Maybe give all miners automatic mining permissions on connect and then just remove the permissions if they misbehave.

My follow up question is: How can we make it so that POW is required even with permissioned mining?

I know that round-robin is more efficient, but the miners really want to use POW since they are competitive. They want to see their miners actually producing a hashrate and compare their performance.

I know it sounds silly, but they are treating it as a game. I'm ok with that because I'll pay them the same for the blocks they produce using POW as with round-robin. They are fine with the added cost of POW on their end.

Thank you
Even with permissioned mining, MultiChain does support proof of work. If you want to have PoW play a meaningful role, you can set the target-adjust-freq parameter to a positive value in seconds, e.g. 604800 for once per week. That way blocks will only be accepted if their hashes demonstrate PoW, and the threshold will be adjusted automatically based on what the network sees.