Open-source software producer Block.one has just pre-released its scalability-focused blockchain platform EOSIO Dawn version 3.0 on Github. The Github action was accompanied by a Medium blog post from cofounder Daniel Larimer. The post proclaims:
This pre-release represents a major milestone on the road to EOSIO 1.0 targeted for release in June 2018.
All of this is part of the EOS roadmap and paves the way for 1.0, which has been touted as the most powerful blockchain application infrastructure to date. The release of EOSIO Dawn 3.0 comes 4 months after the release of version 2.0, and this is where the hype train rubber starts to meet the road of reality.
This particular release comes with a few unexpected elements that “were discovered in the process of building a platform that is performant, flexible, and easy to develop on.”
In the following, we’ll parse through Larimer’s post in an effort to make it more digestible, touch the most important features of Dawn 3.0, and discuss what it could mean for the future. If you need a refresher on the EOS platform, check out our update from Q1 or read our guide to EOS.
In the blockchain world, scalability is largely the name of the game. Scalability doesn’t mean puttering along on testnet, it means fully satisfying market demand.
The EOSIO Medium post reads:
At every step our team has factored future scaling needs into the design. We have designed EOSIO so that future implementations can utilize parallel computation to accelerate throughput without hard forking changes.
This initial comment on scalability is a statement of intent and lets us know that EOS may be onto some real solutions. They go on to say that only a fraction of EOS’ potential optimizations are currently on display. In terms of scalability specifics, there are a few exciting pieces of news.
When blockchains can properly communicate with each other, scalability becomes exponential. Inter-blockchain communication is when one blockchain is able to verify an event on another chain and do so in a provably secure manner. This is the true scalability feature.
According to EOS:
The goal is for inter-blockchain communication to be as secure as intra-chain communication between smart contracts and we think we have achieved that goal.
In an era where communication bugs in Ethereum smart contracts have been proven to be vulnerable, this is a welcome aspect of the EOS platform. If this isn’t a case of “too good to be true,” this is huge news and represents the goal that solutions such as sidechains, sharding, and Plasma are all after.
How exactly has EOS “achieved” this goal? To paraphrase Larimer, it’s about implementing a light client as a smart contract. The light client is designed in such a way that it acts as a transaction validator without having to process the entire blockchain. Hence EOS is building a DPoS blockchain with “efficient and secure light-client validation.”
Generally, light clients process every block header and then “validate proofs relative to those block headers.” In an EOS context, this wouldn’t scale so instead the team “created the first blockchain with byzantine fault-tolerant sparse-header validation.” They go on to explain that the light client will “only process block headers where the set of active block producers changes and those that include relevant inter-blockchain messages.” In simple terms, this makes the act of two blockchains communicating much more efficient.
It should be noted that this is very much an ongoing experiment and the end result may be much different than the current form. Also, quite a few experts maintain that real scalability solutions are still a ways off.
Other EOSIO features aimed at efficiency are context-free actions and data compression:
- Context-free actions are key features that enable efficient inter-blockchain communication and they allow EOS to parallelize the vast majority of the overhead associated with said communication. This is done by pruning data from blockchain replay.
- There are a lot of transactions with compressible data, and by compressing it EOS can more efficiently store and transmit large numbers of transactions. Users with compressible data will be charged less than those completing transactions with incompressible data.
If scalability is the first thought in the mind of most blockchain developers, security is undoubtedly second. Security is a multidimensional problem and EOS is considering many different aspects—hacking, hardware failure, and password loss, to name a few.
Security Delayed Transactions
In Larimer’s words:
Security delayed transactions are one of the most significant features of EOSIO Dawn 3.0.
This new security feature allows for user-configurable delays for different actions. In effect, this is another safety layer against hacking and allows for a variable time delay before a transaction is transmitted to the immutable blockchain record. “This is a significant improvement over other blockchains where you don’t know you have been hacked until it is too late to do anything about it,” Larimer wrote.
With Dawn 3.0, there is also a new form of recourse for people dealing with lost passwords/keys. Every EOS account will have two permission levels that allow a user to fall back on one of them if the other is compromised. The two permission levels are “owner” and “active.” Imagine that you lost your key or your multisig partner is unresponsive. In this case, a user with “active permission” can reset the “owner permission” after a defined period of inactivity (30 days).”
This is an additional insurance policy against hacking or device failure and should go a long way toward making users accustomed to password retrieval more comfortable. In the case that you’re using a device that utilizes biometric identifiers, an attacker would (again according to Larimer) need to “compromise your multisig partners, physically steal your phone, and steal your fingerprint or face.”
Block producers of all EOSIO-based public networks are encouraged to meet user demand by operating as many chains as needed. The goal is the “maximum possible network effect around a single token and leverage the trust and security of economic incentives created by high-market capitalization tokens.”
There is much more covered in the post (13 min read) and for those of you who enjoy pouring over the technical details, it’s well worth it.
EOSIO Dawn 3.0 is “feature complete” but still largely untested in a real world scenario. The focus of this release is to sniff out bugs and improve the stability of the core platform. In the next month, the EOS team will be ironing out the final system contract which implements all of the staking, voting, and governance mechanics. They’ll also be finalizing a token standard as well. All of these are critical to the future success of EOS.
While there have been many exciting developments recently, there is still a number of hurdles for EOS to overcome and in the last few months, its price fell from a high of $18.50 to the current rate of $9.08. But this should do little to dampen the spirits of believers of the EOS vision. At the time of writing, the EOS market cap has crossed over the $7 billion mark, leapfrogging over Litecoin to become the #5 biggest cryptocurrency by market cap.
Larimer himself concludes his announcement with a series of bullish statements:
EOSIO has become far more powerful and easy to develop for than we had conceived a year ago. EOSIO has one of the most active C++ repositories in all of Github for the past month. Everything is on track for a high-quality public release of EOSIO 1.0 in June!