1. 程式人生 > >The EOS Elephant in the Room

The EOS Elephant in the Room

The EOS Elephant in the Room

Introduction

Over the last few days, I’ve become increasingly concerned by the distribution and characteristics of the Top 21 EOS Block Producers (BPs). So many excellent BPs which, by almost all accounts, add tremendous value to the EOS community are currently being squeezed outside of the Top 21. At the same time, BPs that lack basic governance disclosures, have added less in terms of value-add tools for the community, or who have only formally announced their candidacy within the last two weeks, are experiencing incredible voting support and have a place among the Top 21.

What is going on? It’s a little concerning, isn’t it?

As someone who is quite dialed-in to the EOS “scene” and spends a lot of time analyzing and reviewing Block Producers, I find myself asking: am I missing something? Are these BPs doing something special that I just don’t know about? What could a BP possibly have done in the last two weeks to justify their positioning in the Top 21 and rank above so many others who have contributed so well for so long?

And almost everybody I’ve spoken to about it is thinking the same thing. But nobody is talking about it — at least not openly.

Let’s Call a Spade a Spade

By my estimation, there are about 15 to 20 EOS accounts (“entities” is probably a better word) that actually move the needle when it comes to BP election. Collectively, these 15 to 20 entities make up about 50% (or 125 million) of the actual votes currently being cast on the network. I’ve done quite a bit of research around this.

There are literally 10+ million BP vote swings that occur daily based on the shuffling of account or proxy support by and for certain BPs. As a result, over the last week I’ve watched several BPs go from being ranked among the Top 10 to now being ranked in position 21 to 30+. This means that not only is the distribution and positioning of top BPs quite volatile, but also having the support of just a few of these 15 to 20 accounts can “make or break” a BP, at least in the short-term.

So, who do these accounts belong to? Well, that is the million dollar question and of course we don’t quite know (although, we could speculate) because, for the most part, there is no human-form identity attached to the accounts themselves.

As many of us know, those who hold the most tokens on the EOS mainnet also hold the most power to elect Block Producers. On EOS, 1 token currently equals 1 vote which can be cast for up to 30 Block Producers. The rationale for this has always been that those who have the most at stake and, therefore, the most to lose should have the biggest say in determining network operations. Theoretically, they should also be the ones who will work hardest to serve and protect the network given the investment that they’ve made.

In principle, this seems reasonable. But when you consider the disparity in token ownership that clearly exists, coupled with what could only be described as “highly correlated voting patterns” among groups of “similarly situated Block Producers,” which results in a Top 21 that excludes some of the top BP contributors, we must ask ourselves: is this system currently working the way we wanted it to? And furthermore, do we want it to keep working this way?

Before you answer, consider this: owning and operating a Block Producer is essentially like running a technology business, and it’s expensive. The disparity in earnings between being, say, BP 21 and BP 22 is significant. In fact, a BP in position 22 will earn about 50% of what a BP in position 21 earns. And how does this impact tokenholders? Well, this means that the longer high value-add BPs are held outside of the Top 21, the more difficult it will become for those BPs to justify their own existence as a sustainable business and going concern. As a result, they will slowly disappear by shutting up shop or by moving to competing chains where they are more justly rewarded.

And, of course, it’s not just about the money. For BPs, there is understandably a huge pride element involved, borne out of the enormous dedication that many of them demonstrate on a daily basis to develop and support the EOS blockchain. It’s as much about the perception of fairness and public recognition of valuable contributions being justly rewarded through the voting process as it is about the money.

So What Should We Do About It?

Well, the good news is that the EOS blockchain is not going to just stop producing blocks any time soon because of this. It’s not all doom and gloom. EOS is and will continue to be a leading blockchain platform in this space, and can certainly live up to its promise of being the world’s most powerful infrastructure for decentralized applications.

But what it does mean, in my opinion, is that as it stands EOS will never be the best EOS it can be if it doesn’t course-correct on a system which is clearly being gamed. Slowly but surely, the integrity of the chain will be eroded and EOS will face the same centralization of mining issues that plague so many other blockchain networks.

Finding a “fix” for this will be tricky and a silver bullet may not exist. If changes were to be made, great care must be taken to ensure that we don’t over-correct and jump from the proverbial frying pan into the fire. However, I do want to put forward an idea for discussion which might help dilute some of the issues I’ve described above.

It’s probably been the worst kept secret in the EOS community that Dan Larimer and Block.One are currently working on the ability to create individual biometric identities on the EOS blockchain. I’m very interested in the ways we could use this technology to move us ever so slightly away from the “1 EOS = 1 Vote” concept, and closer to a “1 Entity = 1 Vote” concept. If we could manage this, I believe we would create a much more equitable distribution of Block Producers whereby performance, pay and the public perception are more appropriately aligned.

How Could We Do This?

The purpose of this article was not to present a proposal or solution to the issues described. These issues are complex and sensitive, and I simply haven’t spent enough time thinking about it to confidently put forward any kind of proposal at this stage. This said, for the sake of prompting further discussion and dialogue, here is an idea to consider to get the ball rolling:

Update the EOS system contract to determine the election of Block Producers based on (1) the total number of votes received, and (2) the total number of unique identities that have voted.

The only way this potential solution could work is if Dan Larimer and Block.One (or anyone else, for that matter) do, in fact, create the technology to establish on-chain biometric IDs. Under these criteria, the final positioning of Block Producers could be determined using a weighted allocation to each voting component, such as 75% / 25%, and could be calculated as follows:

  • BP positioning based on total number of votes received: 4
  • BP positioning based on total number of unique IDs that voted: 20
  • Weighted BP ranking: (4 * 75%) + (20 * 25%) = Rank 8

Under this system, the BP rank would simply be used to determine the relative positioning of all Block Producers, since not every weighted calculation will provide an integer as it has here. In situations where BPs are ranked the same based on this calculation, the total number of votes received could be used as a “tie-breaker” to determine final positioning.

I realize that it will be extremely challenging to implement any proposal that disrupts the status quo for those at the top of pile. But that does not mean we should not try, and it does not mean that we should not lead by example. Let’s not also forget that there are some extremely large tokenholders out there yet to cast their votes, and who could help get a proposal around this across the finish line.

Wrapping Up

In its current form, I am concerned that the EOS mainnet has over-emphasized the “1 EOS = 1 Vote” concept to the extent that it’s detrimental to the health and future of the network. Remember that in systems where most parties are inherently “good,” it’s also implied that some parties are inherently “not good” and could look to take advantage of others’ good nature. And if any of these “not good” actors obtain considerable power, watch out.

The point of this article was to air issues that almost everyone seems to think exist, but that nobody is really comfortable talking about. A fair and equitable distribution of BPs is essential for continued network strength, security and viability. It also helps to ensure that culturally we represent what EOS is: a global network built for a global community.

From a BP’s perspective, I can understand how it would be difficult to discuss these issues openly. It could easily be dismissed as “whining” or just “sour grapes.” But for tokenholders and proxy voters who are not in that position, I consider it our duty to have more open, honest and mature discussions about these issues without fear of being accused of prejudice, divisiveness or simply spreading “FUD.”

Finally, it’s not easy to stick your neck out on sensitive issues like these, and even I’ve gone back and forth about whether to publish this article. But if you agree with what I’ve written on any level, I encourage you to share this article, as well as your own views, to help drive this discussion forward and ensure the brightest possible future for EOS.