Repost of Dan Larimer Article on Voice History of DPOS (Reposted on Steem / Hive so you can actually read it if you arent KYCd into voice )

in voice •  4 years ago  (edited)

Screenshot_20200409-082232_Chrome.jpg

Screenshot_20200409-082246_Chrome.jpg

Repost of @dan Larimer Closed Voice Beta Link

https://app.voice.com/post/@dan/theapp -history-of-dpos-1583891761-1

4.4k

Winning Voice
Valentine Zavgorodnev

Crypto
The History Of DPOS
Daniel James Larimer
4w
•3 min read
Listen

Dan Notestein from blocktrades.us recently published a post on steem regarding the invention of DPOS. After reading it I thought I would add my thoughts to the mix.

DPOS has evolved over the years and with it my understanding. In particular, there are huge differences between Bitshares 1.0, 2.0, Steem, and EOS yet they are all considered DPOS.

In the beginning I was attempting to solve a number of challenges:

  1. Who gets to produce the next block?

  2. What is the fork choice rule?

  3. How does the chain go on if all but one block producer is taken down?

  4. How many producers are necessary?

  5. How do you prevent one producer from picking on another by ignoring their blocks.

These are all tough questions, but perhaps the toughest for BitShares was how do you minimize microforking for profit? This is something unique to exchanges where orderbook front running could create financial incentive to reorder blocks.

The big innovation with “dpos” was not the token holder election, but the process by which the elected producers reached consensus. This distinction is lost on almost everyone.

This process involved the realization that the fork with the most validators would grow faster than one with fewer because only one producer is assigned to a time slot.

The next innovation was a process where producers would be randomly shuffled in order. This prevented gaps and sustained collision of consecutive producers.

Then I realized we could generate cryptographic proof of double production to punish any attempt to create a secret fork.

All told this process of reaching consensus among a set of known validators was the key. The process of electing them was simply mirrored after corporate governance whereby shareholders elect a board.

EOSIO is not DPOS

The basic eosio software uses pipelined Byzantine fault tolerance with a set of elected producers. The election process is similar to BitShares but the way consensus is reached is not the same. The critical difference is the concept of finality. BitShares lacks finality just like bitcoin does.

After observing bitshares in action I learned a few things:

  1. 101 producers is too many for people to vote for, rational ignorance wins.

  2. A secure randomness is overkill, pseudo random shuffling that isn’t subject to the block content is sufficient. (BitShares 2.0)

  3. In STEEM I introduced the concept of rotating the 21st witness. This prevents them from causing downtime while providing a high degree of censorship resistance by maximizing the number of people who get an opportunity to produce a block.

  4. The desire to support inter blockchain communication means we need finality and we need a way to easily follow the producer set in a light client. This means minimizing the frequency the producer set changes and ensuring all changes are only effective after reaching finality.

In the process of this evolution we gained on chain governance which transparently replaces off chain opaque governance. We gained the ability to have some benefits of building trust in elected positions. This small amount of trust allows eos to use producers for cpu oracles as well as introduce “free” transactions on Steem and EOS.

The blockchain space has many consensus algorithms and governance algorithms. I’m happy to support a wide variety of options while focusing on building the best development platform for high performance, deterministic computation powered general purpose database.

12
39
3.7k

Share your thoughts
What do you think?
Daniel James Larimer
·
4w

In summary I would say that every blockchain has two consensus algorithms: automated/objective /technical and manual/subjective/governance. DPOS is a number of subjective governance models built on top of a number of different technical consensus variations.

2
12
David Basna
·
4w

Finding the right balance between the 2 and the user’s interaction within them is important. But everyone is different and there hence is the problem.

0
1
Zachary Warren Williams
·
7m

Nah sorry you cant just seperate your mess into objective governance vs subjective governance. You need to do telos style governance and keep building and get your hands dirty. The mess you left steem and eos in is not good enough to write up some blog post to explain away as if YOUR way is the Only way hah.

It's not just two things

Your so into simplifying things man. It's like wow... your just writing a few blog posts after siphoning 3 billion out or the actually decentralized ethereum blockchain just to create a fantasy called eos... and why isnt voice using eos? Why cant we talk about that? Is that illegal to ask dan Larimer why he left steem without helping to create jobs on that platform or eos? Why no support of a worker proposal system anywhere on eos? Man I really wanna know so much and I'm scared the answer is you just dont care . I just think if taylor swift was here her claim you dont deserve the money you made from block one dan.
0
0
Brigham Eugene Brewer
·
4w

Too many people, especially the critics, will pick on dpos because of the potential risks of cartel type corruption among the block producers but they fail to see that EOS is consistently operational and secure and there is no real need for insurance to cover your on-chain risks like with other blockchains, such as the recent hack where users of the Ethereum blockchain had to make claims through Nexus. I remember you saying that you build it knowing there will be problems in the smart contract code but with built in mechanisms to correct problems when needed and when consensus is reached that it is necessary.
0
3
Juan Manuel Merino Leon
·
4w

Dan what is your opinion on Ethereum switching from proof of work to proof of stake? Is such a thing even possible?
1
2
Deleted by commenter.
Joshua Robert Brown
·
4w

He described it before as something like changing a car‘s engine while on the highway. I personally don’t think miners will want to give up their power and probably have some sort of contentious forking event. I’m still rooting for them to pull it off... but hey

0
1
Stephen John Coburn
·
4w

The thing I like best about EOSIO, is that sister chains can implement their own models of governance, at the same time scaling the network vertically, and adding their own customizations to best align with their communities. IBC between the chains, allowing dApps to easily switch chains

if they become dissatisfied offers unparalleled flexibility and adds to the overall decentralization of the network. I just can't get excited about any of the other block-chains out there unless it is EOSIO based. :)

0
5
Sean Lee Greer
·
4w

I think Interblockchain could be a game changer. There are many different EOSio Blockchains. Each has their own governance and value prop. When we can connect all of these EOSio blockchains so that they can share resources and communicate with each other it will be a game changer. My 2c

0
5
Michael Gucci
·
4w

Did not know about Ark.io - is that inspired from bitshares?

0
2
Mitchell David Mahoney
·
4w

The evolution of technology is happening right here 💢

0
2
Carl Gilead Nash
·
4w

It has been interesting to read first Dan /Blocktrades post and then yours to get a first hand account of the development of DPoS. I just read another interesting post on the same subject by @theoretical on Steem, who claims to perhaps be due partial credit for the idea of DPoS based on an old forum post he referenced ;)
steempeak.com/blockchain/@theoretical/in-the-beginning-there-was-dpos

0
1
Zachary Warren Williams
·
just now

This is just a bunch of nonsense. You used to be cool a d delivered real tech. All I read is an explanation about why the peices of bts steem and eos are so low lol it's like you want a good explanation when you're valued in front of Congress along with whatever other crypto people can be wrangled in the USA.

I'm disappointed and ashamed to be apart of eos and I'm only grateful telos and other eosio chains have actually picked up the slack where eos just was abandoned by block one and Larimer who have the money to pay to make eos resources comfortable enough for users and developers. Instead were stuck with an unusable chain and dan even retweeted me when I thought I solved my CPU issues with REX. Well rex also failed for all intensive purposes a d we were all stuck without a conveniently working chain ... thank god no schoola or hospitals or cars were using eosio... imagine not being able to turn on a ventilator or a car because you cant login due to lack of eos CPU. Eos is dead in the water without any adult supervision and people like me who have put in as much work on eos as anyone else are a little upset about how LITTLE you in block one care to support your own ecosystem. We are left to leave eos when the eos gang has all these resources and refuses to even SHARE their own made up currency when they have over 60 million eos in the savings account. Pretty screwy that telos has a worker proposal but eos doesn't. Eos had some great dapps that could have used that eos from worker proposals but um pretty sure we just will never see that. Dan did you ever even look at the eos steemp token smart contract peg I had created by privex steem engine ? Did you even see the actual work done on telos worker proposal system? Did you even see the way telos is bootstrapping it's own industry? Block one had all this money it could have used to create an infrastructure & EDUCATE the world on WHY eos is so good with millions of accounts FREE.But nope. However TELOS has 2M free

0
0

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!