Decentralization on the IC moving forward

Introduction

The IC is not yet as decentralized as many of us want it to be, in this post I’d like to discuss some potential changes to improve the situation.
Decentralizing the IC is a battle that’s fought on 2 sides: the NNS and the Network.

NNS

The NNS is the core aspect of the IC, no matter how many nodes and providers the network has, if the NNS is controlled by an oligarchy, none of that will matter. There are 2 changes I think would improve the level of decentralization on the NNS: quadratic voting and raising the minimum voting power needed for Governance proposals to pass.

Governance proposals

Currently a governance proposal can pass just by having simple majority and more votes than the opposing party, this was fine cause up until recently individual participation on the NNS was quite low and it was hard without Dfinity’s vote to reach absolute majority, but things are changing now.
If we look at how voting works IRL a law needs 51% to pass, that means in the worst case scenario there is a 2% difference, in my opinion its silly for a proposal to pass cause it has 0.1% more voting power, if a proposal were this close, it should go back to the drawing board and make some changes to appeal the opposing party. This proposal is a clear example of this issue as It passed with just 0.5% more voting power: Proposal: 48623 - ICP Dashboard

What I’m proposing:

Either require Governance proposals to have absolute majority to pass or require a governance proposal to have an advantage of 1/3% over the opposing party (e.g if 20% voted against a proposal, it would need at least 21/23% to pass).

Quadratic voting

Let’s be honest, as of now the NNS is controlled by a group of individuals who were lucky enough to buy millions of tokens at prices retail has never seen, if one wanted to get the same voting power as those individuals now, he would have to spend tens of millions of dollars in ICP and the situation will only worsen as ICP price increases and their neurons gain maturity and age bonus. There is no point in building a decentralized internet if its still run by a few rich guys, trading Bezos for a bunch of VCs would be a complete waste of Dfinity’s tech.

There are many ways to fix this issue, but no matter how we go at it, the end goald should always be: “How can we empower individuals votes on the NNS?”

Dom has already proposed a solution in a blogpost: Ultimate Decentralization Using Virtual ‘People Parties’ to Deliver ‘Proof of Personhood’ at Scale | by Dominic Williams | The Internet Computer Review | Medium

Citazione
The solution is to enable community members to anonymously prove their personhood, and to specify a single neuron that belongs to them as a discrete human being. The Network Nervous System can then treat such neurons specially, and boost them by augmenting the real ICP that is staked inside with additional virtual ICP, thereby increasing both their voting power, and the voting rewards that the people holding them earn.**
In extremis, the Network Nervous System could even add a billion virtual ICP to neurons for which proof of personhood had been assigned. This would do two incredible things:**
It would create a blockchain governed by one person, one vote**
It would create the first Universal Basic Income scheme via voting rewards in which participants are truly anonymous and cannot be discriminated against or sanctioned.**

This would be an improvement to the current situation, but at the same time it would make staking on the NNS just about passive income, cause no matter how much and for how long you stake a random person will always have more voting power than you. It’s also prone to abuse, a bad actor could pay a hundreds individuals in poor countries to gain a lot of voting power for a small sum. It would also be hard to balance, too much voting power and what I said above could happen, too little and it wouldn’t change much.

My Proposals:

I thought about 2 potential solutions,they both require people parties (like Dom’s proposal) and quadratic funding, what is quadratic funding?

Citazione
Quadratic Funding (QF) is a more democratic and scalable form of matching funding for public goods, i.e. any projects valuable to large groups of people and accessible to the general public.
“Matching funding” is a model of funding public goods where a fund from governments or philanthropic institutions matches individual contributions to a project. QF optimizes matching funds by prioritizing projects based on the number of people who contributed. This way, funds meant to benefit the public go towards projects that really benefit a broad public , instead of things that only have a few wealthy backers. In QF, [total funding] for a proposal is [the square root of each contribution to it → summed up, then squared.] QF strongly encourages people to make contributions, no matter how small, and ensures a democratic allocation of funds meant to benefit the public.

So what do I propose?

  1. Add a quadratic voting type of boost: the more individuals with verified IIs vote on a proposal the more voting power increases.
  2. Add quadratic funding: In quadratic funding a voter can pay an arbitrary amount of money if he really cares about a law, if Dfinity were to adopt this system the NNS would give verified stakers the option to pay ICP (which are then burnt) to support a proposal, the amount of paid ICPs from all neurons would then be summed and go through the quadratic formula.

Why do I think my solutions are preferable to Dom’s?
They don’t break the current balance of the NNS completely, but expand upon it. Stakers still must have skin in the game for their vote to count (lock money for a long period of time) and the more they invest, the more their voice counts, but at the same time individuals choice is rewarded more than the one of a few whales.

Network

No matter how many nodes and providers the IC has, there will always be a weak point: data centers.
Data centers must comply with the law of the country they are located in, a couple years ago Dom said IC smart contracts would “live” in cyberspace, therefore they woulnd’t have to comply with state laws:

But as many of you might know this argument wasn’t enough to stop Nintendo lawyers from filing a DMCA complaint, at the end of the day canisters are hosted and executed by physical servers and if the data center wants to shut them down, there isn’t much we can do. Dom mentions DeFi in that presentation, well if USA were to ban DeFi most likely Europe and other countries would follow, in that case only nodes hosted in countries were DeFi isn’t illegal would host DeFi related canisters.

To solve this issue Dfinity proposed this solution: Path forward on leveraging boundary nodes for content filtering , but it has 2 caveats:

  1. Each operator of boundary nodes will be responsible for defining their own policy and practices
    Problem: Boundary nodes providers could run a cartel and blackmail dApps to not blacklist them
  2. Since boundary nodes generally serve specific geographies and jurisdictions, this makes it possible that canisters will be accessible in some places, but not others, depending upon where legal action occurs.
    Problem: this should never be the case, as long as there is at least 1 boundary node serving a canister it should always be accessible, in the worst case it should be slow to use due to latency or the node not being able to serve all requests.

My Proposals:

Permissionless Boundary Nodes

Boundary nodes should be able to be run by anyone with a verified II, there are many ways this could be implemented, in my opinion nodes not permissioned by the NNS should:

  • Require an ICP stake
  • Require HW standardized by the ICA
  • Require an Internet Identity verified via People Party
  • Be remunerated based on service provided to the network

Badlands

In case some of you don’t know what Badlands is, its a concept proposed by Dom for a permissionless subnet: Introducing the Internet Computer ‘Badlands’ Concept | by Dominic Williams | The Internet Computer Review | Medium
Badlands is still very much up in the air for the time being, the specs are far from finalized, but in my opinion it is something the IC needs, in this paragraph I’ll discuss a few points about Dom’s proposals that in my opinion need to be rethought/expanded upon.

The Hardware

Citazione
Badlands is a concept that involves applying Internet Computer technology to create a new network supported by amateur node providers from home, using low cost devices, that creates the maximum possible level of decentralization and censorship resistance for smart contracts. It will act as an extension of the Internet Computer, and be fully interoperable, but have different properties.
Whereas the node machines in the Internet Computer network have high minimum specifications and can cost more than $10,000, the node machines used in the Badlands network will standardize around special Raspberry Pi configurations, and cost less than $250.

I disagree with this choice, I don’t understand why we should be forced to choose between 2 extremes: 10k servers or cheap Raspberries. The best option should be to have separate badlands subnets like the IC is supposed to have in the future. BTC is mined on hardware that costs thousand of dollars and ETH mining isn’t cheap either, so while it’s nice that running a node is accessible for more people, it’s also a limiting factor for the network, badlands should at the very least have a low spec/high spec subnet type, the low spec one should require a Raspberry Pi and the high spec consumer grade HW like an I7/I9.

The Token

Citazione
The new network would receive its own BDL ledger, with the BDL token acting as the governance token within the Badlands network’s own Network Nervous System.
If this approach were taken, then the genesis BDL ledger might be initialized by taking a copy of the ICP ledger, providing each holder of ICP with an equivalent number of BDL.

I don’t think this is the best approach cause:

  • As I said at the beginning of this post no matter how many nodes and providers the network has, if the NNS is controlled by an oligarchy, none of that will matter. Giving out free tokens to VCs will give Badlands the same issues we currently have on the IC NNS, especially if none of the stuff I talked about is actioned upon.
  • It would dilute the ICP price
What I’m proposing:
  • Require an ICP or BDL stake
  • Require HW standardized by the ICA (low end and high end subnets)
  • Require an Internet Identity verified via People Party
  • Be remunerated based on service provided to the network
  • ICP can be converted in a one way transaction to Badlands cycles, not tokens
  • BDL token is airdropped to NNS stakers and Badlands node providers, no snapshot or anything, start with a slate as clean as possible and rewards early contributors
Why I think its a better approach:
  • Makes ICP more valuable
  • Network is both decentralized and performant (albeit not as IC)
  • No ICO and no whales, early contributers (node providers not VCs) will be the one with the most tokens
  • If paired with NNS changes it would be one of the most decentralized chains

Conclusion

As you may have noticed I haven’t described the specifics on any of the stuff I proposed (e.g number of tokens required to run a node), that’s cause I don’t think I’m the right person for this kind of decisions, I made this post only to share my doubts and ideas, hoping it would spark discussion in the IC community. I’m very much excited to hear what you guys have to say!

Thanks for your attention.

12 Likes

PoS blockchains will always favor people with more to stake. Isn’t that kind of the point? You can hide around the bush and have people go to the middle of nowhere to “prove” something, but at the end of the day a sufficiently motivated and funded individual can just pay people to validate their personhood. I’m willing to bet that you can do it for under 10$ in most places of the world. How many personhoods do you want?

PoH is a hard problem in itself, and even if you solve it, it won’t magically fix your other core problems. It’s like Agile. In the right hands, it’s a great tool, but it’s not magic, and it doesn’t fit every situation exactly the same. You can’t make a blockchain purely on PoH, because if everyone has the same “stake” then it will inevitably gravitate towards two very populous countries. It can’t work like that.

1 Like

I disagree, as I said Dom’s proposal would lead to the scenario you described, but if PoH were integrated in the current system and acted as a boost for verified neurons the stake you have would still matter, so 100 verified neurons from a 3rd world country with 1 ICP would count less than 100 ones with a decent stake in them, in this scenario a bad actor would have to pay hundreds of individuals and also provide them with neurons with a considerable amount of ICPs inside them, effectively risking to lose those funds.

Besides the idea of quadratic voting isn’t something I came up with, Buterin himself is considering it and has talked about the potential of this system many times. If we must surrender to the idea VCs and rich people will always be in charge then why are we even here? Are we just rebuilding web 2.0 with extra steps?

2 Likes

How can this not be abused by the exact same scheme as above. Instead of having rich guy 1 vote with 1_000_000_000 ICP, they divest into 1000 “wealthy” accounts of 1_000_000 ICP each, and vote with them. When talking about these kinds of numbers, paying someone to be a proxy is peanuts. Hell, you can probably find legit lawyers with a fiduciary duty to represent you, with 0% chance of losing any funds. This is 100% prone to abuse just like the other scenario. It just uses fancier terms.

I don’t think I understand your second point about burning ICP, but my intuition is that if someone would to burn ICP, burning them from one account or from many proxy accounts would be the same? I don’t know.

SOrry to be playing Negative Nelly here, but I just don’t see how this isn’t abused. Unless you create an omniscient system where you track everyone by dna when voting, in a decentralized system x amount of stake gets you y amount of votes, even if you split them or not.

2 Likes

they divest into 1000 “wealthy” accounts of 1_000_000 ICP each

That would work now cause the IC is very niche, but if it were to become the revolutionary thing Dfinity is aiming for 1000 individuals would be peanuts.

I don’t think I understand your second point about burning ICP

In quadratic funding a voter can pay an arbitrary amount of money if he really cares about a law, if Dfinity were to adopt this system the NNS would give verified stakers the option to pay ICP (which are then burnt) to support a proposal, the amount of paid ICPs from all neurons would then be summed and go through the quadratic formula.
So even if this were to be abused with the method you described VCs would have to pay with their own pocket and reduce their stake if they wanted to impose their will. One of the biggest flaws with PoS is that it rewards whales who got in first, there is little to no cost to keep your status (like there is in PoW), if anything the more you are in the system, the harder it is for others to catch up. This approach in my opinion mitigates slightly this issue.

SOrry to be playing Negative Nelly here

You don’t have to be sorry, I made this post exactly to gather feeback and discuss.

1 Like

There are some interesting ideas here, and I am interested in hearing other people’s opinions.

Also, isn’t the ICP token less concentrated as neurons are unlocked and sold on exchanges? It is commonly believed that whales are selling, so is the IC getting more diverse stakeholder prospects, or should we assume the whales are just selling to each other, and there are no new investors buying these tokens? If not, I would imagine the effects of a few individuals ruling everything will dilute with time as more the big hold take profit. Perhaps I am way off here.

It’s hard to say until neuron indexing is implemented, but looking at the voting history chart on proposals it’s clear some individuals hold a considerable amount of voting power. Some neurons hold enough ICP to reach Simple Majority with their vote alone and while some VCs are selling their stake, others are staking for 8 years: Dec 31: An Analysis - by Kyle Langham - ICP Analysis

According to Kyle’s analysis 62m in voting power is owned by either a single entity or a small group of VCs, that would be 60 million dollars at CMP and it will only keep growing in value with time as the neuron gains maturity, age bonus, ICP price increases and possibly becomes deflationary in the distant future.

To give you an idea how bad this is for decentralization this recent proposal: Internet Computer Network Status , which was topic of a lot of discussion and had lots of participation only managed to gather ~50 million of voting power on both sides, so if the neuron mentioned in the article were to vote, it alone would have been able to impose its will. Part of the reason why I made this post now is this issue must be acted upon in a timely manner, cause I doubt VCs will gladly vote in favour of losing their monopoly, our only hope is Dfinity’s voting power, which in accordance to their promises is gradually shrinking.

1 Like

Hello,

I’m new here and have only been aware of ICP for a short time. Since I unfortunately don’t have the authorization to ask questions here I would like to add my own question to the topic. Unfortunately, I see a disadvantage in achieving decentralization when only large IT companies are authorized to be node operators. (In addition, the fees to be able to operate as a node operator are high?).

So I wanted to ask (for the technical reason) why this is, and if in the future maybe people/companies can participate that don’t have such a big start capital?

Hi and welcome in the IC community, currently to become a node operator you don’t need to be a large IT company, there are 3 requirements:

  • Owning the type of hardware specified by the Internet Computer Association
  • Renting space in a data center
  • Be approved by Dfinity (soon to be replaced by the NNS, the DAO that runs the IC)

Why has Dfinity chosen this approach? IC is supposed to be the foundation for the next generation of the Internet, often referred to as Web 3.0, in order to do that poweful hardware and fast connections are required, if you think about it Web 2.0 runs in poweful data centers, so there is no way to replace AWS by running a node inside your home, even with a gigabit connection it wouldn’t be as fast nor reliable as a data center.

The whitelist requirement has to do with how IC subnets work, a subnet is kinda like a shard and is used to scale the IC, it’s made of nodes run by different providers, in different data centers in different continents, the whitelist is needed to achieve what Dfinity calls “deterministic decentralization”, if anyone were able to run a node anonymously a bad actor could take control of an entire subnet or all nodes of a subnet could be hosted in the same data center/country, making that subnet more vulnerable.

1 Like

Hello Zane,

thank you, and thank you for your explanation.

But why do you have to own the requested hardware and not rent it dedicated servers from a data center?

Thats actually a good question, I’m not sure how Dfinity verifies whether the HW is owned or rented, as far as I know the old setup procedure required the provider to manually do stuff in the data center, I guess you wouldn’t be allowed to do that if you didn’t own the rack, also the hw required is very specific I doubt most data centers have racks with those specs.

Hm … that sounds like there is more required than just the node servers. I understand that the servers had to be performant, and that makes complete sense. But I don’t understand why they could not be rented. Even in a datacenter (with camera) there is a risk that the servers got compromised. (As long as you don’t get a single room for your machines only)
As far as I understand I think this could slow down the decentralization.

This sounds like it is used as a software protection dongle. But that could be also bypassed. I don’t really understand this strict restrictions.

I think this is a well-reasoned and intellectually honest post @Zane .

I will post some thoughts and clarifying questions once I get some time, but I wanted to say that while there are some things I agree with and some I do not quite agree with (I am not sure you and I have the same understanding about the boundary nodes… but this just may be reading too much into certain words you used, so i will ask clarifying questions), I want to encourage reasoned active thoughts like this.

To be fair I’m not completely sure, I’m not a node provider so i could be wrong, I assume the HW must be owned by the provider, having to pay a high entry price means they are less likely to act in bad faith cause they’d end up losing the initial investment.

Even in a datacenter (with camera) there is a risk that the servers got compromised.

Indeed, I suggest you to read this post: Long term R&D: TEE enhanced IC (proposal) - #14 by lastmjs

As far as I understand I think this could slow down the decentralization.

Depends on how you define decentralization, currently there is a big backlog of providers waiting to be approved, that is cause providers are paid a flat monthly fee, regardless of node usage, so if Dfinity were to add too many nodes at once and they end up sitting there doing nothing, we would have higher token inflation without any benefit.

Raspberry Pi configuration

What do you mean?

Thanks for the kind words, I’m looking forward to read your feedback.

1 Like

Love the badlands concept seriously hope this is something Dfinity dedicates some time towards

I think those who have more stake should have more voting power with their Neuron(s). Why should someone who hasn’t locked up some of their own ICP be rewarded the same as someone who has? Why should we punish those who started this thing by removing their voting power? As those who were in for the investment early on exit, those of us who are in for the long haul will take ownership of and responsibility for the network. Disputing this process is not something I support.

2 Likes

I don’t think I ever said that, quite the opposite infact.

As those who were in for the investment early on exit, those of us who are in for the long haul will take ownership of and responsibility for the network.

I doubt that’s gonna happen, as you can see VCs are in the for long term too: Dec 31: An Analysis - by Kyle Langham - ICP Analysis
They already own a considerable amount of voting power now, imagine in 10 years. PoS chains tend to reward whales who got in first, the problem with ICP is even more evident cause not only those whales are VCs with absurd amount of money at their disposal, but they had the opportunity to buy at prices retail has never seen, thats a bit too much of an advantage.

To give you an idea 25% of ICP supply was sold for ~4 million Swiss Franks, at ATL that sum would get you ~300k ICP, not even 0.1% of the supply and that is after a substantial price drop and crazy amount of FUD.

Besides quadratic funding isn’t an arbitrary system I came up with, the ETH community has been talking about it and experimenting with it for years:

https://vitalik.ca/general/2019/12/07/quadratic.html

If both the ETH community and Vitalik have so much interest in it, then we might also take some time and investigate the potential benefits it might bring to our ecosystem, especially when you consider ETH token distribution is in much better place than ICP’s thanks to years of permissionless mining and and ATL price that was quite close to the ICO’s.

1 Like

Whatever mathematical strategy is used to reduce the voting power of whales will be overcome by them optimizing their neurons. The same is true for amplifying the rest of our neurons, optimizing will occur and the field will be reset to what we have now.

Those who got in early are reaping the rewards, certainly. And they earned it. They could have lost their entire investment before we even became aware of the project. If they are in it for the long haul, I am happy they stick around.

The current system is fair. Those who risked more are rewarded more.

1 Like