这份文档主要描述了波卡平行链功能宿主的实现,主要针对的是波卡平行链宿主的实现者。该文档分为以下部分: 1、平行链起源 2、协议概览 3、架构概览 4、Runtime 架构 5、Runtime APIs 6、节点架构 7、数据结构与类型 本文是由 PolkaWorld 翻译的第一部分 “平行链起源”。有兴趣的同学可以在文末找到原文档来阅读和进一步了解。 本文档旨在描述 Polkadot 的平行链功能宿主(为组成平行链提供安全性和先进性的软件)的目的、功能和实现。该文档不是针对特定平行链实现者,而是针对平行链宿主(Parachain Host)实现者。实际上,此文档通常是针对 Polkadot 的实现者的。 还有其他一些文档更详细地描述了这项研究。所有参考文档都放在了该文档中,并应与本文档一起阅读,以便更好地理解全文。不过,这是唯一一份旨在描述 Polkadot 的特定实例关键因素,并将该研究拆解为了较底层的技术细节和软件结构的文档。 平行链起源 平行链是一种问题的解决方案。与任何解决方案一样,如果不首先理解问题,就无法理解它。因此,让我们从区块链技术所面临的问题开始,这些问题导致我们开始探索像平行链这样的设计空间。 问题 1:可扩展性 几年前,一个明显的现象是,比特币、以太坊和其他一些简单工作量证明(PoW)区块链的交易吞吐量太低。 TODO:如果有更多的区块链会怎么样呢...? 权益证明(PoS)系统可以实现比 PoW 区块链更高的吞吐量。PoS 系统由绑定的资本担保,而不是花费精力 —— 流动性机会成本 VS 燃烧电力。他们的工作方式是选择一组具有已知经济身份的验证人,他们锁定代币,以换取获得“验证”或参与共识过程的权利。如果发现它们错误地执行了这一过程,它们将被 slash 惩罚,这意味着部分或全部锁定的代币将被销毁。这对不良行为有很强的抑制作用。 由于这种共识协议不会浪费资源,区块时间和协议可以更快地发生。PoW 挑战的解决方案不必在创建区块之前就找到,因此创建区块的成本减少到只需要创建和分发区块的成本。 但是,要达成 PoS 链共识,就必须有大于三分之二的验证人对 Layer1 上发生的所有事情达成完全一致,所有逻辑都是作为区块链状态机的一部分执行的。这意味着每个人仍然需要检查所有的事情。此外,基于通过异步网络接收到的信息,验证人可能对系统有不同的看法,这使得就最新状态达成一致更加困难。 平行链是分片协议的一个例子。分片是从传统的数据库架构中借鉴而来的概念。我们不是要求每个参与者检查每个交易,而是要求每个参与者检查交易的某个子集,这样就有足够的冗余,使得拜占庭式 (任意恶意的) 参与者无法悄悄混入无效的交易 —— 至少无法在不被检测到和被 slash 的情况下,将这些交易逆转。 (责任编辑:admin) |