semuxproject / semux-core

Semux Core
https://www.semux.org
MIT License
76 stars 31 forks source link

Distribute block rewards proportionally to encourage staking more SEMs #122

Closed argoncoindev closed 5 years ago

argoncoindev commented 5 years ago

Semux block rewards are distributed equally among the top 100 delegates. This block reward schedule allows a delegate to unvote SEMs without being punished as long as it stays on the top 100 list. Noticeably whales are observed to constantly unvote SEMs and potentially weakening the network.

By distributing block rewards proportionally to staked SEMs can encourage delegates to stake more SEMs and help the network to resist a sybil attack.

orogvany commented 5 years ago

How does this lead to a Sybil attack? One user with 100k sem seems no different than 100k users with 1 seem for purposes of voting?

orogvany commented 5 years ago

Proportional seems like it would lead to many many sem in top 10, as pools would have no reason to be distributed. It would lower cost to attack 100th spot by potentially 10x, lowering cost of 34% attack drastically.

honeycrypto commented 5 years ago

Currently 75% of supply is locked in votes. I think that's too much already. Why would anyone want to decrease liquidity even more?

argoncoindev commented 5 years ago

@orogvany That wouldn't be the case because the consensus will still need votes from 67 delegates to settle a block.

@honeycrypto The actual locked SEMs is far less than 75% if you take top-3 accounts into consideration. There is no promise whether the founder will release the SEMs or not.

orogvany commented 5 years ago

@argoncoindev it only takes 34 to break consensus, not 67, as there wouldn't be 67 playing by the rules anymore, so it doesn't work anymore. With 34 in your control you can stop network completely, or choose to vote NO for all blocks proposed with transactions you dont like, or not created by you. so you can DOS any account from transacting, or forge 100% of blocks (until the other 67 also become malicious and blacklist you, then network is just dead)

Right now with even distribution, it would take 34 * 72k sem to disrupt network.

If we move to proportional and lowest fee pools and whales move to bloat only a smaller number of validators, the number to be in spot 100 will drop, that's desirable by you.

If you believe that POS works, then clearly 34 72k is greater security than 34 30k sem, as far as cost to break network.

orogvany commented 5 years ago

Additionally if we did do proportional, in that a high vote validator would get more sem than me as a low vote validator... it would be in my best interest to vote NO to all blocks proposed by higher voters than me... anyone getting a higher share just dilutes my % in semux, so it would be in my best interest to try to make their blocks fail. It would make validation an adversarial game, an aspect that I don't think serves the network.

It's an interesting exercise, but I'm missing where this helps network. around 80% of all SEM are already staked, and I'm guessing much of the unstaked sem is lost or on the exchange.

orogvany commented 5 years ago

I don't think we want to go proportional at this time. We may address some of the inflation requests in other issue, but proportional is problematic i think. Closing.

Thanks for bringing up topic though!