以太坊的“合并”(The Merge)标志着以太坊从工作量证明(PoW)到权益证明(PoS)共识机制的伟大转型,而这一切的核心,就是以太坊信标链(Beacon Chain),信标链不处理交易和智能合约,它负责协调整个以太坊网络中的验证者(Validators),确保网络安全和共识,对于希望深度参与以太坊生态、成为网络守护者的用户来说,了解并设置以太坊信标链是至关重要的一步,本文将详细介绍以太坊信标链的设置过程。
什么是以太坊信标链?
在开始设置之前,我们首先要明确信标链的角色,信标链是以太坊PoS共识的基石,它引入了验证者概念,验证者通过锁定至少32个ETH作为质押(Stake),获得参与共识过程的权利,从而验证区块、提议新区块,并因此获得奖励,信标链负责:

- 验证者注册与管理:记录所有验证者的信息及其质押的ETH。
- 随机数生成:为验证者分配出块和验证任务,确保去中心化。
- 跨分片通信:为未来以太坊分片扩展奠定基础。
- 共识协调:确保所有验证者对区块链状态达成一致。
信标链是整个以太坊PoS网络的“指挥中心”。
设置以太坊信标链的先决条件
在动手设置之前,请确保你满足以下条件:
-
硬件要求:
- 处理器(CPU):至少4核,推荐8核或更多。
- 内存(RAM):至少8GB,推荐16GB或更多,以确保顺畅运行。
- 存储(SSD):至少1TB的高速SSD,因为需要同步整个以太坊主网数据(包括信标链和执行层),并且数据会持续增长。
- 网络:稳定、高速的网络连接,带宽建议至少10Mbps,且能保持24/7在线。
- 操作系统:推荐Linux(如Ubuntu 20.04 LTS),因为大多数客户端在Linux上性能最佳且兼容性最好,Windows和macOS也有支持,但可能稍显复杂。
-
软件与账户:
- 以太坊钱包:一个能够控制你质押ETH的钱包,如MetaMask、Ledger、Trezor等。注意:不要使用交易所地址作为质押接收地址,因为你需要掌握私钥来操作验证者。
- 足够ETH:
- 质押ETH:至少32个ETH,用于锁定作为质押金。
- 运行费用:额外的ETH用于支付交易费用(如提款、退出等),通常建议准备0.5-2个ETH不等,具体取决于网络费用。
- 验证者客户端软件:这是运行信标链验证者角色的核心程序。
- 执行层客户端软件:信标链本身不处理交易,需要与执行层客户端(如原Geth客户端)交互,以获取区块数据并广播交易,信标链和执行层客户端通过HTTP API通信。
选择并安装客户端软件
以太坊客户端是开源的,有多个团队开发的不同实现,它们都遵循以太坊规范,你可以自由选择,但建议选择活跃度高、社区支持好的客户端。
-
验证者客户端(Beacon Client)选择:
- Lodestar(由ChainSafe开发,使用TypeScript/Node.js)
- Lodestar(由PegaSys开发,使用Java)
- Prysm(由Prysmatic Labs开发,使用Go语言)
- Teku(由ConsenSys开发,使用Java)
- Nimbus(由Status.im开发,使用Nim语言,轻量级,适合资源有限设备)
示例:本文将以较为流行的Prysm和Lodestar为例进行简要说明,具体步骤请参考各客户端官方文档,因为更新可能较快。

-
执行层客户端(Execution Client)选择:
- Geth(Go-Ethereum,最主流的执行层客户端)
- Nethermind(.NET平台)
- Besu(Java平台,由ConsenSys开发,支持联盟链)
示例:我们选择Geth作为执行层客户端。
-
安装步骤(以Ubuntu为例,简述):
- 更新系统:
sudo apt update && sudo apt upgrade -y - 安装依赖:根据客户端需求安装,如Go、Node.js、JDK等。
- 下载并安装客户端:
- Geth:通常通过二进制文件或snap安装。
snap install geth --classic - Prysm:可通过官方提供的脚本安装,或从GitHub下载编译。
- Lodestar:通常通过npm安装:
npm install @chainsafe/lodestar-cli -g
- Geth:通常通过二进制文件或snap安装。
- 详细安装命令:请务必访问各客户端的GitHub官方仓库或官方文档获取最新的安装指南。
- 更新系统:
启动并同步执行层客户端
在启动信标链之前,执行层客户端需要先同步到以太坊主网的最新状态。
-
启动Geth:
geth --syncmode snap --http --http.addr "0.0.0.0" --http.port 8545 --http.api eth,net,web3,personal
--syncmode snap:快速同步模式。--http --http.addr "0.0.0.0" --http.port 8545:开启HTTP API,允许信标链客户端连接。--http.api eth,net,web3,personal:开放的API接口。
Geth开始同步时,会下载大量数据,这个过程可能需要数天甚至数周,具体取决于你的网络和硬件性能,确保你的SSD有足够空间。
启动并同步信标链客户端
当执行层客户端同步到一定程度(不需要完全同步,但建议至少同步到最近的 finalized 区块)后,可以启动信标链客户端。

-
准备Prysm配置: 创建一个配置目录和密码文件:
mkdir -p ~/prysm-beacon echo "your-password-here" > ~/prysm-beacon/password.txt
-
启动Prysm验证者客户端(用于创建/导入验证者): (如果你已经有验证者密钥,可以跳过创建步骤)
./beacon-chain --datadir ~/prysm-beacon --accept-terms-of-use --password-file ~/prysm-beacon/password.txt
(首次运行可能需要同意条款)
-
启动Prysm信标链节点(同步信标链数据): 打开一个新的终端窗口:
./beacon-chain --datadir ~/prysm-beacon --accept-terms-of-use --http-web3provider http://localhost:8545
--http-web3provider http://localhost:8545:指定执行层客户端的HTTP API地址。
Prysm信标链客户端会开始同步信标链数据,同样,这个过程也需要一些时间。
-
(可选)启动Lodestar示例: 如果选择Lodestar:
lodestar beacon --network mainnet --execution-endpoint http://localhost:8545 -- graffiti "my-graffiti" --dataDir ~/lodestar-data
--execution-endpoint:执行层客户端API地址。--graffiti:可选,验证者区块上的个性化标识。
创建验证者并质押ETH
当信标链客户端同步到最新状态后,你就可以创建验证者并进行质押了。
-
生成验证者密钥对(Keystore):
- Prysm:
./validator accounts create --keystore-path ~/prysm-beacon/keystores --password-file ~/prysm-beacon/password.txt
这会在
~/prysm-beacon/keystores目录下生成一个或多个keystore文件和deposit-data.json文件。 - Lodestar:
lodestar validator create --keystore ~/lodestar-keystores --password-file ~/lodestar-password.txt --network mainnet
- Prysm:
-
准备存款: 你需要使用
deposit-cli工具(由以太坊基金会提供)来处理你的keystore文件
