How EOS WorkssteemCreated with Sketch.

EOS.IO is an architecture that complements the internet and all that it encompasses. It is essentially software that enables developers to create decentralised applications that leverage the trustless nature of the blockchain, which underpins all cryptocurrencies. It is important to understand by trustless I am referring to people being able to trust the architecture that enables the transfer of value. Peoples trust is now placed in the irrefutable ledger that is the blockchain.

In reference to bitcoin: The blockchain for those who are unaware is a chain of blocks and within each block is list of transactions. The beginning of each block includes the cryptographic hash of the prior block, meaning the previous block is linked to the current block, forming a chain. A block is formed every 10 minutes by solving a cryptographic puzzle using computational power. During the formation of a block, transactions are also being encoded into it. The block time is accessed on the computational power of the network and is evaluated every 2 weeks. Bitcoins genesis block was solved January 3rd 2009 by Satoshi Nakamoto. If you care to do the math the blockchain is extremely long. In order to over throw the network, one would have 2 weeks to add their computational power and modify not just the block being solved but every block in the chain. This would be an amazing feat and one could argue their time would be better spent securing the network and receiving bitcoins in exchange. To date no one has been able to double spend on the bitcoin network. Due to its length it is the most secure chain.

Proof of Work, or PoW for short, is one of the possible schemes used to secure a blockchain and is that used for bitcoin. Those solving the blocks, miners, have to reference the previous block, solve the cryptographic puzzle encoding the current block and fill it with the transactions that have elapsed during the block time. For this they are rewarded with bitcoins. This process is referred to as Proof of Work. Miners are rewarded and new currency is created based on the work performed. PoW is however not the only way to secure a chain and there is much debate surrounding its energy consumption and efficiency. However energy intensive PoW may be, bitcoin is still the longest chain and PoW will be used to secure its blockchain long into the foreseeable future.

The problem with bitcoin and PoW, when compared to centralised payment methods like MasterCard or VISA, is that it is slow. Only so many transactions can be made in each block, which takes approximately 10 minutes to compute. One solution to the scaling issues is off chain solutions. This means transactions can be made off the blockchain and the sum of those transactions can be added as a single transfer later on. This is similar to doing your taxes at the end of the financial year. Segregated Witness, or Segwit for short, is this very process and has been implemented on several blockchains and hence is a feature of many cryptocurrencies. There are also a number of other solutions that have been created to increase the speed, how many transactions can be made securely, of the network but implementing them is difficult due to the decentralised nature of cryptocurrency. If changes to the code are necessary, 51% of the network must agree, after which the chain is forked. A soft fork is this very scenario while a hark fork requires almost every node, an entity storing the blockchain, to agree on the new version. A soft fork is an update which is backwards compatible while a hard fork is a new chain. Bitcoin Cash is a hard fork of bitcoin.

Ethereum is a cryptocurrency which instead of doing rudimentary financial transactions aims to decentralise computing in general. Smart contracts are used to perform actions. ‘Smart’ because it automatically transfers value once a number of parameters are met and ‘contract’ because it is an agreement between two or more parties. Outside of the smart contracts executed on the blockchain, Ethereum is also a cryptocurrency which can be traded and is used to ‘fuel’ each transaction on the network. So much ‘ether’ is used to perform an action on the network. Similar to driving your car from A to B and having to purchase fuel to do so. To date Ethereum uses PoW, like bitcoin, to secure its network and the transactions that take place within it. While the Ethereum not for profit foundation plan to use another scheme, they are currently at a road block they have yet to overcome. If a social media platform ran each transaction through the Ethereum network the sheer volume would bring the network to a grinding halt.

Ethereum intend to use a new scheme referred to as Proof of Stake, or PoS for short, to counter their scaling issues and secure their place as the number 1 decentralised computer. PoS works on the premise that instead of blocks being solved by miners, a largely randomised and inefficient process, a user’s stake in the currency, how much ether they hold, is used to generate and validate blocks. Ethereum have much work to do in terms of successfully implementing this method on their blockchain and it is yet to be proven on a network of their size. Overcoming the politics and security concerns will take time and the Ethereum Foundation are yet to set a date for such a fundamental change to the operation of their decentralised network.

Ethereum have managed to give developers that learn their specific programming language the opportunity to create decentralised applications, ranging from DApp’s that enable democratic voting on the blockchain to DApp’s that allow individuals to transact energy with one another. The limitless opportunities that are now possible largely due to Ethereum is valid but having the first mover advantage doesn’t necessarily mean they offer the best solution or that they can deliver on their vision.

EOS.IO is a direct competitor to Ethereum. It offers similar services in terms of allowing developers to create decentralised applications, but it works in a vastly different and superior manner. EOS’s lead developer, Dan Larimer, created Bitshares and Steemit. While their market cap’s are smaller than Ethereum, the volume and ease with which both blockchains deal with transactions dwarfs Ethereum and its current PoW consensus algorithm. Bitshares at its core is a decentralised exchange or DEX, it allows users to exchange cryptocurrencies without relying on a central authority and hence a single point of failure. While Steemit is a social media platform that enables its users to exchange value and be rewarded based on the degree to which the community values their content. This reward can be used to gain greater influence or can be exchanged for other cryptocurrencies or even fiat. Both platforms have established communities with a proven track record. The lessons learnt from creating both Bitshares and Steemit have overflowed into EOS.IO, making it not only fascinating but a force to be reckoned with.

EOS.IO is designed to meet the performance requirements of decentralised applications that require the ability to interact with millions of users at any one time. EOS.IO has no fee’s unlike Ethereum. It’s upgradeable and bug fixes can be easily implemented. It has very low latency and scales to millions of transactions per second without compromising security. Another feature is parallel performance – the ability to divide the work load across multiple CPU’s and computers.

EOS.IO uses a consensus algorithm called Delegated Proof of Stake, or DPOS, to secure its blockchain. DPOS is vastly different to PoW and PoS. Those holding tokens on a blockchain utilising the EOS.IO software have the privilege of voting for the block producers. The ‘delegates’ can produce blocks proportionally to how many votes they receive with respect to all other producers. A block is produced every 3 seconds by a single authorized producer. EOS has limited the number of delegates producing blocks at any one time to 21. For this reason blocks are solved in batches of 21. The first 20 producers are automatically selected based on approval while the last is chosen based on how many votes they have received. The producers are shuffled at the end of each round to ensure connectivity to the other producers. If a producer misses a block and is inactive for 24 hours they are removed, this ensures continuity. EOS.IO rewards block producers with tokens instead of transaction fees. This is done by releasing new tokens at a maximum rate of 5%/year. Similar to inflation. The newly generated EOS tokens are also partly distributed to applications voted to be of particular notoriety by the community. This is done per year to 3 lucky applications. Governance on the EOS.IO software is accomplished by voting, as mentioned, this means block producers can be voted out by token holders should they exhibit malicious behaviour or sensor the community.

In democratising the blockchain EOS.IO relies on people and a voting system to secure the blockchain, as opposed to miners solving rudimentary puzzles, consuming vast amounts of energy and competing for a reward. One may find this approach to be centralised and at odds with Satoshi Nakamoto’s vision. However, his vision never considered mining pools, which is how the majority of mining is done. No longer does an individual mine a block with their sole computer. People pool their resources, mine blocks and split the reward should they prove to be the first pool to solve the puzzle. PoW is a valid consensus algorithm but it cannot handle a million transactions per second. While there are many off chain solutions and few counter arguments, PoW and the cryptocurrencies employing it should be seen as currencies and just that. EOS.IO is operating in a completely different realm.

Outside of EOS.IO’s open source software they have also created a currency called EOS. Similar to Ethereum using Ether to fund its ecosystem. The EOS token was released using Ethereum. Ethereum was used to distribute the tokens as broadly as possible before the official release of EOS.IO. EOS is a cryptocurrency that can be exchanged for other currencies, but it also serves another very important purpose. If a developer wants to create a decentralised application utilising EOS.IO, they need to hold EOS and escrow enough tokens to manage their demands on the network. To run an application it requires disk space, CPU time and RAM. The block producers publish their capacity for all three. A developer can then nominate their preferred producer based on the spec’s they offer. To run their application the developer essentially buys server time with EOS tokens. A developer’s requirements may be small in the beginning but as their needs grow they will be required to escrow more EOS. Or alternatively, one would hope, as more and more developers escrow EOS the supply will decrease which will effectively increase its value. Ultimately as more people use the platform and EOS tokens, their value will increase, effectively giving the developer more resources or alternatively they can sell their escrowed EOS if they do not need the additional server space.

EOS.IO uses the C++ programing language. C++ compared to Ethereum’s current programming language ‘Solidity’ has a vastly more extensive history and supporting documentation. This is important because no matter your interest in the blockchain or cryptocurrencies in general, should you have an idea you want to implement using a blockchain you will be forced to consider developers.

EOS.IO and the EOS token ultimately represent a new era in blockchain technology. If we can begin to understand the inner workings of such a piece of fundamental infrastructure, we will be better equipped to ensure our ideas and the ideas of others endure the test of time.

Note: I do not pertain to be an expert. I am simply sharing what I have learned to date. There will always be minor technical issues with my explanation but what I have tried to accomplish is an examination of a very complicated topic. I encourage readers to look beyond my words and formulate their own explanation and express it within this forum or any other. I will be always watching to learn more and cement my own knowledge on the subject, so I encourage you to leave a comment and discuss what possibilities this amazing piece of technology will unleash.

Sort:  

Congratulations @daf.sustain! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 1 year!

Click here to view your Board

Do not miss the last post from @steemitboard:

Carnival Challenge - Collect badge and win 5 STEEM
Vote for @Steemitboard as a witness and get one more award and increased upvotes!

Congratulations @daf.sustain! You received a personal award!

Happy Birthday! - You are on the Steem blockchain for 2 years!

You can view your badges on your Steem Board and compare to others on the Steem Ranking

Do not miss the last post from @steemitboard:

Use your witness votes and get the Community Badge
Vote for @Steemitboard as a witness to get one more award and increased upvotes!