解答开发者最关心的以太坊 2.0 Staking 关键问题:用代码解读成为以太坊 2.0 验证人的过程,探秘信标链共识与激励机制。 原文标题:《以太坊 2.0 Staking 硬核四问》 作为广受瞩目的全球顶尖公链项目,以太坊 2.0 完全颠覆了从前的设计,旨在最大程度地同时实现去中心化和扩容目标。与以太坊 1.0 不同的是,以太坊 2.0 使用 PoS (权益证明)算法来推动区块链的运行,并通过「信标链+多分片链」 的架构来提高可扩展性。 以太坊 2.0 的研发和部署计划历时已久。在所有客户端均顺利实现规范的最终版本 v0.12.1 后,6 月底将启动一个实现最终版本规范的多客户端测试网,7 月则可启动最后的公共测试网。此后,最终版本的公共多客户端测试网若能稳定运行两至三个月,则可开始准备以太坊 2.0 的主网启动工作。若一切顺利,阶段 0 将于 11 月上线。但若版本规范仍有待修复,且所有客户端需再次实现新规范,则上线时间可能推迟到 2021 年。 本文将为读者展示 HashQuark 研究团队从以太坊 2.0 技术层面出发、对最受技术人员关心的四个硬核问题给出的详细回答。 如何成为验证人?以太坊采用存款合约(deposit contract)作为以太坊 1.0 与以太坊 2.0 之间的桥梁,当用户向存款合约存入 32 ETH 后,便可以作为以太坊 2.0 的验证者参与工作,并获得以太坊 2.0 奖励。 以 prysm 官网教程为例,加入测试网来直观感受下如何成为验证人。 准备工作prysm 的实现主要包含两部分 : 信标链客户端和验证者客户端。前者负责信标链的状态管理,后者负责验证者的出块和⻅证。为方便这一流程,prysm 提供了简易脚本 prysm.sh 来下载安装: mkdir prysm && cd prysm curl https://raw.githubusercontent.com/prysmaticlabs/prysm/master/prysm.sh --output prysm.sh && chmod +x prysm.sh (向左滑动,查看完整代码) 上述命令会在当前目录新建 prysm 文件夹,并下载可执行文件 prysm.sh。 除此之外,我们还需要至少 32 ETH 的以太坊账户和浏览器插件 metamask 以便发送交易。可以在测试网上申请一些测试币,如下图所示: 创建验证者密钥对一个验证人需要创建两对密钥对,一对用作验证人出块和见证,另一对用于管理存入合约的资金。运行如下命令来创建密钥:
命令将默认在~/.eth2validators/ 目录下创建两个 keystore 格式的文件,如下图所示: (责任编辑:admin) |