随着区块链技术的发展,现在越来越多的链,包括公有链、联盟链、私有链都开始层出不穷,那么链与链之间的互联操作,越来越被重视,跨链的需求就由此而来。目前,跨链技术主要有:公证人机制、侧链/中继、哈希锁定和分布式私钥控制。今天介绍的 Cosmos 就是被分类到中继这个技术下。
Cosmos是什么?
Cosmos 是一个由区块链组成的网络 (Internet of Blockchains),它的创建是为了解决一些区块链社区长久以来存在的问题。
它被誉为“区块链的互联网”,也被认为是区块链的3.0版本。Cosmos旨在解决区块链交互操作和可扩展性问题,其区块链间通讯协议可以实现区块链的互联,支持不同区块链之间的资产转移。
Cosmos 上的区块链称为“分区(zone)”。其中的一些分区又称为"枢纽 (Hub)",而不同的分区可以通过共享的枢纽来互相通信与互操作。Cosmos 网络上的第一个分区就是 Cosmos 枢纽(the Cosmos Hub)。 它是一种多资产权益证明加密货币网络,也是一个公共区块链。Cosmos枢纽还可以通过连接其他空间来实现扩展,空间内所有代币转移都会通过Cosmos枢纽,它会记录每个空间所持有的代币总量。
Cosmos枢纽其实是一个总账类似的东西,所以对于Cosmos体系来说是非常重要的,为保证Cosmos安全,白皮书做了很多论证,比如其共识以分布在五大洲七个数据中心的64位节点为基准,即使在极其恶劣的敌对环境中也能保持一定的高效性。
链间通信(IBC)协议
Cosmos 网络的枢纽及各个分区可以通过区块链间通信(IBC)协议进行通信,这种协议就是针对区块链的虚拟用户数据报协议(UDP)或者传输控制协议(TCP)。
客户端想要发起一个A到B的代币转移,消息到A处,A对消息进行处理,然后通过中继传递到Hub空间,在Hub空间进行处理之后通过中继传递到B,反之也是一样。
通过 IBC 代币可以安全、快速地从一个分区转到其他分区,而无需在两个分区之间拥具有汇兑流动性。相反,所有跨分区的代币转移都会通过 Cosmos 枢纽,以此来追踪记录每个分区持有代币的总量。这个枢纽会将每个分区与其他故障分区隔离开。因为每个人都可以将新的分区连接到 Cosmos 枢纽,所以分区将可以向后兼容新的区块链技术。
Cosmos 的共识引擎 - Tendermint
Cosmos 分区是在 Tendermint Core 的支持下运行的,Tendermint Core 是一个类似拜占庭容错的共识引擎,在架构设计上把共识引擎和底层的P2P网络层打包在了一起,在其上开发者可以设计不同的应用逻辑。
Tendermint Core和上层应用逻辑分别负责不同的业务,底层业务由Tendermint Core负责,上层一些的的业务由应用逻辑负责,ABCI是两者之间的回调接口。
Tendermint 具有下列优点:
§ 简易性:可使用任意语言开发;
§ 适用性:公有链或私有链都可在 Tendermint上部署;
§ 高性能:Tendermint 每秒可处理成千上万笔交易;
§ 即时最终性:一旦区块被创建,用户便可放心确认该区块达成了最终共识;
§ 安全性:Tendermint 的分叉问责制可让我们明确分叉责任。
项目概况
项目进展
Cosmos 主网原本预计 2017年12 月上线,但之后推迟到了今年2月底,接着又推迟到了5月底,应该是在开发过程中遇到了困难。
项目团队
Cosmos 网络是由 Interchain 基金会开发的第一个项目。Cosmos 的开发主要由 Tendermint 团队负责。
官网:https://cosmos.network