Introducing to EOSIO Cryptocurrency
What are EOSIO and EOS?
Introducing to EOSIO Cryptocurrency: Let’s say you’re a software developer and you want to build a blockchain-based application designed for millions of users.
What do you need to consider?
Blockchains have several advantages over traditional web applications.
Such as security and decentralization.
However, in the past they’ve also struggled to scale been difficult to develop for and suffered from significant transaction fees.
If you’re a developer building an app for millions of people, these limitations are real concerns.
That’s why the open source EOSIO protocol was created.
EOSIO was designed from the ground up to support scalable easy-to-use secure blockchain applications.
First EOSIO itself is scalable.
Applications built on EOSIO have much lower latency than other blockchains.
This means you don’t have to wait minutes or even hours to know if a payment was processed or a message was sent.
Transactions on EOSIO take only half a second.
Second EOSIO is easy to use for both users and developers, transactions are free, actions like sending tokens to a friend, selling an in-game item or liking a comment are all free.
And because they’re on chain these transactions are also highly secure.
EOSIO also supports short account names that users can choose for themselves and keep forever.
Many other blockchains use difficult to remember public keys as an account name.
With EOSIO your account looks like this rather than this.
To make it easier for developers to build apps EOSIO is also powered by a technology called web assembly.
This lets developers build very fast apps using popular programming languages like C++.
Finally, the protocol offers distinct security features.
For example, permissioned private keys.
These are keys that can only perform certain actions like posting a message but can’t perform more sensitive ones like sending tokens.
That means if you lose your phone or your permissioned private key your crypto stays safe.
So if that’s EOSIO what is EOS itself?
EOS is the name of a blockchain that runs on the EOSIO protocol.
It’s also the name of the EOS blockchain system token.
Today EOS is the most popular EOSIO blockchain but it’s not the only one.
Developers are rapidly building new blockchains with EOSIO to serve a variety of communities.
In the next lesson we’ll explore what gives EOSIO blockchains their high performance.
An innovative consensus model called delegated proof of stake.
What is Delegated proof of stake?
Delegated proof of stake is EOSIO’s consensus model.
What’s a consensus model and how does it work?
In the world of blockchain consensus is how all the computers that run the network reach agreement.
If computer A thinks that sally has six tokens,
Computer B thinks that sally has four tokens,
And computer C thinks that sally has 12 tokens,
Then they don’t have consensus this makes it impossible for the network to function because no one agrees about who owns what.
So consensus is very important.
It allows all the computers in the network to be in complete agreement without the need for a central decision maker.
Achieving consensus however comes at a cost.
It can make blockchain slow because decisions must be made collectively.
Bitcoin for example uses a consensus model called proof of work.
With proof of work computers race to solve a mathematical problem a process known as mining.
The first computer to solve the problem shares the solution which includes a list of validated transactions with all the other computers on the network.
The transactions are then added to the bitcoin blockchain.
The network builds consensus and every computer races to find the next proof of work.
This consensus model is very effective but can also be slow and energy-inefficient.
EOSIO approaches consensus differently.
It uses a different model called delegated proof of stake.
With delegated proof of stake computers don’t compete over computational power instead the network’s users vote for the computers who they think are best qualified to run the network.
This consensus model is designed to be faster and more energy efficient than proof-of-work.
On EOSIO the computers that run the nettwork are called block producers.
Many block producers are full-time professional teams running enterprise scale hardware.
On EOS specifically the 21 block producers that get the most votes are delegated to run the network.
Each block producer takes a turn validating transactions and producing blocks which are then checked by the other 20 block producers.
The block producers are then rewarded with EOS tokens for running the network properly.
All of this happens very quickly EOSIO produces a block every half second by comparison on bitcoin a block is produced every 10 minutes.
If a block producer fails to verify transactions properly for example because it goes offline, or isn’t providing enough computing power to run the network.
The network’s users can simply withdraw their votes for that block producer and another block producer will immediately take its place.
Today there are hundreds of active block producer candidates on the EOS network.
While only 21 actively provide consensus EOS tokens are awarded to all block producers who receive a significant number of votes.
As a reward for providing computing power to the network.
Which is an integral part of the voting and reward process on the EOS network.
What is the EOS token?
EOS is a cryptocurrency running on the EOS blockchain.
It has four distinctive features.
First, EOS transactions are fast.
Transactions are confirmed in only half a second and finalized in under two minutes.
Second, it’s free to transfer.
Many other blockchains charge a fee for every transaction.
This fee can range from less than a penny to several dollars during times of peak traffic.
EOS on the other hand is always free to transfer.
There is no mining fee.
Free transfers make EOS especially appealing for micro transactions of a few cents or less.
For example, buying an in-game item for one cent in an EOS -based game will cost just that one cent.
On other blockchains it might cost one cent for the item and five more cents for the transaction fee.
Free transfers also mean that simple actions on EOS such as liking a comment or changing a username don’t require a transaction fee.
Helping to remove friction for users.
Third, EOS tokens play an important role in governing the EOS blockchain.
Only people who hold EOS can vote for the block producers who run the network.
Finally, EOS is the only token on the EOS network that can be used to obtain the resources that developers need to run applications.
CPU, NET and RAM resources on EOSIO
Consider the following example.
The person you see in the figure below is Sally.
She’s created an application that she wants to deploy on EOS.
One of the blockchains built with the EOSIO protocol.
what does she need to get it running?
On other blockchains Sally might deploy her app by paying a one-time mining fee.
Then when her users interact with the app they would have to pay a mining fee as well, for every single transaction.
Those fees add up fast and they’re collected by the miners not by Sally.
EOS and other EOSIO blockchains approach things differently.
On EOS, EOSIO blockchains developers like Sally don’t have to pay to upload or update applications.
And users don’t have to pay to use them.
Instead both users and developers leverage EOSIO’s three network resources to cover the network’s costs.
CPU is processing power.
It’s measured in microseconds.
If Sally app has a lot of complex transactions, she’ll need more CPU.
NET is network bandwidth.
It’s measured in bytes.
If Sally’s app handles a large number of transactions, she’ll need more NET.
CPU and NET are obtained by staking EOS tokens.
Or whatever token is designated for staking on other EOSIO chains.
Staking is the process of locking up crypto for a period of time.
EOSIO rewards people who stake their tokens by giving them access to network resources.
There is no cost to stake apart from owning the token itself.
And the more token Sally stakes the more resources she gets.
On EOS regular users might only need to stake a fraction of one EOS to get all the CPU and net they need.
Users who need more bandwidth and resources like gamers who make lots of transactions might stake several EOS.
And a developer like Sally might need to stake hundreds of EOS to cover all the processing power and network bandwidth her app needs.
If she ever needs more she can stake more EOS to get it.
Or she can unstake her EOS if her resource needs decline.
The third EOSIO resource is RAM.
RAM is measured in kilobytes and represents data storage.
The more on-chain storage developers like Sally need the more ram they need to acquire.
Unlike CPU and NET, RAM is not obtained by staking.
Instead it’s purchased through a market managed by EOSIO’s core system software.
If you’re a new EOS user, you’ll get all the CPU, NET and RAM you need when you set up a new wallet.
In the next lesson we’ll explore how apps are developed for EOS and other EOSIO blockchains.
Developing apps with EOSIO
EOSIO is a blockchain protocol that’s designed from the ground up for large-scale real-world applications.
With EOSIO any developer can create a blockchain like the EOS blockchain itself.
High speed flexible and secure.
For example, Sally might create the SAL-blockchain.
The SAL-blockchain could have its own tokens its own resources and its own block producers.
And because all EOSIO blockchains used the same protocol Sally’s blockchain could send data cross-chain to other EOSIO blockchains.
Alternatively, Sally could build an app or launch a token on the EOS blockchain itself.
Allowing her to leverage EOS ‘s computing resources in popularity.
EOSIO also has four features that developers often find valuable.
EOSIO gives developers the freedom to upgrade smart contracts rather than upload new ones.
Something that’s not possible on many other blockchains.
EOSIO has the ability to create scheduled and recurring transactions.
That’s useful for example when paying for a monthly subscription.
EOSIO has a rich set of pre-built libraries that help developers build apps faster and avoid common security issues.
Developers can create apps using familiar development tools.
That’s because EOSIO uses the same front-end technologies that power many existing Non-blockchain web applications.
In the future EOSIO aims to become even more developer friendly.
New tools for discovering accessing and querying blockchain data are being built as are new features for improved performance.
Today blockchain applications are often difficult to use and develop for.
EOSIO is working to change that by aiming to create a flexible, scalable protocol that’s built for the real world and for real people.