# 简简单单了解COSMOS

By [0x1559](https://paragraph.com/@xch168) · 2022-01-29

---

Cosmos（不同的平行区块链组成的去中心化网络）
-------------------------

Cosmos是一个由独立的平行区块链组成的去中心化**网络**，每个区块链都由Tendermint共识等BFT共识算法驱动。换句话说，Cosmos是一个由区块链组成的生态系统，可以相互扩展和相互操作。Cosmos 上的区块链称为“分区（zone)”。其中的一些分区又称为＂枢纽 (Hub)"，而不同的分区可以通过共享的枢纽来互相通信与互操作。Cosmos 网络上的第一个分区就是 Cosmos 枢纽（**Cosmos Hub**)。所有跨分区的代币转移都需要通过Cosmos 枢纽进行，代币可以安全、迅速地在分区之间转移。分区之间无需具有直接的转移流动性，而只需通过Cosmos 枢纽来**追踪记录**每个分区持有的代币总量，并确保所有分区的代币总量不变。在此，Cosmos 枢纽起到了一种类似中央银行结算功能的作用。

### Cosmos SDK---模块化开发套件（框架）

Cosmos SDK是一个通用框架，它简化了在Tendermint BFT 之上构建安全区块链应用程序的过程。Cosmos-SDK用于构建多资产股权证明(PoS)的区块链，比如Cosmos Hub，以及权益证明(PoA)的区块链。使用Cosmos SDK构建的区块链通常称为**特定应用区块链**。

*   SDK中默认共识引擎是 Tendermint Core 。 Tendermint 是已存在的最成熟（也是唯一的）的BFT共识引擎。 它被广泛应用于行业，被认为是建立股权证明系统（POS）的黄金标准共识引擎。SDK是开源的，旨在使其易于从可组合模块中构建区块链（**搭积木**）。
    
*   Cosmos SDK已经被许多特定应用区块链产品所使用。 如：Cosmos Hub, Iris, Binance Chain, Terra or Lino ，除此之外还有很多建立在Cosmos SDK的项目。
    

### Tendermint BFT 和 ABCI

Tendermint BFT 是一种将区块链的网络和共识层打包到通用引擎中的解决方案，允许开发人员专注于应用程序开发，而不是复杂的底层协议。Tendermint 指定了拜占庭容错 (BFT)共识算法在 Tendermint BFT 引擎中使用。（Jae Kwon 在 2014 年创建了Tendermint）

Tendermint BFT引擎通过（ABCI：应用区块链接口）的回调接口协议与应用程序相连，它可以用**任何**编程语言来包装。

### IBC（跨链通信协议）

Cosmos区块链之间的连接是通过区块链间跨链通信协议（IBC）来实现的。IBC 利用 Tendermint 共识的即时确定性属性来允许异构链相互传输价值（即代币）或数据。

### Hub（枢纽）

Cosmos 网络中启动的**第一个**Hub是Cosmos Hub，通过Tendermint拜占庭共识算法运行。Hub的启动也标志着 Cosmos 网络的启动。CosmosHub通过ABCI来连接其他区块链（空间）。Hub可以控制各个空间里代币。保证代币可以安全快速地从一个空间传递到另一个空间，即进行资产的跨链交易。

Hub（中心ZONE）负责管理各个独立区块链（Zone）。Hub（中心Zone）会源源不断地提交最新区块，这样可以让中心跟上每个空间（Zone）状态的变化。

![](https://storage.googleapis.com/papyrus_images/381f398f194062c4a11c3ad9cd31830d7c515e6ef51ac83eaf2f095cd90c95b1.png)

### 空间（Zones）

空间，也就是各个独立的区块链，连接到cosmos中心后，它们就成为了cosmos的一个空间。每个空间也会和中心的状态保持一致。信息可以从一个空间发送到另外一个空间，通过默克尔证明（Merkle-proof）来表明信息已经被传送或接收。这种机制叫做“区块链间通信”，简称为“IBC”机制。

那么到底什么是 Cosmos？
---------------

1.  Cosmos 通过 Tendermint BFT 和 Cosmos SDK 的模块化使区块链功能强大且易于开发。
    
2.  Cosmos 使区块链能够通过 IBC 和 Peg-Zones 相互转移价值，同时让它们保留自己的主权（控制权）。
    
3.  Cosmos 允许区块链应用程序通过水平和垂直可扩展性解决方案扩展。
    

Cosmos 不是一个产品，而是一个建立在一组模块化、适应性强和可互换工具之上的生态系统，最终目标是创建一个**区块链互联网**。Cosmos 是一个开源社区项目，最初由 Tendermint 团队构建。

![](https://storage.googleapis.com/papyrus_images/43d3447ca6b746639a0f06523c1d278b8cb5c2a2aa553ba2b547a2b354331d38.png)

**Cosmos生态系统（基于Cosmos SDK开发）**

[https://cosmos.network/ecosystem/apps/](https://cosmos.network/ecosystem/apps/)

---

*Originally published on [0x1559](https://paragraph.com/@xch168/cosmos)*
