免责声明:本博客仅代表个人观点。内容为作者喜欢的项目。早在 2013 年 12 月,我就写了许多关于以太坊项目的博文,尽管当时它鲜为人知,经常被误解,但发展势头不错。其他我曾报道过的项目,虽然项目起点不错,也有一些顶尖人才参与其中,但大多没有实现目标。本人不代表雇主,投资人或合作伙伴的观点。最后,所有内容不可作为投资建议。现在回归正题……
简介
在之前写的文章中,我曾强调初创公司和成熟企业都应该对相关的链和协议保持警惕和好奇,因为我们这个垂直行业正以指数速度发生着碎片化。2017 年,作为 Web 服务架构的原型,AMP 标准获得了广泛的认可。相比之下,Dapp 的标准化则仍然有着漫长的路程。
对跨链通信的需求从很早就有了,2015 年年中最初的 BTC Relay 项目就是其最佳例证。如果你对双向链和链之间的价值转移感兴趣,那么本文不容错过。异构多链解决方案不仅仅是“链间通信”,Vitalik 的以太坊白皮书所描述的也不只是一个“更好的比特币”。
让我们一起深入探讨一下完全去中心化的链“联盟”,允许开放和封闭的网络无需建立信任关系即可彼此连接:这样做不仅是为了交换价值,还可以用于处理数据。设想一下那些杀手级的应用程序,它们不仅具备可扩展性和隐私性这样难能可贵的优势,还可以从链间的“交易能力”中获益,这种“交易能力”基于共有的安全性,而且无需建立信任关系。
从另一个方面讲……
如果你仍然不理解为什么这样的解决方案是必须的,可能是因为你还没有遇到区块链开发的障碍。最近的“ICO”和白皮书比比皆是,但无论是开个走廊会议还是在实际构建 Web 3 解决方案公司的办公室里,区块链 maximalism 早已消失。我认为,由于空前爆发的价格投机,许多人希望“一切”都能建立在一个单一平台上。事实上,任何认真构建 Dapp 的人都会告诉你,这样一个包罗万象的平台根本不存在。
Polkadot 简介
Polkadot 是一个富有原创性的公开协议,并承诺源代码自由开放。它是一个补充性的协议,允许不同的区块链走出自己的领域,进行无缝交互。
早在去年 11 月,Polkadot 团队悄无声息地发布了他们的白皮书,其中描述了一种机制。这一机制不仅可以让现有或将来的链(称为“平行链”)之间持续传递价值,而且可以共享数据。在应用场景上,我们可以设想最终用户使用 Zcash 匿名地参与以基于太坊智能合约的代币销售,或者鼓励开发出更适合于物联网应用的全新状态机。例如,这种状态机会对交易的排序提供较弱的保证,却提升交易的吞吐量。然后,这些新链就可以在以太坊公共链上结算余额了。
我认为 Polkadot 文章之所以在发布时没有明显被人们关注,只是因为缺乏市场营销(Parity Technologies 不参与 Twitter 或 Reddit 的“游戏”众所周知),以及来自关于双向链的 bitcoin-heavy 对话那震耳欲聋的喧声。缺乏匹配的代币销售最近却有必要去吸引各种关注。
Polkadot 如何实现其目标?正如 Peter Czaban 所说,“这是一个最小的全球共识层,一种面向未来的持续方式,能够让所有的自主代理者,使用任意一种状态机所执行的规则进行协作”。但是对于我们这种只懂大白话的人又该如何理解呢?它所想到的是一个简单的解决方案,即通过允许多个链共享相同的安全层进行扩展,而不必自行挖掘资源(对最简单链扩展解决方案的主要挑战),也不必诉诸于合并挖掘。
换言之,Polkadot 是一种将数百种不同技术连接起来的创新方式。用“区块链互联网”来描述它,也许可以但稍显粗糙。
更好的说法来自 Sunny Aggarwal,“可装卸的共识网络”——每个平行链作为区块链和其他方案共识机制集合体的成员之一,放弃自身的最终决定权,以换取相互交流的功能。
Polkadot 不是什么
尽管 Polkadot 源于以太坊的主要开发者 Gavin Wood,但它并不是另一个图灵完备的区块链。它不运行代码,也不是好的支付手段。
同时,它也不是特别新的概念,尽管目前实现出来是独一无二的。Pokadot 能取得如此成就,要归功于 2014 年 Max Kaye 所提出的 Chain Fibers。
但它还没有完全实现。其中一些部分在 PoC 阶段,但大部分在项目筹款后几月,甚至几年后都不会发布,这就有足够的时间来吸收意见和建议。
这当然不是“魔法”。仔细想想如何将数据从 A 转移到 B,就更容易理解,并最终掌握了。
最后,它不是以太坊,比特币或任何其他链的竞争对手——事实上,它甚至与 Cosmos 等其他跨链解决方案兼容。
Polkadot 与……
我协助发布以太坊时,花了很多时间比较它与其他平台,以便准确定位。回想起来,事情原本要简单得多——考虑如今的碎片化程度,这一部分将在这篇入门性的文章中占据最大份额。
与其他跨链解决方案相比
首先,我们来看 Polkadot 与 Cosmos 和其他“现有”跨链解决方案的比较。从设计的角度来看,这些都相当简单,因此不太可能在实施时出现错误和/或延迟。但简单地说,Cosmos 和其他方案侧重于链之间的价值转移。Polkadot 则更通用,它允许不同智能合约之间的跨区块链交互。
还有很多使用案例,特别是在我公司 Slock.it 运营的 IoT space 项目中,其主要挑战就是在不同平台之间传输数据并执行功能调用。例如,我可能想从以太坊的智能合约中找到在 Hyperledger 上注册的某个对象的 GPS 坐标。
与这些解决方案相比,Polkadot 的第二个优势是它的共享安全模型。编写连接器还好,但构建一个新的、垂直的特定区块链很难——事实上是非常难。作为一名开发人员,我更希望专注于开发各种功能为用户创造价值,而不必担心正好到达挖矿算力的极限。跨链解决方案在这方面对我没用,但 Polkadot 却有效。这并不是说两者存在分歧——事实上,Cosmos 开发者最近宣布他们期待与 Polkadot 团队合作。目前这种基于合作,而非竞争的健康心态是更为可贵的。
与状态通道相比
毋庸讳言,我是状态通道的大力拥护者。.Polkadot 与 Raiden 网络等项目相比如何呢?如果你希望保障安全,状态通道就需要收到订金,这是必要的条件。这对于 Slock.it 这样的项目来说没有问题,因为我们的商业模式原本就包含结算功能,但并不总是适用于其他垂直领域的项目。使用 Polkadot,你不仅不需要支付一笔订金来访问平行链,而且没有什么能阻止你在平行链上构建状态通道。整体来看,状态通道在扩展性方面也有局限性,而 Polkadot 没有,因为其在理论上可以支持任何状态转换逻辑。
与“企业链”解决方案相比
不是已经有很多企业链在开发这些令人心动的功能了吗?EntETH、Hyperledger、Qtum,以及其他解决方案都已经承诺可扩展性和隐私将会包含在它们的扩展机制的共识中。而它们的局限在于如何实施这些机制。在我看来,无论是将数据隐藏在 VPN 后,还是通过操作私有节点或“为分类账设置权限”来任意限制对网络的访问,都不是可扩展性和隐私的解决方案——它们都只是暂时的解决方法。请注意,运营私有链没有问题——事实上,具备权限设置的解决方案可能是今天在企业领域中的首选——但是 Polkadot 将为这些解决方案提供无需建立信任关系的数据交换,扩展这些方案的范围和功能,而不是与它们直接竞争。
其真正优势在于,允许一个财富 500 强公司选择一种特定的解决方案,如 Hyperledger,而假设另一个公司选择了 QTUM。通过使用 Polkadot,两个企业巨头都可以在今天各自选择一种解决方案,并对它们的产品未来能够彼此互通充满信心。
与以太坊 ‘2.x’ 和其他基于 EVM 的解决方案相比
Polkadot 不是以太坊或其他基于 EVM 的解决方案的竞争者,这点非常重要。当然,这些项目会有一些共同的目标,例如 PoS 技术的使用。我们也很可能会看到项目之间的互相借鉴与创新,如以太坊 Serenity 到 Polkadot,反之亦然。把 Polkadot 看作一个“区块链平台”,就是一个可以开发、实验、部署和维护其他区块链的平台。
与类似 BaaS 的项目相比
BaaS,或称区块链即服务,这一模式存在着争议(如微软 Azure 的Bletchley Park)。有人会问为什么某些人愿意把区块链代码部署到其他的中心化网络,这几乎是否定了区块链的所有优点,但实际上许多公司愿意使用基于云或 BaaS 的产品。
这可能是因为某些充分的理由,例如,如果我们希望达到 AirBnB 或 Uber 那样的交易量,为终端用户提供更简单的密钥管理,甚至允许与现有的 SaaS 解决方案进行更简单的交互,BaaS 可能都是必须的。引用 Gavin Wood 关于这个问题的看法,“关键是保留选择权——就像开源的 Linux,为所有人提供了选择权,以便审查和理解代码库; 这有助于 Android 等系统和 IBM 等大型企业的选用。”
与其他类型的共识机制相比
在传统区块链结构的范畴之外, 有数十种共识机制可供选择。我们以 IOTA 的 Tangle 为例,它既没有区块也没有链,但也能实现最终一致性。它支持简单的代币价值转移,而不是基于智能合约,并且其最终一致性适用于特定情景而非全局。
Factom 则更进一步,完全舍弃了状态转换的概念。然而,Dapp 对我们而言之所以实用正是源自共享状态机所输出的信息。这是解决可扩展性问题的一种方法,但并不能解决 Dapp 开发人员所面临的所有问题。
与这些“没有链”的链相比,Polkadot 则致力保证链的安全,扩展性也很大(平行运行数十到数百个链,但共享同一个整体安全机制)——并且还提供了和以太坊、PoA 等基于不同共识机制的链(如 )交互的规则。另外,得益于 EVM 元协议层的优点,可以更多地与这些链整合。
与链下计算服务相比
诸如 Truebit 或 Oraclize.it 等项目提供了可审计的链下计算服务。这方面也是可以合作,而不是竞争——事实上,任何能与以太坊对接的解决方案都可以与 Polkadot 相通,包括 Golem。
正如你可能了解到的,Polkadot 并不局限于将链相互连接起来,也可以用作任意信息提供者(包括非常有趣的 Town Crier 项目)和在扩展协议方面的共识之间的中继。
与侧链相比
你一定听说过双向链、侧链和联合挖矿,而如今这些听起来都非常模糊和遥远,与此同时,以太坊这样的技术却在飞速发展。无论如何,Polkadot 借鉴了侧链可扩展性的一些理念。但与侧链不同,其主要目标是跨链的共享安全。如果使用侧链,作为开发人员,就需要建立一个足够安全的矿工社区以保障你所发行资产的安全性。
与“覆盖”区块链协议相比
一些“上层”(或“元”)区块链协议(如 melon)建立在现有链之上,与 Polkadot 之间具有一定的协同效应。如果它们之间可以无缝地进行跨链交互,那将是最有效的。从这个意义上说,Polkadot 作为一个无需信任关系的跨链互连方案,将有利于它们的发展。
与自力更生相比
这有必要吗?可以在虚拟机上创建本地适配器,然后手动连接链吧?因为经常有人问,所以我在这里解答。当然,如果有充足时间、技能和资源,一切皆可“自力更生”,包括整个操作系统。 但这并不明智和实际。在 Web 3 的背景下,Polkadot 可以轻松地拥有私有链、实验区块链并且可以无缝和可扩展地利用现有的区块链——推出自己的此类框架,更新的数十个选项并确保完全安全并不是一件容易的事情,而且需要耗费数年时间,还不如投入到其他领域(如开发一个出色的终端用户产品!)
另一点是,Polkadot 始终保持去中心化,而从链 A 到链 B 的“黑匣子”架构,则重新引入中心化、单点故障和供应商依赖等问题。我实在想不出一个比使用 FLOSS 项目更好的例子。
第 2 部分结语
本文很长,但是我觉得有必要在深入探索平台之前,先了解背景。下一篇文章中, 我们将对 Polkadot 功能及其技术方面进行介绍:它是如何工作的,如何在链之间来回转移数据,并且我们将简要提及其背后的治理机制。
感谢 Peter Czaban,Ryan Zurrer, Gabriel Beeby 和 David Peyronnin 及 Polkdadot Watercooler Riot 频道,感谢他们对本文的宝贵意见和反馈。
下一篇博文将在几周内发布。在此期间,如您有任何疑问,请加入 http://tiny.cc/web3chat 上的 Web 3 slack,已经有数百人在努力构建下一个 Web!