以太坊 KZG 活动服务器参与指南

以太坊官方推出的 kzg 活动,可以在网页参与。

网页参与方式参考 scroll 中文社区的微信公众号

https://mp.weixin.qq.com/s/mxBwpTeboy4lv-08UxecvQ

官方地址如下:

https://ceremony.ethereum.org/

网页参与时,国内用户因为网络原因经常卡在最后 waiting to be submitted 这步

post image

这时候可以使用官方推荐的客户端服务器上挂机参与,首页中有 Other Client 选项,会跳转到 GitHub 文档页面。

post image

服务器安装运行

这里我们使用的是 go 版本客户端

https://github.com/jsign/go-kzg-ceremony-client

首先查看官方的使用说明

https://github.com/jsign/go-kzg-ceremony-client#i-want-to-participate-in-the-ceremony-how-should-i-use-this-client

可以看到,使用方式非常简单,先下载预编译的 binary 文件,去官方链接小狐狸签名获取对应地址的session-id,运行客户端等待提交成功即可。

1. 下载客户端

直接在 go-kcgcli release 页面选择对应系统的 release 文件,笔者使用的 centos 7 云服务器,对应 linux-amd64 版本。

https://github.com/jsign/go-kzg-ceremony-client/releases

在 linux 云服务器中使用以下命令下载解压

wget https://github.com/jsign/go-kzg-ceremony-client/releases/download/v1.0.3/kzgcli-v1.0.3-linux-amd64.tar.gz

tar xvf kzgcli-v1.0.3-linux-amd64.tar.gz

2. 获取 session id

访问 request_link

https://seq.ceremony.ethereum.org/auth/request_link

获取对应的跳转链接,可以使用以太账号签名或者使用 gtihub oauth,分别需要满足如下条件:

  • An Ethereum address that has sent at least 3 transactions at the Merge block number.

  • A GitHub account that has a commit dated before 1 August 2022 00:00 UTC.

笔者使用的是以太地址,访问 request_link 返回的 json 如下,复制其中的 eth_auth_url 到浏览器打开

{"eth_auth_url":"<eth auth link>","github_auth_url":"<github oauth link>"}

打开后会跳转到签名页面

签名页面
签名页面

使用小狐狸签名后会跳转到 session-id resp 页面

返回数据 json 格式如下

{"id_token":{"exp":18446744073709551615,"nickname":"<your address>","provider":"Ethereum","sub":"eth|<your address>"},"session_id":"<your session_id>"}

复制你的 session_id 字符串,运行时会用到

3.运行客户端

第一步解压后会获取到 kzgcli 可执行文件

执行 ./kzgcli status 获取节点连接状态

节点状态
节点状态

连接正常的情况下,使用

./kzgcli contribute --session-id 开始参与 kzg。 此外,可以使用 nohup 防止断连命令退出 nohup ./kzgcli contribute --session-id <paste-your-session-id> 2>&1 & 或者使用 tmux new -s kzgcli 创建新的 tmux session 再执行 ./kzgcli contribute --session-id 命令。