当前位置: 首页 > news >正文

以太坊执行客户端和共识客户端各自的作用及意义

前言:

以太坊自从 The Merge(合并) 后,系统结构分成两个明确的层次:
✅ 执行客户端(Execution Client)
✅ 共识客户端(Consensus Client)

它们之间的职责清晰分工,通过 Engine API 协同工作。

🧱 执行客户端(Execution Client)
✅ 主要职责:
功能 说明
  • 📦 交易执行 处理所有交易、部署/调用智能合约。
  • 📚 状态管理 维护账户余额、存储状态(State)、合约状态等。
  • ⛓ 区块构建 构造和传播区块(但从合并后不再负责最终共识)。
  • 🧾 JSON-RPC API 提供 web3, eth, net 等接口供外部调用(如 DApps、钱包)。
  • 📁 数据存储 保存区块链数据,如区块、交易、状态树等。
🔧 常见客户端:
  • Geth (Go Ethereum)
  • Nethermind
  • Besu
  • Erigon
🔄 与共识层交互:

接收来自共识客户端的出块请求(via Engine API)。
返回构建好的 block payload。
验证 block 后返回结果给共识客户端。

🌐 共识客户端(Consensus Client)
✅ 主要职责:
功能 说明
  • 🧑‍⚖️ 区块共识 参与 PoS 共识(投票、提议、证明),决定哪个区块被接受。
  • 🕒 时间管理 管理 slot/epoch(每 12 秒一个 slot)以推动网络共识节奏。
  • 📬 区块提议 当自己成为 proposer 时,请执行层生成区块内容。
  • ✅ 区块验证 验证所有接收到的区块内容是否正确并签名确认。
  • 📊 最终性确认 跟踪哪些区块被视为“最终确定”不可回滚。
🔧 常见客户端:
  • Prysm
  • Lighthouse
  • Teku
  • Nimbus
  • Lodestar
🔗 与执行层交互:

通过 Engine API 请求执行客户端构建或验证区块。
提供验证者服务,连接验证者客户端(或集成验证者模块)。

🔄 两者如何协同工作?
典型流程:
  • 共识客户端在某个时间点被选为 proposer。
  • 它调用执行客户端的 Engine API 请求构造区块 payload。
  • 执行客户端执行交易、打包区块并返回。
  • 共识客户端验证 payload 并广播区块。
  • 其他节点接收到后也通过自己的执行客户端验证区块内容是否有效。
  • 共识客户端参与投票以确定区块是否成为“最终确定区块”。
🧠 类比帮助理解:
系统角色 类比
  • 执行客户端 工厂工人,负责“干活”——执行交易、跑合约、记录账本。
  • 共识客户端 经理人,负责“决策”——谁出块、哪个区块被接受、维持节奏。
  • Engine API 对讲机,让两者协同沟通、配合工作。
🔐 为什么要分离?
  • ⛓ 扩展性:允许独立更新执行和共识层,提高模块化。
  • 🔒 安全性:各司其职,逻辑清晰,减少单点故障。
  • 🔄 客户端多样性:用户可以自由组合执行+共识客户端,如:
  • Geth + Prysm
  • Nethermind + Lighthouse
  • Besu + Teku 等等
http://www.lqws.cn/news/524143.html

相关文章:

  • java 对接ETH(以太坊) 交易相关资料
  • 区间求最值问题高效解决方法
  • Linux下使用docker nginx部署vue前端项目工程
  • vue2 使用el-form中el-form-item单独绑定rules不生效问题
  • IoT/HCIP实验-5/基于NB-IoT的智慧农业实验(平台侧开发+端侧编码+基础调试分析)
  • LOOP如何让长周期交互LLM代理在复杂环境中实现突破?
  • 正则表达式匹配实现
  • Boosting:从理论到实践——集成学习中的偏差征服者
  • Prompt:面向目标的提示词
  • WeakAuras Lua Script [ICC BOSS 12 - The Lich King]
  • Objective-C面向对象编程:类、对象、方法详解(保姆级教程)
  • 自动驾驶数据特征提取实战:用Python打开智能驾驶的新视角
  • 深入理解残差网络(ResNet):原理与PyTorch实现
  • Mysql数据库操作大全万字详解
  • 【Redis】Redis的下载安装和配置
  • 检查StringBuilder是否包含字符串
  • ARM内核之CMSIS
  • 【机器学习】非参数贝叶斯回归方法 GPR
  • ipfs在windows下载和安装
  • JSON框架转化isSuccess()为sucess字段
  • C++(智能指针)
  • Liunx操作系统笔记2
  • linux-修改文件命令(补充)
  • IT运维效率提升: 当IT监控遇上3D可视化
  • 三步实现B站缓存视频转MP4格式
  • 记一次AWS 中RDS优化费用使用的案例
  • Postman鉴权动态传参?对比脚本变量vs环境变量!
  • 理论加案例,一文读懂数据分析中的分类建模
  • 通过pyqt5学习MVC
  • 代理型 AI 重塑营销格局:国产 R²AIN SUITE 如何破解数据与技术瓶颈,实现 AI 赋能全链路提效