Cosmos — an early in-depth analysis at the ecosystem of connected blockchains — Part One

What is Cosmos?

Cosmos is a network and a framework for interoperability between blockchains. The zones are powered by Tendermint Core, which provides a high-performance, consistent, secure PBFT-like consensus engine, where strict fork-accountability guarantees hold over the behaviour of malicious actors. Cosmos is not a product but an ecosystem built on a set of modular, adaptable and interchangeable tools.

see https://raw.githubusercontent.com/devcorn/hackatom/master/tminfo.pdf for high res

Sovereignty

Cosmos goal is to provide sovereignty through governance to developers by making it easy to build blockchains via the Cosmos SDK and provide interoperability between them, using Tendermint consensus. This is their main differentiator compared to competition like Polkadot and Ethereum 2.0. Ethereum 2.0 and Polkadot are taking a different approach by only using shared security, where there is a root chain which controls the security / prevents double spending for all connected blockchains.

Layers of a blockchain

From an architecture standpoint, each blockchain can be divided into three conceptual layers:

  • Application: Responsible for updating the state given a set of transactions, i.e. processing transactions.
  • Networking: Responsible for the propagation of transactions and consensus-related messages.
  • Consensus: Enables nodes to agree on the current state of the system.

Hub and Spoke Topology

Cosmos follows a hub and spoke topology as its not feasible to connect every zone together. If you were to connect every blockchain together the number of connections in the network would grow quadratically with the number of zones. So, if there are 100 zones in the network then that would equal 4950 connections.

Ethermint

Standard Cosmos zones / hubs don’t have smart contract functionality and so to enable this, as the Application layer is abstracted from the consensus layer via ABCI API described earlier, it allows Cosmos to port the code over from other blockchains such as Ethereum and use it with the Tendermint Consensus to provide access to the Ethereum Virtual Machine. This is what is called Ethermint.

IBC

IBC stands for inter-blockchain communication protocol and is an end-to-end, connection-oriented, stateful protocol for reliable, ordered, authenticated communication between modules on separate distributed ledgers. Ledgers hosting IBC must provide a certain set of functions for consensus transcript verification and cryptographic commitment proof generation, and IBC packet relayers (off-chain processes) are expected to have access to network protocols and physical datalinks as required to read the state of one ledger and submit data to another.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Seq

Seq

DLT Enthusiast and Writer. Interoperability is key for DLT to achieve its true potential. Avalanche $AVAX