比特币官网

谁是地表最强跨链项目?一文看懂Cosmos和Polkadot五大差异

  在上图中,我们假设每个小红点代表一个叫做“ETM”的代币,这个代币是Ethermint区域内的原生货币。区域A、B和C里额度用户希望在自己区域内的某些应用程序中使用ETM代币,并且他们也信任Ethermint区域,因此他们会执行IBC消息,将ETM传输到这些区域。现在,我们假设Ethermint验证人串通并开始双重支出、任意移动代币等恶意行为。显然,这将对网络的其余部分产生影响,因为ETM代币也存在于不同的区域。然而,唯一受此影响的人是在Ethermint或其他区域内持有ETM代币的人。需要注意的是,Ethermint区域中的恶意验证人不可能任意破坏除自身以外的其他区域,而这也是Cosmos架构的安全目的――确保恶意行为不会影响整个网络。

  相比之下,在Polkadot网络里如果在中继链(全局状态)下发送无效状态转换、而且“渔民”也没有发现这种情况,那么就会影响整个网络内的所有区块链。我们不能单纯地假设每个平行链本质上是不同的区块链,因为他们最终都会与网络内的其他区块链共享一个全局状态。

  04

  差异#4:共识算法

  Polkadot网络中继链使用的是GRANDPA团队开发的共识算法,该算法允许中继链快速完成处理来自全部平行链的许多区块,而且还可以支持容纳更多验证人(超过1000个)。简单来说,由于Polkadot网络内并非每个验证人都需要对每个区块进行投票,导致验证人其实可以对自己认为有效的单个最高区块进行投票,而且这个算法可以把投票结果传递给该区块的所有前继区块(ancestor)。在这种状况下,Polkadot算法会找到获得“绝对多数”投票的区块集合。现阶段,GRANDPA仍处于开发阶段,我们还不知道它在现实世界中的表现会如何。

  平行链可以使用各种共识算法最终形成一个局部共识,Polkadot提供了一个软件开发工具包(Substrate),它带有3种开箱即用的共识算法:GRANDPA,Rhododendron和Aurand。当然,未来可能会有更多共识算法添加到Substrate中,并且支持在Polkadot网络中使用。

  另一方面,Cosmos网络中的每个区块链都可以使用任何共识算法,但这些共识算法必须符合一种被叫做ABCIspec的规范。创建这个规范的目的,是为了标准化区块链之间的通信。目前,只有Tendermint算法符合此规范,但其他项目同样可以创建符合此规范的其他共识算法。如果站在一个较高级别的角度来看,Tendermint算法的工作原理是让每个验证人相互通信,确定是否批准/拒绝单个区块,从而在每个区块级别上达成一致性的最终结果。该算法速度很快,并且在200个验证人和6秒区块时间的实时环境中进行了压力测试。 Cosmos团队也提供了一个软件开发工具包,可以直接使用Tendermint算法。这里有一篇博文是对共识算法的一个很好的入门,你也可以通过这篇文章了解其他有用的Tendermint特性。

  不过,Tendermint最大的缺点是验证人之间的通信成本很高。这意味着当验证人数量在200个左右的时候可以相当快地工作,但当验证人数量达到2000之后就会慢得多。当然,鱼和熊掌不可兼得,虽然处理速度会有所下降,但安全性可能会更好。这意味着在一个网络分区中,如果把两个不同的交易历史合并成一个,并且其中另一个会被丢弃的话,会导致网络暂停。这点非常重要,因为如果当你看到一笔“已完成”交易,意味着这笔交易永远不会被撤销,即便在最糟糕的网络条件下也不会。

  对此,笔者个人的看法是,现在比较这两个网络的共识算法似乎并不是特别有用,你需要等待更长时间才能看到他们之间的优劣,因为目前绝大多数应用程序无论使用Tendermint还是使用Polkadot的共识算法都应该可以正常工作。

  05

  差异#5:Substrate vs Cosmos 软件开发包

  Polkadot和Cosmos都提供了软件开发工具包,一个叫“Substrate”,一个叫“Cosmos SDK”,它们都可以帮助开发人员更轻松地构建自己的区块链。不仅如此,这两个软件开发工具包还包含了许多“开箱即用”的模块,比如治理模块(投票系统)、权益分配模块(staking modules)、身份验证模块等。这两个软件开发工具包之间的主要区别在于Cosmos SDK支持Go,而Substrate支持任何编译为WASM(Web Assembly)的语言,也为开发人员提供了更大的灵活性。

  这两个软件开发工具包都可以构建全新的区块链框架,而且会在未来几年添加更多新功能。

此文由 比特币官网 编辑,未经允许不得转载!:首页 > 比特币行情 » 谁是地表最强跨链项目?一文看懂Cosmos和Polkadot五大差异