Layer2 | 链间通讯 Interoperation

跨链通讯是一个跨链的技术,它和 Plasma 不同,两条链之间没有特别强的主次关系,其子链和侧链仍然有权利本身产生资产,本身运行,而后经过某种协议和主链或者其余链进行跨链交互,你们进行数据互通。安全

它严格来讲不是 Layer 1 的 Layer 2,可是它对整个系统 Scability 的提高是颇有好处的。接下来我简单介绍两个项目,方便你们来理解。架构

Cosmos

Cosmos 的系统架构如图所示,它中间有一个 Cosmos Hub,周围的叫作 Zone,能够认为中间是一个交换链,周围其余是子链。Zone 是用 Tendermint 来作的,采用的是 BFT 共识以及区块链框架,它也知足 Instant Finality(即时终结性),若是系统是少于三分之一的做恶节点,它必定是正确的。它引入了链间通信协议( Inter-Blockchain Communication ,简称 IBC) ,这个是相似 Plasma 和 State Channel 的一个协议。框架


它的简单流程以下,A、B链都是 Zone。区块链

  1. 用户在 A 链上锁了 10 个币
  2. A 链10 个币被锁住的密码学证实被提交到了 B 链上
  3. 若是被 2/3 的验证者验证经过,则它是有效的。
  4. B 链上将会产生 10个币

而之因此须要 Cosmos Hub 的缘由是它可以把 Zone 相互创建的IBC 的数量从 N^2 变成 N,不过这个也是有前提的,即全部的 Zone 必须是 Instant Finality,你给我一个证据,我就认为你的币就锁在那里,拿不出来了,它不能是几率确认的,不能这里生成,那里又推翻了。

可是因为比特币和以太坊是几率确认的链,若是这样 Cosmos 就链接不到它们上面了,因此它作一个Peg Zone,这是一个代理链,给几率确认的链作了一个代理,这样 Cosmos 就能和它们交互了。spa

Polkadot

相对 Cosmos 来讲 ,Polkadot 是很是完善的项目,但它的架构和 Cosmos 几乎是一致的。它的中间叫作 Relay Chain ,是 Cosmos 中 Hub 的角色,周围的 Para Chain 是 Cosmos 中 Zone 的角色。

Para Chain 用的是 Parity Substrate 这么一个框架,这个链是基于 BFT 的,因此也是 Instant Finality,而这样一样会遇到链接几率确认的区块链的问题,因此它提了一个 Bridge Chain 这样的概念,这个和 Cosmos 的 Peg Zone 是同样的。

可是 Polkadot 的 Parity Substrate 相对 Cosmos 的 Tendermint 是作的是比较完善的。

Polkadot 的创始人用 Rust 实现的 VM 以及 BFT 作了一个升级,增长了随机选举验证节点的方式加速了共识协议,因此它的速度会很是快,并且它部署智能合约以及升级节点的能力也很强。并且 Substrate 上引入了相对其余链更完善的治理机制。.net

安全机制

如今咱们重点来讲说它的安全机制,这个是和 Cosmos 区别很是大的。它提了一个概念叫作共享安全池( Shared Pool Security ),在 Polkadot 里面,它的记帐节点和出块节点是混在一块儿的。

其中有几个角色, Collator、Validator、Fisherman 、高阶Validator、 Nominator。其中 Collator 是作区块的打包和收集和交易的验证,可是它没有权利把这个区块给确认,即他不能把区块写到区块链里面,而把区块写到区块链里是 Validator 来作的。

Collator 是针对每一条链的,每条 Para Chain 都有一组有相对应的 Collator,可是 Validator 是整个全网公用,是随机选出来的。

假设 PareChain 有一组 Collator 生成了一个区块,这个区块由哪些 Validator来验证咱们并不清楚,它是随机选的,而选出的 Validator 将会投票看区块是否合法,只有合法才能写到这个子链的区块链里面。

而 Fisher Man 是用来监督 Validator的,那些经得起考验的 Validator,能够变成一个更高阶的 Validator,高阶的 Validator 能够判断这个 Fisherman 的监督是正确仍是错误,比方说 Fisherman 举报这个 Validator 做恶,以后高阶 Validator 会判断它是否是真的做恶了。

高阶 Validator 的选举须要知足两个要求,一方面 Fisher Man 没有举报太低阶 Validator ,另一方面 Nominator 会来提名谁能来当高阶的 Validator,这是一个互相制衡的结果。可是它是怎么制衡,它最新的设计里面尚未公开,它只是大体实现了这样的一个点。

经过以上,我大体介绍了一些 Layer 2 团队和项目,虽然有的严格意义上来讲并不能称做是 Layer 2,可是我也一并列了出来,方便你们理解。

目前的状况就是,公链的创新和热度已经逐渐趋于平缓,各类 Layer 2 的新团队在不断地涌现,我以为这也是一个正确的趋势,Layer 1 原本就不需作这么多事情,作好去中心化和安全就能够了。这也是 Nervos 在作的事情,咱们认为一个好的 Layer 1 只须要作好 Key State 的存储, Key Computation 以及对 Layer 2 友好就够了。

像 Turebit 只须要链上的一步运算就可以证实全部运算是正确仍是错误,和咱们认为 Layer 1 须要作好的 Key Computation 是很是一致的,而 State Channel 和 Plasma 中所强调的 State 也和咱们的方案很契合。

但愿系列文章对你有所启发。设计

 

延伸阅读:代理

Layer2 | 区块链发展新思潮
Layer2 | 状态通道 State Channel 
Layer2 | Plasma 框架 
Layer2 | 链下计算 
Layer2 | 链间通讯 blog

相关文章
相关标签/搜索