# Tendermint

### What is CosmosSDK / Tendermint?

Similar to Ethereum, Tendermint seeks to make blockchain technology accessible to developers. However, Tendermint's vision differs from Ethereum's by emphasizing a multi-chain model as the cornerstone of blockchain's future scalability and interoperability. Tendermint is not a standalone blockchain but rather an open-source, consensus, and P2P engine. When coupled with the application layer (Cosmos) SDK, developers and enterprises use Tendermint to streamline the development of L1 blockchains.

### How does it work?

1. Builders fork the Tendermint & Cosmos code and add custom features to create a utility-specific blockchain, accelerating blockchain development.&#x20;
2. Builders are on their own to launch their chain:
   1. Must have enough locked value to prevent hostile takeovers
   2. Must recruit a diverse validator set to avoid centralization
   3. Must bootstrap an ecosystem from scratch
   4. Must build chain communication features to avoid community isolation

{% hint style="info" %}
Tendermint was created within a year of Ethereum, yet the adoption and popularity are far less.
{% endhint %}

### Pros & Cons of CosmosSDK + Tendermint

**The good:**

* ✅ sovereign and decentralized
* ✅ full value capture
* ✅ scale independently

**The bad:**

* ❌ slow to market (semi-accelerated by the SDK)
* ❌ must keep up with SDK updates
* ❌ have enough capital to ensure network takeovers are expensive, typically requiring fundraising
* ❌ bootstrap their own ecosystem with developer tooling and liquidity paths
* ❌ attract experienced Validators to avoid centralization
* ❌ must build interoperability features to avoid community isolation
* ❌ SDK is complex and intimidating for the new developer

### Cosmos Consumer Chains via ICS and IBC

Tendermint's design failed to address the challenges of starting a blockchain, which is essential for fostering widespread accessibility and mass adoption.&#x20;

{% hint style="info" %}
Need a refresher of the challenges involved with starting an L1? Checkout [Blockchains Are Hard To Launch](/docs/canopy-network/why-canopy/background-and-industry-state.md#are-hard-to-build)
{% endhint %}

To fix these shortcomings, the "Cosmos Hub" chain offers Interchain Security and Interoperability to "Consumer Chains":

* Utilizing the Cosmos Validator set to prevent hostile takeovers and avoid early centralization
* Develop a rich ecosystem - using the Cosmos Hub chain as the center of the Inter-Blockchain Communication, facilitating interoperability.

**The good:**

* ✅ ICS validator set secures new chains with ATOM
* ✅ IBC enables ecosystem growth with interoperability
* ✅ scale independently

**The bad:**

* ❌ not sovereign (reliant on ICS for security and finality)
* ❌ must pay security rent to ICS
* ❌ locked into ICS stack - hard fork and re-genesis required for independence
* ❌ slow to market (semi accelerated by the SDK)
* ❌ must keep up with SDK updates
* ❌ bootstrap their own ecosystem with developer tooling and liquidity paths
* ❌ SDK is complex and intimidating for the new developer

{% hint style="info" %}
ICS attempts to address the shortcomings of Tendermint but undermines the sovereignty of builders
{% endhint %}

### <mark style="color:blue;">Canopy and Cosmos Comparison</mark>

<table><thead><tr><th width="201.2000732421875">_</th><th width="178.794189453125">CANOPY</th><th width="185.2176513671875">COSMOS SDK</th><th>COSMOS HUB + ICS</th></tr></thead><tbody><tr><td><strong>Architecture</strong></td><td>✅ Peer-to-Peer</td><td>➖ A builder SDK for blockchains</td><td>❌ Centralized around Cosmos Hub</td></tr><tr><td><strong>Scaling Method</strong></td><td>✅ Every new chain horizontally scales Web3</td><td>✅ Independently</td><td>❌ Single Chain: Cosmos Hub</td></tr><tr><td><strong>Builder Sovereignty</strong></td><td>✅ Progressive</td><td>✅ Full</td><td>❌ Critical, lifelong reliance on host for security &#x26; finality </td></tr><tr><td><strong>Ecosystem</strong></td><td> ❌ New</td><td>❌ Fragmented</td><td>❌ Small</td></tr><tr><td><strong>Long range attack</strong></td><td>✅ Proof of Age</td><td>➖ Centralized checkpointing</td><td>➖ Centralized checkpointing</td></tr><tr><td><strong>Builder Difficulty</strong></td><td>✅ Quick to market</td><td>❌ Slow to market</td><td>❌ Slow to market</td></tr><tr><td><strong>Builder</strong> <strong>Economic Security</strong></td><td>✅ Immediate</td><td>❌ Neglected / typically fundraising required</td><td>✅ Immediate</td></tr><tr><td><strong>Builder Framework</strong></td><td>➖ Fork &#x26; Clone: Golang</td><td>❌ Complex with dependecy to Tendermint</td><td>❌ Complex with dependecy to Tendermint</td></tr><tr><td><strong>Chain Resources</strong></td><td>✅ Exponential: Each new chain is additive</td><td>✅ Independent</td><td>❌ Limited: single chain</td></tr><tr><td><strong>Builder Success</strong></td><td>✅ L0 Premium</td><td>✅ L1 Premium</td><td>❌ Typically lower FDV than sovereign L1s</td></tr><tr><td><strong>Native Interoperability</strong></td><td>✅ Permissionless</td><td>➖2 Way through IBC</td><td>➖2 Way through IBC</td></tr><tr><td><strong>Builder Decentralization</strong></td><td>✅ Full/Progressive</td><td>✅ Full</td><td>❌ Semi</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://canopy-network.gitbook.io/docs/canopy-network/why-canopy/comparables/tendermint.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
