Uncle Maker: (Time)Stamping Out The Competition in Ethereum

news2025/1/24 17:33:04

目录

  • 笔记
  • 后续的研究方向
  • 摘要
  • 引言
    • 贡献
    • 攻击的简要概述

Uncle Maker: (Time)Stamping Out The Competition in Ethereum
CCS 2023

在这里插入图片描述

笔记

本文对以太坊 1 的共识机制进行了攻击,该机制允许矿工获得比诚实同行更高的挖矿奖励。这种名为“Uncle Maker”的攻击操纵区块时间戳和难度调整算法,使矿工在区块竞赛中占据优势。作者描述了攻击的几种变体,包括一种对矿工来说没有风险的变体。他们分析了来自以太坊区块链的数据,并提供了证据,证明一些矿工多年来一直在积极运行这种攻击的变体而没有被发现,这使其成为矿工操纵主要共识机制的第一个证据。作者还提出了具体的修复建议,并提供了一个实现,作为以太坊 1 最受欢迎的客户端 geth 的补丁。

大意:

  • 这种名为 Uncle Maker 的攻击操纵了以太坊 1 共识机制中的区块时间戳和难度调整算法。
  • 与诚实的同行相比,该攻击允许矿工获得更高的采矿奖励。
  • 描述了攻击的几种变体,包括无风险的攻击。
  • 来自以太坊区块链的数据提供了证据,表明一些矿工多年来一直在积极运行这种攻击的变体,而没有被发现。
  • 建议对以太坊 1 最受欢迎的客户端 geth 进行具体修复和补丁,以减轻攻击。

后续的研究方向

  1. 对其他矿池的进一步分析:调查其他矿池是否也在执行类似的攻击,或者不同矿池是否存在 Uncle Maker 攻击的变体。

  2. 研究攻击对整个网络的影响:分析 Uncle Maker 攻击对以太坊网络的影响,例如其对交易确认时间、网络拥塞和整体安全性的影响。

  3. 制定更强大的缓解策略:探索其他缓解技术来应对 Uncle Maker 攻击和其他类似攻击。这可能涉及对共识机制进行更改、改进分叉选择规则或实施可靠的时间戳机制。

  4. 调查其他攻击媒介:探索针对共识机制的其他潜在攻击媒介,例如时间戳操纵,并分析它们对不同加密货币的影响。

  5. 评估建议的 geth 补丁的有效性:评估以更自然的方式实施攻击的 geth 补丁的有效性。确定此实现是否降低了攻击的可检测性,以及它是否会产生任何意外后果。

  6. 探索时间戳操纵的影响:调查时间戳操纵在共识机制中的更广泛影响,包括它们在其他类型的攻击中的潜在用途以及它们对区块链系统的安全性和可信度的影响。

  7. 研究矿工的经济动机:分析矿工执行 Uncle Maker 攻击背后的经济动机以及它如何影响他们的盈利能力。考虑此类攻击对采矿生态系统的长期影响。

  8. 检查过渡到权益证明 (PoS) 的影响:评估过渡到 PoS 在缓解 Uncle Maker 攻击和其他与工作量证明相关的攻击方面的有效性。分析 PoS 共识机制对安全性和性能的影响。

  9. 研究时间戳操作在其他环境中的使用:探索时间戳操作在区块链以外的其他领域的潜在用途,例如分布式系统、共识协议或其他加密应用程序。

  10. 开发检测和预防机制:设计和实施工具和算法,以实时检测和防止时间戳操纵和其他类似攻击。这可能涉及使用机器学习、异常检测或加密技术。

摘要

我们提出并分析了对以太坊1共识机制的攻击,该机制允许矿工与诚实的同行相比获得更高的挖矿奖励。这种攻击是新颖的,因为它依赖于操纵块时间戳和难度调整算法(DAA),以便在发生块竞争时给矿工带来优势。我们称我们的攻击为制造叔叔,因为它会导致更高的叔叔拦截率。我们描述了攻击的几种变体。其中一个对矿工来说是无风险的。

我们的攻击不同于过去的攻击,如自私的采矿[30],这些攻击已被证明是有利可图的,但从未在实践中观察到:我们分析了以太坊区块链的数据,并表明以太坊的一些矿工多年来一直在积极运行这种攻击的变体,但没有被检测到,这是矿工操纵主要共识机制的第一个证据。我们提供了我们的证据,以及对攻击者以牺牲诚实矿工为代价获得的利润的估计。

由于几个区块链仍在运行以太坊1的协议,我们建议进行具体的修复,并将其作为geth的补丁来实现。

引言

比特币[56]和以太坊[11]等加密货币依靠精心设计的激励计划来鼓励挖矿,这在面对对手时保持了系统的完整性。因此,加密货币的激励机制是其安全性所固有的。的确在比特币之后出现的无数加密货币中,以及随后的学术文献中,提出并实施了对区块链奖励机制的许多更改。做出这些改变是为了确保矿工没有动机利用系统牟利[43,49,58]。

2022年9月15日,以太坊过渡到一种新的权益证明(PoS)机制,而不是工作证明(PoW)。我们提出了对后一种机制的激励驱动攻击,也称为以太坊1。当以太坊1仍然活跃时,该攻击被披露给了以太坊基金会(EF)。我们注意到以太坊1仍被加密货币使用,如以太坊经典[14]、以太坊PoW[60]和以太坊博览会[27]。这些显然在矿工中很受欢迎:截至2023年3月1日,他们的综合哈希率是整个以太坊1生态系统峰值哈希率的12.5%[55]。

在我们的攻击中,矿工更改自己区块的时间戳,以略微增加这些区块的挖掘难度。虽然这种难度的增加似乎适得其反,但事实上,如果区块链出现分叉,这些区块更有可能被选中。由于以太坊1中的共识机制有利于难度较高的区块链,因此以这种方式创建的区块在与难度较低的区块的区块竞赛中占主导地位。矿工可以利用这一事实创建区块,以赢得竞争对手同时创建的尚未看到的区块,或者更积极地替换竞争对手已经知道的区块。

这种攻击是新颖的,因为它依赖于时间戳操作和难度调整机制之间新的、未经探索的交互。它对矿工特别有吸引力,因为它总是比遵循协议设计者制定的“诚实”规则更有利可图,这意味着我们的攻击策略主导了诚实策略。

众所周知,以太坊共识(以及其他区块链机制)中存在激励漏洞,但在实践中尚未观察到。以太坊中的大多数经济操纵和攻击都集中在以太坊的应用层,例如利用智能合约中的漏洞、提前运行和利用套利机会[72,78]。

目前已知的其他时间戳攻击要么是高度理论化的,成功概率很低[5],要么是快速修复的有针对性的漏洞[74]。

通过对以太坊区块链数据的检查,我们提供了强有力的证据,证明我们讨论的一种攻击变体已经由矿工实施了大约两年的时间。在我们的研究结果早期公布后,以太坊当时第二大矿池F2Pool的联合创始人之一承认以这种方式操纵区块时间戳(见第5节)。据我们所知,这是首次在实践中观察到矿工对共识协议的这种操纵。

贡献

我们在PoW以太坊1上提出了一个攻击向量,它依赖于时间戳操作,而不是传统的操作,如阻止[30,62]。

我们描述了这种攻击的几种变体,包括一种风险较小的变体。与根据诚实协议进行采矿相比,这种变体保证至少能获得相同的绝对和相对利润,同时减少竞争对手的利润。

通过调查以太坊区块链,我们表明该攻击是在野外执行的,从而首次提供了主要加密货币中存在共识篡改的证据。

为了证明攻击向量的可行性,我们提供了一种攻击变体的实现,作为以太坊1最受欢迎的客户端Go Ethereum(geth)的补丁。

最后,我们提出了几种缓解技术,包括针对geth的补丁,它可以防止一种形式的攻击。

我们的贡献摘要见表1。
在这里插入图片描述

攻击的简要概述

如果区块开采过快,以太坊1的DAA会导致开采难度略有增加,如果区块开采太慢,则会导致开采困难略有下降。这是通过基于与其父块的时间戳的差异来改变当前正在挖掘的块的难度来实现的。难度以9秒的离散倍数变化(见等式(1))。

由于节点之间的时钟并不完全同步,时间戳本质上是“廉价的谈话”。它们可以由矿工根据需要设置,但仍然需要单调增长,而且不能太远。这允许区块创建者稍微改变区块的难度。这样的小变化并不会使挖掘变得更加困难,但会影响在挖掘相同高度的两个冲突块的情况下,哪些块节点选择扩展。选择难度较高的区块作为主链,如图1所示。

我们后来展示了F2Pool本质上是在操纵块时间戳,而不是挖掘时间戳是其父块之后9秒的倍数的块。这种形式的操作不是最优的,可以从区块链数据中发现,但每当F2Pool挖掘出冲突的区块时,它就占据了上风。这反过来又为他们提供了更高的区块奖励,并允许他们从冲突的区块中“抢夺”高费用交易。

在无风险制造者(RUM)攻击中,我们利用以太坊DAA中的这个漏洞来主动替换另一个矿工已经挖掘并发布的区块。只有当替换一个区块就像在上面诚实挖掘一样容易时,我们才会有选择地进行攻击。我们在第3节中对攻击进行了详细解释。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1289590.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CMake编译C++项目并链接动态库

CMake编译C项目并链接动态库 最近遇到一个用CMake来编译的project。需要编译整个项目src code以及字库,并使用。我的项目目录是张这样的。 编译的时候会有两中不同的办法,一种是把库集成到可执行文件中,一种是编译成静态库然后使用。 1. 集…

STM32基础教程 p16 窗口看门狗(WWDG)

1 窗口看门狗工作原理 1.1 简介 WWDG简介 窗口看门狗通常被用来监测,由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运 行序列而产生的软件故障。除非递减计数器的值在T6位变成0前被刷新,看门狗电路在达到预置 的时间周期时,会产…

IDEA导入JavaWeb项目(Maven)

IDEA导入JavaWeb(Maven)项目教程 运行教程 亲爱的粉丝们,我深知你们对IDEA导入JAVAWeb工程的迫切需求。在这个充满竞争的时代,每一个项目都离不开高效的沟通。过程中需要对应的环境适配和软件安…

开关电源超强总结

什么是Power Supply? 开关电源的元件构成 三种基本的非隔离开关电源 三种基本的隔离开关电源 反激变换器(Flyback)工作原理 (电流连续模式) 反激变换器(Flyback)工作原理 (电流断续模式&#x…

什么因素会影响葡萄酒陈酿的能力?

糖、酸和酚类与水的比例是葡萄酒陈酿程度的关键决定因素,收获前葡萄中的水分越少,产生的葡萄酒就越有可能具有一定的陈酿潜力。那么葡萄品种、气候和葡萄栽培实践的过程就相当重要了,对陈酿的时间发挥了重要的作用。皮较厚的葡萄品种&#xf…

运维之远程桌面连接失败问题排查

背景:同一局域网,可以ping通但是远程连接不上,排查一下问题。 1、被远程计算机是否允许远程连接 2、被远程计算机防火墙是否允许 3、被远程计算机远程桌面服务是否正常 4、查看用户权限

Vue3 Element-Plus 一站式生成动态表单:简化前端开发流程

文章目录 1. 引言2. Vue3 和 Element-Plus 简介2.1 Vue32.2 Element-Plus 3. 动态表单的需求与挑战4. Vue3 和 Element-Plus 动态表单的优势4.1 Vue3的组合式API4.2 Element-Plus的表单组件 5. 一站式生成动态表单的实现5.1 准备工作5.2 创建动态表单组件5.3 使用动态表单组件 …

做亚马逊需要IP代理吗?需要纯净度高的吗?

做亚马逊跨境电商的老玩家都知道,代理IP的作用不容小觑。通过代理IP,跨境电商卖家可以进行深入的市场研究,获取关键的数据分析,助力业务决策。让卖家能够安全轻松管理不同地区的账户,轻松防关联,无缝对接多…

js模块化的应用!!!(前无古人,后无来者)

简介: 在 ES6 前, 实现模块化使用的是 RequireJS 或者 seaJS(分别是基于 AMD 规范的模块化库, 和基于 CMD 规范的模块化库)。 ES6 引入了模块化,其设计思想是在编译时就能确定模块的依赖关系&#xff0c…

【ArcGIS微课1000例】0078:创建点、线、面数据的最小几何边界

本实例为专栏系统文章:讲述在ArcMap10.6中创建点数据最小几何边界(范围),配套案例数据,持续同步更新! 文章目录 一、工具介绍二、实战演练三、注意事项一、工具介绍 创建包含若干面的要素类,用以表示封闭单个输入要素或成组的输入要素指定的最小边界几何。 工具位于:数…

【数据结构】——二叉树简答题模板

目录 一、树和二叉树的概念(一)二叉树的定义和性质(二)树和二叉树的区别 二、完全二叉树和满二叉树三、二叉树的遍历(一)由序列确定二叉树(二)不同遍历序列的关系 四、二叉树的性质&…

气膜厂家怎样确保产品质量和售后服务?

气膜厂家作为一家专业生产气膜产品的企业,确保产品质量和提供良好的售后服务是我们的责任和使命。为了确保产品质量和售后服务的可靠性,我们采取了以下措施。 起初,我们严格按照国家标准和相关行业规范进行生产。气膜产品的质量是产品能否长…

【eNSP实践】eNSP实战篇(3)之路由器、交换机、主机模拟企业网络场景(图文详解)

目录 写在前面涉及知识1、前情提要2、实践操作2.1 eNSP搭建虚拟环境2.2 建立设备连线2.3 统计IP并标注2.4 配置主机IP及启动设备 3、命令行配置3.1 启动所有设备3.2 执行命令添加端口及网关 4、实验总结写在最后 写在前面 其实我之前写了3篇文章都是针对eNSP的基础配置&#x…

深度学习猫狗分类 - python opencv cnn 计算机竞赛

文章目录 0 前言1 课题背景2 使用CNN进行猫狗分类3 数据集处理4 神经网络的编写5 Tensorflow计算图的构建6 模型的训练和测试7 预测效果8 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **基于深度学习猫狗分类 ** 该项目较为新颖&a…

Notes数据结合报表工具Tableau

大家好,才是真的好。 我希望你看过前面两篇内容《Domino REST API安装和运行》和《Domino REST API安装和运行》,更希望你能看过《Notes数据直接在Excel中统计!》,有了这些内容作为基础,今天的内容就显得特别简单。 …

虹科新闻丨虹科正式加入广州市新联会科创分会

来源:虹科电子科技有限公司 虹科新闻丨虹科正式加入广州市新联会科创分会 11月7日,由广州市委统战部、广州开发区管委会、黄埔区人民政府指导,佳都集团、佳都科技集团、广州开发区投资集团共同主办的未来之城大湾区元宇宙创新示范中心&#…

D. Jumping Through Segments

显然是一个二分答案,关键是怎么搞判断函数? 我们维护合法的降落区间就好了~ // Problem: D. Jumping Through Segments // Contest: Codeforces - Codeforces Round 913 (Div. 3) // URL: https://codeforces.com/contest/1907/problem/D // Memory Li…

2023五岳杯量子计算挑战赛APMCM亚太地区

问题一要求在特定区域内部署两个边缘服务器,以便根据计算需求分布覆盖最大的计算需求。每个边缘服务器都有一个覆盖半径为1。目标是确定两个边缘服务器的位置,以覆盖最大的计算需求。假设边缘服务器的位置位于网格的中心,每个网格内的计算需求…

最小生成树算法与二分图算法

文章目录 概述 P r i m Prim Prim 算法 - 稠密图 - O ( n 2 ) O(n^2) O(n2)思路概述时间复杂度分析AcWing 858. Prim算法求最小生成树CODE K r u s k a l Kruskal Kruskal 算法 - 稀疏图 - O ( m l o g m ) O(mlogm) O(mlogm)思路解析时间复杂度分析AcWing 859. Kruskal算法求…

JDBC增删查改操作-jsp实验-实现页面跳转

实验 JDBC增删查改操作 一、实验目的 1、掌握JDBC增删查改MySQL或者sql server数据库表的方法。 2、在增删查改页面间跳转 二、实验内容 在MySQL或者sql server中创建一张表,之后使用JDBC进行增删查改。(功能不限),包括&#xff1…