ML Blog

雕刻时光
Sculpting in time

每一个故事都有起点与终点
Every story has a beginning and an end.

Beacome an ETH validator

成为一名ETH2.0的验证者

1 分钟

概要

这篇文章不会过多讲述ETH的具体技术细节,主要会涉及如何成为ETH2.0的验证者。

今年年底,ETH将完成阶段0的升级,从PoW工作量证明迁移到PoS权益证明,之前自己在公司的黑马活动上思考了如何利用过剩的算力来做有价值的事情,PoW从理论上来说比较浪费能源,矿工购买大量矿机进行运算,而采用PoS机制之后,只要成为一名验证着,我们就能完成对区块的铸造,而不需要像PoW一样,购买大量矿机通过挖矿来产生新区块,但是要成为验证者中的一员,你需要将一定数量的加密货币进行锁仓做为权益的证明,如果你运行的验证节点验证一个区块,并检查里面的交易是否都是有效,如果通过,你将收到一笔奖励以做为回报。

ETH2.0 架构

架构图引用自prylabs

  • Beacon Node 中文称之为信标链,是ETH2.0的核心部件,类似于海洋上的灯塔,引导船只前进的方向。

  • Validator Client 会连接信标链,并且管理质押的ETH密钥对。

如何加入

ETH 2.0 目前运行在 Medalla(已经更新为prater)测试网

  1. 访问Become a validator and help secure eth2

  2. 开始进入Get Started环节

  3. Generate Key Pairs

    • 这一步是用来生成验证者的密钥对

    • 选择你使用的操作系统,然后安装eth2.0-deposit-cli

    • 生成密钥对比如: python3 ./eth2deposit/deposit.py –num_validators 2 –chain medalla –folder ./keys/

    • 生成的keystore会保存在./keys文件夹下,因为目前是测试网所以需要指定 –chain medalla,像deposit_data-1600238876.json这样的文件里面存放了公共信息,下一步我们就需要上传该文件deposit_data-1600238876.json

  4. Upload Deposit File: 上传deposit_data-1600238876.json文件

  5. Connect Wallet: 连接到你自己的本地钱包,这里我们使用Chrome MetaMask插件

    • 如果你的钱包里面没有测试ETH,那么可以去这里申请,在自己的推特上发一条包含自己ETH地址的推文,比如0x0bDebe6eF5D0Ca744451946a70fEbd1B505dD92a my TestNet addr,然后将推文链接复制到上述网站的提交项中,最后选择87.5ETH/9days,你就会收到87.5个测试ETH,记住metamask上一定要选择goerli测试链。

  6. 下一步就是将32ETH打到对应的Medalla Beacon Contract合约地址上,如果你像我一样启动了两个验证者,那么总和就是64ETH,完成之后,我们就可以看到类似以下的页面。

  7. 最后就是选择支持ETH2.0的多客户端,这里我们选择golang版本的prysm

    • 完成对信标链beacon chain和验证者validator的部署

    • 部署文档可以参考这里

    • 获取prysm.sh: curl https://raw.githubusercontent.com/prysmaticlabs/prysm/master/prysm.sh –output prysm.sh && chmod +x prysm.sh

    • 关于具体的部署方案我下周会出一篇文章专门讨论如何实现验证节点的高可用

    • 导入用eth2.0-deposit-cli生成的密钥,./prysm.sh validator accounts-v2 import –keys-dir=$HOME/eth2.0-deposit-cli/validator_keys,import会让你重新生成一个钱包,然后导入目录中的keystore

    • 启动prysm-beacon-chain: ./prysm.sh beacon-chain

    • 启动validator: ./prysm.sh validator

    • 浏览Ethereum 2.0 Beacon Chain Explorer

  8. 输入你自己生成的pubkey,在deposit_data-1600238876.json类似的文件中可以看到,比如"pubkey": “a27a2f1bf0dbc8a0310eeb1e8da43443c54a58ed45df9fd896fa6b5b11b5b4dc074fac87fe0072ef2d5eaa0d1e4af0a3”

  9. 这里选取0xa27a2f1bf0dbc8a0310eeb1e8

    • 目前验证者还在Pending状态,需要等待5+小时之后,才会成为激活状态,等激活之后,我们可以看到验证者节点开始进入工作状态,我们质押的32ETH会随着时间推移收益慢慢上升,如果验证节点下线了,我们会被惩罚,会从质押金额中扣除一部分惩罚金。

意义

我们大部分人首先会关注ETH价格,然而对价格的猜测就像是一场赌博游戏,我目前比较看好ETH的经济体系,还有运行于ETH之上的EVM,所有这一切都是由代码来做公平的交易,当ETH2.0上线,我自己也会参与成为validator,至少在一个去中心化的经济体系中,你可以探索发现里面的规则,然后演化这些规则,而不像传统金融市场,在中心化的运作下没有任何创造。

最新文章

分类

关于

不断的学习思考, 保持好奇心
Keep thinking, Stay curious
始终保持对于新事物的敏感
Always be sensitive to new things