Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disincentivize mining farms, is it possible!? #103

Open
rraallvv opened this issue May 5, 2018 · 4 comments
Open

Disincentivize mining farms, is it possible!? #103

rraallvv opened this issue May 5, 2018 · 4 comments

Comments

@rraallvv
Copy link

rraallvv commented May 5, 2018

Sorry if this is the wrong place to ask this kind of questions, but this is the closest I could find to a place to discuss blockchain technologies related stuff that isn't exactly related to some specific implementation.

With that out of the way...

If mining farms are so expensive and inefficient why are't they disincentivized?

I'm asking because there are some cryptocurrencies that have mining pools that leverage their collective computational power, in a way that's more efficient for each node connected to the pool and also for the network as a whole.

@vPlaceCoder
Copy link

vPlaceCoder commented May 14, 2018

Hello @rraallvv,

Well even if things are inefficient if they still generate profit then that is your incentive.
The main drawback from mining is paying for the Electricity.
I have spoken with different business property owners and generally (in my area) they dont pay for the electrical costs. So i imagine if you had a large enough farm it would be more cost effective to use that sort of space. You would need a sizeable farm to cover the rent for the space but at that point the savings from electricity could very well make that feasible.

Pools provide a safety net. They give guaranteed payouts.
I have yet to do the math but from what i have seen some people opt to be solo miners because they then avoid the pool Fees and should on average generate the same amount of income if not more over the same time period. As a solo miner its not guaranteed when that payout will come.

Then there are also just enthusiasts. People who with no care for gains that just want to be active in this community. Nothing is going to keep these users from mining. Some have a lot of money and just build farms for kicks.

So in conclusion miners are always trying to become more efficient. Many people treat it as an investment. Many are banking on the fact that the price of BTC and the like will rise again to 20k +.
This would mean their returns (and holdings) greatly increase and in theory accelerate their ROI. So as long as prices stay up to where mining covers the electricity there is no disincentivization other than cost of entry.

EDIT: a word.

@Mat001
Copy link

Mat001 commented May 14, 2018

On slightly different line.
This mining model where the miner with the most computational power wins, and the fact there is competition itself, somehow departs from the core idea of decentralization. Because now the profit is gravitating to the most powerful miners with the most electricity and optimized hardware. It's starting to smell a bit like high frequency trading to me where the most powerful computer outruns everyone else. OK, maybe it's not bad in BTC (yet), but somehow I have been looking forward to some sort of equal opportunities for participation.

There are implementations with other algorithms than proof of work, such as proof of stake etc.
And there are movements that go beyond the blockchain as in competitive mining (such as Blockstack for example).
But if you are into BTC, then sure, why not. I think overall, BTC etc is a great step away from centralized structure.

@rraallvv
Copy link
Author

rraallvv commented May 15, 2018

Thanks for looking into this @vPlaceCoder and @Mat001. I see your point, for a solo miner there is a huge incentive in having the most computational power out of all the miners participating in the network. I'm not sure if there is a metric for how many times two different nodes perform the same computation on the same block, but if that happens, then there is a chance that the network as a whole could be more efficient if all the nodes connected to it could work as a pool. There should be, for instance, a mechanism embedded in the protocol itself that would allow all nodes to split the computation needed for the current block, and take advantage of their collective computational power just like a pool, but in a decentralized way. I down't know if something like that has already been implemented in some blockchains, but I think the protocol should allow each node to "query" the network for a subset of all the hashes that haven't been tried yet.

@vPlaceCoder
Copy link

@Mat001 You are absolutely right. The Main point for the decentralization is to not have 1 entity making all the blocks. From what i can google, this can be referenced as a "51% attack" where one group or individual controls more than 50% of the hashrate/computational power. Potentially allowing them to double spend/stop confirmations for one or numerous users.
I would say the time for equal footing has been lost for BTC, but its still easy to get into Alt coin mining. You dont need to build a dedicated mining rig, you can use essentially any PC.

@rraallvv Really what a solo miner wants is to have enough hashrate to get blocks on a consistent basis. Not necessary to be the most powerful.
I think your idea for that kind of protocol sounds nice in practice but im not sure how it would handle network propagation lag. plus what if malicious entities try to spam this protocol with falsely used hashes? At current you are not broadcasting every hash you have tried only one that fits the requested criteria. which is then confirmed.
i feel like this also touches on the subject of Orphan Blocks/Uncle Blocks. Blocks that are mined that are not on the longest chain.

Etherium for instance rewards Uncle Blocks

Uncles are stale blocks, ie with parent that are ancestors (max 6 blocks back) of the including block. Valid uncles are rewarded in order to neutralise the effect of network lag on the dispersion of mining rewards, thereby increasing security. Uncles included in a block formed by the successful PoW miner receive 7/8 of the static block reward = 4.375 ether A maximum of 2 uncles allowed per block.
Source: https://github.com/ethereum/wiki/wiki/Mining#mining-rewards

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants