Blog

What is Tendermint and How Can it Tenderly Replicate Files?

  • Tendermint software helps replicate applications, securely and consistently, across different systems in a distributed system.
  • The Tendermint core and ABCI forms are integral building blocks.

Tendermint is software that has a high level of protection against double spends attacks and does not require the energy-intensive Proof-of-Work consensus mechanism. Several other protocols were launched to solve the challenges faced by PoW, however, some suffered from the nothing at stake problem, where the participants had nothing to lose, making the consensus model useless. Other protocols required some nodes to depend on the trustworthiness of other nodes, inducing trust in a supposedly trustless network.

Tendermint is an improved version of the DLS protocol and flexible with 1/3  Byzantine participants, i.e. the algorithm will run even if 1/3  of participants fail. Any application built atop Tendermint can be securely replicated/launched across several machines in a distributed system. 

Avoiding Fault Tolerance in a distributed system requires secure and consistent replication of data. However, it is difficult to achieve. Consistent replication means that if a file is updated on one system, it should be updated on other systems as well. Otherwise, the files will be different. Secure replication means the system should not fail if some faulty participants are present. 

How Does Tendermint Work?

Tendermint has two basic pillars: Tendermint core and ABCI:

  • Tendermint Core

This is the consensus mechanism used by Tendermint which is a Byzantine Fault Tolerant (BFT) middleware. The height in Tendermint is the unique identity of a block. 

The consensus algorithm is explained in the following steps:

1

Image 1, shows the block flow diagram of the Tendermint core. 

Step 1: Before each round, a proposer is chosen who will propose the block for. The first step is Propose step where the proposer broadcasts the proposal of the block to their peers through gossip. 

Step 2: Before prevoting occurs, each validator has to make a decision. If the validator received an acceptable/valid proposal for the block, he signs a prevote and broadcasts it. If the validator received an invalid proposal or no proposal at all, he signs and broadcasts a nil prevote. All nodes in the round gossip have prevotes with his peers. 

Step 3: During the start of  precommit step, if a validator received more than 2/3 prevotes for an acceptable block, then he signs and broadcasts a precommit for that block. If he received more than 2/3 nil prevotes, then the proposal is not accepted, similar to the case of not receiving 2/3  acceptable prevotes. 

During its ending, each node decides either to enter the commit step or continue with the propose step.

Step 4: As mentioned in the figure, two parallel conditions need to be satisfied for this step. First, each node must get a block committed by the network and one has to sign and broadcast a commit for the block.

Second, he has to wait until he receives a minimum of  2/3 commits for the block. 

After both conditions are satisfied, a new height / new identity is created for a block and finally a block is created. 

Application Blockchain Interface (ABCI)

All the blockchains mostly have a monolithic structure i.e. a big container that has all the codes like consensus protocol, transaction details, account balances, etc. Thus, if someone needs to use a particular section of the giant code, it is challenging for them, especially when the code is arranged in a spaghetti model. Also, you can use only the language which is used by the blockchain.

ABCI is a bridge between the Tendermint core and the application running on top of it. Cosmos SDK (Software Development Kit) primarily uses the Tendermint core. Hence, it can be called a bridge between tendermint core and apps built through SDK.

With the help of ABCI, BFT duplication of applications in any programming language. 

Final Thoughts

The Cosmos Network uses the Tendermint core as its basic consensus model. It provides developers with a platform to build blockchains backed by the BFT. In the future, the performance of Tendermint can be further optimized to improve its capacity. 

Tendermint is also developing Emeris, a cross-chain crypto app store in the coming future, which will be the one-stop for decentralized apps. 

Alena

Wow! I can't believe we finally got to meet in person. You probably remember me from class or an event, and that's why this profile is so interesting - it traces my journey from student-athlete at the University of California Davis into a successful entrepreneur with multiple ventures under her belt by age 25

Recent Posts

How to Become a Millionaire in One Simple Step [Large Passive Income]

One simple step: start living the millionaire life. Since the advent of the Internet, cloud…

1 day ago

XProtocol DePIN Superchain goes live on Fjord launchpad with Xmas Campaign

Web3 entertainment and gaming has seen several iterations and ground-breaking innovations on blockchain. But it…

3 days ago

bitsCrunch Secures First Perpetual Listing on dYdX Exchange

Munich, Germany – 18 December 2024 – bitsCrunch, a pioneering force in blockchain analytics, has announced…

3 days ago

The Top 6 Crypto Staking Platforms in 2025: Your Path to Financial Freedom

Staking has become the new passive income for modern investors, with no trading required to…

6 days ago

Innovation Meets Opportunity At The Villa’s Elevator Pitch Battle

Startups looking to pitch their ventures, VCs looking to invest, and general web3 enthusiasts have…

2 weeks ago

Here Are 9 Things To Know About Vave Casino

Vave is perfect for players on the lookout for a thrilling experience with crypto casino…

2 weeks ago

This website uses cookies.