当我们在谈互操作性的时候我们在聊什么

一、简介

最近,很多人都在讨论Cosmos的上线,以及它对于以太坊生态的威胁。本文会深入讨论Cosmos和Polkadot的技术细节,但是也会首先讲述很多基础的知识(用图片作为辅助),以便于大家可以理解这些技术协议的含义。

首先,我们需要知道为什么互操作性很重要。在现有的互联网体系中,我们可以通过API(特定应用程序接口)来获取和修正大量数据。但是通过区块链技术,不同链上的数据是孤立的。那么,我们所说的跨链交互是什么呢?

1. 可以在不同区块链之间,无需第三方信任地去转移资产。

2. 可以互相交互的跨链智能合约。

3. 特定的区块链架构,同时可以用于其他的区块链。

研究任何特定跨链技术的细节之前,我想花一点时间和大家讲述下最基本的分布式系统,从而大家可以更容易地理解接下来的概念。大家需要明白,区块链技术只是分布在全球的机器组,它们可以对所得数据达成共识,确保其真实性。

分布式系统

顾名思义,分布式系统是很多计算机共同运作去达成某项目标,这个目标可以是为全球大量用户输出同样的内容(例如你的推特新闻会一直给你推送最新消息)。为了达成这个目标,他们必须克服以下的问题:

1. 时机。每个计算机/系统都会按照它们自己的时间和步调去执行同样的任务。

2. 顺序。由于时间会在一段时间后“移动”,因此解决事件发生的内容和时间仍然是非常困难。这就让排序成为了非常复杂的问题,因为每个系统都有自己发生事件和时间的账号。

3. 错误率。系统间的协作会因为整个系统瘫痪而失败,这会导致系统间收发信息产生错误,或者会有人选择作恶(拜占庭事件)。

对人类来说,解决最多问题的方法是通过很好的沟通。然而通过计算机来说,这会显得更加复杂,因为计算机间的沟通有异步或者同步的。

这是什么意思呢?

  • 同步 =每个系统都分配的一定时间去进行沟通,并且它们会按顺序进行。可以联想下人们之间的沟通场景。
  • 异步 =每个系统都可以在任何时候进行沟通,而且不会对它们何时进行沟通进行假设。可以联想下我们在使用Slack进行聊天。

总而言之,区块链系统需要拥有安全性(同步输出协议)以及活跃性(区块链需要持续增长和运转)。如果你的区块链有安全性,但是不再运行,那么它就会停止出块。如果这个区块链只是运行,但是不安全,那么就会产生很多分叉,而且你无法知道到底哪个是真正的那条链,除非有特点的规则(例如,比特币的最长链原则)!

二、介绍实用型拜占庭容错机制(PBFT)

实用型拜占庭容错机制是由 Barbara Liskov和Miguel Castro 于1999年提出的方法。例如Cosmos和Polkadot这些权益证明的区块链系统,他们在设计上也引用了实用型拜占庭容错机制,因此很值得去研究它是什么,以及它是如何运作的。

制图:Alex 达令智库

1.如果想要形成带有交易数据的区块,有一方就需要听到大量数据在网络中广播。我们把这样的个体称为申请人,因为他们想要产出这个区块。

2.一旦区块完成,每个人都可以参与其中,并且预投票去确认他们已经听到了同样的区块广播。很重要地是,在预投票阶段,区块也可能是不正确/造假的,因为大家只是想要达成共识,他们已经收到了同样的数据/区块。

3.一旦超过2/3的参与者达成共识,他们收到了同个区块,那么就到了预提交阶段。预提交投票会决定这是否是有效的区块,并且其中没有任何欺诈行为。

4.如果超过2/3的参与者投票认为这个区块有效且正确,那么我们可以成功地将这个区块提交到链上。

5.于是,区块高度就会增加,步骤1-5会重复进行。

根据我们上面所说的内容,我们可以看出,接下来的步骤可以确保区块的顺序是可知的(区块提交成功可以增加区块高度),每个计算机可以通过计算得到自己的结论,然后网络进行沟通可以得到最终的时机(timing),并且可以防止错误(failure)(欺诈节点申请区块或者不能投票的节点)。

你好 Cosmos!

Cosmos是2016年由Jae Kwon和Ethan Buchman创立的,并且通过通证发行融资超过1700万美金。Cosmos Hub是其自有的区块链体系,可以连接不同的区块链系统,因此可以完成跨链之间的通信。任何工作量证明的区块链系统,例如比特币、以太坊、ZCash或者是其他特定的区块链,都可以通过内部区块链通信架构连接到桥梁区域。

深入研究技术机构的细节,Cosmos Hub使用了由Jae Kwon 在2014年开发的Tendermint 作为其共识算法(同时还有实用性拜占庭容错)。这意味着每个投票环节(投票前以及提交前)对每个人来说都有固定的时间,然后才会转移到下个阶段。当某个区块完成的时候,这个过程就不会退回。因为只要区块中的转账完成,这就意味着你能够有即时移动以及物联网支付。由于无需确认,因此这个过程也被称为“快速结算”。

制图:Alex 达令智库

用户持有ATOM通证可以成为网络中的验证者,或者把ATOM通证抵押给验证者。Cosmos区块链网络开始地时候会有100个验证者,并且计划在未来通过治理系数来提高上线。只有在网络中拥有相应权利的人才能够参与到网络的安全性治理。

为了减少理论知识,我会列出从ETH转为BTC的步骤,这是大家都非常喜欢的案例。

制图:Alex 达令智库

1.可信的中介区域会在以太坊网络上创建,然后会有相应的验证者负责将信息从以太坊桥梁区域中继到Cosmos Hub。

2. 由于以太坊和比特币都是或然性的(有可能现在的主链并不是正确的),因此验证者需要等待一定的确认,从而确保转账真正地完成。

3. 一旦这些验证者确认了交易完成,他们就会从自己的区域发起交易到收到Ether的Cosmos Hub,这个hub会创建一种混合Cosmos Ether结合的通证形式,并且持有住。现在,任何其他的Cosmos Zone现在都会知道系统中存在这个全新的混合Cosmos Ether通证。

4.假设兑换比例之前就确定好了,混合Cosmos Ether通证可以和混合Cosmos Bitcoin进行兑换。然后Cosmos Bitcoin会发送至可信的中介比特币区域,再发送到实际的比特币主链地址。

制图:Alex 达令智库

在这个模型中,存在几个假设:

  • Cosmos Hub需要确保混合Cosmos资产能够正确地递增和递减。虽然有可能有下降趋势,Cosmos团队已经设计了相关的系统,其中任何人都可以创建自己的hub。最终,Cosmos会成为Hub和区域组成的网络,并且由不同团队运营。
  • 每个区域都需要是可信的,而且他们会中继传递关于发送/收取资产的相关信息。发送者也需要相信验证者会正确地中继他们的信息,并且不会盗取他们的资产。

走进波卡

波卡是由Gavin Wood创立的,他是以太坊联合创始人和前CTO,并且也是Web3基金会的总裁。2017年,波卡通过销售原生通证DOT,通过众筹融资了1.45亿美金。如果Cosmos是使用了hub和zone方式的开发网络,波卡是单独的“中继链”,并且会给很多加入其中的区块链系统,即“平行链s” (这是平行链的简称)提供大量好处。

波卡的主要创新点如下:

  • 每个平行链都会从中继链的验证者模式中获得安全性保证。一旦任何区块链通过平行链的方式连接到波卡网络,它就会获得和整个波卡网络一样级别的安全性。在Cosmos系统中,每个新的链都需要自己的验证者,而且需要确保自身的安全性。
  • 平行链可以使用信任付费的内部区块链通信方式和其他平行链进行交互。想要进行跨境通信的用户无需信任所有他们传递信息的链,而只需整个波卡网络的安全性保证。而且,这和Cosmos的运作方式有区别,其中用户需要通过单独的验证者去信任来源的区块链,路由的区块链以及目标区块链。

波卡的共识机制由两部分组成:GRANDPA 和BABE。GRANDPA是完成最终确定性的工具,它是根据GHOST分叉选择规则得出的概念(类似以太坊Casper协议)。这种工具的引进可以让部分的区块链完成最终确定,而且可证无法恢复。将最终确定性工具和区块生产分开,这可以让最终确定性和链上新区块的产生通过不同的流程进行。这意味着实际区块生产可以扩容,并且和带有实用性拜占庭容错机制的Cosmos Tendermint算法不同。

制图:Alex 达令智库

在波卡生态系统中,包含如下部分:

  • 校对者  – 为平行链生产区块,并且把信息传递给验证者进行校验。
  • 提名者  – 将资金分配给验证者,然后参与到权益机制。
  • 验证者  – 需要很高的绑定机制,因为他们负责密封中继链的新区块。

他们的主要责任包含:

验证新区块。

  • 通过参与GRANDPA,去确认中继链。
  • 通过确保产生交易的正确性以及跨链信息已经处理,从而
  • 可以验证平行链区块。
  • 钓鱼者 – 通过观察网络其他节点,寻找欺诈行为的赏金猎人。

波卡可以认为是一个相互连接的系统,只要它想通过桥梁和别的区块链进行通信,那么就可以直接和它们进行连接。所有的平行链以及中继链都会形成整体通用的系统。平行链可以和定制的逻辑进行组合,在接收和发布信息给其他链的时候,它负责处理自己的状态转换。平行链之间也可以进行交互,并不像Cosmos那样,任何信息都需要通过Hub。

波卡技术的核心设计构想是非常不错的。这个构想基于一个事实,那就是平行链是被动从桥梁合约中读取信息,而不是依赖于桥梁合约把信息传递给其他的平行链,并且这些平行链之间并没有区别。这意味着波卡的内部区块链通信架构是完全的去信任化,因为平行链是以中级链为核心,而不是他们正在验证的平行链。并且,验证者会不时地以及随机地被安排给其他的平行链。

我们来举个例子,这样也许会更加容易理解,如果你想从把某个平行链上的货币兑换成另外一个链上的资产,需要怎么做呢?试想下ETH兑换成BTC的案例。

以太坊平行链的校对者会把区块头部转移给他们平行链的验证者。这些验证者会签署并且在以太坊桥梁智能合约中的相关交易中发布这些信息,并且这是通过可以和平行链区域进行认可以及沟通的方式。任何发出的ETH可以通过波卡验证者持有,并且也可以通过使用DOT通证作为无效交易的担保物。以太坊平行链会和比特币平行链进行通信,然后通过特定平行链的验证者把BTC转移到指定地址。所有的细节设计还需要最终确定,但是根据这个跨链通信的理论,可以保证其中是完全无需确认的。

我们需要注意到,波卡的平行链机制会通过无需认可的链上拍卖方式去分配位置。这些拍卖会锁定DOT通证一段时间,从而保证这些平行链会和波卡网络进行连接。这时候,治理可以接入,并且可以解决突发情况,例如平行链有很严重的错误,或者有欺诈行为。波卡会通过链上治理的方式进行,因为它坚信这是最好的方式。

正如Gavin Wood在文章中说道,“我坚信如果任何区块链不引进链上治理机制,包括可行的更新机制,那么这无疑会毁了它们自己。我并不相信“链下治理过程”,“链上信令”以及“粗略的共识机制”可以让区块链生态中真正的持有者去有效地掌握并且推动其长期的成功。我也相信,这根本不可能去改变治理的情况。

路线图

制图:Alex 达令智库

关于互操作性,其中很多问题看似已经解决了,但是执行层面还是很难实现。Cosmos在2019年3月正式启动,但是目前只完成了Cosmos Hub的启动和运行。他们接下来的计划是完成内部区块链通信框架的运行。波卡会在2019年底运行,但是仅有中继链会上线。

总地来说,我对于Cosmos和波卡的启动非常兴奋,而且 最让人感兴趣地是开发者的应用以及各种区块链之间的竞争,他们会如何去运行。 满足特定应用需求的区块链在目前来看,是非常重要的事情,因为不仅是底层架构还没有完成,开发者也需要背后的资源和人才,并且获得足够的安全性。

那么这会是权衡吗?现在还很难说。尽管以太坊由于想要打造高度安全地无需许可的创新机制,它的发展速度低于路线图的预期,但是以太坊的链下治理却发展地很好。

这个问题从反面来看, 很多加密资产网络会利用其它链的安全性, 例如以太坊,然后等到他们能够通过自己的社区保证安全性后,再过渡到他们自己的链上。MarkerDAO是很好的例子,他们有足够的资源去打造自己的区块链,并且成为波卡平行链的一部分。如果由于某些原因,它不能称为平行链的一部分,那么它可以在Cosmos上搭建一个桥梁区域,然后共用其中的安全性。波卡正在计划为那些虽然无法提供共用安全性,但是仍需要信息传递的区块链体系提供桥梁区域。

作者:Kerman Kohli,8x Protocol创始人。

译者:Alex

未经允许,禁止转载。如需阅读原文,请搜索公众号:DalingRe-DR,关注公众号,点击本文底部链接即可。