主页 > imtoken添加币种选哪个 > 深入分析波卡和以太坊2.0有什么特别之处?
深入分析波卡和以太坊2.0有什么特别之处?
《波卡知识图谱》是我们从零到一的波卡入门文章。 我们尝试从波卡最基础的部分入手,让大家全面了解波卡。 当然,这是一项浩大的工程。 工程学也充满挑战。 但是,我们希望通过这样的努力,让大家能够正确认识波卡,让不了解波卡的人也能方便快捷地掌握波卡相关知识。 今天是本专栏的第41期,为大家全面介绍波卡和以太坊2.0的特点。
自2016年波卡白皮书正式发布以来,经过几年的低调测试和开发,波卡的核心功能开发和生态建设取得了长足的进步,平行链插槽拍卖成为常态。
2014年问世的以太坊可以说是公链的领军代表。 在 8 年的发展历程中,以太坊正在发生着日新月异的变化。
目前,以太坊正致力于完成以太坊2.0的升级。 在上个月,花了一周的时间准备升级,以太坊也将从工作量证明(PoW)共识机制过渡到权益证明(PoS)。
公链的竞争一直备受关注。 过去,由于 Gavin 博士是以太坊的联合创始人,后来又创建了 Polkadot,因此 Polkadot 和以太坊被视为彼此的强劲竞争对手。
那么现在的波卡和以太坊2.0有什么特点呢?
Polkadot 和以太坊 2.0 都是分片区块链协议。 因此,它们通过在单独的分片中执行事务并提供在分片之间发送消息的协议来提供可扩展性。
模型
以太坊 2.0 中的分片都具有相同的状态转换函数 (STF),例如管理区块链如何随每个块更改状态的规则。
该 STF 提供了一个用于执行智能合约的接口。 合约存在于单个分片上,可以在分片之间发送异步消息。
同样,在波卡中,每个分片承载核心逻辑,分片并行执行,波卡可以跨分片发送异步消息。
然而,每个 Polkadot 分片(即平行链)都有一个独特的 STF。 应用程序可以存在于单个分片中,也可以通过组合逻辑存在于多个分片中。
Polkadot 使用 WebAssembly (Wasm) 作为“元协议”。 只要 Polkadot 上的验证人能够在 Wasm 环境中执行,就可以抽象出分片的 STF。 Polkadot 将通过平行链支持智能合约。
从某种角度来说,在以太坊上,智能合约可以在同一个分片内同步调用,也可以在分片间异步调用。
在 Polkadot 上,智能合约将能够在同一条平行链中相互同步调用,在平行链之间异步调用。
建筑学
1个
以太坊 2.0
以太坊2.0的主链称为Beacon Chain(信标链)。 信标链上的主要负载是证明,即对分片数据的可用性和信标链的有效性进行投票。
以太坊 2.0 中的每个分片只是一个带有以太坊 Wasm (eWasm) 接口的区块链。
以太坊 2.0 于 2020 年 12 月启动了其多阶段部署的第 0 阶段,与传统的以太坊 1.0 链并行运行:
阶段 0 提供信标链,接受来自验证者的存款并实现股权证明共识,最终跨越许多分片。
第一阶段启动 64 个分片作为一个简单的链来测试信标链的最终性。 每个分片向信标链提交一个“交联”,其中包含最终确定分片数据的信息。
阶段 1.5 将 Eth 1 集成到一个分片中,最终确定工作量证明链的块。
第 2 阶段实施 eWasm 接口,逐步取消工作证明,最终使系统对最终用户安全。
在第 0 阶段启动信标链后,路线图更改为优先将传统的以太坊 1.0 链从工作量证明过渡到以太坊 2.0 的权益证明共识,然后再在网络上推出分片。
该网络还将具有与不属于最终以太坊 2.0 协议的链交互的“侧链”。
2个
波尔卡圆点
与以太坊 2.0 一样,Polkadot 也有一条主链,称为中继链,有多个分片以太坊在哪些方面存在,称为平行链。 平行链不限于像 eWasm 这样的单一接口。
相反,他们可以定义自己的逻辑和接口,只要他们向中继链验证者提供 STF 以执行它。
Polkadot 现在作为中继链存在,只计划推出每个区块验证 20 个分片的能力,逐渐扩展到每个区块 100 个分片。
除了计划执行每个块的平行链之外,Polkadot 还有计划在动态基础上执行的平行线程。
这允许链共享分片中的插槽,就像多个小型航空公司可以在机场共享一个登机口一样。
为了与想要使用自己的终结过程的链(例如比特币)进行交互,Polkadot 具有提供双向兼容性的桥接链。
共识
以太坊 2.0 和 Polkadot 都使用混合共识模型,其中块生产和最终性都有自己的协议。
最终协议——以太坊 2.0 的 Casper FFG 和 Polkadot 的 GRANDPA——都是基于 GHOST 的,都可以在一轮中完成一批区块。
对于区块生产,两种协议都使用基于插槽的协议,随机分配验证器到插槽,并为未最终确定的块提供分叉选择规则——以太坊 2.0 的 RandDAO/LMD 和 Polkadot 的 BABE。
以太坊 2.0 和 Polkadot 共识有两个主要区别:
以太坊 2.0 基于称为“纪元”的时间段完成区块的批次。 目前的计划是每个 epoch 出 32 个区块,并在一轮内完成所有区块。 由于预计出块时间为 12 秒,这意味着预计完成时间为 6 分钟(最长 12 分钟)。
Polkadot 的最终确定性协议 GRANDPA 根据提议的链增长时发生的可用性和有效性检查来最终确定一批区块。
完成时间取决于需要执行的检查数量(无效报告导致需要额外检查的协议)。 预计完成时间为 12-60 秒。
以太坊 2.0 每个分片需要大量验证者来提供强大的有效性保证。 Polkadot 可以通过每个分片使用更少的验证器来提供更强的保证。
Polkadot 通过让验证者向系统中的所有验证者分发纠删码来实现这一点,这样任何人——不仅仅是分片的验证者——都可以重建平行链的区块并测试它们的有效性。
随机选择的验证者分配和由随机选择的验证者执行的二次检查使得每个平行链上的小群验证者不可能相互勾结。
质押机制
以太坊 2.0 是一个权益证明网络,每个验证器实例需要 32 ETH 用于权益证明。 验证者运行一个主信标链节点和多个验证者客户端——每 32 个 ETH 一个验证者。
这些验证器被分配给“委员会”,这些“委员会”是随机选择的组,用于验证网络中的分片。
以太坊 2.0 依赖于一个庞大的验证者池来提供可用性和有效性保证:每个分片至少需要 111 个验证者来运行网络,每个分片需要 256 个验证者才能在一个 epoch 内完成所有分片。 对于 64 个分片,即 16384 个验证器(每个分片 256 个验证器)。
Polkadot 可以用更少的验证者提供强大的确定性和可用性保证。 Polkadot 使用提名权益证明 (NPoS) 从较小的集合中选择验证者,允许较小的持有者提名验证者来运行基础设施,同时在不运行自己的节点的情况下仍然获得系统奖励。
Polkadot 计划在第一年运营结束时拥有 1,000 个验证器,网络中的每个平行链需要大约 10 个验证器。
碎片化
以太坊 2.0 中的每个分片都有相同的 STF。 每个分片都会向信标链提交一个“交联”,并实现一个 eWasm 执行环境。
EWasm 是用于以太坊合约的 Wasm 的一个受限子集。 eWasm 接口提供了一种可以在合约中使用的方法。 应该有一套类似的开发工具,比如 Truffle 和 Ganache 来为 eWasm 开发。
Polkadot 中的每个分片都有一个抽象的基于 Wasm 的 STF。 每个分片都可以公开一个自定义接口,只要将逻辑编译成 Wasm 并且分片为 Polkadot 验证器提供“执行块”功能即可。
Polkadot 有一个 Substrate 开发框架,它允许使用一组模块进行全谱配置,组合和扩展这些模块来开发链的 STF。
消息传递
以太坊 2.0 中的分片可以通过它们的交联和状态证明来访问彼此的状态。
在具有 64 个分片的以太坊 2.0 模型中,每个分片为信标链中的每个区块发布一个交联,这意味着一个分片可以包含一些基于另一个分片的轻客户端交易证明执行的逻辑。 以太坊 2.0 还没有发布节点在分片之间传递消息的规范。
Polkadot 使用交叉共识消息传递格式 (XCM) 允许平行链相互发送任意消息。 平行链彼此打开连接,并可以通过其已建立的通道发送消息。
鉴于收集人也需要是中继链的完整节点,他们将连接并能够将消息从平行链 A 中继到平行链 B。
消息不通过中继链传递,只有通道操作(打开、关闭等)的发布和证明进入中继链。 这通过将数据保存在系统边缘来增强可扩展性。
Polkadot 将添加一个名为 SPREE 的协议,它为跨链消息提供共享逻辑。 通过 SPREE 发送的消息带有关于接收器链的来源和解释的额外保证。
治理
以太坊 2.0 治理仍未解决。 以太坊目前使用 GitHub 讨论、所有核心开发人员电话会议以及以太坊魔术师等链下治理程序来决定协议。
Polkadot 使用链上治理和多机构系统。 有多种发布提案的途径,例如链上委员会、技术委员会或公众。 所有提案最终都会通过公投,大多数代币始终控制着结果。
对于投票率低的公投,Polkadot 使用自适应群体偏差来设置通过阈值。 公投可以涵盖各种主题,包括从链上金库分配资金或修改链的底层运行时代码。
决策是在链上做出的,具有约束力和自主性。
升级
升级到以太坊 2.0 将遵循正常的硬分叉流程,要求验证者升级其节点以实施协议更改。
使用 Wasm 元协议,Polkadot 可以在没有硬分叉的情况下进行链升级和成功的提案。 STF、交易队列或链下工作人员中的任何内容都可以在不分叉链的情况下进行升级。
综上所述
以太坊 2.0 和波卡都使用分片模型,其中分片链(以太坊 2.0 中的“分片”和波卡中的“平行链/平行线程”)由主链保护。 通过将分片状态连接到主链的块。 这两个协议在几个主要领域有所不同。
首先以太坊在哪些方面存在,以太坊 2.0 中的所有分片都具有相同的 STF,而 Polkadot 使分片具有抽象的 STF。
其次,以太坊 2.0 中的治理过程计划在链下进行,因此需要协调硬分叉来进行治理决策,而在 Polkadot 中,决策是在链上自主进行的。
第三,验证者选择机制不同,因为 Polkadot 可以提供强大的可用性和有效性保证,每个分片的验证者数量较少。
(本文摘自:波卡官方维基,写于2021年10月23日)
欢迎大家加入我们波卡生态研究院的Telegram:
欢迎大家访问波卡生态研究院镜像地址:
特色文章
原因 | | | | |
| 木材 | | | |
| | |
| | |
| |