Cointime

扫码下载App
iOS & Android

实操贴!在以太坊上配置提款凭证分布指南

原文链接:Guide to Configuring Withdrawal Credentials on Ethereum

本文作者:Somer Esat;编译:Cointime Freya

概述

2023年4月12日,上海/Capella(统称Shapella)硬分叉为以太坊区块链启用了提款功能。

在此情况下,提款是指定期支付给执行验证器职责的ETH质押奖励,或是验证器退出时的ETH质押存款。

注意:这些提款与合并后启用的用于接收区块生产奖励的费用接收者不同。

指南的概念流程是:

  1. 确定你的验证器提款凭证是否已设置;
  2. 如果没有,请收集必要的验证器信息并设置;
  3. 使用验证器信息生成的签名消息;
  4. 广播该签名消息以更新验证器。

让我们开始吧!

步骤1:确定验证器状态

如果你已经设置了验证器的提款凭证(如果你创建验证器时使用了eth1_withdrawal_address标志),则无需再进行任何操作,可以在这里停止。如果你不确定,请将下面链接中的<YourEthDepositAddress>替换为你用来存入32 ETH的Eth地址进行检查。

https://beaconcha.in/validators/deposits?q=<YourEthDepositAddress>。

将显示一个验证器表格(如果你有多个验证器)。提款凭证一栏显示每个验证器的状态。

如果提款凭证一栏显示绿色文本0x01(也称为“类型1”),则说明提款凭证已经设置完毕。无需进行任何操作。

如果提款凭证栏显示黄色文本0x00(也称为“类型0”),则提款凭证尚未设置。为了进一步验证,请单击每个验证器密钥。

如果提款凭证已更新,它将在“存款”选项卡上进行确认。如果你所有的验证器都已更新,则无需再进行任何操作。

如果你的一个或多个验证器没有被更新,“存款”选项卡将如下所示:

步骤2:收集验证器信息

设置提款凭证需要验证器的相关信息:

  1. 验证器的索引位置。
  2. 验证器的索引编号。
  3. 验证器的旧BLS提款凭证。
  4. 新提款凭证的Eth1地址。
  5. 用于创建验证器的助记词。

我们将对每个项目进行详细说明。

在接下来的这些部分中,你将验证器信息保存到一个文本文件中,以便你以后可以参考。但是,请勿将助记词保存到文本文件中。

1. 验证器的索引位置

当你第一次创建验证器时,它会被分配一个索引位置。如果你只创建了一个验证器,那么索引位置就是0。如果你创建了多个验证器,那么它将是一个从0开始的数字序列。

索引位置用于指示你要为哪些验证器设置提款凭证。例如,如果你创建了3个验证器,并且希望为第二个验证器生成提款凭证,那么索引位置将为1。如果你想为所有3个验证器生成提款凭证,那么索引位置将是0。如果你想为3个验证器中的最后2个生成提款凭证,那么索引位置将是1。

此值必须是单个数字(而不是数字列表)。

2. 验证器的索引编号

每个验证器在加入Beacon Chain时都会被分配一个索引。要查找验证器索引编号,请使用步骤1中的查询方法,找到与你的ETH存款地址相关的验证器。

对于每个验证器,请单击“验证器密钥”。它将加载一个页面,显示顶部的验证器索引编号。

在此示例中,索引为107619。如果你有多个验证器,请用逗号分隔验证器索引编号。如107619,107620,107621。

注意:如果你有一个以上的验证器,索引编号应该按照正确的顺序排列,否则在提交签名信息时会出现错误。正确的顺序是验证器索引编号按照你第一次创建验证器时生成的顺序,与存款数据文件对齐。一般来说,如果索引编号按升序排列,就像上面的例子一样,你可能会成功。如果出现错误,请调整顺序并再次尝试。

3. 验证器的旧BLS提款凭证

这是最初在创建验证器时分配给你的验证器的提款凭证。请使用步骤1中的查找功能找到与你的ETH存款地址相关联的验证器。

提款凭证一栏包含了每个验证器的旧BLS提款凭证。在这个例子中,该凭证为0x009690e5d4472c7c0dbdf490425d89862535d2a52fb686333f3a0a9ff5d2125e。如果你有多个验证器,请用逗号分隔BLS提款凭证。例如:0x00...,0x00...,0x00...。

4. 新提款凭证的Eth1地址

这是将成为新提款凭证的Eth1地址,也是一个在你控制范围内的地址。这是所有ETH质押奖励的发送地址。如果你退出验证器,它也是质押的ETH存款的发送地址。

重要提示:与此地址关联的私钥必须在你的控制范围内,否则你将无法访问提取的ETH。

它应该是一个有效的以太坊地址。例如:

0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045。

5. 用于创建验证器的助记词

这是在你生成验证器文件时由staking-deposit-cli工具创建的助记词。稍后需要在生成签名消息时提供。不要将其保存到文本文件中。

注意:如果你使用了多个助记词来创建验证器,则需要收集验证器的信息,并按步骤为每个助记词及其相关验证器生成签名消息。

收集完这些信息后,生成的文本文件可能如下所示:

Index Position: 0Index Number: 1000,1001Old BLS:

0x00c223a861a98d56881969d0ecf771dfd76c1b7c1d423a7f9019a44ff7aec040,0x009690e5d4472c7c0dbdf490425d89862535d2a52fb686333f3a0a9ff5d2125eEth1 Address: 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045

将文件保存到USB驱动器中,以便稍后将其复制到空气隔离的计算机中。

步骤3:收集所需软件

  • 在Windows上解压该文件。
  • 使用以下命令下载并解压Linux操作系统。修改下面的URL以匹配最新版本的下载链接。

staking-deposit-cli工具将用于使用上面收集的验证器信息生成签名消息。下载,解压,并将其复制到USB驱动器中。

$ cd ~$ curl -LO https://github.com/ethereum/staking-deposit-cli/releases/download/v2.5.0/staking_deposit-cli-d7b5304-linux-amd64.tar.gz$ tar xvf staking_deposit-cli-d7b5304-linux-amd64.tar.gz$ cd staking_deposit-cli-d7b5304-linux-amd64

将文件复制到USB驱动器。

USB驱动器现在应该包含上面创建的文本文件和deposit或deposit.exe二进制文件。

步骤4:生成签名信息

接下来,我们将生成一个签名信息,其中包含更新提款凭证所需的信息。

staking-deposit-cli工具使用助记词对消息进行签名。由于助记词的敏感性质,强烈建议你在没有连接互联网的计算机上运行该工具。

有不同的方法可以进行;以下是两种选项:

  • 选项1-空气隔离的计算机(推荐):将USB驱动器连接到完全空气隔离的计算机(从未连接到网络或互联网),并将文件复制到空气隔离的计算机中。
  • 选项2-当前计算机(不推荐):从当前计算机运行。网络连接可能会泄漏你的助记词密钥。如果没有完全空气隔离的计算机,请在继续之前断开当前计算机的网络连接。

在安全的计算机上,运行二进制文件并复制/粘贴文本文件中的数据以提供所需信息。

在Linux上:$ ./deposit generate-bls-to-execution-change

在Windows上:deposit.exe generate-bls-to-execution-change

提供你的语言偏好。

选择网络。主网用于生产,其他的是测试网。

输入你的助记符。

输入索引位置。

输入验证器编号。

输入旧的BLS提款凭证。

输入将成为新提款地址的Eth1地址。

再输入一次,并确定它是正确的。一旦设置,就不能更新或更改。

成功!

注意:这一步需要进行验证,以确保旧的BLS提款凭证是由助记词创建的。如果不匹配,则该过程将失败。例如:“[错误]给定的提款凭证与助记词产生的旧BLS提款凭证不匹配”。请确保你输入了正确的助记词。

SignedBLSToExecutionChange JSON文件将在指定位置创建。该目录的内容如下所示:

该文件包含每个验证器的凭证变化数据。它已被签名,所以你不应该手动修改任何内容。

请仔细检查文件,特别是“to_execution_address”。如果你注意到错误,请删除JSON文件,并使用正确的值重新生成。

如果你在空气隔离的计算机上运行该程序,请将SignedBLSToExecutionChange JSON文件复制到USB驱动器上。

步骤5:提交已签名的消息进行广播

将包含上面创建的SignedBLSToExecutionChange JSON文件的USB驱动器连接到具有互联网访问权限的计算机上。

Beaconcha.in团队提供了一个实用程序,用于在以太坊硬分叉发生后提交提款凭证更改以进行广播。如果你要为主网提交签名消息,那么请在浏览器中点击这里:

https://mainnet.beaconcha.in/tools/broadcast

如果你提交的是测试网,那么将URL调整为适当的测试网。

按照提示提供JSON文件,再次仔细检查所有内容后,单击Submit & Broadcast按钮。

注意:此时还有其他验证功能,以确保提供的旧BLS提款凭证与验证器索引匹配。如果不匹配,则提交将无效。例如:“fromBLSPubkey与索引为1000的验证器的withdrawalCredentials不匹配”。返回并使用正确的值重新生成签名消息JSON文件。

如果你的请求成功被接收,将显示一个收据。

你现在已经提供了一个签名消息来更新验证器提款凭证。它将在以太坊硬分叉完成后(尽早)通过 Beacon Chain广播。所以,现在也许是一个最佳时机。

恭喜!你的验证器很快就会成为 0x01!

步骤6:好东西

设置提款凭证后,你可以检查一些事项。在下面的链接中,将 <YourValidatorIndex> 替换为你的验证器的索引。

https://beaconcha.in/validator/<YourValidatorIndex>

存款选项卡将确认提款凭证已成功更改。

提款选项卡将会显示处理的ETH奖励和大约支付时间

完成!

*本文由CoinTime整理编译,转载请注明来源。

评论

所有评论

推荐阅读

  • 美联储的新利率预测有可能影响市场

    LBBW 资深固定收益分析师 Elmar Voelker 在一份报告中说,在美联储下周的会议上,最大的市场波动潜力是新的关键利率预测。迄今为止,所谓的「点阵图」暗示美联储今年将降息两次,而货币市场定价几乎与美联储的预测完全一致。在我们看来,调整点阵图可能会让一些市场参与者措手不及。

  • 以色列的袭击未能突破伊朗核设施的保护层

    早期迹象表明,以色列的袭击没有穿透保护伊朗核储备设施的防护层。国际原子能机构(IAEA)说,没有迹象显示伊朗主要铀浓缩设施的辐射水平增加。伊朗当局告诉国际原子能机构,他们没有在位于德黑兰以南约300公里的纳坦兹设施观察到更高的辐射。以色列当局说,以色列没有对伊朗位于波斯湾沿岸的布什尔(Bushehr)核电站实施任何袭击。尽管如此,以色列总理内塔尼亚胡表示,袭击“将持续多少天,直到消除威胁”。只有最强大的常规弹药才能穿透伊朗的铀浓缩设施。纳坦兹核设施建在地下40多米处,有钢筋混凝土外壳保护,研究人员估计外壳厚约8米。而在福尔多核设施,浓缩大厅建在山里边。国际原子能机构总干事格罗西最近访问后估计,铀浓缩大厅位于地下半公里处。

  • 伊朗要求联合国安理会召开紧急会议

    伊朗常驻联合国代表团向安理会轮值主席致信,请求召开紧急会议,以应对以色列对伊朗的公然侵略。信中强烈谴责以色列在美国的支持下,对伊朗和平核设施和高级军事官员的侵略,呼吁安理会立即召开紧急会议,并对这些犯罪和挑衅行为采取果断行动。信中表示,以色列鲁莽、非法且有预谋地对伊朗的核设施和民用基础设施发动了一系列攻击。这些行动被认为明显违反了《联合国宪章》和国际法基本准则,其危险后果严重威胁着地区和国际和平与安全。

  • 伊朗方面称以色列总理专机已离开本-古里安机场

    当地时间13日,有消息称以色列总理内塔尼亚胡的专机已离开本-古里安机场。消息称,该专机由两架战斗机护航,正前往未知目的地。

  • 伊朗最高领导人将在以色列的袭击后发表声明

    伊朗国家电视台:伊朗最高领导人将在以色列的袭击后发表声明。

  • 以色列官员:以色列在伊朗问题上已与华盛顿完全协调

    以色列官员向以色列公共广播公司KAN表示,以色列在伊朗问题上已与华盛顿完全协调,在对伊朗发动袭击之前,以色列已通知华盛顿。

  • 伊朗:以色列和美国将付出沉重代价

    伊朗官方媒体传达了伊朗武装部队总参谋部的一份声明,称以色列和美国将“付出非常沉重的代价”。作为回应,美国和以色列将受到“严厉打击”

  • 哈梅内伊高级顾问或成下一个目标

    据外媒报道,一位消息人士透露称,伊朗最高领袖哈梅内伊的高级顾问阿里·沙姆哈尼(Ali Shamkhani)已成为袭击的目标,但目前尚不清楚最新情况,该报道尚未得到证实。

  • 消息人士:伊朗最高领袖哈梅内伊目前仍然健在

    市场消息:一名安全消息人士透露,伊朗最高领袖哈梅内伊目前仍然健在,已获悉以色列空袭后的局势情况。

  • 伊朗国家电视台:在以色列的袭击后,纳坦兹核设施发生新的爆炸

    伊朗国家电视台:在以色列的袭击后,纳坦兹核设施发生新的爆炸。