您当前的位置:主页 > 区块链 >

区块链互操作性项目Cosmos和Polkadot的区别介绍

2019-06-20 10:54 来源:互联网 编辑:运营003
摘要: 
平行链是 Polkadot 网络中的区块链。这些链有自己的状态机、自己的规则和自己的区块生产者,即核验人(collators)。

Cosmos 和 Polkadot 都是关注区块链互操作性的项目,关于二者之间的差别已经有过很多讨论。如果你还不熟悉这两个项目,Linda Xie 发过一串推特介绍过这两个项目,可以作为很好的入门材料。

虽然已经有很多帖子分析过这两个项目的区别了,但是我认为其中大部分都存在一定的偏向性或者不够详细。通过这篇帖子,我会从架构权衡到哲学等方面更深入地探讨这两个项目。

为什么要构建一条新的区块链

为什么一些项目要选择从头开始构建一条专门承载应用程序的区块链,而不是以智能合约的形式在现有的区块链上编写应用程序呢?主要有以下两点原因。

首先,现有的智能合约平台不一定能满足应用程序所需的灵活性和可定制性。举例来说,如果你想搭建的应用程序需要自定义的哈希函数,那么把它编写到以太坊上会消耗很多 gas ,因为这个函数每调用一次都需要在以太坊虚拟机内执行一次。一种解决方案是提议将这个函数作为预编译合约添加至以太坊协议内。但是,除非这个函数也广泛应用于其它应用程序,否则这项提议大概率是不会通过的。从头开始编写一条新的区块链,你就可以自由灵活地设计区块链的核心逻辑,以此满足你的应用程序的需求。

其次是自治问题。在智能合约平台上构建的应用程序必须接受平台的治理并遵守其规则,从区块时间和 gas 定价之类影响用户体验的规则,到回滚之类改变状态的决策等等。

但相应的,具有自治能力的链失去了与其它应用程序进行无缝通信的能力,因为应用程序都是搭建在使用不同状态机的区块链上。Cosmos 和 Polkadot 都致力于解决这个问题——Cosmos 采用的是 Hub-and-Zone(中心-分区) 模型,Polkadot 则采用的是Relay Chain/Parachain(中继链/平行链)模型。

读者需要对这两个项目有一定的了解,本文侧重于梳理二者的不同点。

1.局部安全 vs 全局安全

Cosmos 和 Polkadot 采用的安全模型差别极大。简单来说,Polkadot 的工作流程如下:

区块链互操作性项目Cosmos和Polkadot的区别介绍

平行链是 Polkadot 网络中的区块链。这些链有自己的状态机、自己的规则和自己的区块生产者,即核验人(collators)。每条平行链本质上都是一个独立的状态机,而且可以使用任何类型的特殊功能、共识算法、交易手续费结构等等。在 Polkadot 网络中,所有平行链都有同一条母链,叫做中继链,里面包含了由所有平行链组成的 “全局状态”。中继链拥有自己的共识算法,叫做 GRANDPA 共识(祖父共识),可以迅速将平行链上的区块确定下来。通过这个模型,Polkadot 的平行链实现了 “安全性共享”——如果中继链上有 1000 名验证者,具有极高的安全性,凡是连接到这条中继链的平行链都会受益。这样一来,平行链即能拥有自己的状态机并自定义规则,又能与成百上千条平行链一起共享母链的安全性。

这种模型的罩门在于由中继链上的验证者来验证平行链上的状态改变。例如,验证者可能会出于某种原因一直拒绝某条链上的核验人提议的区块,而且这条中继链上的区块永远无法被添加进全局状态。为了尽量避免这种情况,Polkadot 对验证者进行混洗,让他们随机验证平行链,降低同一位验证者始终验证同一条平行链的概率。Polkadot 还另设有一类被称为 Fishermen (渔夫)的验证者,他们会不断查验验证者是否存在恶意行为。

Cosmos 采用了完全不同的网络架构。

区块链互操作性项目Cosmos和Polkadot的区别介绍

在 Cosmos 网络中,每条链都是独立运行的,并设有自己的安全机制,而非像 Polkadot 那样采用 局部/全局 的安全性模型。每条链都有自己的共识机制,而且由单独的验证者来负责保护这条链的安全性。Cosmos 网络使用中心-分区模型来实现互操作性,每个分区(独立的链)都可以通过中心(同样是一条独立的链)向其它分区 “发送代币”。这个协议被称为 IBC (跨链通信),是链与链之间通过发送消息实现代币转账的协议。IBC 协议尚在开发之中,最开始先支持代币转账,最终会支持各类消息的跨链传递。

相比于 Polkadot 的架构而言,Cosmos 的架构最大的不同之处在于,每个分区的状态仅由各自的验证者保护。一个分区想要获得很强的安全性,就需要建立自己的验证者集,这对于小型应用程序来说会比较困难。不过,对于那些想要获得更多控制权的应用程序来说,这是个很大的亮点。例如,币安最开始就是用自己的节点来充当币安链的验证者,来促进去中心化交易所的持续运行。这样一来,币安在测试币安链并增加新功能的时候就有了充分的控制权。我觉得币安不太可能放弃决定哪些交易可以上链的权力,但若要在以太坊或 Polkadot 平台上开发,就不能不放弃这样的权力。正因如此,我认为 Telegram、Facebook 和 Kakao 这类公司会选择构建自己的区块链并掌握其控制权,未来也不太可能与别的链通信。

2. 治理和参与

[ 编辑: 运营BX01 ]

中国金融领域第一媒体

更多服务
友情链接

京ICP备11011451号-1

举报热线:(010)12377

举报邮箱:xinhua_ljzjr#ljzjr.cn(#替换@)

合作QQ:1447260813

中国金融时报网 版权所有 Copyright © 2010 - 2018 ljzjr.cn All Rights Reserved.