Internet 最初是为 TCP/IP 等去中心化协议设计和构建的,但是,它的商业化导致了当今所有流行的Web应用程序的中心化。我们指的不是物理基础设施的任何中心化,而是指逻辑中心化对基础设施的权力和控制。两个突出的例子是像谷歌和 Facebook 这样的大公司:虽然它们以物理上分散的方式在世界各地维护服务器,但这些最终都由一个实体控制。 控制系统的中央实体会给每个人带来许多风险。例如,他们可以随时停止服务,可以将用户的数据出售给第三方,并在未经用户同意的情况下操纵服务的运作方式。这对于严重依赖这些服务用于商业或私人目的的用户尤其重要。
随着个人数据所有权意识的觉醒,网络用户对更好的安全性、自由度和控制的需求日益增长。因此,对于没有单一实体控制系统的更分散的应用程序而言,这是一种反向运动。这种权力下放的趋势并不新鲜。它已被用于网络和其他系统开发的许多领域,例如自由软件运动。
区块链是为解决这些问题而提出的一项技术,旨在建立一个去中心化的网络。然而,它只有在大众可用的情况下才能与集中式网络竞争的最终用户。其中一个重要方面是,单独的应用程序必须能够交互,否则每个应用程序都会变得孤立,不会被尽可能多的用户采用。必须建立这样一个互操作性机制引入了新的挑战,由于两种范式之间信任模型的根本差异,集中式模型中缺少许多挑战。例如,比特币[26]和以太坊[10]是工作量证明 (PoW) 区块链,其中安全性依赖于对处理能力的假设;而股权权益证明 (PoS) 系统的安全性依赖于激励措施和销毁保证金的能力。这些差异给区块链之间的互信带来困难。区块链技术需要解决的另一个挑战是可扩展性。现有的区块链系统普遍存在高延迟,每秒只能进行数十笔交易[14],而万事达卡或维萨卡等信用卡公司则执行每秒数千笔交易[3]。
区块链可扩展性的一个突出解决方案是并行运行许多链,通常称为分片。 Polkadot 是一个多链系统,旨在将所有这些链的安全力量集中在一个共享的安全系统中。它于2016年由Gavin Wood[33]首次引入,在本文中我们将详细介绍。
简而言之:Polkadot利用称为中继链的中央链与称为平行链(平行链的组合)的多个异构和独立分片链进行通信。中继链负责为所有平行链提供共享安全,以及平行链之间的可信跨链交易。换句话说,Polkadot旨在解决如上讨论的内容:互操作性、可扩展性以及因算力分流所削弱的安全性问题。
论文组织:在下一节中,我们将概述 Polkadot 网络,包括其与客户端平行链的外部接口,我们将在后续部分中对其进行扩展。我们回顾初步信息,例如第3 节中对 Polkadot 参与者角色和我们的对手模型的描述。我们在第4节中解释了 Polkadot的子协议和组件试图实现的目标,然后继续详细阐述它们,包括底层加密和网络原语。最后,我们将在第5节中简要讨论一些未来的工作。在附录中,我们回顾了相关工作,例如与其他多链系统A.3的比较、桥接到外部链 A.2的互操作性方案的简短描述、用于消息传递的安全执行方案A.1,以及包含Polkadot特定术语的词汇表B。