Tendermint provides developers with a platform to create an exciting future.
Tendermint is a blockchain protocol that was created by 2 brilliant people (the brainchild of blockchain software architect Jae Kwon and internet biophysicist Ethan Buchman) in 2014, funded as a tool to replicate and launch blockchain applications across the internet in a secure and consistent routine.
Most of the time, Tendermint refers to “Tendermint Core”. But in fact, Tendermint is the name of the company (founded by the developer that wrote the original whitepaper, Jae Kwon), while Tendermint Core is the actual software the company works on.
In this article, we’ll use the terms “Tendermint” and “Tendermint Core” interchangeably, cause we’re only focused on the tech.
Tendermint is a special blockchain protocol that can establish communication within networks ( internal networks and external networks), with which people can seamlessly create different types of blockchain systems. Furthermore, it helps to overcome the time-consuming technical setup phase as well, in which case people can make full concentration on the applications themselves.
Relationship between Tendermint and Blockchain
There is an imaginative way to explain the relationship towards these two. Try to imagine that you are a chef and you’re going to cook a pizza, first you need to make a crust, after then you can add any different toppings you want to it, like beef or chicken. Actually, Tendermint is like a pizza’s crust or base (equivalent to blockchain networks such as Cosmos), developers are played as chefs, they can invent various blockchain applications based on the base (Tendermint).
Goals of Tendermint
Tendermint aims to provide the networking and consensus layers of blockchains as a platform to develop different decentralized applications and to enable developers to focus on the application layer of the blockchain, instead of working on both the consensus and the networking layers simultaneously. What’s more, it is responsible for sharing block transactions between nodes and establishing a canonical/immutable order of transactions (the blockchain).
Key Building Blocks
Tendermint consists of two key building blocks: a blockchain consensus engine and a generic application interface.
A Blockchain Consensus Engine
The blockchain consensus engine here is Tendermint Core, which is used to make sure that transactions are recorded on every block in the same order. It facilitates the peer-to-peer network and provides a proof of stake (PoS) consensus.
A Generic Application Interface
The generic application interface here is Tendermint’s Application Blockchain Interface (ABCI), with which transactions can be processed in any programming language. In other words, ABCI is a useful tool for blockchain networks to link onto the Tendermint Core protocol.
Tendermint utilizes modular architecture (unlike monolithic architecture) with software components that are independent. That’s why people can update a section of the application without causing significant changes to the system.
Tendermint solves consensus under partially synchronous communication. A partially synchronous system model alternates between periods of synchrony and asynchrony. This model is referred to as “weakly synchronous.”
Tendermint relies on timing assumptions to make progress. In contrast to synchronous systems, however, the speed of progress is determined by network speed, not system parameters. It follows a simple state machine that’s depicted in the chart below:
The whole processes are run by validators, who propose blocks of transactions and vote on them. Each block is placed at the top. If a block isn’t committed, the protocol will move to the next round, and a new validator will propose the height. The vote needs to be conducted twice to commit a block. The steps are referred to as prevote and precommit. If more than two-thirds of validators precommit for the same block in the same round, the block is considered committed.
In the context of blockchains, scalability refers to the ability of a blockchain to support an ever-increasing load of transactions and nodes within the network. Sharding creates smaller databases, or shards, which are shared among the nodes and may operate in parallel. PoW-based systems aren’t able to be shared, while sharding capabilities within Tendermint’s PoS-based network help enhance scalability.
The separation of the application interface and the consensus mechanism allows greater flexibility for a range of decentralized applications to incorporate any programming languages into their business logic.
Interoperability is a long-awaited addition to the cryptocurrency space, as it means that hundreds of individual blockchains would become cross-compatible.
Application Example- Cosmos Ecosystem
Why do people trust us?
- We have started 7/24 staking services since 2018, and have managed over $100 million assets.
- We run highly available and redundant nodes in different data centers to achieve continuous operations.
- We are actively participating in community and governance, disclosing information frequently.