EOS For Investors: EOS's Delegated Proof Of Stake Consensus

in #eos7 years ago (edited)

U5duA2L8sDnz3t7PRzXKw3xkNhm9tvg_1680x8400.jpeg

Disclaimer

This is by no means a detailed account of how consensus algorithms are implemented in the real world in all of its tiny details. But we start with Proof of Work and Proof of Stake to give us a better framework for the discussion of Delegated Proof of Stake.

Proof of Work

Proof of Work (using Bitcoin as an example) is basically the world's largest math competition, and it happens every 10 minutes or so. A bunch of miners hop online and try to compute what is called a "cryptographic nonce", which is basically a number that when combined with a block of data and put through a hashing function provides a cryptographic string. This string must have unique properties for the network to award the miner who produced the string a reward in the form of bitcoin. That was a mouthful. But in essence, that is how bitcoin mining works.

For a sense of due diligence, here is an info graphic showing what happens.
hash.png

You probably are thinking, what the hell is going on here? All this hoopla to produce that little string at the end, I can do that without wasting half of the world's electricity, right!? Wrong.

That number needs to have some unique properties for it to be awarded by the network. As more and more miners hop on the network, the Bitcoin software increases the difficulty of finding that number by adding a condition that another "leading zero" be required in that number. This means that if you are mining, you're combination of transaction data in your block added with the some random nonce you have chosen, produces a hash that has an extra leading zero. This raises the difficulty considerably, by simply requiring that extra zero in front of the string. This difficulty setting is what plays a major role in having 10 minute block times.

Satoshi Nakamoto chose 10 minutes for various reasons, and calculated what number of leading zeros the hash would need to be to keep it hard enough for miners that a block would only be produced roughly every 10 minutes. Given that the current hash rate of all the bitcoin miners is in constant flux, Bitcoin adjusts itself accordingly.

Some argue, that proof of work promotes fairness (because it's a lottery and anyone can join), security (because you have to spend untold amounts of money to perform a 51% attack). While this is all theoretically true in the land of pen and ink, in practice it turned out to be much more centralized than people had originally predicted. Currently, on any given day, a few mining pools own the majority of the hashing power, and therefore are in control of the network in many ways.

Proof of Stake

Currently there are many proof of stake algorithms out there, and they are probably all a little different in some respects. However, there must be some set of conditions that makes a consensus protocol fall under the category of Proof of Stake, right? Well, I will at least attempt to make sense of it, but no promises.

Proof of Stake means that you only have as much say in the network as you are willing to lose. If you have a million Ethereum, then you are risking 1 million Ethereum every time you damage the integrity of the network. With that substantial stake, however, comes substantial power. In some systems, you will have a pro rata share of the voting power associated with the network decision making. In other systems, you will obtain a pro rata share of the staking rewards. So there are many different flavors and different variances that can make your head spin. Some argue that this could still lead to centralization issues. But I will stay away from that debate and just say that currently, the largest Proof of Stake system being developed right now is Ethereum, and Proof of Stake alone will not save Ethereum from it's ability to scale. We have all at least heard about Ethereum's scaling issues, right? If not, just look up what happened during the Crypto Kitties craze.

All in all, I believe that Ethereum will scale at some point in the future. No one knows if it will scale fast enough for the growing demand of blockchain bandwidth. So that is where I believe projects like EOS can really start to make an impact in the decentralized application space.

In comes Delegated Proof of Stake

A long time ago, Dan Larimer invented what is called DPOS. This was a unique form of consensus that attempted to scale the blockchain to thousands of transactions per second. Delegated Proof of Stake has since taken on different forms, with one thing in common. Delegates. This is like it sounds. A delegate is a pre-determined block producer, and the number of them is much fewer than what we would see in Proof of Work or Proof of Stake. EOS's current implementation has 20 primary Delegates, 1 floating delegate, and about 100 standby nodes that are all fighting for the votes of the EOS token holders to become one of the select few delegates that get the the mining rewards.

Currently as it stands, Dan has put out two projects that have successfully implemented this consensus protocol, and up till now, those two blockchains (Steem and Bitshares) have taken on a life of there own. This, however, was to be expected.

DPOS has some really interesting features that allow it to scale to many thousands of transactions per second, and as the demand of EOS transaction throughput grows, the ability for the nodes to scale along with it is being put in place as we speak.

DL has made promises of millions of transactions per second, and as of now Steem and Bitshares can produce many thousands of transactions per second.

The way this is achieved was by dropping the condition that "everyone can produce blocks". Instead of building data centers that are all competing for a tiny slice of the pie, these data centers can focus all of there effort on making computations for the network. As it stands, there are many block producing candidates that have pledged to be ready for the EOS launch in June 2018. All of them have there own unique selling points.

Voters in EOS's economy will want to focus on many factors before selecting a candidate. Geographical distribution, internet speeds, diversity of system architectures, varieties of different security mechanisms, and other factors will all play a big role in seeing which of these producers will get chosen.

Will EOS fulfill its promise?

There is no reason why we should believe that EOS cannot fulfill this goal. The block.one team has reportedly obtained over a billion dollars from its crowd sale alone (that is a lot of runway). Multiple high profile VC's such as Mike Novagratz (Galaxy Digital), Eric Schmidt (Tomorrow Ventures and ex-CEO of Google), and others, are putting hundreds of millions of dollars into the project. Dan Larimer has experience of expanding blockchain scalability by orders of magnitude (he has done it before with Steem and Bitshares). Finally, the team has met all of their roadmap deadlines up till now.

Currently, in a recent Telegram chat with Dan Larimer, he suggested that EOS Dawn 3.0 will be released by the April 6th Tokyo Meetup https://www.eventbrite.com/e/eosio-hong-kong-meet-up-tickets-42667012182?aff=es2 . EOS Dawn 3.0 is the final major version being released before the main-net release in June 2018. Dan Larimer suggests that it will be feature complete, meaning that all of the major features will have been added for production and testing. As it stands, EOS will be tested from April 6th onward until June, and their seems to be a special announcement on April 6th along side the Dawn 3.0 release.

EOS For Investors Series:

  1. https://steemit.com/eos/@hassananon/eos-for-investors-parallel-processing-on-the-eos-blockchain

  2. https://steemit.com/eos/@hassananon/eos-for-investors-what-about-scalability

  3. https://steemit.com/eos/@hassananon/eos-for-investors-eos-s-tokenomics-revealing-the-dark-matter-of-the-crypto-universe

  4. https://steemit.com/eos/@hassananon/eos-for-investors-eos-s-delegated-proof-of-stake-consensus

This is not financial or investment advice. Please do your own research or ask a licensed financial expert for such advice. This is just my thoughts and opinions that I wish to share.