1. 主页 > 链百科

以太坊系列三 | “以太坊合并”时有哪些安全问题不容忽视?

okex欧意交易所

okex欧意交易所

欧意OKX官网:okx33.com)是全球顶尖的数字货币交易平台,提供币币交易和合约交易。

APP下载  官网地址

1、深度 | 以太坊“大合并”后,Web3的精神内耗能否治愈?

2、以太坊系列(二) | “突破”合并后,以太坊将面临哪些监管问题和应用层问题?

本章主要介绍以太坊与 PoS 共识机制融合后可能面临的共识级攻击。

1_ 小质押者的攻击

短程重组

这是对信标链的攻击,攻击者通常会向其他验证者隐藏部分信息,然后在特定时刻发布,以实现双花或通过前置大交易提取 MEV。这种攻击也可以扩展到多个区块eth分叉时间,但成功的概率会随着重组时间的增加而降低。

这种攻击本质上是一种区块重组,可以分为两种类型:事前重组和事后重组。其中,预重组是指攻击者在主链创建区块之前将其替换掉;后重组是指攻击者删除主链中经过验证的区块。在 PoS 以太坊中eth分叉时间,如果你想事后重组,你必须拥有其 2/3 以上的股权。同时研究表明,即使攻击者拥有以太坊65%的股权,攻击成功的概率也小于0.05%。

短程重组攻击是通过事前重组来实现的,攻击者不需要控制以太坊中的大部分质押ETH即可实现,成功几率随着控制质押比例的增加而增加。

反弹攻击和平衡攻击(和)

平衡攻击 (and ) 攻击是指攻击者采取特定步骤将诚实验证者集拆分为在区块上存在分歧的离散组。

具体来说,攻击者等待机会提出一个块,当它到达时,他们在同一个时隙中提出两个块。他们将一个区块发送给诚实验证者集合中的一半,并将另一个区块发送给另一半。分叉选择算法将检测到这种冲突情况,出块者将被削减并从网络中弹出。但是上述两个区块仍然存在,并且将有大约一半的验证人集证明每个分叉。

以单个验证者削减成本为代价,攻击者成功地将区块链一分为二。同时,剩余的恶意验证者拒绝提供他们的证明。然后,在执行分叉选择算法时,有选择地将支持一个或另一个分叉的证明发给足够多的验证者,这使他们能够生成具有最多累积证明的分叉。这可以无限期地持续下去,攻击者在两个分叉上保持验证者的均匀分布。由于两个分叉都无法吸引 2/3 的绝对多数,信标链最终无法达成共识并产生区块。

在这种攻击方式中,攻击验证者控制的权益比例越大,在任何给定时期进行攻击的可能性就越大,因为他们更有可能选择验证者在每个时隙中提出一个块。即使只控制了 1% 的股权,平均每 100 个 epoch 就会有机会发起一次平衡攻击,这不会花费太长时间。

一种称为反弹攻击 ( ) 的类似攻击也只需要控制一小部分权益。在这种情况下,攻击者的验证者将拒绝投票。在这种方法中,攻击者不是通过投票来维持两个分叉之间的平均分配,而是在适当的时候使用他们的投票来证明分叉 A 和分叉 B 之间的备用检查点是合理的。两个叉子之间的这种翻转停止了最终性。

雪崩攻击 ( )

2022 年 3 月的一篇论文描述了另一种类型的攻击,称为雪崩攻击 ()。本文的作者认为,提议者权重提升 (-) 方案未能防止雪崩攻击的某些变体。然而,该论文的作者也只展示了对以太坊分叉选择算法的高度理想化版本的攻击(他们使用了没有 LMD 的 GHOST)。其中,GHOST分叉选择算法会累积第一个分叉区块及其所有对应后代区块的票数,选择得票最多的分叉作为主链。

假设发起雪崩攻击,前提是攻击者可以控制多个连续区块的提议者。当提议者提议一个插槽时,攻击者将扣留并收集他们的块,直到扣留的块达到与主链块相等的累积权重。然后,攻击者将释放所有被扣留的块。此时,由于主链和子链的权重相同,区块链会分叉,导致后续区块的顺序混乱。例如,攻击者扣留了 6 个区块,第一个诚实区块 n 同时与第一个敌对区块 n 竞争,此时系统中产生了一个分叉。然后,攻击者在第一个敌对块之后的 n+1 处并行连接所有剩余的 5 个敌对块。

如下图所示,由于 GHOST 分叉选择算法的特点,敌对区块 n 和后续所有 5 个分叉与原链中的 6 个区块所累积的权重相等,这意味着第 7 个区块在系统具有相同的重量。每个区块都有一定的概率会选择在攻击者创建分叉之后进行连接。在这种情况下,攻击者可以对剩余的保留块重复此操作,防止诚实的验证者在验证后继续跟随主链,直到攻击者耗尽所有保留块。如果攻击者在攻击过程中有更多机会拿出区块,他们可以利用这些区块来扩大攻击规模,这样参与合谋攻击的验证者越多,攻击持续的时间就越长,

图片来自“Two On Proof-of-Stake GHOST/”

虽然 LMD-GHOST 分叉选择算法的 LMD 部分减轻了雪崩攻击,但 LMD 或“最后一条消息驱动”是指每个验证器保存的包含从其他验证器接收到的最新消息的表。仅当新消息来自比特定验证器表中已存在的消息更晚的插槽时,才会更新此字段。实际上,这意味着在每个插槽中,接收到的第一条消息是它接受的消息,其他消息将被忽略。换句话说,共识客户端使用来自每个验证者的最先到达的消息,冲突的消息被简单地丢弃以防止雪崩攻击。

远程攻击

远程攻击也是权益证明(PoS)共识机制下的一种特定攻击方式,主要包括以下两种情况:

在第一种情况下,攻击者作为参与创世块的验证者,在原始区块链旁边维护一个单独的区块链分叉,并最终说服诚实的验证者在很久以后的某个时间点切换。但是这种攻击在信标链上是不可能的,因为“”确保所有验证者定期就诚实链(“检查点”)的状态达成一致,在此之后无法重组检查点之后的块。

第二种情况是当一个新的节点加入网络时,区块链会根据从离它最近的节点(称为弱主观性检查点)获得的信息构建区块链作为伪创世块。这将为加入网络的新节点创建一个“信任网关”,然后他们才能开始自己验证区块。但是,从区块浏览器等客户端收集构建检查点所需的可信区块信息并不能增加客户端本身的可信度,因此主观性“弱”。因为根据定义,检查点由网络上的所有节点共享,所以不诚实的检查点是共识失败的状态。

2_ 大型质押者的攻击

33%

33% 质押的 ETH 数量是攻击者的基准,如果超过这个数量,他们就有能力阻止信标链完成,而无需对其他验证者的行为进行细粒度控制。这是因为要最终确定信标链,必须质押 2/3 的 ETH 来证明成对的检查点。

如果 1/3 或更多的质押 ETH 被恶意证明或未能证明,那么 2/3 的绝对多数将不存在。对此的防御是信标链的负惩罚(泄漏)机制,这是一种紧急安全措施,当信标链在 4 个 epoch 后失败时触发。负惩罚识别未能证明或证明与大多数人相反的验证者。这些非认证验证者拥有的质押 ETH 会逐渐耗尽,直到最终它们占总数的不到 1/3,以便区块链可以重新启动。

50% 和 51%

理论上,由于 50% 的质押 ETH 由恶意验证者控制,他可以将以太坊区块链分成两个大小相同的分叉。与前面描述的平衡攻击类似,攻击者可以通过为同一个插槽提出两个块,然后简单地使用其全部 50% 的股份投票反对诚实验证者集并阻止最终确定性来维护两个分叉。

在四个 epoch 之后,减少泄漏机制将在两个分叉上激活,因为每个分叉都会看到其一半的验证者无法证明。每一次分叉都会减少另一半验证者集合的质押权益,最终两条链都无法达到大多数验证者的 2/3。在这一点上,唯一的选择就是依靠社区恢复。

当攻击者控制的质押权益占比超过 51% 时,就可以控制分叉选择算法。在这种情况下,攻击者将能够以多数票作证,给予他们足够的控制权来执行短期重组,而不会欺骗诚实的客户。控制 51% 的股份不允许攻击者改变历史,但他们有能力通过对有利于他们的分叉应用多数票或重组区块来影响未来。

诚实的验证者也会效仿,因为他们的分叉选择算法也会将攻击者选择的链视为最重的链,从而最终确定攻击链。这使攻击者能够审查某些交易,执行短程重组,并通过对有利于他们的块重新排序来提取最大 MEV。对这个问题的防御是多数股权的巨大成本,这使攻击者面临巨大的风险,因为社会层可能会介入并采用诚实的少数派分叉,这会大大降低攻击者的股权。

66%

控制 66% 或更多质押 ETH 的攻击者可以在不控制其他诚实验证者的情况下确定他们的首选链。攻击者可以简单地对他们想要选择的分叉进行投票,然后完成它。作为绝对多数的质押者,攻击者将始终控制最终区块的内容,拥有消费、回滚和再次消费的权力,他还可以审查某些交易并随意重组区块链,当攻击者实际上拥有重组能力时并最终在事后逆转(即改变过去并控制未来)。唯一的防御措施是通过社会层的参与来协调采用替代分叉。

一般来说,尽管存在这些潜在的攻击向量,但信标链的风险很低,甚至低于工作量证明等效链的风险。这是因为攻击者需要将质押 ETH 的巨大成本置于风险之中,以压倒具有投票权的诚实验证者。内置的“胡萝卜加大棒”激励层可以防止大多数恶意行为,尤其是对于低风险的攻击者。更微妙的反弹和平衡攻击也不太可能成功,因为真实的网络条件很难实现对特定验证者子集的消息传递的细粒度控制,并且客户端团队已经通过简单的补丁反弹攻击快速修复了已知问题,平衡攻击和雪崩攻击问题。

但是 34%、51% 或 66% 的攻击可能需要社区投票来解决,因此对社区的有效治理是对攻击者的强大抑制作用。对于攻击者而言,技术上成功的攻击仍然存在被社区阻止的风险,这降低了攻击者获利足以起到有效威慑作用的可能性。这就是为什么维持一个有效的价值一致观点社区对投资如此重要。

3_ETH PoW 安全性

自以太坊成立以来,矿工在以太坊中发挥了重要作用,但以太坊合并将打破这一点。据估计,GPU 矿工将需要关闭大约 95% 的 GPU,才能在组合的加密生态系统中保持盈利。但是这么多 GPU 不太可能在合并后立即关闭,因此矿工可能会在合并后尝试进行 PoW 分叉。事实上,一些矿工也确实表达了对分叉的支持。而如果一些交易所也同时支持分叉,那么分叉的寿命会比预期的更长。

另外,以太坊分叉项目Pow的官网已经建立并开始行动:

2022 年 8 月 15 日,以太坊分叉项目 Pow 发推文称,ETHW Core 的初始版本已经在 ETHW Core 上发布,主要特点是:1、禁用难度炸弹;2、EIP-1559变更,基础费用变更为矿工与社区共同管理的多重签名钱包;3、调整了ETHW的初始挖矿难度。

2022 年 8 月 26 日,以太坊分叉项目在推特上发布了 ETHW 的第一个测试网络“”。随之而来的是区块链浏览器和 RPC 服务器。我们欢迎社区中所有潜在的合作伙伴(交易所、矿池、钱包提供商、桥梁、建设者等)加入我们,共同构建真正的 PoW 驱动的以太坊生态系统。

那么,以太坊合并升级后的硬分叉可能会出现哪些安全问题,下面我们将详细分析。

1、哈希攻击

eth发行时间_eth分叉时间_eth柏林硬分叉还能挖矿

51%算力攻击是对区块链网络的潜在攻击。当系统中的恶意单个实体或组织可以控制大部分算力时,即当全网超过 51% 的算力时,PoW 算法中的共识由算力决定。,这使得攻击者可以利用计算能力篡改账本,从而对系统造成恶意攻击。以太坊合并后,无法再通过挖矿获得收益的矿工将关闭自己的矿机,从而导致基于 PoW 的 ETH 分叉可能会损失部分算力。例如,最大的矿池已经宣布将停止支持 ETH。PoW 挖矿。

图片来自

一旦支持的算力下降,就会降低攻击者发起算力攻击的成本。然后攻击者可以租用大量矿池算力,使其算力达到51%以上。这时候,利用算力可以更快的生成区块。当生成的区块成为系统中最长的链时,区块交易可以回滚,可以实现数据篡改,造成极大的危害,例如双花、控制任意地址的交易等。下面将分别介绍:

双花

双花攻击是指攻击者试图重复使用其帐户拥有的相同数字令牌的攻击。例如:

假设 A 拥有 51% 的算力,当区块高度为 1000 时,A 向 B 转账一个 ETH,转账交易由矿工打包。

交易确认后,A 依靠 51% 的算力优势在块高 999 后重新生成一条“更长的链”,并在块高 1000 处将 ETH 重新转移给 C,交易记录被删除。打包,即链中包含了 A 向 C 转移 ETH 的记录。

根据“最长链共识”,包含向 C 转账记录的链成为主链,从 A 转账到 B 的 ETH 是“无效支付”。

控制来自任何地址的交易

如果拥有51%的算力,攻击者可以任意打包或不打包某个地址的交易,还可以阻止区块确认任何交易,甚至阻止部分矿工获得有效记账权,从而达到控制任何地址的交易。的目标。

但是,拥有 51% 的算力并不是万能的。比如不能修改别人的交易记录,不能阻止交易的发行,不能凭空生成ETH。

2、重放攻击

在传统的计算机术语中,重放攻击( ),也称为重放攻击或重放攻击,是指攻击者发送目标主机已经接收到的数据包来欺骗系统。在区块链领域,重放攻击通常出现在区块链硬分叉时,指的是“一条链上的交易通常在另一条链上是合法的”。

2016 年 7 月 20 日晚,以太坊在第 192 万个区块高度发生硬分叉,产生两条链,分别称为 ETH 链和 ETH 链,对应的代币为 ETH 和 ETC。

由于两条链上的地址和私钥相同,交易格式完全相同,因此一条链上的交易在另一条链上是完全合法的。因此,您在一条链上发起的交易,在另一条链上重播,也可能被确认。由于事先没有计划,很多人利用这个漏洞不断在交易所进行ETH充值和提现操作,以获得额外的ETC。至此,“重放攻击”在区块链世界被重新定义。

这次以太坊合并升级,大概率的硬分叉,理论上也可能存在上述问题。

如何防止重放攻击?其实为了升级的目的实现分叉是很容易的,因为硬分叉升级会使用不同的客户端版本,而事务的前缀通常包含发起事务的客户端的版本信息。分叉后,为了避免老客户端的“非法交易”(不是恶意交易,而是版本号太低,其他节点无法识别),矿工通常会拒绝某个版本号之前的交易,以确保它是恶意攻击者很难在硬分叉升级期间通过重放攻击窃取资金。

2022 年 8 月 23 日,以太坊分叉项目正式发文称,ETHW Core 发布第二次代码更新以强制执行 EIP-155。此次更新后,所有交易都必须使用链 ID 进行签名。这将保护 ETHW 用户免受来自和其他分叉代币的重放攻击。

这里简单介绍一下 EIP-155:

该提案的标题是“简单重放攻击保护”。该提案指出:如果阻止。>= 并且是可用的,那么在计算交易的哈希值进行签名时,而不是仅仅对前面的六个 rlp 编码元素(nonce, , , to, value, data)进行哈希处理,而是将九个 rlp 编码元素(nonce,,,, to, value, data, , 0, 0) 应该是hash,此时签名中的v值不再是recid,而是recid+ *2+ 35。

所以,简单来说,在签署交易时,需要提供一个()和 key()。这是必要的,因为在 EIP-155 修复简单重复攻击漏洞后,旧区块链的签名方式需要保持不变,但需要提供新版本的签名方式。所以通过接口实现新旧签名方式,根据区块高度创建不同的签名者。在 EIP-155 中实现的新哈希算法的主要目的是获取交易的哈希值进行签名。与旧方式相比,链ID和两个空值混合在哈希计算中。请注意,此哈希与 中的事务哈希不同。

图片来自《区块链技术与实现》

这样,一个签名的交易只能属于一个唯一确定的区块链。

另外,为了保证项目的安全,建议项目方在合约中进行离线签名验证时,将Chain ID包含在签名数据中,避免因跨链签名复用造成资产损失.

3、应用层项目

实际上,常规分叉需要算力才能做出选择,而选择的主角是矿工。如果在这次以太坊升级中同时出现两条以太坊链,那么需要做出选择的是整个以太坊。生态是项目方、用户、投资人。

与 2016 年的硬分叉相比,今天的以太坊与过去相差甚远。DeFi 项目已经占据了以太坊生态的半壁江山,但 DeFi 项目的基础是链上资产,所以项目方主要跟随资产方。去。所谓资产端,是指usdt、USDC等链上稳定资产。DeFi 的抵押借贷生态基本是以资产端为主。

对于这些稳定资产(这里主要是稳定币)的发行人来说,如果以太坊网络分叉,他们突然面临一个危险的问题:稳定币有两个版本。作为一个稳定币发行人,你突然对每一个发行的稳定币都有两个债务义务。

虽然大多数人认为稳定币发行者会将新的 PoS 链视为“真正的”以太坊网络,但如果他们想要支持 PoW 链怎么办?毕竟,他们有足够的经济动机去做这件事。

例如,他们可以做空 PoS 以太坊代币,在 PoW 网络上宣布赎回,并赚取数十亿美元。这可能会破坏新的以太坊网络,导致贷款清算以及协议、交易所和相关 DeFi 项目的关闭。这将造成巨大的混乱,并可能大规模破坏加密货币市场。

同样,以太坊分叉项目在 8 月 17 日发推称,ETHW Core 将引入流动性池冻结技术来保护用户资产,即在以太坊 PoW 硬分叉之后,尤其是前几个区块,用户将 ETHW 代币存入流动性池中,例如, , Aave 将被黑客和科学家使用已弃用或不使用价值 的方法交换或借出usdt、USDC、WBTC,这将对整个网络和社区造成巨大破坏。因此,ETHW Core 暂时冻结了某些 LP 合约,以保护用户的 ETHW 代币,直到协议的控制者或社区找到更好的方式来返还用户的资产。冻结不适用于仅涉及单一资产的质押合约(例如 ETH2.0 存款合约和以太币)。

参考:

“PoS 和”

《什么是对区块链的重放攻击》

《区块链技术与实现》

Web3安全态势深度研究报告下载

2022年上半年Web 3安全态势如何?

在成都联安官方微信公众号后台留言回复关键词:研究报告获取《2022年上半年成都联安Web 3安全态势深度研究报告》PDF下载链接“!

点击关注再去吧~

原文源自微信公众号(成都联安):以太坊系列(三)|《以太坊合并》)有哪些不可忽视的安全问题?

币安Binance

币安Binance

币安交易所app是全球顶尖的虚拟货币交易平台。

APP下载  官网地址

本文由链应用发布,不代表链应用立场,转载联系作者并注明出处:https://www.xiangboz.cn/baike/4661.html