引言
由以太坊2.0客户端构建团队之一的PrysmaticLabs发布的以太坊2.0的第一个主网配置的测试网Topaz终于在4.15正式启动了。该测试网针对的是以太坊2.0第0阶段的测试,即实现信标链和质押。
早在去年1月,以太坊在Reddit上就进行过一次AMA,对以太坊2.0的进展做了详细的说明。当时预计第0阶段的正式启动预计会在2019年11月或2020年1月。然而现在已经是2020年5月份了,目前仍处在第0阶段的测试阶段,正式启动时间依然没有确定。可见以太坊和其他项目类似,对于进展的预计过于乐观,预计上线时间什么的也就只能听过算数,图一乐而已。
本人在去年10月的时候就已经参与过Prysmatic?Labs的测试网的Staking了,并且在官方discord中提交过几个问题。当时的版本BUG非常多。然而时隔半年多,看到报道说他们的测试网已经有超过2.5万验证者参与了,这个数字的确超过了我的预想。没想到测试阶段的Staking就有这样的热度,看来社区对于以太坊2.0的关注程度相当之高。于是我便带着好奇参与这一次的测试网了。
开启Staking的过程踩了一些坑,也会在这里记录下来给大家作参考。
话不多说,进入正题。
名词解释
先解释几个的专有名词。
以太坊近24小时销毁1.7万枚ETH:1月12日消息,据Tokenview链上数据显示,近24小时内,以太坊产出14925.08枚ETH,销毁17375.99枚ETH;平均每分钟销毁12.07枚ETH,24小时销毁率116.42%。[2022/1/12 8:43:25]
PoS:即ProofofStake,中文叫“权益证明”。一个乍听上去一脸懵逼的词,其实很简单,泛指通过锁定代币获得新代币的挖矿方式。与之对应的是PoW-ProofofWork,工作量证明,即通过计算来获取新代币的挖矿方式,比如比特币。
Staking:质押。指的是Pos中参与区块验证并获得新代币的过程。
beaconchain:信标链。信标链是Eth2的核心,它管理着验证者和分片的协调。信标链是事实的源泉,Eth2的所有其他方面都从这里启动。
validator:验证者。抵押ETH后,负责对区块进行提议或证明,并获得收益。
准备工作
1.Metamask
Metamask是一个基于浏览器插件的ETH钱包。
官网:https://metamask.io/
教程:http://bjiebtc.com/qianbao-metamask-shiyongjc/
金色相对论丨夏伏彪:以太坊最终会进入到一个系统的稳定状态,实现扩展性问题的缓解:在今日举行的金色相对论中,针对“请各位就对于以太坊的发展给予一定的预测?在这些发展阶段中,各位认为哪些特性成为了发展的关键点?”的提问,PlatON创新研究院高级研究员夏伏彪发言指出:首先,对新技术的创新和努力程度,保证了ETH2最终状态的上限;其次,可能是我觉得更重要的,对安全性和稳定性的重视。
在此过程中,高强度和大量的测试资源投入,保证了最终系统是否真正可靠,是否真正面向用户(不管是开发者还是普通用户)并且很好用。
我预测以太坊会通过很长一段时间的稳定性考研,中间可能会出现意想不到的一些问题包括黑客攻击,甚至治理层面的问题(比如严重到需要去改动PoS的系统参数),
但是我相信最终仍然会进入到一个系统的稳定状态,实现扩展性问题的缓解,以及经济和治理层面上PoS模式的普及和稳定。[2020/6/18]
按照教程操作,到记完助记词并进入主界面即可。然后点击上方的网络切换按钮,默认的为主网络,这里需要切换到Goerli测试网络,如下图:
Tether在以太坊上新增印钞6000万USDT:Tokenview稳定币数据显示,Tether于今日16:07在以太坊上新增印钞6000万USDT。[2020/3/19]
切换到Goerli测试网络
2.主机
个人电脑、本地服务器、云服务器都可运行。官方的最低配置要求如下:
操作系统:64位Linux,MacOSX,Windows
处理器:IntelCorei5–760或AMDFX-8100或更高
内存:4GBRAM
储存空间:20GB可用空间SSD
互联网:宽带连接
一定要满足该最低要求!
如果使用1GB内存和2GB交换的主机运行信标链客户端,一定时间后将会报错退出。别问我是怎么知道的!
由于运行时必须保持24/7在线,因此还是推荐租云服务器来进行Staking。配置起码要2核4G。
参与Staking!
参考官方文档:
https://prylabs.net/participate
1.下载代码
新建任意目录,进入后执行以下代码:
动态 | Gemini推出包括比特币,以太坊,Enjin等在内的18种加密货币的保管服务:Gemini今日宣布,推出一个机构级的加密保管解决方案。winklevos支持的交易所现在提供了“Gemini Custody”,这是一个平台,可以让客户通过提供信贷,立即交易资产。[2019/9/10]
gitclonehttps://github.com/prysmaticlabs/prysm&&cd./prysm
等待下载完成后即可。
2.获取测试所需的ETH-G?ETH
G?ETH即Goerli测试网所用的ETH。记住测试网的ETH没有任何价值,仅作为测试用。在
官方文档中点击第2个步骤,再点击METAMASK图标连接到钱包:
连接metamask
之后会出现metamask弹窗,点击授权。接下来会提示你至少需要32个G?ETH才能参与。点击NeedG?ETH,并在弹窗中点击Yesplease。
动态 | Liquid交易所支持以太坊君士坦丁堡升级:Liquid交易所在推特上发布消息称,支持以太坊君士坦丁堡升级。预计分叉发生在24小时内,区块高度为7800000。[2019/2/28]
获取32个G?ETH
3.生成验证者的密钥
执行以下代码创建账户
./prysm.shvalidatoraccountscreate
创建的过程中看到INFOaccounts:Enterapassword:之后输入密码并记住所输密码,之后按下回车即可成功创建账户。完成后会看到以下字符。复制0x....的部分。
========================RawTransactionData=======================
0x.......
...........
...........
===================================================================
4.发送验证者存款
上述拷贝下来的内容中包含验证者账户的信息。将内容粘贴到
官方文档中的步骤3的输入框内,然后点击步骤5的makedeposit按钮,之后在metamask的弹窗中确认该笔交易即可。
将上一步骤复制的内容粘贴到此处
发送存款交易
5.运行信标链(beaconchain)和验证者(validator)客户端
官方文档的这一步骤在发送验证者存款之前,不过放在最后也没有关系。
一旦开始验证之后,信标链客户端和验证者客户端需要24/7全天候在线才能进行Staking,否则将会受到惩罚。因此需要保证两个进程在关闭终端后继续保持运行。
关闭终端后保持进程运行的常用方法为nohup,或者screen。由于验证者客户端需要输入账户创建时设置的密码才能继续,而nohup运行时会因无法输入密码而退出验证者客户端,因此这里使用screen运行。
通过screen开启客户端
创建并进入一个新的screensession:
screen-Sbeacon_chain
运行信标链客户端
./prysm.shbeacon-chain
等待开始运行后,按下快捷键CTRL+A+D脱离终端。此时会显示并退回到原来的回话,信标链节点将会继续保持运行。如果要回到信标链session,使用-r参数即可:
screen-rbeacon_chain
以同样的方式开启验证者客户端,创建一个新的screensession并将步骤2改成./prysm.shvalidator并输入密码即可。
如果忘记创建的screensession名称,运行screen-ls可查看所有创建的screensession。
注意事项
开始Staking需要经历三个阶段:1.初始同步:和其他区块链一样,开始阶段需要同步所有的历史区块。这一阶段信标链进程将会占用大量内存、CPU和带宽资源。以xx云的2H4G云主机为例,客户端开始时同步速度为大约20区块/秒,但运行一段时间后会缓慢降至0.4区块/秒。此时重启客户端会恢复到初始速度,同步完成大概需要重启3-4次,整体时间根据主机性能和网速需要2小时-12小时。这一阶段如果开启验证者客户端,将会一直处于等待信标链同步完成的状态,因此可暂时不管验证者客户端,等到同步完成后再开启,节省资源。
等待成为验证者:信标链同步完成后,开启验证者客户端,此时会进入等待队列。处于等待队列的验证者没有收益。此过程大约需要24小时左右。
进行验证并获取收益:等待完成后即成为验证者,被分配到特定分片进行提案或证明(attest)。持续完成提案或证明即可获得收益。
可设置swap交换区增加虚拟内存,防止内存不足导致信标链客户端出错,特别是在初始同步阶段。增加swap的方法详见:https://blog.csdn.net/blog_liuliang/article/details/80435134
参考
Ethereum2.0RedditAMA
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。