来源 |beaconcha.in
本文将为您分阶段讲解存款过程。在阅读本文之前,我强烈建议读者先阅读《ETH2.0密钥》一文,以便更好地理解以太坊2.0的密钥是如何运作的。
存款合约
接下来我们分别看看上图的每个状态,并说明如何大致地确定每个状态的持续时间
1. Mempool—状态:未知
每一笔已签名的交易都得先访问Mempool,这可以称为交易的等候室。在此期间,交易状态为pending (待处理)。矿工会根据交易提供的gas费,选择优先处理让他们获益**的交易。如果网络高度拥挤 (即许多交易待处理),则新交易提交的gas费很有可能超过旧交易,从而导致旧交易的等待时间为未知。
2. 存款合约—状态:已存款
一旦交易到达存款合约,存款合约就会检查交易的输入数据和价值。如果交易额低于1 ETH的**限制,或者交易输入数据不存在/无效,交易将被拒绝并退回给发送方。
如下图所示,用户端创建的输入数据正体现了ETH2.0即将上线的验证者和提款密钥。点击往期推荐阅读《ETH2.0密钥》一文。
为什么要花7.5个小时呢?
为了确保交易不会因区块重组而作废 (开发者以代码呈现ETH1_FOLLOW_DISTANCE),ETH2.0会将进入存款合约之后1024个ETH1.0区块的交易纳入考虑。处理完1024个ETH1.0区块后,还必须等待32个ETH2.0 Epochs (时段),信标链才能识别该存款。在这32 Epochs过程中,验证者对新存款进行投票。然而,如果出现区块提议失败或者ETH1.0恶意节点 (负责将存款记录提供给ETH2.0网络),就会导致更长的等待时间。既然如此,不如尝试自己运行节点吧!
计算方式:1024个区块= 1024 x〜13秒= 13,312秒=〜4小时,32 Epochs= 32 x 6.4分钟= 204.8分钟=〜3.5小时。
同样,ETH2.0链识别出存款之后(7.5小时后),通过beaconcha.in浏览器可查看,验证者状态将更新为已存款。
被拒绝存款
3. 验证者队列—状态:待处理
到了这步,信标链可以访问存款了。根据总共的存款数量,会产生一条验证者队伍。每个Epoch仅激活四个验证者 (每天激活900个验证者)。
注意:前16,384个验证者 (即创世验证者) 不需要排队,而是直接从SLoot 0开始质押。
4. 质押—状态:活跃
验证者现在质押状态已被激活,可以提议区块并对证明进行签名——他们即将获得奖励!
其他验证者状态
存款无效 (Deposit Inalid)
交易的BLS签名无效。
验证者离线 (Actie Offline)
即活跃验证者在2个epochs中未进行证明工作。
在线验证者退出 (Exiting Online)
由于验证者余额低于16ETH或验证者请求退出,处于在线状态的验证者当前正在退出网络。
离线验证者退出 (Exiting Offline)
由于验证者余额低于16ETH或验证者请求退出,处于离线状态的验证者当前正在退出网络。
在线验证者罚没 (Slashing Online)
在线验证者作恶,被驱逐出网络。
离线验证者罚没 (Slashing Online)
验证者处于离线状态,但实施过恶意行径被驱除出网络。验证者正排队退出网络,需要等候至少25分钟。
被罚没 (Slashed)
验证者已被驱逐出网络,资金可在36天后提取。
已退出 (Exited)
验证者已退出网络,资金可在一天后提取。
点击“阅读原文”获取文章内部链接!
原文链接:https://kb.beaconcha.in/ETHereum-2.0-and-depositing-process
ECN的翻译工作旨在为中国以太坊社区传递优质资讯和学习资源,文章版权归原作者所有,转载须注明原文出处以及ETH中文网。若需长期转载,请联系[email protected]进行授权。
▼
2020-06-30
文章标题:ETH 2.0存款过程
文章链接:https://www.btchangqing.cn/62364.html
更新时间:2022年10月08日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。