unjilling
在失去太多等级分数的不幸情况下,验证者将入狱,这意味着他们将被从碎片中取出,他们将不会参与共识,因此他们将不会获得更多奖励。目前,节点将被监禁的等级极限是10
。在评级页面上阅读更多信息。
您可以使用一个un jilling 交易来恢复一个被监禁的验证器。该交易实际上代表了罚款的支付。交易成功执行后,您的验证器将在下一个时期返回网络,并被视为全新的验证器,等级重置为50
。
提交未结交易很容易。您可以选择通过在https://wallet.elrond.com的在线钱包或者在命令行中使用erdpy
来解绑您的验证器。
你会在本页的例子中看到一些 BLS 公钥。确保不要将它们复制粘贴到您的赌注交易中。这些 BLS 密钥是随机生成的,不属于任何真实节点。
先决条件
要提交取消绑定交易处理,您需要满足以下条件:
- 一个至少有 2.5 EGLD 的钱包(解绑一个单验证器的费用)。如果您想一次取消多个验证器,您需要将最小数量乘以验证器的数量。例如,一次解串 3 个验证器将需要 7.5 个 EGLD。确保你的钱包里有足够的钱。
- 您想要取消的验证器的 BLS 公钥。你绝对不需要验证器的密钥。验证器的 BLS 公钥可以在
validatorKey.pem
文件中找到。请阅读验证器密钥以了解如何仅提取公钥。请记住,BLS 公钥正好由 192 个十六进制字符组成(也就是说,只有从0
到9
和从a
到f
)。
通过钱包取出钱包
在https://wallet.elrond.com上打开你的钱包,点击“发送”按钮。用以下信息仔细填写表格。确保你清楚这个信息是什么,用自己的信息调整到哪里。
在“To”字段中,粘贴 Staking SmartContract 的地址,该地址也处理取消绑定:erd1qqqqqqqqqqqqqqqpqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqplllst77y4l
对于“Amount”字段,您首先需要计算 unjailing 所需的 EGLD 的数量。这是通过将 2.5 EGLD 乘以您想要取消连接的节点数来完成的。例如,如果您想取消单个节点的连接,您需要输入2.5
。对于两个节点,它是5
,对于三个节点,它是7.5
。
接下来,展开表单的“费用限制”部分。您将看到“气体限制”字段出现。这里需要输入的值也取决于您想要取消连接的节点的数量。为了计算“气体极限”值,将节点数乘以6000000
(六百万气体单位)。例如,如果您想取消单个节点的连接,请输入6000000
。对于两个节点,输入12000000
,对于三个节点,输入18000000
,依此类推。观察“费用限额”字段如何自动计算该交易的成本。
【数据】字段
接下来,您必须填写“数据”字段。您将在此处写入的文本将由 Staking SmartContract 读取,以找出您想要取消连接的节点。请记住,您可以一次取消连接任意数量的节点。
在“数据”字段中书写时,您必须遵守以下小节中描述的严格格式。
退单个节点
如果您想取消单个节点的连接,“数据”字段的格式很简单:
unJail@<BLS1>
不要将上述格式原样复制粘贴到“数据”中。取而代之的是,您必须用您想要赌注的节点的 BLS 公钥来替换 <BLS1>
。您可以在该节点的validatorKey.pem
文件中找到 BLS 公钥。阅读页面验证器密钥来帮助你解释文件的内容并定位 BLS 公钥。
确保您没有删除@
字符。它们用于分隔“数据”字段中的信息。仅更换<BLS1>
。角码<
和>
也必须拆除。
例如,单个节点的非连续交易的“数据”字段如下所示:
un jail @ b 617d 8 BC 442 BDA 59510 f 77 e 04 a 1680 E8 B2 d 3293 c8 c 4083d 94260 db 96 a4 d 732 DEA af 9855 fa 0 cef 2273 f 5 a 67 B4 f 442 c 725 EFC 06 a 5d 366 b 9 f 15 a 66 da 9 EB 8208 a 09 c 9 ab 4066 b 3d 38 c f1 ea 7 fab 6489 a 90713 b 5b 5。
一次拆线多个节点
一次取消多个节点的连接与取消单个节点的连接没有太大区别。您只需要将由@
分隔的剩余节点的 BLS 公钥附加到为单个节点构造的“数据”字段中。如果您还没有阅读上一节“解除单个节点的连接”,请在继续之前阅读。另外,不要忘记根据您要卸载的节点数量来更新“数量”和“气体限制”字段。
对于一个单个节点,如前一小节所述,格式如下:
unJail@<BLS1>
对于两个节点,格式如下:
unJail@<BLS1>@<BLS2>
而对于三个节点,格式为:
unJail@<BLS1>@<BLS2>@<BLS3>
注意每个额外的节点是如何将部分@<BLS…>
添加到先前的格式中的。您需要用您的节点的实际的 BLS 公钥替换<BLS…>
,您可以在它们各自的validatorKey.pem
文件中找到它们。确保你没有写 BLS 秘钥!阅读页面验证器密钥,了解如何解释validatorKey.pem
文件。
例如,两个节点的非连续交易的“数据”字段如下所示:
unjail @ b617 D8 BC 442 BDA 595510 f77 e 04 a 1680 e 8b 2d 3293 c 4083d 94260 db 96 a 4d 732 deaaf 9855 fa 0 cef 2273 F5 a 67 B4 f 442 c 725 EFC 06 a 5d 366 b9f 15 a 66 9 EB 8208 a 09 ab 4066 b 6 b 3 D3 c3cf 1 ea 7 fab 6489 a 90713 b 56d 87 68 c 6558 c 80d 758
通用格式
您可以为任意数量的节点的“数据”字段编写文本。一般格式如下所示:
un jail @
un jaling 通过 erdpy
使用erdpy
提交未结交易可以避免手动写入“数据”字段。相反,交易由erdpy
自动构建,并直接提交给网络,只需一个命令。
在终端上发出以下命令,确保安装了erdpy
:
erdpy --version
该命令报告的版本必须至少为erdpy 0.7.0
或更高。如果没有安装erdpy
(command not found
),或者版本低于0.7.0
,请按照这些说明。
继续之前,确保erdpy
已安装且为最新版本。
您的钱包 PEM 文件
要在不通过使用在线Elrond钱包的情况下代表发送交易,erdpy
必须能够为您签名。因此,您必须使用钱包助记符生成一个 PEM 文件。
请按照指南导出钱包 PEM 文件。确保您确切知道 PEM 文件是在哪里生成的,因为您需要在erdpy
命令中引用它的路径。
生成 PEM 文件后,您可以直接从erdpy
发出交易。
未结令交易
以下命令假定您的 Wallet 的 PEM 文件以名称walletKey.pem
保存在您发出命令的当前文件夹中。
用erdpy
提交一个不连续交易的命令如下:
erdpy --verbose validator unjail --pem=walletKey.pem --value="<unjail-value>" --nodes-public-keys="<BLS1>,<BLS2>,...,<BLS99>" --proxy=https://gateway.elrond.com --estimate-gas --recall-nonce
注意,我们使用的是walletKey.pem
文件。此外,在执行该命令之前,您需要替换以下内容:
- 用解耦验证器所需的 EGLD 数量替换
<unjail-value>
。您需要根据要取消绑定的节点数量来计算该值。有关如何操作的信息,请参见通过钱夹部分的开始部分。 - 将所有的
<BLS…>
替换为节点的实际 BLS 公钥,您可以在它们各自的validatorKey.pem
文件中找到它们。确保你没有写 BLS 秘钥!阅读页面验证器密钥,了解如何解释validatorKey.pem
文件。
还要注意,没有计算“气体极限”。如果向erdpy
提供--estimate-gas
参数,气体极限将被自动估算。
下面是一个用于一个验证器的 unjailing 命令的例子:
erdpy --verbose validator unjail --pem=walletKey.pem --value="2500000000000000000000" --nodes-public-keys="b617d8bc442bda59510f77e04a1680e8b2d3293c8c4083d94260db96a4d732deaaf9855fa0cef2273f5a67b4f442c725efc06a5d366b9f15a66da9eb8208a09c9ab4066b6b3d38c3cf1ea7fab6489a90713b3b56d87de68c6558c80d7533bf27" --proxy=https://gateway.elrond.com --estimate-gas --recall-nonce
重要
在 erdpy 中指定value
参数时,必须考虑面额。
对于两个验证器,命令变成这样:
erdpy --verbose validator unjail --pem=walletKey.pem --value="5000000000000000000000" --nodes-public-keys="b617d8bc442bda59510f77e04a1680e8b2d3293c8c4083d94260db96a4d732deaaf9855fa0cef2273f5a67b4f442c725efc06a5d366b9f15a66da9eb8208a09c9ab4066b6b3d38c3cf1ea7fab6489a90713b3b56d87de68c6558c80d7533bf27,f921a0f76ed70e8a806c6f9119f87b12700f96f732e6070b675e0aec10cb0723803202a4c40194847c38195db07b1001f6d50c81a82b949e438cd6dd945c2eb99b32c79465aefb9144c8668af67e2d01f71b81842d9b94e4543a12616cb5897d" --proxy=https://gateway.elrond.com --estimate-gas --recall-nonce
请注意,两个 BLS 公钥由逗号分隔,中间没有多余的空格。