news 2026/6/25 13:38:19

18.ETH-GHOST-北大肖臻老师客堂笔记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
18.ETH-GHOST-北大肖臻老师客堂笔记

北京大学肖臻老师《区块链技术与应用》公开课第 18 讲的主题是**“以太坊的 GHOST 协议”**。

在比特币中,废弃的区块被称为“孤块”且没有任何奖励;而在以太坊中,由于出块速度快,为了安全性与公平性,引入了 GHOST 协议及其变种,将这些废弃区块称为**“叔父块” (Uncle Block)** 并给予奖励。

以下是本课内容的结构化详细总结

一、 引入 GHOST 协议的背景

  1. 出块时间差异
  • 比特币:平均 10 分钟出一个块。
  • 以太坊:平均 15 秒出一个块。
  1. 带来的问题
  • 高分叉率 (High Stale Rate):出块太快,导致区块还在网络传播时,别的矿工可能已经挖出了另一个块。这会导致大量的“孤块”产生。
  • 安全性降低:如果大量算力浪费在孤块上,真正维护主链安全的算力比例就会下降,攻击者更容易发动 51% 攻击。
  • 中心化风险:大型矿池拥有更好的网络连接,能更快接收和广播区块,产生孤块的概率低;而个体矿工很容易挖出孤块(白干)。久而久之,个体矿工会不得不加入大矿池,导致算力集中。

二、 GHOST 协议的核心思想

  • 全称:Greedy Heaviest Observed Subtree (贪婪最重观察子树)。
  • 原版 GHOST 逻辑
  • 在比特币的“最长链原则”中,只看哪条链最长。
  • GHOST 提出,应该选择**“包含工作量最多”**的那条路径。也就是说,在判断哪条链是主链时,不仅要看主链上的区块,还要把该链产生的“分叉区块”(孤块/叔块)的算力也加进去计算权重。
  • 好处:即使有人攻击主链,但他很难伪造出大量的“叔块”来增加自己链的权重。

三、 以太坊中的 GHOST 实现 (Modified GHOST)

以太坊并没有完全照搬原始的 GHOST 协议(即主链选择依然主要依赖最长链逻辑),而是借鉴了其精神,引入了叔父块 (Uncle Block)机制并给予奖励。

1. 什么是叔父块?
  • 如果一个矿工挖出的区块是合法的,但因为网络延迟等原因没有成为主链区块(被其他人抢先了),这个区块在比特币里是“废块”,但在以太坊里可以被下一个主链区块“收留”,成为叔父块
  • 定义:当前区块的祖父节点直接子节点(即父亲的兄弟)。
2. 叔父块的规则
  • 收留限制:一个主链区块最多只能包含2 个叔父块。
  • 代数限制:叔父块必须是当前区块的7 代以内的直系亲属(从爷爷辈到太爷爷…最多追溯 7 代)。
  • 合法性:叔父块必须是合法的区块头(Header),不要求交易合法(全节点只检查叔块头,不执行叔块里的交易)。
3. 奖励机制 (Incentive)

为了鼓励矿工引用叔父块,以太坊设计了双向奖励:

  • 对于“挖出叔父块”的矿工 (Uncle Reward)

  • 虽然你的块没进主链,但系统依然给你发钱。

  • 公式:。

  • 其中 是叔块与当前区块的距离(辈分)。

  • 如果是直接叔叔 (),拿 7/8 的奖励。

  • 如果是隔代叔叔 (),拿 6/8,以此类推。

  • 直到 ,拿 1/8。

  • 目的:补偿因网络延迟落败的矿工,特别是小矿工,减少算力中心化。

  • 对于“包含叔父块”的矿工 (Inclusion Reward)

  • 主链矿工每收留一个叔块,可以多拿1/32的出块奖励。

  • 目的:鼓励主链矿工积极把这些“流浪在外”的叔块捡回来,增加主链的权重(在 GHOST 语境下)。

四、 真实案例与补充

  1. 交易处理:叔父块里的交易不会被执行。如果执行的话会造成严重的双花和状态混乱。叔父块仅仅是贡献了区块头和 PoW 工作量证明。
  2. 分叉攻击难度增加:由于全网大部分算力(包括挖出废块的算力)都被计入了主链(或通过叔块机制间接增强了主链的合法性共识),攻击者想要在算力上压倒主链变得更难。

🧠 核心逻辑图解:叔父块奖励

叔父块

正常链

指向父节点

引用 (Inclusion)

区块 N

区块 N-1

区块 N-2

叔父块 U

挖出 Uncle 的人:\n获得 7/8 奖励

挖出 Block N-1 的人:\n额外获得 1/32 奖励

💡 总结

第 18 讲的核心是**“妥协与平衡”**。
以太坊为了追求更快的出块速度(15秒),不得不面对随之而来的高分叉率。通过引入GHOST 协议和叔父块机制,以太坊成功地变废为宝,既保证了系统效率,又维护了去中心化的公平性与安全性。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/21 0:29:13

opencode+Jenkins集成:DevOps中AI应用部署案例

opencodeJenkins集成:DevOps中AI应用部署案例 1. OpenCode是什么:终端里的AI编程助手 OpenCode不是又一个网页版AI代码工具,它从诞生第一天起就决定“不进浏览器”。2024年开源的这个项目,用Go语言写成,核心目标很实…

作者头像 李华
网站建设 2026/6/10 22:14:46

VMware虚拟机部署美胸-年美-造相Z-Turbo:隔离环境解决方案

VMware虚拟机部署美胸-年美-造相Z-Turbo:隔离环境解决方案 1. 引言 在AI图像生成领域,美胸-年美-造相Z-Turbo(简称Z-Turbo)是一款高效且功能强大的模型。它能够在消费级硬件上实现亚秒级的图像生成速度,同时保持出色…

作者头像 李华
网站建设 2026/6/25 3:01:32

7个高效技巧:AssetStudio资源提取从入门到精通

7个高效技巧:AssetStudio资源提取从入门到精通 【免费下载链接】AssetStudio AssetStudio is an independent tool for exploring, extracting and exporting assets. 项目地址: https://gitcode.com/gh_mirrors/ass/AssetStudio AssetStudio是一款功能强大的…

作者头像 李华
网站建设 2026/6/13 20:18:32

人脸识别OOD模型快速部署:镜像体积183MB的模型剪枝策略揭秘

人脸识别OOD模型快速部署:镜像体积183MB的模型剪枝策略揭秘 你有没有遇到过这样的问题:人脸识别系统在实验室跑得飞快、准确率99%,一上线就频频误拒——模糊照片、侧脸、反光、戴口罩的人脸,全被当成“异常”拦在外面&#xff1f…

作者头像 李华
网站建设 2026/6/21 14:30:50

如何用SMUDebugTool完全掌握Ryzen处理器调试:10步实战指南

如何用SMUDebugTool完全掌握Ryzen处理器调试:10步实战指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https:…

作者头像 李华
网站建设 2026/6/22 15:17:30

汉明码的二进制艺术:从位运算视角解析校验位的魔法

汉明码的二进制艺术:从位运算视角解析校验位的魔法 在计算机科学的世界里,数据的准确传输如同在钢丝上行走——任何微小的干扰都可能导致灾难性后果。想象一下,当你的手机接收一条银行转账短信时,哪怕只有一个比特的错误&#xff…

作者头像 李华