Authored by Colin Schwarz
ChainSafe was recently engaged by the Aragon Network (and the AA by proxy) to build Aragon Chain, an alternate chain optimized for Aragon usage. Aragon Chain will be built by implementing existing Aragon smart contracts and associated components on Ethermint, which is also being built by ChainSafe. Ethermint is a Cosmos SDK module that provides the same functionality as mainnet Ethereum. The major difference is that Ethermint features proof of stake consensus which allows for faster and cheaper transactions as well as instant finality. We wanted to take the time to write a bit about Cosmos and Ethermint and how we plan to leverage these systems to deliver a custom chain, optimized for the Aragon community.
Cosmos is a blockchain ecosystem which is comprised of many constituent blockchains. Cosmos is designed to solve some of the biggest issues with contemporary blockchain technology: scalability, usability and interoperability. In order to do this, Cosmos features three primary components: Tendermint, Cosmos SDK and the Inter Blockchain Communication protocol (IBC). Tendermint is a Byzantine Fault Tolerant proof of stake consensus engine. It provides proof of stake (PoS) consensus with five second block times when used with Cosmos SDK. Tendermint also features instant block finality as well as peer to peer networking. As a PoS algorithm, Tendermint avoids the computational and electrical expenses of Proof of Work and delivers a high throughput of about 200 transactions per second. Tendermint also features instant finality which is not a feature enjoyed by earlier blockchains like Bitcoin and Ethereum. Cosmos SDK improves blockchain usability by offering a generalized application framework that enables developers to easily build secure blockchain applications on top of Tendermint. Cosmos SDK is highly modular so that developers can create a wide range of application specific blockchains without having to code in all the complex functionality from scratch. Cosmos SDK also allows devs to easily define the state transition logic and to use existing modules. Cosmos SDK can thus be used by anyone to create a "Cosmos Zone," a custom blockchain that is secured by Tendermint and connected to other zones within the Cosmos ecosystem via the Cosmos Hub. The Cosmos Hub is at the centre of the network's hub and spoke model and is a special zone that bestows interoperability by connecting all the other zones on the network, allowing them to securely share value and information. The IBC protocol is the means by which this communication is achieved. IBC allows various blockchains, both public and permissioned, to transfer data and value amongst themselves. IBC also allows blockchains designed for different applications and with different sets of validators to be interoperable. Together, these three components make up Cosmos' unique blockchain ecosystem and bestow a wide range of benefits.
Ethermint is a Cosmos SDK module which allows for Ethereum state transitions, including solidity smart contracting, on Tendermint core. This includes a Web3 API layer which allows users to interact with Ethereum state using existing dev tooling. In this way, Ethermint features all of the dynamic functionality of Ethereum while enjoying the advantages in speed and throughput bestowed by Tendermint. ChainSafe has been building Ethermint since June of this year and the project is nearly complete.
Ethermint was chosen by the Aragon community as the best option to create Aragon Chain both in terms of timing and functionality. Ethermint will be completely finished before the new year, ensuring that Aragon Chain can go live as soon as it is complete. The fast blocktimes and instant finality will ensure that Aragon Chain maintains high throughput and will allow for fees that will be much lower than those on Ethereum, and more consistent since the chain will not be cluttered by transactions from non-Aragon applications. Finally, the fact that Ethermint is so similar to mainnet Ethereum will help to simplify and expedite the migration of Aragon contracts from Ethereum. The web3 rpc API is ready for testing and is now compatible with all main dev tooling except ethers.js. The EVM module that allows for deployment of and interactions with Ethereum smart contracts is also finished and can be plugged into any existing Cosmos application with only a few changes. The next step for Ethermint is to continue testing, implement the filters endpoints of the RPC API if needed, and to fix any inconsistencies that arise from people migrating from Ethereum. Check out this video for an explanation of Ethermint and how to use it.
Aragon Chain will consist of two primary components: a migration of Aragon contracts from Ethereum to Ethermint, and a bridge that facilitates the transfer of value and information between Ethereum Aragon and Aragon Chain. This means that Aragon Chain will provide the same functionality to which users are accustomed on mainnet Ethereum, with the added bonus of lower fees and faster blocktimes and transactions. Building Aragon Chain as its own Cosmos zone will also allow for a higher level of control and customization in terms of future Aragon initiatives. Aragon Chain thus represents a unique intersection of some of the most powerful and exciting technologies in the blockchain space, including Ethereum, Aragon, Cosmos and Ethermint. ChainSafe is currently in the process of creating a specification and risk assessment for Aragon Chain and will begin development before the new year. We are extremely excited to be working closely with the Aragon One team and the Aragon community in general. We are also privileged to continue working within the Cosmos ecosystem and are thrilled to build such a salient project using Ethermint. We will provide more updates once development is underway. Stay tuned!
"A Beginner's Guide to Ethermint." Interchain Foundation. Oct 27, 2017. shttps://blog.cosmos.network/a-beginners-guide-to-ethermint-38ee15f8a6f4
"What is Cosmos?" Accessed Nov 12, 2019. https://cosmos.network/intro