区块链互操作性可能是下一波创新浪潮,它将在扩展去中心化互联网方面创造巨大价值。 创建区块链网络的两个顶级竞争者是Cosmos Network和Polkadot Network。我们将探索每个团队的协议,网络设计,安全模型,技术堆栈等。 但首先,我们需要从高层次解释区块链互操作性的含义。
什么是区块链互操作性? 区块链的互操作性非常复杂,因此让我们尝试以最简单的方式对其进行解释。 区块链的互操作性将发送以太币,并通过区块链协议自然地接收比特币,而无需第三方(例如交易所)。这是一个简单的愿望,但尚未实现。
Polkadot和Cosmos都在为区块链建立安全和可靠地交互的协议。该协议允许创建能够在彼此之间发送交易和消息的新区块链。
它为什么如此重要? 区块链网络允许网络效应改善去中心化互联网。当一切都连接在一起时,它将带来更多的资金,更好的用户体验以及更多的头脑风暴,以改善网络。 区块链互操作性可以显著提高区块链的可扩展性,速度。例如,如果你的区块链每秒限制100个事务,则可以创建第二个相同的区块链以达到每秒200个事务,可以与另一个区块链进行互操作。你可以这样做,以允许进行1000笔交易。它还允许私有,公共和财团的区块链进行连接。最终,区块链甚至可以与诸如SWIFT的法定银行系统进行互操作。
为什么要关注Cosmos和Polkadot? 从我的研究中,发现它们是最有前途的项目。他们都拥有强大的技术团队,在去中心化社区中享有良好的声誉,他们在区块链领域已有多年经验,并且从头开始编写了大量的区块链代码。
他们具有解决区块链互操作性的相似策略,但协议和设计存在细微差异。这些差异在安全性,隐私性,效率,灵活性和易用性之间进行权衡。 现在,让我们深入探讨一下,区块链互操作性的未来是什么样子!
Cosmos网络 自2014年以来,随着Tendermint的发布,Cosmos团队一直致力于区块链互操作性。 Tendermint是一个拜占庭容错共识引擎,以及对等网络协议。
他们正在建立Cosmos网络,这是基于Tendermint构建的区块链。 Tendermint和Cosmos都属于InterChain Foundation。下面的两个简单图表说明了它们如何设计网络。
总体而言,区块链由三个主要部分组成:相互通信的计算机节点网络,使节点能够同意新块的共识协议,以及具有其自身状态的应用层(例如以太坊帐户,将以太币余额存储为状态。
Tendermint负责区块链的网络和共识层。这允许区块链创建自己的有状态应用程序,以在Tendermint之上构建。该图显示了通过ABCI协议与Tendermint交互的ABCI应用程序。 技术设计和协议 Tendermint(共识和网络) Tendermint是实用的拜占庭式容错(PBFT)状态机。它要求一组已知的验证者同意就一个区块达成共识。Cosmos网路至少需要2/3才能达成共识。假设少于1/3的验证者是拜占庭,则网络将永远不会分叉,因为验证者无法在同一高度提交冲突的块。这源于Tendermint主张安全胜于活力。 应用程序区块链接口(ABCI) ABCI是定义复制引擎(Tendermint)和状态机(区块链)之间边界的接口。 ABCI是更新区块链状态的唯一方法,并且只有Tendermint有权访问区块链的状态更改功能。这种设计是一种很好的安全策略,因为只有一个入口点可以更改状态。 下图分解了Tendermint堆栈,显示了如何在对等网络中连接节点以及每个节点的组件。
五个节点相互创建对等网络。每个节点都是一台运行Tendermint Core的计算机。 Tendermint可以通过ABCI协议连接到区块链。左下方的Light Client节点可以通过RPC调用连接到任何Tendermint节点。 Cosmos的互操作性 区块链间通信(IBC) Cosmos网络具有内部区块链通信(IBC)协议,以允许区块链与其他区块链进行交互。区块链网络将通过IBC进行通信,以Cosmos网络为中心。区块链以集线器和辐条模型连接到Cosmos集线器。网络的分支称为区域,如下图所示。
Cosmos Hub是主要的区块链,它将连接构建在Cosmos网络之上的所有其他区块链。每个区域都是自己的区块链,它们共同创建了中心和分支模型以实现连接。 IBC的更多技术术语是“链中继”。链中继允许区块链读取和验证其他区块链中的事件。例如,链A上的智能合约想弄清楚链B上是否发生了事件。为此,链B上的智能合约需要获取链A的区块头,并验证其是否已达成共识并达到最终性。 本质上,Cosmos正在构建一个网络,在该网络中,很容易创建新的区块链,从一开始就可以通过链中继进行交互。如下图所示,每个区块链都将在Tendermint之上运行。
Cosmos Hub与在Tendermint之上运行的其他4个区块链进行交互。通过IBC协议的设计,他们可以轻松阅读彼此的陈述并采取行动。左上方的“链”是一个“peg zones”。 只要新的区块链遵循IBC协议,它就能加入网络。这包括公共和私有区块链。 Peg Zones 它将允许Cosmos网络连接到实时区块链网络,例如以太坊主网。能够连接到实时区块链是任何区块链可互操作网络的主要要求。它很复杂,但让我们尝试简单地解释一下它们的工作原理。 你必须具有共享的安全模型,其中Cosmos Peg区域验证程序也正在运行以太坊Mainnet节点。特殊的验证器批准两个链之间的交互。这是一个复杂的基础架构,还需要信任运行peg zones的团队。
实际的资产交换将需要一个以太坊主网智能合约来锁定Ether,这反过来又会在
peg zones 中创建表示“ Cosmos-Ether”的新代币,这些代币可以通过IBC在Cosmos网络周围发送。在Cosmos一侧,验证程序将锁定Atom,这将反过来创建一个ERC-20 Atom代币,该代币可在以太坊主网上发送。这将允许Cosmos和以太坊Mainnnet之间的资产完全互操作。
达到两条链之间的互操作性 任何可互操作的网络都需要至少两个可以交换消息和交易的区块链。 Ethermint是Cosmos针对与Cosmos Hub交互的第一条链提出的解决方案。 Ethermint是Cosmos团队计划在Cosmos Hub主网启动后启动的区块链。它于2018年第四季度发布。描述Ethermint的最简单方法是它是以太坊区块链,其中删除了工作量证明共识算法,而Tendermint共识引擎取代了它。这允许基于以太坊虚拟机的区块链轻松通过IBC与Cosmos网络进行交互。
Ethermint背后的天才是团队计划做的“硬汤匙”(hard spoon)。他们将在某个时间点快照所有以太坊账户,并使用该状态创建新的以太坊区域。这使他们能够引导以太坊开发人员的现有网络,并将为每个人提供新的代币和更快的交易速度。
选择Ethermint首先创建,而不是创建以太坊主网的Mainnet,因为它在技术上更易于构建。但是,对于区块链网络来说,具有peg zones至关重要。比特币和以太坊背后拥有巨大的势头,以至于忽略它们对于Cosmos或Polkadot来说都是非常冒险的举动。
The Cosmos Hub Cosmos Hub是主要的区块链,充当Cosmos Network中所有区块链的中央连接器。它是由Tendermint支持的多资产权益证明区块链。 Cosmos Hub的主要代币是Atom,Atom将用于对链进行抵押和管理。该中心将以100个验证器启动,并且每年都会增加。 Atom持有人可以是验证者或委托人。验证程序设置一个完整的节点,以保护网络并处理事务。委托人基于对哪些验证者值得信赖并能够运行节点的个人审查,将其原子委托给验证者。 验证者权益质押Atom,并在每个区块中获得Atom作为奖励。这些奖励将传递给委托人,并为操作Validator节点收取少量费用。 为了使验证者诚实,验证者恶意行为并将不正确的数据发布到区块链,会因丢失一些原子而受到经济上的处罚。这通常称为“削减”。这些游戏理论要求用于激励股权证明区块链中的良好行为。
代币还代表治理。一原子是对网络上任何提议(如软件升级)的一票表决权。 Cosmos的治理协议非常简单。委托人可以选择自己投票,也可以将投票权传递给委托人。验证者必须对每个提案进行投票,否则将被大幅削减。 基于Cosmos的开发人员 开发人员可以通过两种方式在Cosmos网络之上进行构建。构建使用IBC进行交互的新区块链,并在Cosmos区域中构建智能合约。为了构建区块链,他们创建了Cosmos SDK,以使开发人员可以轻松地在Cosmos网络上启动新的区块链。Cosmos SDK Cosmos团队正在发布“ Cosmos SDK”,它使开发人员可以使用简单的模块化方法在网络上设计自己的区块链。该SDK正在用于构建Cosmos Hub,因此在主网启动时,该SDK也将为开发人员准备好构建自己的区块链。 Cosmos Hub是基于Tendermint在Cosmos网络上运行的基础应用程序构建的,然后添加了用于权益质押,治理和IBC的模块。 这将使开发人员可以使用SDK,选择基本的区块链应用程序,添加治理或权益等模块,构建自己的模块以及轻松启动可互操作的自己的区块链。这是一个令人兴奋的机会,因为它将为开发人员创建一个新的去中心化平台,而不是仅推广以太坊代币模型。
该SDK用Golang编写,并支持未来语言的计划。但是第一年左右,网络上的区块链将不得不用Go编写。
在Cosmos上构建dApp Ethermint将是你可以在Cosmos网络上构建dApp的第一个实现。由于它是基于EVM的区块链,因此可以使用Solidity编写合约。该网络的交易速度也将提高,因为与以太坊主网的工作量证明共识相比,Tendermint共识每秒可以处理更多的交易。 Polkadot Polkadot网络是另一个正在与强大的技术团队一起解决区块链互操作性的项目。Polkadot由Parity开发,Parity是使用以Rust语言编写的同名以太坊客户端背后的同一团队。技术设计和协议 共识 他们还像Cosmos一样将共识架构与状态应用程序分离了。根据他们的白皮书,他们的共识引擎实际上受到Tendermint和HoneyBadgerBFT的启发。
Polkadot技术堆栈的细分。以共识为外层的对等网络,通过WebAssembly解释器连接到区块链状态机。 但是在Youtube视频中,他们提到计划将Aurand和Tendermint的混合共识机制用于PBFT。 Aurand允许随机选择的验证者在不需要2/3共识的情况下提议一个区块。混合设计允许更快地达成共识,但同时也带来了以下可能性:如果验证程序恶意行事,某些区块将必须被还原。
Tendermint PBFT和Aurand的混合设计。 Tendermint保证该图中每5个块具有最终性,而中间的四个块则无需2/3的共识即可快速处理。它比PBFT快,但是有一些折衷。现在可以发布坏块,需要还原它们。 Polkadots互操作性 Cosmos和Polkadot的互操作性策略也相似。 Polkadot网络具有中继链,该中继链是中央连接器,其功能类似于Cosmos Hub。它具有连接到中继链的区块链,他们将其称为平行链。
Cosmos 和平行链具有相同的目的。 Polkadot也将拥有连接到实时区块链的桥梁,类似于Cosmos的Peg Zones。平行链 平行链和Cosmos区域都使用链中继来实现区块链的互操作性。但是它们的实现方式确实有所不同。最大的区别在于他们计划如何连接链和共享安全性。使用Polkadot,可以合并和共享网络安全性。这意味着各个链可以利用集体安全性,而不必从头开始获得牵引力和信任。 通过绑定点以创建新的平行链,以及通过取消绑定点来删除无用的平行链来完成此操作。 Cosmos不需要绑定Atom来创建另一个链,而是使用治理来决定主Cosmos Hub是否应连接到Cosmos区域。
桥梁 桥和
Peg Zones是同一事物的两个名称。它们都允许连接到实时区块链网络,例如以太坊主网。预计Cosmos和Polkadot都将希望一开始就快速桥接到以太坊主网。 达到两条链之间的互操作性 如前所述,与Cosmos Hub互操作的第一条链将是Ethermint。 Polkadot也可能会创建一个,因为他们已经拥有以太坊奇偶客户端的丰富经验。 Polkadot网络 Polkadot网络是权益证明区块链,其本机代币为“Dots”。它提供了治理以及游戏理论上的激励,以鼓励代币持有人以诚实的方式行事。网络的中心枢纽是中继链,其功能类似于Cosmos Hub在Cosmos网络中的工作方式。Polkadot还大幅削减不良行为。 Polkadot上的验证者与Cosmos中的验证者具有相同的目的,而Polkadot中的提名者就像Cosmos中的委托者一样。 以下Polkadot白皮书中的图表显示了每一位股东之间如何互动。
The Polkadot Network的四位股东之间的互动。 验证者不会维护所有Parachains的完全同步的数据库,因为它将存储太多数据。因此,验证者将把存储和验证新的平行链区块的任务交给第三方(称为整理者)。 Collators的主要功能是产生有效的Parachain区块。他们必须维护一个完整的节点。他们将执行带有零知识证明的未密封区块,并将其提供给一个或多个验证者,这些验证者负责向中继链提出平行链区块。整理者和验证者将为这些任务收取交易费。 渔民(Fishermen)就像独立的赏金猎人一样,在寻求一笔大笔的报酬。可以预期,仅它们的存在将导致很少发生不当行为,因为验证者和收集者知道它们将被捕获和削减。渔民将发送验证者或收集者创建的任何非法活动的证据。
治理分为几层,主要一层是通过带有Dots的网络进行投票。他们还计划建立一个由12至24个帐户组成的理事会,对未引起利益相关者关注的提案进行投票。这是投票率偏低的备用解决方案。他们已承诺增加自适应仲裁偏差。他们为添加不同的投票指标打开了大门,例如将更多的权重分配给长期持有者或验证者,甚至是具有悠久历史为网络做出贡献的dApp团队。
在Polkadot上开发的开发商 基质(Substrate)它是在其上构建区块链的技术堆栈。这与Cosmos使用Cosmos SDK所做的事情非常相似。 Polkadot网络建立在Substrate之上,就像Cosmos Hub建立在Cosmos SDK之上一样。不必担心共识或联网,只需关注区块链应用即可。 基质是用Rust编写的,但是状态机的核心功能可以编译为WebAssembly。它可以使用已编译的Rust代码或通过WebAssembly解释器在本地运行,可以在下图中看到。
如果本机客户端节点是最新的,则它可以本机运行WebAssembly代码,但如果不是,则必须使用链上WebAssembly解释器,这会比较慢。 在Polkadot上构建dApp 可以在支持智能合约的平行链之上构建dApp。这类似于Cosmos,其中Polkadot中继链和Cosmos Hub都没有智能合约支持,但是它们的连接链却可以。 比较Cosmos 和Polkadot 让我们看一下每个网络的主要组成部分,以及它们如何相互堆叠。可以在其中比较差异并自己决定哪个网络可能更成功!共识协议 他们都使用Tendermint达成PBFT共识,尽管Polkadot承诺与Aurand使用混合共识。混合方法将加快共识,但可能会导致块恢复。仍然需要在实时区块链网络上对这两种方法进行实战测试。两种协议都比以太坊或比特币工作量证明协议快得多。 Polkadot在他们的网站上还提到他们计划使用“乐观的BFT授权证明”。 Web3基金会最近表示:“ Polkadot被设想为完全开放和公开的,不需要任何特殊的组织或可信赖的机构来维护它。”从白皮书中提出的总体设计Polkadot来看,很明显,Dots的股权证明将是达成共识的主要因素。如果使用授权证明,则它可能会扮演次要角色。
代币和权益证明设计 它们都是具有用于治理和权益质押的代币。每个服务器都有验证器来保护网络,然后有将代币绑定到验证器的委托人/提名人。 Polkadot增加了Collators来帮助建立Parachain,Fisherman则密切注意任何不良行为者,他们都在削减不良行为者,并且削减参数很可能在网络启动时进行调整和测试。 Polkadots股权证明设计更先进,但这也使它更加复杂。 Cosmos的优势在于,它们将首先与Mainnet脱颖而出,其简单的设计将使利益相关者更容易组织和创建稳定的去中心化网络。 Polkadots的优势在于,四个利益相关者可以使网络更加分散。很难确定哪种策略会更好,但是时间会证明一切。 治理 Cosmos在治理方面的协议较为简单,因为它仅基于验证者,委托者和书面章程。Polkadot承诺通过增加适应性的群体偏见来在治理方面做更多的事情,并且有一个验证人理事会,他们对利益相关者较少的提案进行投票。 权益证明治理在很大程度上没有在实时区块链中进行过测试,可以期望两个团队都提出从一开始就调整治理协议的提案。两种设计都非常简单,可以通过小的迭代和改进就自然地向更强大的去中心化治理系统发展。最好从简单开始,增加复杂性,而不是一开始就强加一堆规则。
网络似乎也很分散,以防止一些验证程序控制网络。希望这将使他们能够避免EOS主网启动时遇到的一些问题,因为它的21个区块生产者的门槛较低,这些生产者被指控过于集中。
安全 Polkadot允许在Parachain和中继链之间共享池的安全性,Cosmos已将其留给区域来保护自己的网络。这些意味着要开始一个新的平行链,需要积累大量的Dots,并进行权益质押,以便将平行链连接到Polkadot网络上。因此,每个平行链的安全性都植根于点本身,从而为整个网络创建了共享的安全性模型。 Cosmos计划允许区域管理他们自己的安全模型,这被称为主权区域。 Cosmos Hub将使用管理来决定允许哪些区域连接到它。允许其他集线器和区域选择自己的安全性方法,这为网络提供了很大的灵活性。
无论如何,都只能与信任的另一个区域或集线器进行IBC代币转移。区域可能正在秘密计划将来审查交易,因此需要查看区域的历史并确定它们是否真正去中心化和可信赖。但是,对于任何区块链来说都是如此,因为不想用比特币换成从未听说过的另一个区块链代币。
重要的是要注意在进行IBC传输时,必须信任与之交换代币的区域以及任何中继器。如果在区域B上收到了一个代币,该起源于区域A但经过了集线器(区域A-Cosmos HUB-区域B),那么需要信任所有三个区块链(不仅是区域A)。 今天,当在区块链之间交易代币相似时,通常要做的事情是,需要信任用于交易加密货币的中心化交易所。必须同时信任区块链A和B,以及作为受信任的第三方的集中交换。
借助Cosmos的主权区,每个连接的区域都必须自行创建安全的去中心化网络。因此,如果Cosmos Hub具有5个完全正常工作的区域,则可能有100个Cosmos验证器和5 x 100区域验证器。与Polkadot相比,这是一种去中心化的模型,如果可行,它应该可以很好地工作。 可以想象,有100个Polkadot验证器可以保护中继链和5个平行链,而Cosmos网络则需要100个集线器验证器和500个区域验证器。这表明Polkadots模型使创建新的平行链更加容易,但这也意味着权力集中在点所有权上。 Cosmos允许使用更分散的安全模型,但是将很难实施。 但是,Cosmos表示,他们还计划在发布后不久就支持共享安全模型。一旦有了这些,它就为开发人员提供了更大的灵活性,因为在Cosmos上,他们可以共享植根于Atoms的安全性,或者创建自己的代币和安全性。他们要拥有两种模型的权衡是,主权区通过治理被添加到网络中,这为恶意区域连接提供了可能性,尽管这不太可能发生。
Polkadot的独特功能是无需使用分叉即可升级运行时的功能。他们通过在链上实际存储WebAssembly运行时来做到这一点。尚未更新其客户端本地版本的节点将被强制使用此运行时。这样就无需为验证程序进行链外协调以更新其软件,从而消除了链裂的可能性,从而提高了安全性。
速度和可扩展性 两种共识协议均允许每秒进行1000笔交易。这取决于有多少个节点以及参数是什么。对于每个添加的平行链或区域,这将增加可以完成的交易量,两个网络的每秒轻松达到1000笔交易。实际的瓶颈将出现在每个区域或Parachain中运行的状态机应用程序中。 互通性 每个网络都使用链中继器连接到中央集线器。他们俩都使用peg zones/桥连接到以太坊主网,并且他们都希望很快建立这种连接。它们都将使在各自网络上轻松运行EVM区域/ EVM并行链变得容易。在主网稳定发布后,Cosmos将启动Ethermint,而Polkadot可能会做类似的事情。 开发者 对于开发平台,Cosmos-SDK和Polkadots基板是相同的想法。它们使开发人员可以轻松地在网络上创建自己的区块链。两个团队都致力于与开发人员友好,并尝试打开一个新的开发平台。就像以太坊使用智能合约和代币一样。 每个平台上开发的不同之处在于Polkadots对WebAssembly和Rust的承诺以及Cosmos对Golang的承诺。
Polkadot通过支持WebAssembly展望未来。 WebAssembly得到了Google,Apple,Microsoft和Mozilla的支持,并且很有可能在未来十年中得到广泛使用。Rust也一直在努力成为编译成WebAssembly的主要语言之一。从5年的前景来看,Polkadot似乎正在采取正确的措施来长期吸引开发商。
但是,正如我们在以太坊中所看到的那样,有时首先进入市场更为重要。还有其他智能合约区块链可以用其他语言编写智能合约,但以太坊几乎负责所有智能合约活动,因为它们围绕Solidity和EVM建立了生态系统,并早日吸引了开发人员。
在Cosmos上进行开发的主要方式将是通过Cosmos-SDK在Golang中进行,他们还拥有Lotion-JS,这是一个Javascript实现,可以在Tendermint之上创建区块链。但是,该网站声明Lotion-JS代码尚未经过安全审核,如果要确保价值,请使用Cosmos-SDK。
目前,Cosmos尚无支持WebAssembly的工作。但是,Golang将添加对WebAssembly的支持。他们已经取得了良好的进展。最后,与Rust相比,Golang也是一种更简单的学习语言,并且全球有更多的Golang开发人员。
总结 现在很难说哪个网络会更成功。但是可以肯定地说,任何吸引更多开发人员的人都会成为增长最快并占据最大市场份额的人。 作为开发人员,如果认为Cosmos将会更加成功,那么将希望开始学习Golang;如果相信Polkadot,则想开始学习Rust和WebAssembly。还可以使用可编译为WebAssembly的任何其他语言(例如C或C ++)编写并行链。
虽然一个人最终会比另一个人大,但有趣的是,有可能存在一个既存在又相互连接的世界。例如,如果两个网络都在以太坊主网上创建了peg zones/桥,则可能将Dots的ERC20副本换成Atoms的ERC20副本。这将允许两个网络完全互操作。这可能会创建一个庞大的,相互缠绕的区块链网络,其中以太坊上的所有代币,所有平行链以及所有区域都可以互操作。这也将允许以太坊链被连接。
如你我所见,创建Polkadot和Cosmos的网络影响是天文数字。跟随每个网络的发展,并见证它们两个的成功非常值得。
原文链接:Blockchain Interoperability: Cosmos vs. Polkadot
—-
编译者/作者:洁sir
玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。
|