EOS is a smart contract platform built on the EOSIO protocol. The primary feature distinguishing EOS from other smart contract platforms, such as Ethereum, is its use of a Delegated Proof of Stake (DPoS) consensus architecture. In Proof of Stake (PoS), token holders produce blocks themselves in proportion to their holdings. In DPoS, token holders elect third party block producers, who produce blocks and validate transactions. Dishonest block producers are removed from the consensus process by token holders, whose vote is proportional to the percentage of total tokens held. Block producers are not required to have a significant token stake themselves, and tokens used to vote for block producers can be used and transferred; the tokens are not locked directly, as in traditional PoS systems.
Effectively, the slashing condition for invalid transaction processing by block producers is token holders realizing this and removing them from their block producer role (thus losing the token rewards through inflation), not block producers losing staked tokens (as in PoS). Token holders are not directly compensated for voting but are incentivized to elect quality block producers who will maintain the integrity of the network and the value of the EOS token: users with more tokens will be more interested in electing quality block producers that maintain the value of their own tokens.
EOS emphasizes a variety of user-friendly features in its design, including the following:
- Human Readable Account Names – Individuals can register accounts with custom, human-readable names. Compared to the extended strings of numbers and letters representing accounts on other protocols, this offers a simpler user experience. Users can also register sub-domains and namespaces within organizations.
- Protocol Level Account Recovery – Users can recover their accounts with lost private keys by designating an account recovery partner. Each EOS account has multiple private keys; if a private key is lost or stolen, accounts can be recovered with a recent owner key and the approval of their designated account recovery partner. This resembles a multi-signature wallet in other blockchains, but the second party is only involved in the account recovery process.
- Delayed Transactions – As a security mechanism to prevent loss of funds, users can designate a mandatory time delay before a transaction is sent. Transactions can be confirmed via two-factor authentication, and the account recovery process can be used to secure the account before the transaction is processed.
- Zero Transaction Fees – On the EOS network, users do not pay transaction fees directly; instead, a set token inflation rate compensates block producers for their work in securing the network. This zero transaction fee model offers a usability benefit to decentralized application (dApp) users, particularly for applications such as social media networks that may require frequent microtransactions.
In an attempt to encourage dApp development, EOS supports WebAssembly (WASM), allowing developers to write smart contracts and dApps in a wider range of languages beyond EOS's native use of C++ and other platforms that require developers to use a single and often niche language. In addition, EOS markets itself as a highly scalable platform, offering a transactions per second (TPS) rate that is at least two orders of magnitude greater than Ethereum. EOS achieves high-performance by concentrating its validator set through DPoS and therefore enforcing a higher level of hardware requirements for block producers and using asynchronous Byzantine Fault Tolerance (aBFT) to enforce a fast time to finality. EOS' choice of DPoS and a maximum validator set of 21, while conducive to scalability, arguably comes at the cost of decentralization and censorship-resistance by increasing the chance of the formation of cartels among block producers (validators).
On EOS, the block producer voting system functions as a form of liquid or delegative democracy and gives individual token holders a clear voice in protocol changes. Originally, the EOS community proposed a constitution by which governance would be managed and defined network features and intentions that could not necessarily be coded into the system. However, instead, an end-user agreement was introduced, replacing the constitution via on-chain governance and which specifies the rules by which participants must behave.
Although after its initial launch, EOS gained traction and volume as a dApp platform, it was subsequently beset by multiple problems. Among these have been claims of misleading user engagement metrics (made possible by the lack of transaction fees), the practice of vote purchasing among block producers, the decision by Block.One to launch its signature social network application, Voice, atop a differing EOSIO blockchain, and the exodus of block producers seen as large technical and ecosystem contributors.
While EOS as a smart contract platform will compete with the Ethereum network, the role of the EOS token is considerably different than that of ETH. The EOS token provides access to premium features on the platform. Token holders have a claim to the network’s computational and storage capacity in proportion to their holdings. There is no fee paid to execute a smart contract. Instead, token holders must hold tokens commensurate with the amount of processing and storage capacity required to execute the smart contract on the EOS network. Token holders can purchase RAM processing power, CPU space (including storage), or participate in the governance process. In order to efficiently allocate processing power, the current implementation includes an internal market for buying and selling RAM. Tokens used for CPU space and block producer voting are locked in a smart contract. This is in comparison to the role of ETH, which functions as a payment mechanism for smart contract execution on the Ethereum Virtual Machine.
A total of 900 million EOS was offered in the token sale, with a further 100 million EOS allocated to Block.one over a ten-year vesting schedule. The year-long token sale raised a total of $4.2 billion. The total supply is inflationary at an initial annual rate of 5%, 20% of which accrues to block producers as rewards and 80% of which accrues to a savings account for an in-development worker proposal and funding system. An initial pool of 200 million EOS was sold during the first five days, and 700 million was split evenly in 23-hour sale periods for the remainder. The tokens were distributed pro rata to contributors in each period; a record of contributions can be found at EOSScan.io. The EOS ERC20 token offered in the year-long sale was only a placeholder, and after the EOS mainnet launched in June 2018, any token holders swapped their ERC20 EOS tokens for EOS native tokens. The EOS token sale, conducted by Block.One has been subject to controversy, with the SEC ultimately forcing the company in September 2019 to pay a $24 million penalty for what was an unregistered securities offering.