Cosmos文档(中文版)-- 1. 介绍
由本人翻译, 转载需先说明
所有章节:
英文版文档:Cosmos Docs
中文版白皮书:Cosmos白皮书
Cosmos Hub
Cosmos Hub 是Cosmos网络的第一条区块链。Cosmos Hub 通过新的IBC(inter-blockchain communication,跨链通信)协议连接其他分区,在每个分区上维护一个token的总量记录。由于所有的跨链交易都要经过Cosmos Hub,你可以在没有流动性交易或者分区之间受信任的第三方的情况下,安全快捷地从一个分区向另一个分区发送token。
Cosmos Hub 可以连接许多不同种类的分区 —— 公有的或私有的,只要这些分区实现了IBC。基于Tendermint的分区原生兼容IBC, 但任何快速确定性的共识算法皆可用作替换。Cosmos支持多种数字货币和脚本语言(Bitcoin, Ethereum, ZeroCash, CryptoNote等)。Atom是Cosmos Hub的原生token,它是持有者去抵押股权和参与治理的一种许可证。
权益证明
区块链网络由一组验证人担保,验证人负责向区块链提交新块。在Bitcoin这样的工作量证明(Proof-Of-Work)的系统中,验证人称作矿工,矿工生产出下一个区块的概率与其算力成正比。相比之下,Cosmos Hub是一条权益证明(Proof-of-Stake)的公链。 权益证明是一类依赖验证人在网络里的,具有经济价值的股权的共识算法。
Atom
在Cosmos Hub的中,一个验证人被选择去生产下一个区块的频率与其锁定(即担保,抵押)的Atom数量成正比。
这些Atom被验证人自己锁定,或者由那些不想及不能去运行验证人操作的Atom持有者抵押给验证人锁定。验证人自抵押的和被委托的Atom的总量就是该验证人的股权。Atom在Cosmos Hub中只是作为作为权益token。作为锁定Atom的回报,委托人可以赚取区块增发奖励(以Atom支付),区块奖励(以Photon支付)还有交易手续费(以白名单列出的token支付)。当一个抵押Atom的持有者想要赎回他的股权时,必须要等待3周的赎回周期。
Photon
Atom被设计去抵押在Cosmos Hub中。这意味着Atom并不是支付手续费或者转移到Cosmos生态里其他分区的理想方式。这也是引入Photon的原因。Photon是一种费用token,相比Atom有着更好的流动性和速度。Photon在Cosmos Hub的费用token白名单中位于Atom之后的第二首选,可以Cosmos Hub连接的所有分区之间任意转移。
硬分叉
当复制一个已存在数字货币中的账户余额来生产处一种新的数字货币时,就发生了硬分叉。在我们的案例中,我们取Ethereum持有者的账户余额,并对其值做镜像快照快照来对Ethereum进行硬分叉。这意味着ETH持有者可以获得从EVM分区中复制得来的coin,可以当做支持token与Photon版的Ethermint中的手续费。
主网上线后,Atom持有者能够对硬分叉投票表决,详情如下:
- 是否进行硬分叉
- 何时进行快照
- Photon如何分配(分配多少给Ethereum持有者,多少给Atom持有者,还有Photom的通胀)
验证人
Cosmos Hub的验证人负责把添加到区块链中的交易打包成新的区块。运行一个验证人节点是有意义的,这需要技术知识和硬件上的投入。此外,由于基于Tendermint这个底层共识引擎来建立Cosmos Hub这种方式行得通,验证者的数量必须要有限制。一开始这个限制固定在100。这意味着那些表示想成为验证人的地址中,只有股权最高的那100个会成为验证人。因此大多数Atom持有者将不会作为验证人。但是,他们可以成为委托人,来参与表决验证人候选者中谁可以成为验证人。
如果你对成为验证人感兴趣:在这里学习有关验证人的更多内容。
委托人
那些不能够,或者不想去运行验证人操作的人,仍然可以作为委托人参与到抵押股权的过程中。事实上,验证人不止基于他们自有的股权来选举,而是基于他们的总股权,总股权是其自有股权和委托给他们的股权的总和。如果你想抵押你的Atom给一个验证人来赚取收益,或者只是想要学习委托人的相关知识,请看委托人常见问题解答。
Tendermint
Tendermint是一个用于在多台机器之间,安全且一致地复制某个应用程序的软件。对于安全性,我们指即使有三分之一的机器因某种方式出现故障,Tendermint也可以正常运作。关于一致性,我们指在每台正常的机器上都能看到相同的交易日志, 计算出相同的的状态。安全且一致的复制是分布式系统里的基础性难题;它对于宽泛领域的应用程序,从货币,到选举, 到基础设施等等的容错,扮演着一个关键角色。
Tendermint被设计成使用方便,易于理解,高性能,对诸多的分布式应用程序都有使用价值。
拜占庭容错
对机器出现各种故障,甚至是故意作恶时的包容能力,就是拜占庭容错(BFT,Byzantine fault tolerance)。BFT的理论已有数十年之久,但其在软件上的实现,由于类似Bitcoin和Ethereum这样的区块链技术获得巨大的成功,最近才变得流行起来。区块链技术是对BFT以更加先进的设定所做的重新实现,突出点对点网络和加密身份认证。区块链的名称源于交易被批量打包成区块的方式,每个区块包含前一个区块的加密哈希,这样就形成了一条链状结构。实际上,区块链的数据结构对BFT的设计进行了优化。
应用区块链接口
Tendermint由两块首要的技术构成:区块链共识引擎和泛用的应用程序接口。共识引擎称为Tendermint Core,用来确保相同的交易会被每台机器以相同的顺序记录。应用程序接口称为应用区块链接口(ABCI,Application Blockchain Interface),其使交易能用任何编的程语言去处理。和其他区块链还有共识方案不同的是,开发者可以在任意的编程语言和开发环境上,用Tendermint作为BFT状态机的复制。访问Tendermint docs深入了解ABCI。
Cosmos SDK是用Go语言编写的ABCI框架。(Lotion JS)[https://cosmos.network/docs/lotion/overview.html]是用Javascript编写的ABCI框架。