Steem Power and Governance, Part 1: Centralization and Decentralization

in #steem8 years ago (edited)

In this multi-part series, titled Steem Power and Governance, I will explain in detail how the distribution of Steem Power (often referred to as vesting shares, or vests) influences the Steem system of government. I will describe the ideals behind this relationship and elucidate how Steem deviates from these ideals by examining the actual distribution and application of governing power in the Steem network (which I will often refer to as the steemosphere). I will explore positive and negative consequences of the current situation of governance as I perceive them, then further suggest remedies to the problems I identify. Finally, I will give predictions for the future of Steem governance under several different models for power diffusion, relating these models to the potential for Steem's continued success.

Centralization and Decentralization

Whales are the Most Visible Steem Power Players

Nearly everyone reading this article likely stumbled on it by navigating the website at steemit.com. This website is a social media sharing portal where authors post articles such as this one. Authors also get paid for posting based on the popularity of the article where popularity is determined by user voting. Steemit.com is unique in that the rewards for a given post can reach into the thousands of dollars in value. This value is shared between the author and voters in an uneven split in favor of the author. Because of this incentive system, the quality of the most visible posts has increased quickly as new authors have joined to share in the competition and rewards.

By now it is obvious to most steemit.com users, called Steemians, that some individuals have extraordinary influence on the popularity of posts, dramatically effecting their payouts. These individuals are called whales, a term that can have both negative and positive connotations depending on context. To appreciate the power of whales in the Steemosphere, consider that at the time of writing this article, a vote from a single Steem whale can bump the value of a post from nothing to several hundred USD. Some whale votes can even propel a post's reward into the thousands of dollars depending on the size of the whale and how frequently the whale votes.

Upon learning about whales, most readers have a few questions. First who are these whales and how did they get so much power? Second, how is this power represented such that rewards are faithfully distributed according to the power of the votes? Third, who apportions this power and why don't they redistribute it more equitably?

Before tackling these questions, I will first describe the relationships between the website steemit.com, the protocol called Steem, and the currency called steem that has the trading symbol STEEM.

The Steem Decentralized Database

The steemit.com website is powered by a database of user content. This database, or rather the computer protocol that describes the database's format and operation, is called Steem. The Steem protocol underlies a special kind of database that exists as identical copies in many computers (called nodes) at once, and for which there exists no single master copy. This type of database is known as a decentralized database because it lacks a central controlling authority. To be synchronized, all nodes must agree on the precise contents of the database at any given time. This state of agreement is called consensus.

Figure 1: Degrees of Centralization

Three different types of centralization are illustrated in Figure 1, and can be distinguished by how consensus information is propagated between nodes. In a centralized system, consensus information originates at a single node and is passed to each lower node, which has no option but to accept the consensus information without dispute. In a decentralized system, nodes exchange consensus information in an egalitarian manner. Each node has the option to accept or reject the information they receive, formulate its own consensus, and propagate its interpretation to its neighbors, or peers. In a quasi-decentralized system, consensus information originates from a small number of top-level nodes (called witnesses herein), and this information is then disseminated to lower-level nodes without an opportunity for conflict.

Functionally, these different types of centralization are distinguished primarily by their relative efficiency. A centralized system reaches consensus very quickly because it offers no opportunity for conflict, meaning that the system does not waste resources resolving disagreements. A decentralized system is much less efficient because each transfer of information provides an opportunity for conflict and the network must expend resources to resolve these conflicts. In a quasi-decentralized system, only a few highly collaborative nodes, called witnesses, participate in consensus building. This system allows for stringent rules of collaboration between witnesses, and those nodes who do not follow these rules risk permanent loss of their witness privileges, which may include generous compensation.

The biggest technical challenge of a decentralized database is to ensure that all copies stay synchronized, a term meaning that all nodes store the same content at the same time. Synchronization would be trivial with a master copy: each database could just update its contents regularly or when prompted, copying faithfully any new changes to the master copy.

Without centralization, the task of synchronization becomes more difficult because of potential disagreements. However, the principal advantage of decentralization is that power is diffused, leading to fewer and smaller opportunities for centralized authorities to corrupt the database for personal gain.

It is critical to underscore that the primary worry is manipulation and corruption of the data in the database, and not how power is distributed among or exploited by those who use the database. The former is a matter of the integrity and viability of the entire system, while the latter effects the secondary, though highly important, component of fairness.

In the next part of this series, I will discuss the importance of data integrity and describe how the network of Steem nodes reach consensus.

Sort:  

I can't wait for part II and this series in general, very nicely and easily explained; hopefully you can do the same job when it starts to get a bit more technical! :-)

Cg

Here's where I have trouble. So if the 20 witnesses decided they wanted for any reason to cooperate with each other, to the detriment of the system as it is today, What's in place to prevent that? As I understand from earlier readings they have to earn their spot, can be rejected, and are well compensated. What is in place to prevent collusion of these 20 witnesses in their own self interest? You talk about decentralization leading to fewer and smaller opportunities for centralized authorities and I fail to see how 20 masternodes (for lack of a better term) does this.

I am more than happy to admit to some ignorance on the matter, but how I read what was written is "Centralized is faster, so we kind of do that just a little bit."

EDIT: Reread the whitepaper as it pertains to witnesses and their role and how it is implemented. Leaving the question up as it's good for people to find their own answers and not wait for them. I don't understand every aspect of what I have read.... but I am satisfied it's not very likely at all.

The trouble is that decentralization is a direction, not a destination. At what point is a thing "decentralized"? Steem is far more decentralized than Bitcoin, as Steem entrusts 19 regular witnesses, one random witness, and one miner witness, with block production whereas Bitcoin entrusts just a few Chinese mining orgs with block production. Interestingly, this combats the idea that "Centralized is faster, so we do that just a little bit" since Bitcoin is both far more centralized and also far slower than Steem.

An attack on the network would require many of the 19 regular witnesses to collude. These witnesses are well compensated, and collusion would jeopardize that revenue stream, which is one incentive to behave. Also, those 19 spots are highly coveted, and those prospective witnesses who are just outside the 19 elected witnesses have a strong incentive to monitor the 19 for misbehavior. Finally, witnesses are rather limited in what they can do even if they do collude. They can't print new Steem, they can't change history (the network will reject a rewrite of history of more than a few minutes without manual intervention)... They can censor posts or transfers (but they'll be quickly caught and replaced, as they can't do this covertly), and they can denial of service the chain by simply refusing to produce blocks (but again, they'll be quickly replaced). So there's little incentive for mischief anyways.

For these reasons, it's considered unlikely that witnesses will collude, and even if they do, it's highly unlikely they'll be able to do anything significant without being quickly caught and replaced.

The trouble is that decentralization is a direction, not a destination

That is a beautiful answer. The rest of the message was also great and explained what I was reading in white paper without the engineer speak, but that line there really spoke to me. I thank you for this great answer!

Interesting, but cannot agree with "quasi" based on its definition. To help draw inference on where Steem falls next to others I would like to see a compare and contrast to other blockchains consensus models.

You are probably referring to the frist definition of "quasi", which means "not genuine". I intend the usage according to the second definition, which roughly means "partial".

Is this based on the assumption that the number of possible witnesses is limited?

Hi, thanks for posting; it was quite informative. I do have a clarification question, though. You said steemit.com is a decentralized database. Then you went on to describe how quasi-decentralized systems have top-level nodes called "witnesses" and you only referred to witnesses when talking about quasi-decentralized systems. My three-part question is If steemit.com is decentralized, why does it have witnesses? What purpose do these witnesses serve? And in what ways are steemit's witnesses different from those in a quasi-decentralized system?"

First of all, it is important to distinguish between steemit.com, the website, and the Steem protocol. The Steem protocol specifies, strictly speaking, a quasi-decentralized database. The witnesses achieve some semblance of decentralization and contribute mostly to the robustness of the system. With 20 witnesses, many must be incapacitated at once in order to significantly disrupt the system, where disruption generally means slower block times or persistent forks that render the state of the database ambiguous. I will get to all of these questions as we go along, but the Steem witness system is quasi-decentralized, which can be thought of as a type of decentralized system in that consensus among the witnesses is decentralized but subject to a strict set of rules to establish consensus.

Thank you for taking the time to reply, I look forward to your answers in future posts.

When I go to https://steemit.com/~witnesses, I see you're currently listed as witness number 13. I also notice there's an option where I can cast a vote for a witness, which makes me think I should know something about their relevancy. Whether it's here in this comment thread or in a future post, can you please answer this question as well: As a steemit.com user, what do I need to know about witnesses, if anything?

The job of the witnesses is to produce blocks. Because Steem is build on a blockchain, somebody has to do it. Steem uses delegated proof of stake (DPOS) toproduce blocks.

Steem Power holders can vote for those people/organizations who they want to see as witnesses (preferably the most reliable ones of the candidates).

This was my exact question. And I'll also give my shoutout to @steemed for writing such an informative piece. I look forward to the upcoming installments in the series.

I spent quite a bit of time in the last few months studying computer networking technologies, and I think that the principles that operate in the function of switching and routing algorithms for routing traffic are very applicable to this subject.

The process of achieving consensus in a network is called 'convergence'. Switches are simpler devices than routers, and only operate within local area networks (LANs). The topology of local area networks can include multiple redundant paths, and to eliminate the very serious problem of routing loops, they use the Spanning Tree Protocol and its' successor, I forget its name just now. These switches can take up to a minute to set up path tables that prevent these loops from occurring and causing 'broadcast storms', a problem that came up a lot in the early days of ethernet star topology networks with multiple possible paths, which the decentralised network diagram above shows examples of.

Then there is routers, which do the job of setting up routing in between local area networks and across multiple, usually also redundant paths between LANs across, usually, point-to-point WAN (wide area networks, long range connections). There is the Shortest Path First algorithm and other methods of finding efficient paths between nodes.

These systems by their nature cannot depend on logical centralised maps because this would slow down the process very badly when links go down or new paths are brought online. Instead each router communicates with other routers to tell each other about these changes, about which networks each router has connections to and when they change these changes are advertised.

Convergence (consensus of the map) happens very quickly, and does not require a central map to do this. Border Gateway Protocol, Open Shortest Path First, IS-IS and several other protocols are used in larger networks spanning between LANs and none of them operate by centralised databases.

This is part of the reason why the decenttralised database systems of which Steem and Bitcoin and other blockchains have emerged. Client-Server pathways and authoritative central databases may converge faster than collaborative, peer to peer data distribution systems, but if you want to take down a network, you only need to cut off the head and everyone is disconnected. The model of centralised, top down network authority and its single points of failure is the issue for which these systems aims to eliminate. It applies equally well to financial databases as it does to political systems. They all fail in the same way and are subject to the same 'fast convergence' and 'single point of failure'.

The Steem network, and indeed Dash and its' Masternodes mix the two topologies together. The network has two tiers, effectively, but the head of the network is not fully centralised, there is still a consensus building approach at the head and the head of the network is decentralised within its boundaries as well.

The logical topology as exists within the hierarchy of Steem accounts, the Whales, Minnows and Dolphins, is more fluid than the underlying structure of the system I mentioned above. The redistribution of steem power is designed so that these big players are forced to redistribute their power or their ability to influence the hierarchy of users degrades over time.

It is not intended that there is any final state to this part of the network, it needs to be fluid and change according to the way that people vote, and for there to not be one single node in the network who can change the whole network according to its' opinions, or the crabs will jump out of the bucket.

I still don't quite understand why such an excellent post on a prominetly displayed article does not get you any reward. I enjoy the comment almost as much as the actual posts. They are the best quality check. I upvote every comment I like, even if some machine might be able to "manage" my voting power more efficiently. Thank you and upvoted! (1 Cent, yay, I feel the power!)

I'd never even heard of quasi-decentralized before. This is quite interesting.
Does this mean that steemit would be easier to hardfork, As It would require less people to vote on such a situation, Or have I missunderstood?

I'd never heard it described like that either but it makes sense. Because of mining pools even Bitcoin could be described that way, although Bitcoin does not have the benefits of a quasi-decentralized system, only the negative aspects.

Steem is as you suspect very easy to hardfork and we've had 13 hardfork since launch, the latest was this Monday.

Upvote my - and I upvote back .
Roll my log and I will roll yours.
It must be so:
like - Vote . not like it - do not vote
Image of Photo
the rep system

We must build a temple and worship the god of steem, it's a sign, and what is his name, I think he said Brian... yes lets build a temple to Brian

Coin Marketplace

STEEM 0.28
TRX 0.12
JST 0.033
BTC 71239.75
ETH 3686.52
USDT 1.00
SBD 3.75