If you follow the news of the digital world, you probably know that new blockchains are constantly appearing that not only bring new currencies to the market, but also develop their own personal protocols and consensus algorithms.
Each such technology is somewhat superior to the previous one, since most often innovations are hybrids of two or more protocols, of which only the best is taken. And today we’ll just talk about the Tendermint BFT hybrid consensus algorithm, not forgetting to tell you about the network to which it belongs.
The Cosmos network is a modular structure for parallel blockchains connected to a primary hub called the Cosmos Hub. Cosmos Hub is the first blockchain on the network and functions as a connecting tool between different zones in the system. Zones consist of both private and public block chains, which are all interconnected via the inter-unit communication protocol (IBC).
What parts does the Cosmos network consist of
The first part is Tendermint Core, an open source software package that consists of two main parts. Mainly, the consensus engine of Byzantine fault tolerance, as well as the p2p network protocol.
In addition, it has the following features:
- The ability to create a public or private blockchain;
- High performance – thousands of operations per second;
- Fast transaction completion – as soon as a block is created.
The second part is ABCI, which is a Byzantine fault tolerant replicator of applications written in any language. You can replicate your blockchain applications written in C ++, Python, Solidity or any other language to a BFT assembly block.
ABCI is a translator, shell, and socket between blockchain applications and the Tendermint engine on which they run. Tendermint Core reduces blockchain development time from a few years to a few weeks, but creating a secure ABCI application from scratch remains a challenge. That’s why the Cosmos SDK is needed.
The third part of the SDK is a multi-level structure, built on the low-level existence of ABCI, which allows developers to create complex applications without having to deal with the logical complexities of a low-level environment. It is based on two important principles.
- Modularity: The goal of the Cosmos SDK is to create an ecosystem of modules that allows developers to easily run blockchains for specific applications without coding every piece of the functionality of their application from scratch.
- Security based on capabilities. This component is designed to combat malicious modules, and also facilitates coding.
Together, the Tendermint core provides consensus on the Cosmos Hub, while zone blockchains maintain their own consensus without the need to use Tendermint. Cosmos SDK provides developers with tools for creating blockchain and dApps. With the addition of ABCI, the state of the application is managed in a separate, coordinated process, which allows Cosmos to support a wide range of scripting and cryptocurrency languages.
Blockchains connected to the Cosmos Hub will be able to communicate with each other using the IBC protocol, regardless of which negotiation algorithm is used. This will allow transferring assets between blockchains, while preserving any contractual functions that they may have.
What is Tendermint BFT
Tendermint BFT is the first consensus algorithm based on proof of rates, created using the practical Byzantine fault tolerance algorithm (PBFT), first proposed in 1999 after 30 years of research. This BFT-based PoS protocol provides the right to offer new blocks in a pseudo-random fashion for validators during multiple voting.
However, completion and fixing of these blocks requires that most validators sign the proposed block. In the case of Cosmos, this is two-thirds of the quorum. Building consensus in this way can take several rounds to complete the blocks. The BFT system can withstand up to one third of failures, including those with malicious and arbitrary behavior.
The Tendermint algorithm has the following features:
- Security threshold is one third of the total number of validators;
- Compatibility with public or private networks;
- Consensus security;
- Sequence prioritization;
- Instantly complete in less than 3 seconds.
Cosmos uses the Proof of Bet consensus, known as delegated PoS. This brings together participants into validator groups and delegate groups. Delegates decide which validators will participate in consensus, and validators work to verify transactions and add new blocks to the block chain.
The awards are given to validators and delegates in the form of ATOM tokens, but the Cosmos network is designed in such a way that theoretically it would be possible to use the form of any cryptocurrency as a token of reward. In this system, any detected malicious node is eliminated from the network, and its tokens are destroyed.
Using Tendermint BFT, the Cosmos blockchain relies on strict rules of formal Byzantine resiliency to provide both a punishment for maliciousness and a set of guarantees that apply to the Internet blockchains in general. Given the global scalability of their ecosystem, network developers continue to develop to improve their hybrid, which combines Tendermint, BFT and PoS.