[Governance] Limit validators from 0% commission fee

I do agree with the idea of raising slashing fees.
Although it is delegators’ interest to have smaller risk of losing Atoms, the idea of slashing is backed by the thought that validators should be secure and secure validators are free of slashing risks.

And yes, the issue which is bigger currently is decentralization, but we think commission take a role in decentralizing the network as well. There could be many ways we can make decentralization better but it would be difficult to address all the methods in one governance proposal so we focused on the issues regarding commission fees. But it is certainly interesting to see many opinions on this post :slight_smile:

1 Like

Yes, you are right. There is a relation between commissions and decentralization.

Maybe we could further limit the specs with respect to commission changes?
E.g.

  • upon commission change some sort of tax could be paid into the community pool
  • min/max commissions should have at most 10% differences - it looks almost fraudulent, when a validator specifies 0% min and 100% max commission
1 Like

This is good idea to avoid quick commission change. I will further add that there could be community pool tax for having more than 15% commission as well.

2 Likes

I think I have managed to formulate two equations for an accelerated plan of attack on centralization. In this we are going to establish the following Variables:

• Total stake = TS = 140M Atom
• %Validator stake on the current Network = (Atom Validator * 100)/ TS = %V
• Effective actual Inflation = EInf = 7.59% of 239M = 18,140,100 ATOM
• CommunityFound = CF = 2%

Variable to distribute the % contribution to the fund directly from the validators and separate it from the inflation of the monetary base. Will be taxes directly to validators based on their size:

• Validator Commission = Vfound = (EInf * 2%) * %V
or
• Vfound = (((((7.59*239,000,000)/100)*2)/100)*V)/100

The following equation determines a variable time of unbond period in function also of its % of the total stake of the current network:
• Validators = 100
• Unbond period = 21 days
• Total unbond of all Validators = 21 * 100 = 2100 days
• %V = % Validator stake on the current Network = ( Atom Validator * 100 ) / TS = %V
• Vunbond period Validator days = Validator Unbond Period

This allows the days to be less in the lesser Validators and more in the biggest:

• Vunbond = %V * 2100
or
• Vunbond = ( V * 2100 ) / 100

We are going to put two examples of practices to better understand the functionality.

  • Remember that the purpose is to push the delegates to smaller Validators to distribute the network by applying higher taxes to the higher validators reducing the performance of the delegates and the greater redelegation times in their participation in the network, a formula will use the community fund to establish the commissions and the other disposition the distribution of the number of days that a delegate must take to redelegation in another validator: Vfound and Vunbound

1 - In the first example we will see the result for the commission and the redelegation time applied to a validator with a load of 1,000,000 of Atomos in the network and a total of 140,000,000 of Atoms estimated in the network calculations:

V1 = 1,000,000 * 100 / 140,000,000 = 0.714% stake on the Network

• Vfound1 = ((((((7.59 * 239,000,000) / 100) * 2) / 100) * 0.714) / 100 = 2,590.40 ATOMs Commision to Community Found
• Vunbond1 = (0.714 * 2100) / 100 = 14.99 unbonding days

2 - In the second example we will see the result for the commission and the redelegation time applied to a validator with a load of 10,000,000 of Atomos in the network and a total of 140,000,000 of Atoms estimated in the network calculations:

V2 = 10,000,000 * 100 / 140,000,000 = 7.14% stake on the network

• Vfound2 = ((((((7.59 * 239,000,000) / 100) * 2) / 100) * 7.14) / 100 = 25,904.06 ATOMs Commision to community found
• Vunbond1 = (7.14 * 2100) / 100 = 149.94 unbonding days

This accelerated process to distribute the network tends to stabilize in 21 days for all the Validators and a similar foundtax for community between them.

So I (obviously) have a number of thoughts regarding this matter. There are a number of interesting ideas proposed in this thread by @asmodat, @JLiBercrypto, and others on how to help decentralize delegation which definitely warrant further discussion. But for now, I’m going to respond specifically to claims related to the original proposal.

So 12% of the validator nodes have 14% of the bonded atoms? That seems…pretty okay. That seems to suggest that delegation is pretty statistically independent of 0% commission. Now within those 12 nodes, the delegation is heavily skewed towards a few larger validators such as Sikka and SparkPool. But that just suggests that delegation is skewed for reasons outside of 0% commssion or not.

Also, sorry, super minor nitpick, but I assume there’s a typo, and it should be 19M?

Are you claiming that delegators are unsophisticated enough to take into account other factors than just price in their decision making when collectively delegating hundreds of millions of dollars of value?

I disagree with this sentiment. This is not how startups work, profits are never guaranteed, especially at such an early stage. Startups involve risk, and part of that is investing time and money into something that may or may not see returns this early. For most startups, the initial monetary investment doesn’t come from reinvesting profits, but from things like personal investment, friends and family, raised capital, loans, etc.

For number 3, I contest the claim that just because a validator has access to operating infrastructure for a cheaper cost, this means that they are not in control of the servers. For example, Sikka has access to the cheaper UC Berkeley datacenter due to our partnership with Blockchain at Berkeley, and we are in as much control of our servers as any validator is with infrastructure in a data center.

For number 4, I contest the claim that increasing the commission rate in the future is a “double edged sword”. For example, Sikka is planning or coordinating the introduction of commission with the launch of a project called the SikkaDAO. The feedback and response from our delegator community in channels and community calls has been overwhelmingly positive.

In the Cosmos SDK staking module, Commission is an sdk.Dec, meaning it could have a minimum non-zero value of 0.00000001%. For practical purposes, this isn’t really no different than 0; most clients/UIs will probably have to round that to 0 anyways. So if this is something that we want to do, deciding on a more useful minimum is necessary or preferably, this:

2 Likes

I understand the reasons for setting a minimum, but I strongly disagree. Crypto was founded on libertarian principals. Cosmos seeks to become the governance behind the entire cryprto infrastructure. If we are to be better than those we are trying to replace we should not set unnecessary restrictions for any reason no matter how noble the intentions. It should be a true free market. You cannot assume to know everyone’s intentions and situations. To be decentralized you do not have to cater to the less well off. We as a network should utilize all the resources available including large corporations and people with access to cheap energy. Do not confuse “free market” with “fair market”.

I would vote against any proposal limiting the freedom of a validator to offer 0% commission.

2 Likes

The solution for limiting centralization should be simple so that ANYONE can see the purpose. Therefore limiting unintended consequences, and increasing end user confidence.

My thought is a validator cannot be delegated atoms if they have over say 7% of the total bonded atoms. I would probably set a limit for self staked atoms too. Maybe 3.5% delegated and 3.5% self staked. My only reason for choosing those number 10% seems too high and 5% seems too low. Lol.

I don’t know if it has already been discussed : couldn’t we make the commission fee depend on current voting power (percentage of delegated atoms) ? For example minimum commission fee could be set to current voting power * 3,33 :

  • new validators with 0 delegated atoms could then propose 0% commission fee, so they can attract delegators
  • with 2% voting power : 6.66% commission fee (or more)
  • with 5% voting power : 16.65% commission fee (or more)
  • with 10% voting power : 33.3% commission fee (or more)
  • with 20% voting power : 66,6% commission fee (or more)
  • with 30% voting power : 99.9% commission fee, so people are strongly discouraged to delegate to a validator that may then get more than 1/3rd of voting power.

This rule also has some other advantages in my opinion :

  • it is very simple to understand
  • it gives the opportunity for newcomers to become validators, and at the same time it guarantees sustainable commission fee for validators that have been able get at least a few percents of voting power
  • it should incite people to redelegate to smaller validators

At the end with such a rule voting power should be equally shared between validators, if delegators follow economic incentives (i.e. if there is 100 validators, roughly everyone should have 1% of voting power with commission fee around 3.33%, if economics are the only incentive)

I understand the reasons for setting a minimum, but I strongly disagree. Crypto was founded on libertarian principals. Cosmos seeks to become the governance behind the entire cryprto infrastructure. If we are to be better than those we are trying to replace we should not set unnecessary restrictions for any reason no matter how noble the intentions. It should be a true free market. You cannot assume to know everyone’s intentions and situations. To be decentralized you do not have to cater to the less well off. We as a network should utilize all the resources available including large corporations and people with access to cheap energy. Do not confuse “free market” with “fair market”.

This ^^. I agree wholeheartedly that we want the protocol to lean on free market economics rather than impose arbitrary restrictions in order to achieve a more distributed outcome. Moreover, we cannot ever accurately predict second order outcomes of imposing regulations on any economic system, especially one in which proposes to “tax the rich”. I would rather the voting power be slightly less distributed than it could be over it being less secure than it could be. Because at the extreme end of imposing a limit on 0% commission, is validators leaving the Cosmos Hub to seek other, more lucrative opportunities by providing staking services to other PoS based protocols that have higher payouts and less restrictions on their bottom line. Let’s call this the “Stake Drain”. Again, I would rather the voting power on the Cosmos Hub be slightly less distributed than to see a Stake Drain on the Cosmos Hub.

1 Like

Well said. I tried to make this point but you put it in much better words than I could.

So what about the 21 days unbonding period ? It seems to me it is a pretty strong restriction rule that is imposed to everyone …

I am not sure what you mean by “second order outcome of imposing regulation” but I do not see why you could accurately predict “first order” better. As for the rule I proposed, it is quite the contrary to “tax the rich”, as the more delegated Atoms a validator would get, the richer he would be !

Even if at the end it is not distributed at all ? I am no economist but I am pretty sure that without any rules this is what will happen.

I understand your concern but in this particular case we are trying to find a way to make it more lucrative for every validator to provide staking services to Cosmos, not the contrary.

This should exclude self delegations and then yes is a slightly better idea then preventing unpreventable 0% commissions (tho still would not prevent validators from returning commission fees and always being 0% anyway :tipping_hand_woman:). This however can be achieved indirectly by introducing Guaranteed Minimum Income below the level that could cause sybils and kill 2 birds with 1 stone (second one is the 0.76 Gini Coefficient of rewards from commission fees) and discouraging smaller players from participation. This way small players could afford 0%.

I do appreciate the thought behind your idea it is cool how the economic incentives basically bring all validators equal. I’m sorry, but to me this is not simple and there are likely many unintended consequences that we do not understand. It is not so much tax the rich, but more regulate the rich which does not sit well with me. But, the biggest issue I have is it assumes everyone acts per the incentive economics. I think the assumption should be a malicious attempt to aquire power.

Thinking about your post gives me an idea…

What if all validators get one super vote (rather than a vote for each bonded atom), equal to all staked atoms divided by the number of validators. This would eliminate centralization governance concerns with validators. It would also incentivise the entire network to pay close attention to all validators not just the top dogs. It could increase the number of people who cast their own vote. You could think of the validator set like Congress and everyday is election day.

The 21-day unbonding period has an explicit security function to it and can, in no way, be classified as an arbitrary restriction on the cryptoeconomic system. The unbonding period’s function is a deterrent to the Nothing at Stake Attack and thus is a security measure that should not be removed or reduced from the Hub.

The Nothing-at-Stake Attack describes a certain weakness present against all Proof-of-Stake-based protocols. The reason you stake ATOMs is because one ATOM is analogous to one unit of hashpower that would otherwise be spent in Proof-of-Work systems. Without ATOMs collateralized on the Hub (i.e. unbonded ATOMs), there would be no collateral to slash if an attacker stole tokens.

21 days is the minimum needed to mitigate Nothing at Stake, a well-documented attack for Proof-of-Stake networks. This means that when you unbond, you are still liable for slashing during those 3 weeks of unbonding in case any slashable offenses are found after you’ve unbonded but during the time you were bonded.

This protects the Hub from malicious validators who decide to equivocate, or double spend, the chain. Say at time T = 0, Validator A equivocates but this action was not discovered until time T = 2. And at time T = 1, Validator A unbonded. If there were no unbonding period, Validator A would’ve gotten away with stealing the tokens. This is Nothing at Stake.

I understand your concern but in this particular case we are trying to find a way to make it more lucrative for every validator to provide staking services to Cosmos, not the contrary.

Making distributions more equitable for all validators in the current set as a whole via a top-down rule seems suboptimal to me with unforeseeable consequences. The way I’d approach my business, as a validator—theoretically—is to think of how I could launch secondary markets that pipe users into my validator in an effort to differentiate my validator from the rest. Perhaps your validator could provide insurance to your delegators? A sort of SAFU-esque fund that protects your delegators in case you/they get slashed?

Doing this does three things:

  1. Justify a higher commission rate for your validator to attract delegators with a lower risk tolerance (a non-negligible market in staking).
  2. Makes your profit margins higher because now you’re charging higher commission (not compete with other validators at 0 commission). And now you don’t need to race other validators to the bottom.
  3. Gives your validator an edge in a competitive, free market for validation services.

This is how I’d think of things, at the very least. Hope this is helpful.

You’re correct, we should always assume malicious attemps when imposing new rules. However, I believe most people actually act per incentive economics. Besides, it is a basic assumption for the whole crypto eco system, whether it is based on PoW or PoS.

This is an interesting idea, but in my opinion the consequences of such a change would be far more difficult to predic than setting a fixed or variable minimum commission fee

Basically you are saying than security is more important than decentralization for you, i.e. rules to enforce security measures are acceptable but rules to enforce decentralization are not. I strongly disagree. Decentralization is as important as security, since it is at the heart of any crypto system promise.

Actually we could make the system way more secure (and simple !) by making it centralized. On the contrary, any decentralized system will have inherent major security flaws, in the case of Cosmos this is the 1/3rd attack. It is because we want to have a decentralized system that we are ready to accept such a risk, but there should be ways to mitigate it, and I am not convinced that “free market” rules will be sufficient, at least right now.

At the moment, the top 5 validators already earn more than 33% of voting power. If these top 5 validators would collude the system would go to an end. The risk would be far more acceptable if voting power was better divided (i.e. top 10 instead of top 5 would get more than 33% of voting power) and if there was more changes in the validator set, i.e. if more validators were able to access to top 10 to replace current ones.

I think that even in what we call “free market” certain ground rules should be made. While economic incentives are no magical tool to cause people to act in one certain way, it is still an efficient one. If we allow the market participants to constantly compete over pricing, validators constantly competing are going to end up lowering constantly, and higher fee validators will lose their delegators. I think this will only lead to lose-lose situation where nobody wins.

In Proof-of-Stake, I think representing voting power based on the tokens “on Stake” should stay that way. Having one super vote per validator could lead to sybil attacks, and also smaller validators voting against the long-term benefit of the network as they have less in stake than larger ones.

Thank you for a deep analysis of this post and replies.

From my assumption, this could also mean that people are more likely to delegate to

  • larger validators within top 10
  • validators with lower commission

It seems interesting that less people delegated to validators with 0% fee who are also outside of higher stake ranking. But currently, it seems delegators are more likely to choose among higher ranked validators.

Only thinking about pricing may not be the case for all large delegators who are delegating more than 100k Atoms. But Cosmos network and community is relatively a young one. New delegators may not be so aware of the factors other than commission fee at the moment, which can easily lead them to delegate to a 0% validator. This is not because delegators are ‘unsophisticated’ but it could be a natural behavior of humans.

I agree and disagree with this thought at the same time. I agree that no “guarantee” profit could be expected from a start up. But I disagree in a perspective of long-term security of the network. Validators are crucial in maintenance of Cosmos hub. Not every validator will leave the network because they do not make profit, but in a long term, if any validator consider this business an unprofitable one, they could abandon to be a validator in the future. New validators may fill up the empty spots, but similar issue with making ‘small profit’ or negative profit will arise to them as well. This could repeat, and I do not think this is good for the network.

Competition is the catalyst to creativity and innovation. Validators with higher pricing are forced to get better or get out. Validators who are smart or fortunate make a lot of money. Deligators get the highest return on their investment. This is a win-win-win.

This ^^ is where you lost me. Using economic incentives to facilitate decentralization tends toward socialism. I for one will oppose such policies. I think you will find others who agree.

This is a great point. I would like to make revisions based on this…

We can agree that more than 1/3 voting power with too few validators is an unacceptable security risk. Therefore let us set a limit to validator voting power as 5% of the total, the remaining voting power would go to a community pool which is distributed to validators with less than 5% (5% is starting point more thought to be given to the number, also many possibilities to how to distribute the votes). This would eliminate the condition of centralization beyond the threshold of compromised network security AND maintain free market economics. Sybil attacks and voting against long-term network benefit would be minimized, but not eliminated. This would serve as network incentive to deligate to smaller validators who are trustworthy.