EOS WTZ Internal Workshop: Technical Lead Explains Blockchain and EOS

in #eos7 years ago

This is a summary of  EOS WTZ's internal workshop instructed by our tech lead Kevin Ren. We would like to share this information with whole community to discuss. This article is originally posted on our Wechat Official Account in Chinese.

Lecturer information: Kevin Ren, member of EOS WTZ, senior blockchain engineer, EOS source code contributor, participated in the development of multiple public blockchain projects.

What is blockchain

People used to do bookkeeping with pen and paper. In the information era, Excel or more advanced software became replacement, although not changing the fundamental idea, which is, a centralized ledger. Such ledger is kept at one place and maintained by one person (or one institution). If the ledger is lost there is no way to recover it, and nobody knows if this person is not putting wrong things on the ledger. 

Blockchain is different, as it uses a distributed ledger. To understand it literally, a distributed ledger means that it is stored in different places, each one being the exact same copy of the rest, so there is no concern over losing the ledger. Fundamentally there are four elements of blockchain.

1. Data storage

Data needs to be stored somewhere. Right now hard drives are used to store it.

2. P2P Connection

In order to understand P2P, you can think about the opposite of P2P, such as Apple Pay. In Apple Pay when you send money, you are sending information through Apple and bank’s servers, and those middlemen send money to the recipient. In P2P two parties are making transaction directly with each other.

3. Consensus Algorithm

Consensus algorithm is a large topic. Basically it is used to solve data synchronization issues.

4. Encryption Algorithm

Encryption is the core of blockchain, as the reliability and safety of the network rely on it. Encryption takes advantages of information asymmetry. The ownership of private key is information asymmetry as it allows you to store something others cannot know.

On blockchain some data is public, such as transaction addresses and balance. Everyone can check those public data, so in a sense blockchain is more transparent. The anonymous nature of blockchain comes from the detachment of wallet address and personal identity. The only exception is on centralized exchanges, where identity of a user is known. This feature of blockchain is still very controversial, and some projects have more emphasis on privacy, such as Monero. 

For those of you who are new to blockchain, remember to protect your private key the best you can. Private key represents all the rights to the asset, unlike in centralized world, where password can be reset. In blockchain if you loss your private key there is no thing you can do.

About EOS

Before talking about EOS, let’s review what Bitcoin and Ethereum are. In the beginning there wasn’t a concept of blockchain. Satoshi Nakamoto created the first blockchain application—Bitcoin. Others coined the blockchain concept thereafter. Bitcoin is a payment system with a clear positioning strategy and simple functionality. Ethereum, the second generation of blockchain apps, introduced the concept of smart contract in addition to retaining the functions of Bitcoin. It significantly advanced blockchain technology, but many issues emerged at the same time. For example, the heavy transaction traffic caused by CryptoKitties once jammed the blockchain network.

EOS has a simple goal—to be the next generation ETH and to improve on the existing issues in ETH. EOS is a public blockchain with the motto: a powerful decentralized application infrastructure. 

The concurrent performance of ETH is mediocre—only around 10 TPS (transactions per second). This is insufficient for commercial applications. In contrast, EOS can handle several thousand TPS, with each single transactions completed in half seconds. The mining fee is high for ETH, especially when the traffic increases, in which case one transfer could cost well more than ten dollars. EOS assembles conventional e-commerce—it doesn’t charge processing fees. It is free, just like business model of many Internet applications. For companies, this means profits must be made by providing added value to the network; for customers, this means the system is very user-friendly. Moreover, EOS is the first public blockchain based on a modern e-commerce business model. The previous public blockchains were ill fitting to the modern e-commerce, possibly due to their early origins. For example, ETH’s add-on fees for transactions and deployment contracts are neither developer- or user-friendly. 

When a bug is revealed in a decentralized program, developers must modify the code and wait for the nodes to be updated. This is a prominent issue in the current blockchain technology – bugs are difficult to resolve and the chain must be forked and hard-forked. EOS provides a user-friendly solution: if a bug is found in your application, you can freeze the system temporarily for an update, and unfreeze it after the update is complete. It’s a developer- and user-friendly design, and thus we can see the designing of EOS is human-centered. 

The current state of EOS: Lightening iterations. BM is a diligent programmer, and his productivity is astonishing. When 3.0 first came out, over 50K lines was deleted and over 600K was added compared to the previous version. That was an astonishing number of magnitudes for most developers. BM designed a system called Graphene. Graphene was originally also a fundamental technique of BTS before getting adopted and improved by BM. Graphene had been tested by practice as a technique, so it was fairly reliable. Since the end of last year, EOS has been rapidly iterated and has become the most active application. The community base of EOS is an excellent habitat of many active developers. Lots of VC funding has been invested in and good strategies have been carried out, including the incubation of many DApps. Judging by the test run of EOS WTZ on its testing networks, the actual experience in node connection, block production and transactions are all fairly good.

As for the widely-discussed DPoS (Delegated Proof-of-Stake) consensus system, it is a decentralized model with some centralized details. In my personal opinion, the future blockchain apps should find a balance point between decentralization and centralization. Both absolute centralization or absolute decentralization contains many problems, so I think you shouldn’t have to worry if DPoS is decentralized or not. In the future, the two will be complementary, and applications will be partially centralized and partially decentralized to reach a dynamic equilibrium, depending on the commercial demand. Therefore, BM has chosen between the trade-offs and provided everyone with good experience as well as a less centralized platform. 


 EOS WTZ  is a block producer candidate for the EOS.IO Blockchain 

Website
Twitter
STEEM
Telegram