首页 财经正文

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金

admin 财经 2020-07-05 00:01:18 121 1

以色列最高学府希伯来大学工程与计算机科学学院的副教授Aviv Zohar以及希伯来大学硕士研究生Jona Harris克日公布了一份研究论文《Flood&Loot:一种针对闪电网络的系统性攻击》。提出一种闪电网络的系统性攻击,攻击者通过对闪电网络举行系统攻击,可窃取锁定在支付通道中的资金。在此攻击中,攻击者会迫使大量受害者向区块链索要资金,然后攻击者可行使拥塞窃取在停止日期之前未领取的资金。该论文证实,只需 85 个同时被攻击的通道就可保证攻击者可以窃取一些资金。此外,该论文还针对此攻击提出了几种缓解手艺。

众所周知,闪电网络支付通道网络容易受到区块链拥塞的影响,若是网络受到攻击,参与者可能无法实时提取资金。 在我们的最新论文中,我们评估了一种这样的攻击:对闪电网络的系统攻击,它可以窃取锁定在支付通道中的资金。

在此攻击中,攻击者立刻迫使许多受害者涌向区块链,索要其资金。 然后,攻击者可以行使他们造成的拥塞来窃取在停止日期之前未领取的所有资金。

攻击的效果取决于攻击者选择攻击的闪电网络实现。 我们证实,攻击者只需要同时攻击85个通道就足以窃取通道内的资金(这是假设没有其他区块链买卖争取区块空间的情形下,这是一个异常乐观的假设)。

除了从总体上领会这种攻击及其效果外,在这篇文章中,我们还提出了几种缓解这种攻击的手艺。

注重:攻击可能会使无辜用户的资金被盗。 不要在家实验这种攻击。 不幸的是,现在另有任何协议更改可以将其完全消除。 本文的研究效果已在公布前与三个主要闪电网络客户端实行的开发人员共享。

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第1张

攻击细节

该攻击行使了跨多个闪电通道转发付款的机制——哈希时间锁定条约(HTLC)。简而言之,HTLC允许参与者通过无信托的中心节点来路由付款,以确保他们中的任何一个都不会窃取资金。若是这样的节点试图窃取资金,则其对等方可以通过将买卖公布到区块链来索取资金,但只能在有限的时间内举行。正如我们在工作中所显示的,相对容易使无辜的闪电节点涌入区块链,并行使此时间限制来窃取资金。

HTLC背后的要害头脑是,在确立HTLC之后,通过提供一个隐秘(secret)(一种哈希原像),付款被通过目的节点从路径中的上一个节点“扯出”。攻击者将在他自己的两个节点之间路由付款,并在路径的末尾提取付款。当付款最终要被从源节点提取时,他将拒绝互助——迫使受害者通过区块链买卖举行索要。

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第2张

这个拓扑示例显示了攻击者的节点以及他与受害者共享的通道

该攻击分为四个主要阶段:

一 确立通道

攻击者控制两个闪电节点,划分代表源节点和目的节点。 源节点打开了许多潜在受害者的通道,可能每个受害者都有多个通道。 这些通道是由攻击者的源节点提议和提供资金的(目的节点可以远离受害者,但在下面的图中,我们简化了历程,并仅显示了一条很短的简朴路径)。

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第3张

阶段1:确立通道

二 使用HTLC付款加载通道

设置完所有通道后,源节点将最先向目的地节点举行许多HTLC付款,并通过每个源节点的通道举行路由。 源节点发送允许中继的最大金额,并将其分配到尽可能多的付款中(受害人允许的数目)。

作为HTLC机制的一部分,目的节点应该通过发回一组HTLC隐秘(secret)来接受付款。 这个攻击将制止这样做,直到源节点完成转发所有付款为止。

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第4张

阶段2:使用HTLC付款加载通道

三, 剖析最后一跳的付款

在乐成完成所有付款的发送并将HTLC添加到目的节点的通道后,目的节点将通过返回所需的secret来剖析所有付款,并为自己索取这些资金。 此时,目的节点可以正常关闭其通道,并保留源节点发送的资金。 一旦每个受害者获取了这些secret,他就会将其发送回源节点,要求剖析HTLC,并将其数目移至通道的受害者一侧。 源节点拒绝剖析付款,并忽略来自其受害者的任何进一步新闻

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第5张

阶段3:在最后一跳剖析付款

四 守候到期并网络未破费的HTLC

在这个时刻,每个受攻击的通道都充满了尚未剖析的HTLC,受害者知道它们的secret。 由于攻击者的源节点不互助,因此受害者可以获取这些付款的唯一方式是关闭其通道并在区块链上声明HTLC。 受害者有有限的时间(以区块为单元)来要求付款(若是节点不知道这些secret,则有时间限制,在这种情形下,资金应由源节点要求)。

一旦它们过时,HTLC的输出就会被攻击者破费。 只管受害者仍然可以在到期后要求HTLC,然则特定的协议详细信息为攻击者提供了很大的优势:

  • 受害人在公布买卖时无法设置买卖用度。 该用度是在打开通道时确定的

  • 攻击者可以按自己的意愿为自己的买卖设置用度,并替换到期后仍未确认的任何受害者买卖(使用“替换用度(Replace-By-Fee)”计谋)

通过攻击多个通道并强迫所有通道同时关闭(为所有HTLC设置相同的到期时间),某些受害者的HTLC声明所有权买卖将无法获得实时确认,攻击者将窃取它们。

因此,攻击者保留了一些本应留给受害者的资金(受害者下一跳的资金已发送至攻击者的目的节点)。

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第6张

阶段4:到期后网络未使用的输出

模拟效果

为了显示攻击的可行性,我们在比特币测试网络regnet上的内陆闪电网络上举行了模拟。 我们实行了攻击者节点的原型,能够阻止HTLC secret的传输,而忽略剖析HTLC的请求,并公布增添用度的HTLC声明所有权买卖。 由于LND是当今最盛行的闪电实行方案(据报道,网络上90%以上的闪电网络节点都运行LND),因此我们使用它来模拟受害节点。 如下图所示,纵然向受害者的买卖分配了区块中所有可用空间(最大区块巨细),攻击85个通道也能确保乐成举行攻击。 每增添一个通道,其所有资金也将被盗。

针对差别数目的受攻击通道和区块巨细,乐成窃取的HTLC的数目。 比特币当前的最大区块巨细为4M(与绿线相对应)。 现实上,闪电买卖的可用空间少于所有。

如图所示,当每个区块中的可用空间削减时,窃取相同数目的HTLC所需要的受害者会更少。 我们证实,当攻击者使用“团结最小化”计谋(如下所述)时,可能就是这种情形。

联博开奖:闪电网络最新破绽剖析:仅需攻击85个节点便可窃取闪电节点通道资金 第7张

针对差别数目的受攻击通道和块巨细,乐成窃取的HTLC的数目。比特币当前的最大块重为4M(与绿线相对应)。现实上,闪电买卖的可用空间少于所有

如图所示,当每个区块中的可用空间削减时,需要更少的受害者才气窃取相同数目的HTLC。我们证实,当攻击者使用“feerate-minimization(费率最小化)”计谋(如下所述)时,可能就是这种情形。

攻击放大

每个受害者买卖所支付的用度均来自通道的Feerate参数。这个feerate由通道的提议者(在我们的情形下为攻击者的源节点)确定并支付。在打开通道之前,另一个节点必须接受通道设置的feerate。若是节点相符其对区块链用度的估量,则节点赞成设置一个feerate,由bitcoind的估算方式确定。从下图可以看出,feerate的估算值可能会在相对较短的时间内发生很大的颠簸。当片面关闭该通道时,在某个时间点确定的通道feerate可能不适用于以后的时间。

Bitcoind估算的用于立刻确认的Feerate(聪/字节)

除了设置初始通道feerate之外,通道的提议人还可以在通道开放后的任何时间提出新的feerate,以将其调整为当前的区块链用度状态。闪电协议指出,在我们的情形下,另一方(即受害者)不允许提出任何feerate的更新请求。在“feerate-minimization”计谋中,攻击者在可能的情形下(即,在区块链用度较低时(因此另一方会赞成这一更改))使用用度更新机制降低通道的feerate,但从在区块链用度高时举行更新。一旦通道的用度率与现实的区块链用度率之间的差异变得很大,攻击者就可以最先启动所有HTLC付款并提议攻击。在下图中,我们看到了当攻击者连续3天和7天使用feerate-minimization计谋时,受害者可用的平均区块空间。例如,当攻击者试图在最先攻击前7天将用度降到最低时,受害人只有58%的时间可以使用平均一半的区块空间,或者更多(在2个月的时间内网络数据)

当使用“feerate-minimization”计谋时,受害者买卖可用的平均区块空间

寻找潜在的受害者

在这项工作中,我们还解释,找到潜在受害者对于攻击者来说并不是一件工作量很大的事情。 为了使节点成为攻击的受害者,节点只需要接受与攻击者打开通道的请求。 如闪电协议中所述,节点可以通过响应“ accept_channel”新闻来显示其打开通道的意愿,这时刻并不需要真的打开通道。 我们举行了一项实验,其中测试了网络上许多节点与未知节点打开一个通道的意愿。 我们发现绝大多数流动节点(〜95%)愿意凭据这个请求打开通道,因此很容易成为这种攻击的受害者。

节点对“ open_channel”请求的响应

缓解措施

对于这种攻击,多种手艺可以使攻击者的难度加大,并降低攻击的潜在危害。以下是我们提出的一些缓解手艺。

1)削减未剖析的HTLC的最大数目:攻击者可以通过被攻击通道举行路由的最大付款次数由通道的参数“ max_accepted_htlcs”确定。若是该参数的值保持较低,则攻击者将不得不攻击更多的通道才气乐成窃取资金。

2)提前关闭通道:受害人要求其资金的时间(区块)由特定于实现的参数确定。大多数闪电网络实行所使用的值要比它们可能使用的值小得多(以制止过早关闭通道)。可以基于通道的当前状态,例如,未剖析的HTLC的数目或总的未剖析的值,增添该参数一个恒定因子或者甚至动态地设置。

3)立刻释放HTLC声明所有权买卖:某些实现在释放HTLC买卖以声明其输出之前一直等到确认其已公布的commitment。 节点可以而且应该立刻与这个commitment一起释放这些买卖,以允许更多买卖可以进入的潜在区块。

4)基于信誉的行为:通道的参数会极大地影响乐成攻击的可能性。 凭据某些计谋,节点可以为与为其分配了“良好信誉”的当事方的通道使用更多的允许参数。

只管有差别的缓解措施可以降低攻击的风险,然则完全消除风险似乎是一项庞大的义务。 我们以为,在许多方面,所行使的破绽是HTLC工作方式所固有的,因此,若是纰谬HTLC机制举行重大修改,就无法完全制止攻击。

,

AllbetAPP下载

欢迎进入AllbetAPP下载(Allbet Game):www.aLLbetgame.us,欧博官网是欧博集团的官方网站。欧博官网开放Allbet注册、Allbe代理、Allbet电脑客户端、Allbet手机版下载等业务。

版权声明

本文仅代表作者观点,
不代表本站通辽信息网的立场。
本文系作者授权发表,未经许可,不得转载。

发表评论

评论列表(1人评论 , 121人围观)
  • 2020-07-05 00:01:18

    环球UG欢迎进入环球UG官网(UG环球),环球UG官方网站:www.ugbet.us开放环球UG网址访问、环球UG会员注册、环球UG代理申请、环球UG电脑客户端、环球UG手机版下载等业务。我算前排不?

站点信息

  • 文章总数:1839
  • 页面总数:0
  • 分类总数:8
  • 标签总数:2471
  • 评论总数:598
  • 浏览总数:362520