Aeternity (AE) Platform & Cryptocurrency: An In-Depth Look
Aeternity is a new platform for decentralized apps (dapps) launched in testnet in 2017. It also held a successful token offering in 2017 for its Aeon (AE) token.
The project focuses on increasing the scalability of smart contracts and dapps. It accomplishes scaling by moving smart contracts off-chain. Instead of running on the blockchain, smart contracts on Aeternity run in private state channels between the parties involved in the contracts.
Aeternity includes several other features that set it apart from other smart contract and dapps platforms. Notably, it includes a decentralized oracle machine that brings in data from outside sources for use in smart contracts. It also uses prediction markets for various voting and verification purposes within the platform.
Founded by a long-time crypto-enthusiast and early colleague of Vitalik Buterin, Yanislav Malahov, Aeternity has quickly risen to the top 40 projects in the world by market cap.
In this article, we’ll do a deep dive into Aeternity, its advantages, and potential use cases.
The Problem: Scaling Smart Contracts
Ethereum allows for smart contracts developed on top of the blockchain. This was a breakthrough for blockchain technology. It took the technology beyond the realm of value transfer (Bitcoin), and into the world of decentralized applications.
We’ve seen recently, however, that it’s difficult to scale the execution of smart contracts on the blockchain. Crypto Kitties is a great example. Something as simple as creating and trading unique assets on Ethereum bogged the network down when transaction volume soared.
Ethereum recognizes this scalability problem as “perhaps the single most important key technical challenge” facing blockchain adoption. There are three ways to address scalability:
1. Increase throughput with a different consensus mechanism
This approach involves increasing the number of transactions the blockchain can handle per second. This is how NEO plans to scale its dapps platform, with a different consensus mechanism that’s more efficient. However, this doesn’t solve the underlying scalability problem and it still has its limits.
2. Increase throughput with sharding
Ethereum is looking into this option, and Zilliqa is one project implementing it currently. It involves dividing the transactions and smart contract requests on the network among groups of nodes (shards). For instance, 1/3 of the nodes on the network would verify 1/3 of the transactions. This is promising in that it increases throughput. However, it means not all nodes verify all transactions, making it difficult to settle smart contract actions that rely on information from other shards.
3. Move smart contract execution off-chain
Ethereum is also looking into this option, possibly doing a combination of sharding and off-chain settlement of contracts. This is where Aeternity is currently innovating. They’ve focused on increasing scalability by implementing smart contracts off-chain.
Scaling smart contracts is the main goal of Aeternity. They’re poised to make waves with their state channel solution.
State channels are lines of communication between parties in a smart contract. They don’t touch the blockchain unless they need to for adjudication or transfer of value.
Because they’re off-chain, state channel contracts can operate much more efficiently. They don’t need to pay the network for every time they compute.
They can also operate with greater privacy. Only the two parties involved in the contract need to see the contract’s information and operation. This is a non-trivial consideration for large companies considering placing sensitive business information in a smart contract. Keeping contracts private helps ensure the usability of smart contracts for all kinds of purposes that may touch upon sensitive information.
Disagreements & Adjudication of State Channel Contracts
When there’s a disagreement in a state channel contract, the contract turns to the blockchain for adjudication. The contract remains private through a zero-knowledge proof setup that allows the blockchain to render a judgment without needing to know the contents of the contract. In this way, the blockchain acts as a blind judicial system for smart contracts.
Interestingly, since the blockchain’s behavior is predictable, there’s no benefit to disputing the results of a state channel contract. The blockchain is likely to confirm the outcome.
Final settlement of accounts in the contract then takes place on the blockchain and the contract closes. The result of off-chain computation is an increase in throughput by several orders of magnitude for the network since only the final settlement needs to be handled on-chain.
Developing Smart Contracts on Aeternity
Aeternity allows for the development of functional smart contracts. It does not support stateful programming. Instead, parties to the contract are responsible for maintaining the state of the program. They would then provide and confirm the state as part of the inputs for the contract.
This is in contrast to Ethereum’s insistence that stateful programming is important for blockchain applications. We can’t cover the difference between functional and state-based programming in this article. However, suffice it to say that state is an important component of building useful applications. Ethereum is working on the extremely difficult problem of state sharding, which, if solved, could render Aeternity much less attractive as a platform.
Up to now, however, separating functional and stateful demands is an important trend in smart contract scalability. Functional programs are easier to scale.
Aeternity’s smart contracts run in a language called Chalang that compiles to bytecode. In the future, Aeternity wants to be as developer friendly as possible. Therefore, they’re planning on creating JS libraries and JSON APIs for web development.
An important aspect of smart contract and dapp development is access to outside data sources. This could mean checking the weather in London, score of a football game, or price of gold.
Oracles provide access to data hosted outside the blockchain. In many blockchain projects, oracles represent a security risk and potential point of failure, since they tend to be singular, centralized data streams.
Aeternity proposes decentralizing oracles with their oracle machine. Doing so would make outside data immutable and unchangeable once it reaches Aeternity’s blockchain. Of course, the data source could still be hacked, so Aeternity implements a prediction market where users can bet on the accuracy and honesty of incoming data from various oracles.
Hybrid Proof of Work & Proof of Stake
Aeternity’s network relies on both proof of work and proof of stake.
Proof of work establishes consensus on the Aeternity platform. Miners verify new blocks in a similar way to Bitcoin and Ethereum’s current model. However, Aeternity uses a slight variation to optimize the proof of work algorithm for scalability. The Cuckoo Cycle is a new graph-theoretic proof of work algorithm that combines scalable memory requirements with instant verifiability. The Cuckoo Cycle incentivizes devices with dynamic RAM. Its design means you could mine Aeternity from a mobile device.
Proof of stake controls the governance of the Aeternity ecosystem. AE token owners can vote on development proposals and changes based on the proportion of AE they own.
Open Source Aepps at Launch
Aeternity is calling their decentralized applications, “aepps.” They’ll be developing open source aepps ahead of the launch of the mainnet as a demonstration of the capabilities of the Aeternity network. Having useful aepps available from day one is important for Aeternity to establish a foothold in the crowded dapps platform race.
Aeternity is also building an incubator foundation. The foundation will provide support for building projects on Aeternity.
Aeon Token (AE)
The Aeon token sale launched in 2017. It is initially traded as an ERC-20 token on Ethereum while Aeternity is still in testnet. When Aeternity launches the mainnet, the ERC-20 tokens will exchange for native tokens on Aeternity.
All system fees get paid with Aeon, and all smart contracts settle in Aeon. In this regard, the token functions similar to ETH.
The AE token trades on Bittrex and Hitbtc. While Aeon is an ERC-20 token, you can store it in any wallet with ERC-20 support. However, this may change once the native tokens are available.
Aeternity launched its testnet in early 2017. Its token sale followed shortly thereafter.
Currently, Aeternity is undergoing a security audit on its testnet. They hope to launch the mainnet later this year.
Yanislav Malahov, founder of Aeternity, has been working in crypto a long time and was an associate of Vitalik Buterin since before Ethereum. He claims a conversation he had with Vitalik sparked the idea for Ethereum, and he is therefore known as the “Godfather of Ethereum.” Malahov was not involved in Ethereum’s development, but he has worked on many crypto projects before and since.
Since the token sale, Aeternity has grown from a small team into a large project. You can see the many team members and read their bios on Aeternity’s website.
Aside from sharding, moving smart contract execution off-chain is perhaps the biggest front in scalability for blockchain dapps. Aeternity is on the cutting edge of that movement. These are uncharted waters, however, so expect challenges as smart contract platforms like Aeternity grow. Expect Ethereum to be watching Aeternity’s progress closely, as any solution Aeternity implements, Ethereum will want to implement as well.