LIC:区块链安全——什么是日蚀攻击(Eclipse Attack)?_ALIEN币

日蚀攻击是一种相对简单的基础攻击,攻击者可能会通过该攻击方式干扰网络上的节点。顾名思义,该攻击能够使对等网络中被攻击节点无法获取有效信息,从而引发网络中断或为更复杂的攻击做准备。

从表面上看,日蚀攻击(Eclipse

2015年所发表的《在比特币对等网络上的日蚀攻击》论文中,对该概念进行了详尽的讨论,其中来自波士顿大学和希伯来大学的研究人员报告了他们进行日蚀攻击的实验结果,以及与之对抗的防范措施。

日蚀攻击的工作原理

比特币矿工需要专用设备生成验证新区块,但是非挖矿节点仅需要非常小的算力即可运行。通过这种方式,任何人都可以在廉价设备上运营节点,这也有助于比特币的去中心化。软件程序维护了与对等方同步的事务处理数据库,以便与网络保持同步。

Linea负责人:以太坊EIP-4844有望将Rollup成本削减逾90%:9月9日消息,Consensys的zkEVM Linea负责人Nicolas Liochon在韩国区块链周期间接受采访时表示,proto-danksharding(也被称为以太坊改进提案EIP-4844)有可能将Rollup成本削减逾90%。

Liochon解释说,Linea上交易成本仅相当于以太坊L1上成本的1/15,但Rollup成本仍较高。EIP-4844引入可以发送并附加到以太坊区块的数据块,其中存储的数据无法被以太坊虚拟机(EVM)访问,并设置为在指定的时间段后删除。这一创新有望大幅降低交易成本,解决数据可用性的核心问题,这一问题占到Rollup成本的95%。Liochon强调,Linea的Prover负责链下计算、验证、捆绑以及生成组合交易的加密证明,这些仅占总成本的20%。

此外,Linea希望成为适用于以太坊生态系统中各种DApp和解决方案的多功能zkRollup,以满足DeFi、游戏和社交应用的需求。[2023/9/9 13:28:48]

对大量节点连接的限制因素是带宽。因此,尽管有大量设备可以运行该程序,但比特币网络中设置了连接数量限制,普通设备无法直接与其他设备进行互连。

以太坊开发人员考虑将验证者限制从32ETH提高到2048ETH:6月19日消息,在周五举行的最近一次以太坊核心开发者共识会议上,以太坊基金会研究员兼拟议变更的主要支持者 Michael Neuder 提出将每个验证者的最大验证者余额从 32 ETH 提高到 2,048 ETH。他说,虽然目前(32 ETH)的验证者上限促进了去中心化,但它无意中导致了验证者集规模的膨胀。Neuder 表示,提高上限可能会减缓活跃验证者集的扩张——最终提高网络在单个以太坊时隙内实现最终性方面的效率。提议的增加上限还将引入自动复合验证器奖励的可能性。[2023/6/19 21:47:47]

在日蚀攻击中,攻击者会确保目标的所有连接都建立在攻击者所控制的节点上。攻击者将首先从自己的IP地址向目标地址发送泛洪,受害者可能会在程序重启时连接到攻击者的IP地址。可以强制重启,或者仅等待程序自动重启。

瑞士楚格公民可在以太坊区块链上注册数字身份证:Uport作为以太坊区块链的数据平台,已经为瑞士楚格公民提供了注册数字身份证的服务。这一举动无疑相当于里程碑式的事件,因为它表明:政府可以使用以太坊区块链进行公民身份的数字验证。另外,楚格也计划在2018年春季提供电子投票计划。[2017/11/24]

如果发生这种情况,毫无戒心的受害者就会听从恶意节点的摆布,攻击者向它们提供了错误数据,他们无法从真实网络中获取到数据。

日蚀攻击造成的后果

如果攻击者通过消耗网络节点的资源,能够使其从网络中分离,那么他们就有动机实施此类攻击。如果节点被隔离了,攻击者就可以实施几次连续攻击。

无需确认的“双花”

如果独立节点接受了未经确认的交易,那么就会发生“双花”风险。如果发生的交易在进入区块之前,可能已经进行广播了,那么发送方就可以在其他地方轻松得进行一次新的交易,花费掉与此前交易相同的金额。如果新产生的交易手续费较高,这个时候矿工们会优先处理该笔交易,并认为这笔交易是最先发生的,从而造成最先发生的交易无效。

某些商户和个人接受这些0确认交易。假设某个商人Bob,他销售高端汽车。他不知道Alice已将将他的节点进行了日蚀攻击,再看到她的豪华跑车订单后,也没有产生任何怀疑。Alice创建了交易,Bob随即将其广播到网络。在看到付款消息即将被确认后,感到非常满意,他将车钥匙交给了Alice,Alice开车加速离开。

而实际上,交易并没有被广播到网络中,Bob只是将交易传递到了Alice的恶意节点中,而Alice所控制的恶意节点也不会将交易传递到真实节点中。因此,该笔交易会被认为无效,这个时候Alice在网络上又支付了同样的金额,可以是转给她自己也可以是转给其他人。即使最后在真实网络中看到了最初和Bob之间的初始交易,但由于Alice账户中的资金已经使用掉,该笔交易也无法被验证。

需N次确认的“双花”

需N次确认的“双花”与无需确认的“双花”相类似,只是涉及更多的准备工作。许多商户都希望付款被标记为有效之前能够先等待一定数量的确认。为了解决该问题,攻击者必须使矿工和商户节点都进行日蚀攻击。如果攻击者与商户建立了订单,他们就会向的矿工广播交易。商户可以在区块链网络中看到交易被确认,但由于矿工和商户所在的网络都被隔离了,因此该区块链并不是大多数真实节点所能够见证的。

攻击者将该虚假的区块链网络信息发送给商户,商户在看到交易已经被确认后,就进行了商品的交接。而当这些遭受日蚀攻击的节点重新加入真实网络后,真实的区块链网络会认为这部分节点是无效的,从而将这部分节点进行孤立。

削弱矿工之间的竞争

遭受日蚀攻击的节点会继续运行,不会受到被网络隔离的影响。矿工将继续在协议规定的规则范围内对区块进行验证,但是添加的区块将会在和真实网络节点进行通过的过程中进行丢弃。

从理论上讲,对大部分矿工的大规模日蚀攻击可用于促进51%攻击。就目前的情况而言,即使是最有资源的攻击者,接管大多数比特币算力的成本也过于高昂,攻击者至少需要以超过40TH/s的算力进行尝试。

我们假设将这种算力分布在10个参与者中,攻击者可以通过将这些参与者从网络隔离,大大降低51%攻击的要求。如果其中的5个节点遭受日蚀攻击,攻击者就可以减少40TH/s的算力,用于来寻找下一个区块,并且攻击者现在只需要提高20TH/s的算力即可实现对节点的控制。

通过对目标实施日蚀攻击,可以实现的其他破坏性活动,包括操纵节点进行非法挖矿活动,或利用矿工之间的算力竞争来获取下一个区块。

减缓日蚀攻击的影响

如果拥有足够多的IP地址,攻击者就可以对任何节点实施日蚀攻击。而防止这种情况发生的最直接方法是让阻止节点的非法接入,并仅建立到特定节点的出站连接。但是,正如研究论文所指出的那样,这并不是一种可以大规模实施的方案,如果所有参与者都采取这些措施,则新节点将无法加入到网络。

作者曾对比特币程序提出了的一些调整方案,而其中的一些也在白皮书发布后,集成到了比特币程序中。通过对代码进行较小的修改,例如随机选择新连接和提升地址的存储空间,这些措施都会使日蚀攻击的成本不断升高。

总结

日蚀攻击是在对等网络上进行的。作为一种可独立攻击部署的方式,它们会让人感到厌烦。进行日蚀攻击的真正目的,其实是为了实施其他能够造成更大影响的攻击,或者为攻击者提供了在挖矿方面的优势。

普遍来说,日蚀攻击尚未造成严重影响,尽管区块链网络中已部署了防范措施,但威胁仍然存在。日蚀攻击与比特币和其他大部分加密货币所面临的大多数攻击一样,最好的防御措施是让恶意攻击者无利可图。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

[0:15ms0-4:728ms