工作量证明区块链的激励攻击研究(PoW)

译者的前言:由比特币代表的未经许可的工作负载证明(PoW)区块链不仅面临51%的攻击威胁,而且还有贿赂攻击的可能性,尤其是交易排序和排除攻击引起了很多关注,在此研究人员系统地分析和分类了贿赂攻击和类似技术(统称为激励攻击),并提出了三种改进版本的激励攻击方法,证明了问题领域。它尚未得到充分探索。与之前的贿赂攻击相比,这些通过智能合约进行攻击的新方式不仅不需要信任,而且还大大降低了攻击成本。这表明只有诚实和拜占庭演员才能准确反映未经许可的PoW加密的安全属性。

最初的作者来自SBA研究,伦敦帝国理工学院,伦敦大学学院,IC3和IOHK。完整的研究人员名单如下:

(图片由pxhere.com提供)

以下是该文件的翻译:

摘要

2016年,首次提出了加密货币贿赂攻击的可行性。从那以后,学术界提出了各种新的技术和方法。最近在现实世界中对小型加密的51%攻击凸显了当前贿赂攻击的威胁,特别是对于未经许可的加密货币。

本文系统地分析和分类贿赂攻击和类似技术(统称为激励攻击)。此外,我们已经证明,通过提出一些新的和改进的激励攻击,尚未充分探索问题领域。

我们认为激励攻击(没有分叉和近叉)是一个强大但被忽视的类别。特别是,交易分类和排除攻击已经导致学术界对智能合约平台等最先进的加密货币存在严重的安全问题。

此外,我们提出了第一个不受信任的带外贿赂攻击,即使在失败的情况下,也可以促进不同区块链之间的双重勾结,以补偿合作者。 。

因此,这种攻击的成本比鲸鱼袭击等类似的贿赂技术便宜85%至95%。此外,我们实施了所有带外攻击的基本构建模块,作为以太坊智能合约来展示其可行性。

一,介绍

“只要诚实节点共同控制的总CPU功率超过任何协作组攻击者节点,系统就是安全的。” – Nakamoto Satoshi(25岁)。

尽管对加密货币领域的研究正在增加,但仍然不清楚比特币(和Nakamoto Satoshi共识)是否在实际条件下具有激励相容性,以及系统的预期属性是否来自矿工的适当实际模型(10)。贿赂攻击,特别是目标激励兼容性,假设至少有一些矿工采取理性行动,即他们接受贿赂以实现利润最大化。如果攻击者和所有贿赂矿工都能获得相当大的计算能力,那么攻击即使在很短的时间内也能成功。因此,通过诸如Crypto51之类的事件有效地强调获得大多数计算能力的经济可行性,特别是对于小PoW货币。

另一个令人担忧的严重原因是交易排序和排除攻击(例如(19)),它可以作为(近叉或无叉)刺激攻击来执行。因此,对手的目标是贿赂矿工,以便他们能够以对对手有利的方式建造新的(有效的)区块。在最近的研究中,经常强调和分析这种类型的这种类型的攻击的特殊形式,称为前线运行,侧重于它在以太坊平台上的应用(12,14)。

合理的矿工(没有信任)向最高出价者拍卖他们的区块报价(即投票)的可能性提高了大多数未经许可的区块链和索赔的基本安全性。

迄今为止,大多数激励攻击都中心化在优化参与者的效用上。在本文中,我们还考虑了贿赂如何破坏机制的设计并导致理性参与者偏离规则。为此,我们首先系统地揭示了贿赂,前线跑步,金手指和其他相关攻击的研究主题。这些技术可以概括为一般术语激励攻击,因为它们都打算篡改系统中理性参与者的激励。

本文系统地提出了激励攻击,其中三个是新提出的,其中两个是以前没有完全代表的不分支和近分叉刺激攻击。

第三个是第一个,是一个双花的共谋攻击,鼓励对带外情况不信任。

此外,我们还引入了三项激励攻击的关键增强功能:(i)短暂的挖矿中继,作为执行无信任,有时间限制的跨链激励攻击的机制,以及(ii)即使攻击失败也是如此,它还确保被贿赂的矿工可以收到付款,这实际上可以降低此类攻击的成本,以及(iii)众筹攻击,进一步降低实施激励攻击的个人成本。

1.1论文概述

本文首先概述了通常分析和新提出的刺激攻击的一般系统模型假设的共性(第2节)。

第3节系统地分析和比较有关贿赂攻击和相关攻击的文献。

在第4节中,我们首先概述了新的双赢攻击,包括必须满足的主要技术要求。

第5,6和7节详细介绍了如何使用这些技术来攻击当前的加密货币。

在第八部分,将一般性地讨论该论文,最后的第9部分是结论性的评测。

注:原始论文还提供了有关实施(短挖矿接力)和附录中个别攻击评估的详细信息,读者有兴趣查看原始文本。

二,一般系统模型

对于所有分析和建议的刺激攻击,我们使用以下一般系统模型。如果分析的攻击偏离此模型,则在描述攻击时将突出显示。我们还介绍了与攻击相关的其他假设和必要条件。

这些激励攻击是针对未经许可的工作证明(POW)加密货币进行的。换句话说,我们假设该协议遵循比特币(25)的设计原则,并且通常被称为Nakamoto共识或比特币基础协议(17,26,31)。

在受到攻击的加密货币中,我们尊重参与协商一致协议并试图解决战俘问题的矿工以及未参加此类活动的客户。与之前关于贿赂攻击的研究一样(9,21,23,32),我们假设一组矿工是固定的,并且他们各自在网络中的计算能力保持不变。为了从货币细节中抽象出来,我们使用术语值作为一定数量的加密货币或任何其他带外基金(例如法定货币)的共同面值。

矿工和客户可以具有加密货币单位,并且可以通过在网络中创建和广播有效交易来转移该值。

此外,正如之前的工作,如(21,23,33),我们做出一个简化的假设,即货币的汇率在攻击期间保持不变。

参与的矿工分为三组,他们的角色在袭击期间保持不变。分类遵循BAR(拜占庭,利他,理性)(5,20)模型。

  1. 拜占庭矿工或攻击者(Blofeld):攻击者B希望对目标加密货币进行激励攻击,B控制贿赂基金(FB> 0),根据攻击情况,可以是带内或带外。它在目标加密货币中具有一些或没有功率(α≥0)。攻击者可能会随意偏离协议规则。
  2. 利他主义或诚实的矿工(爱丽丝):诚实的矿工A总是遵守协议的规则,因此他们不会接受贿赂,并且在不同的区块链州开采,他们不会偏离规则(即使这会带来更大的利润) 。 Miner A控制目标加密货币中的一些或没有控制力(β≥0)。
  3. 理性或贿赂矿工(Rachel):矿工R在目标加密货币中的权力是ω≥0,这使得短期利润最大化。我们认为,如果矿工采用偏离协议规则的策略,只要他们期望获得比诚实矿工更高的利润,他们就是“不可挽回的”。在受到攻击的加密货币中,桥接矿工的功率ω> 0。

在分析中,我们假设可以贿赂的矿工不会参与其他理性策略(例如自私挖矿)。

此外,我们假设贿赂袭击的受害者(文森特)是一个没有权力的客户。虽然其他贿赂攻击将受害者塑造为诚实的矿工,但我们也将理由的受害者与更详细的描述和后续分析区分开来。如果Vincent具有一定的计算能力并对其进行建模,则可将其视为beta或ω的一部分。并且α+β+ω= 1。

每当我们将攻击称为不信任时,就意味着不需要信任受贿者和贿赂之间的第三方,以确保为所需行为执行正确的付款。

因此,我们的目标是设计一种激励攻击,允许攻击者和同谋者在经济合理的情况下没有动机相互背叛。

2,1通信和定时(通信和定时)

参与者通过点对点八卦网络,我们假设网络实现了可靠的广播功能。我们进一步假设目标加密货币中的所有矿工都在攻击开始后完全了解攻击。与(17)类似,我们将对手Blofeld建模为“冲”,这意味着它可以在决定决策之前查看所有其他参与者的信息,例如执行攻击。

如果在考虑的场景中涉及多个加密货币,即使用额外的加密货币资金来计划和资助对目标加密的攻击,那么我们假设它们各自的平均块间隔和挖矿难度在攻击期间保持不变。

此外,没有同时攻击加密货币融资。

三是激励攻击系统化

激励攻击是贿赂攻击的常见形式(9),包括旨在操纵理性参与者动机的对抗策略。

在这里,我们首先从两个不同的维度引入一般分类,即攻击对交易的预期影响及其排序和所需的干扰,以及由分叉引起的块链重组的深度,使攻击成功。

结合其他重要特征和方法,系统地分析和分类了激励操纵攻击的研究对象。

3,1对交易的预期影响

未经许可的PoW加密的核心目标是(最终)实现一致且完全有序的事务日志并定义共享分类账的全局状态。

我们区分了以下三种主要类型的激励攻击,旨在操纵交易及其顺序:

  1. 交易修订:更改先前发布的,可能已确认的交易;
  2. 交易订单:更改建议或约定的交易订单;
  3. 交易排除:在有限的时间内或无限期地从交易的有序日志中排除特定交易;

一些激励攻击可能允许多种类型的交易操作同时发生(见表1)。使事务无效的能力可以被认为是成功执行一个或多个上述事务操纵攻击的结果,并且不需要单独的类别。

3,2对共识的必要干扰

虽然前一次交易操纵攻击描述了预期的影响,但在这里我们需要考虑所需的干扰以达成共识。

具体来说,我们介绍了三种不同的fork要求

  1. 需要深叉,其中深度l需要超过安全参数k的叉(即,l> k)。受害者定义k(16,30)并指示接受交易所需的确认块数;
  2. 需要靠近fork(Near-fork),其中所需的fork深度不依赖于受害者定义的k(即l≤k);
  3. 不需要分叉,根本不需要区块链重组(即k = 0);

通过操纵矿工的块提议而不是(初步的)共识决策(即,挖矿的块),将不需要分支的攻击与其他两种类型的攻击区分开。深度和近分叉攻击尝试撤消已由持续工作负载证明确认的书籍状态更新。

某些攻击(如前端运行的事务前处理或事务修订(受害者接受k = 0)攻击)可以作为无拆分攻击执行。

其他的,例如在受害者仔细选择k(30)的情况下的双重开花,可能需要对共识产生重大影响并违反安全性假设,但概率可以忽略不计(16)。

3和3攻击的分类和比较

根据预期的冲击和所需的干扰,我们进行分类,并考虑与激励操纵攻击相关的工作。作为讨论的一部分,我们还介绍了其他功能。表1显示了先前提出的分类,以及我们最新的“付费获胜”攻击。

这些行中的每一行代表不同的攻击,每列都概述了它们各自的属性。

3.1节概述了事务修订,事务排序和事务排除。在文献中,一些贿赂攻击旨在取代或修改特定交易,即执行双花交易(9,21,23)。

因此,他们不考虑定义任意交易的顺序或排除。尽管存在双花交易,但后续区块的内容可以由贿赂矿工自由定义。

因此,这些矿工还可以通过利用原始攻击者的攻击免费执行交易的双重交易。

GoldfingerCon (23)可以被视为贸易排斥攻击的一个特例,在以太坊智能合约的帮助下奖励比特币矿工并利用空区块。

同样的, PitchWorks (18)使用联合挖矿来补贴受攻击链中空(或特制)区块的创建(18)。

Script puzzle 38.2% (32)和 CensorshipCon 攻击(23)去中心化了贿赂矿工的计算能力,以获得其余诚实矿工的优势。

这两种攻击都可以对任意交易进行排序和排除,但需要反对者控制比其他矿工更多的权力。

深度叉和贸易修订不直接考虑,这需要进一步分析。

之前为实现这三个属性而实施的唯一攻击是 Script Puzzle 双(32)。然而,一旦成功地进行了这样的攻击,合理的矿工就会被剥夺贿赂,使得袭击无法重演。

第3.2节概述了链重组的必要性,并对实施攻击时使用近叉或深叉的攻击进行了分类。

经典的双花攻击场景(28,30)需要深叉(l> k)来重组链条。由于攻击者可以完全控制执行攻击所需的计算能力,因此他也可以任意订购交易并从最长的链中排除交易。

例如,根据场景和所需的攻击结果,只有排序是相关的,因此不一定需要深叉。

例如,可以在不需要分叉的情况下操纵未经证实的交易的顺序,例如执行前跑(14)。目前,研究人员尚未对智能合约加密的排序攻击进行深入研究(29)。

在本文中,我们在激励攻击的背景下总结了这种能力,并分析了如何实施它(第5节)。

如表1所示,有三种攻击需要α> 0.Tictory Puzzle 38.2%攻击允许攻击者通过适当的计算量建立计算多数,并在不考虑双花攻击的情况下获得净利润。在(剧本拼图)中,对手没有最低计算要求,但它被设计为单发双花攻击。 CensorshipCon还要求攻击者的权力包括来自理性矿工的叔叔区块。由于它必须包含所有未挖矿的区块,因此它需要攻击者的权力大于1/3,并且可以贿赂贿赂矿工的计算。在(1 / 3,2 / 3)。

注意,将攻击者的权力限制为小于1/2是有意义的,否则攻击者不需要执行贿赂攻击,这可以自己完成对链的攻击。

理性矿工的最小比例 ω 如本文所述和评估的那样,攻击有机会获得成功。一般而言,所有贿赂攻击都必须假设至少有些矿工是理性的,以便行贿。请注意 Script Puzzle 攻击要求所有矿工都是理性的,即α+ω= 1。

将来自受攻击区块链的有效尖端的力量移动到某种其他形式的拼图或替代分支对状态转换没有贡献。例如, CensorshipCon 阻止在 CensorshipCon 例如,或另一个 Pitchforks 在里面 Pitchforks 例。

表1:对于加密的刺激攻击,我们将现有方案与新提出的P2W方案进行比较。如果是,则该属性标记为✓,如果不是,则标记为✗,符号〜表示没有进一步的细节或在讨论的情况下,属性不能清楚地映射到任何先前定义的类别。符号⋆表示攻击是针对矿池的,因此不打算操纵链条。符号†表示该文件未明确指定带外支付方法,但假定其正确性。

所有需要智能合约按预期运行的攻击都需要智能合约。

付款,指明支付贿赂者的地方。奖励可以是带内的,也就是说,在每个受到攻击或加密的加密货币中,例如通过不同的加密货币支付。

可以说,矿工不希望攻击影响其接收密码货币的价值,因此带外激励尤为重要。

攻击者不需要信任这一事实意味着是否有一个阴谋/贿赂矿工利用攻击本身在不遵守攻击的情况下获利。例如,脚本拼图攻击需要某种形式的新鲜度保证,以防止贿赂在计算拼图解决方案以获得奖励之前故意等待攻击失败。也可以要求奖励以后作为主人提交给CensorshipCon的旧的,诚实的块。

合作者之间不需要信任的意味着贿赂者不必信任攻击者并在他们执行攻击后收到付款。在Checklocktime贿赂攻击中,攻击者可以通过创建冲突/竞赛交易来欺骗。但是,这种尝试只有在攻击者控制α> 0的幂时才有可能。

对于Whale Transaction来说也是如此,因为攻击者必须在攻击的每一步为攻击链上的每个块提供新的高成本事务。

虽然 HistoryRevisionCon 没有明确考虑对同谋者的不信任,可能会有所提高。 CensorshipCon 要求攻击者包括阴谋矿工生成的区块,因此无需信任。

脚本拼图双花攻击被设计为欺诈阴谋者的一次性攻击。

脚本拼图38.2%的攻击没有指定如何支付,并采用不需要信任的带外支付方法。

在前期运行的交易前攻击中,攻击者无法保证以高成本实现所需的排序。

补贴意味着攻击利用加密货币或环境的某些特征并变得更便宜。

对于CensorshipCon,来自叔叔区块的奖励用于补贴攻击,而在Pitchforks中,综合挖矿的额外收入被用作激励。

补偿攻击是否失败,意味着至少有一些贿赂无条件地支付给贿赂者。

为了成功雇用合理的矿工,例如Checklocktime(9),whale(21)和HistoryRevisionCon(23),参与者必须得到补偿,即使攻击的最终结果是失败的。

截至目前,没有支持事务修订的攻击可以实现此属性。

如果脚本拼图双击攻击成功,它将欺骗被开采的矿工并且如果失败将支付奖励。

在正面运行攻击中,即使未实现所需的排序效果,通常也会导致高交易成本。因此,在这种情况下,它是攻击者不需要的属性。

3,4主要观察

可以看出,大多数贿赂攻击场景要么关注交易修订,要么关注交易排除,而只是将交易分类为副产品。一个值得注意的例外是前端攻击,我们认为这是可能(重新)排序攻击的一个子集。例如,考虑精确定位两个其他事务之间的事务。

这种攻击的一个例子可以在(29)中找到,它也描述了被阻止合约中的漏洞。

通常,只要生成有效块,任何矿工都可以自由定义要包含在他自己的块提议中的订单和交易集。

在本文中,一个特别有趣的场景是攻击者可以操纵交易顺序,而攻击者本身不是矿工。我们还没有理解和讨论智能合约加密的交易分类攻击(29),但在实践中我们是可观察的(12,14)。

排除交易攻击的一个值得注意的例外是CensorshipCon(23)。

此外,我们还观察到缺乏带外激励攻击。除了金手指攻击,唯一可用的技术,攻击者需要掌握大量的计算能力。注意:陈旧证据块(22)代表矿山的特殊情况。

理论上,所有在带外执行支付的攻击都可用于启动金手指式攻击,因为接收者的报酬与受攻击的加密的价值没有直接关系。

这种攻击是否有利可图的问题取决于失败的加密货币可以产生的外部效用。

在下文中,我们针对不同场景提出新的激励攻击。

第四,PAY-TO-WIN激励攻击

我们提出三种激励措施,不要求攻击者和勾结矿工相互信任并赢得奖励。此外,我们还区分带内攻击(即同一加密货币内的攻击的资金和执行)和带外攻击(即在不同加密货币上资助和协调的攻击)。

这种类型的攻击不需要攻击者控制任何计算能力,即a = 0。

本节概述了此类攻击,所需的技术和操作要求。第5-7节详细说明了这些攻击的结构:(i)攻击的一般概述,(ii)逐步描述,(iv)攻击评估,以及(v)攻击分析属性。

4,1 P2W攻击概述

带内攻击:我们引入了一种新的带内攻击方法,可以在智能合约工作负载证明区块链上执行和协调。

带内交易排序:此类攻击(第5节)激励带内非分叉交易分类:如果攻击者要求进行未经证实的交易,则该共谋矿工将获得奖励。

与正面跑步(12)相比,只要保持正确的排序条件,此攻击就会使用智能合约直接奖励矿工。当前的正面运行攻击可以被视为全薪拍卖(12),其中丢失的交易(即,他们的执行失败)也不必要地支付高额费用。

带外攻击:我们将目标加密货币(将执行攻击的位置)与资金加密货币(将协调和支付攻击)区分开来。虽然资金加密货币必须支持智能合约(如以太坊),但目标加密货币(如比特币)没有要求。事实上,很难找到带外攻击,因为它们需要监控多个支持智能合约的区块链。

带外事务排除/排序:此攻击(第6节)提出了一种带外事务排除攻击,攻击者也可以在其中指定包含事务的顺序。这可用于查看某些交易(例如关闭支付渠道)或立即执行多个正面运行的攻击。为了执行攻击,我们描述了攻击者如何构建智能合约,该合约临时奖励攻击者定义的目标加密货币块。

我们将这种技术称为短暂的挖矿中继,因为它结合了矿池和链中继的元素(参见本节末尾)。

带外交易修订:最后,我们描述了直接促进双花共谋攻击的带外交易修正攻击(第7节):矿工被攻击者贿赂到另一个区块链以挖矿他们偏爱的分支区域。该技术结合了先前引入的技术,以创建更强大的攻击。

无论攻击结果如何,我们都会展示如何建立它以永远奖励阴谋者。有趣的是,这使得攻击的成本显着降低,因为当攻击失败时,对共谋的必要补偿就会减少。

4,2技术要求

需要在上述三种类型的无信任攻击中使用的技术要求总结如下:

(1)攻击者定义的块间隔(目标链上)中的块,以不需要信任的方式进行验证:

(a)进行国家转换(例如,交易包含在区块链中);

(b)没有发生州过渡(例如,不包括交易);

(2)一种将信息块唯一地归属于矿工地址的无信任方法,以及将后者映射到赞助加密货币中的相应地址的方法。

(3)将补贴加密的价值转移到阴谋矿工公司独有的受资助加密货币地址的不可信方法的方法(见第2点)

(4)在攻击者的预定义块(即,最长链)上挖出T块之后确定无信任的目标加密货币状态的方法。这意味着可以在为加密货币提供资金的智能合约中验证目标加密的PoW。

(5)在攻击者的预定义块(即,锚定在该特定块上的攻击链)上挖出T块之后,无信任地确定目标加密货币攻击状态的方法。

短暂的挖矿中继:为了验证攻击的结果并在不受信任的带外情况下正确支付奖励,我们引入了短期接力的概念。短寿命继电器是一种智能合约,它结合了链继电器(2,11,36)和水矿池(22,34)的功能。

但是,与先前的提议相比,挖矿中继可以通过限制允许的块结构来完全验证目标加密的一致性规则。此外,它还跟踪所有正在进行的区块链分支,这是正确验证激励攻击的必要功能。本文附录G.1中提供了对短寿命继电器结构的更详细描述,以及在以太坊上部署的用于验证比特币区块链的概念验证实施和成本分析。

根据实施结果,这一额外的验证成本约为每块1美元,与激励攻击的潜在经济效益相比可以忽略不计。

五,带内交易排序

与前线攻击(12,14)相比,这种“无分叉”攻击为矿工重新订购未经证实的交易支付了额外的奖励。在前线攻击中,对手通过增加支付给矿工的交易费来增加他们的交易首次被接受的机会。然而,结果是全薪拍卖:即使攻击失败,矿工也可以将高费用交易纳入区块。

因此,攻击者必须始终支付费用,但它与攻击结果无关(12)。相反,新提出的攻击确保攻击者仅在攻击成功时(即,如果达到所需的交易顺序)支付共谋矿工。

5,1攻击描述

初始化:对手(Blofeld)观察p2p网络并在看到受害者(Vincent)事务txV之后发起攻击。他希望通过正面运行攻击(快照或快照)预先注册域名或与交易所进行交互。首先,Blofeld发布了他的正面交易txB。同时,他使用两个事务标识符,所需的顺序(txB

攻击:如果攻击成功,阴谋挖矿者将生成具有所需交易顺序的区块。

注意:即使受害者试图通过替换费用(4)用tx'V更新原始交易txV,txV仍然有效并且矿工可以选择将其包括在该块中。 Therefore, as long as the payment terms are met, the rational miners will incorporate txB and txV in the prescribed order, as this will result in the highest return.

Expenditure: After k blocks (k is the blockchain security parameter defined by the attacker in this example), the miners can ask for their compensation, and the smart contract will first check if the order of the two transactions is in compliance.

5, 2 evaluation

5.2.1 Evaluation only in the case of rational miners (ω = 1) : First, we assume a scenario in which all miners are rational, that is, they are bribes. The miners were motivated to collude with the attackers because the contract guarantees a ε > 0 award in addition to normal mining.

Participation in this type of attack does not require mining on another fork, so the conspiracy miner does not face the additional risk that the block he is mining is judged to be invalid. The miner can also include unconfirmed attack contract creation transactions in the same block as the sorting attack itself, and if its block becomes part of the longest chain, it can still determine whether to pay.

5.2.2 Assessment in the presence of altruistic miners (ω+β=1) : In theory, this attack is feasible in the presence of bribery miners (ω>0), but the higher the proportion of computing power The chances of success will be greater.

If 2/3 of the computing power is controlled by a rational miner, then the probability of successful attack is expected to be 2/3. There will be more relevant analysis in Section C of the Appendix.

5, 3 characteristics and analysis

We will now analyze the possible defensive strategies of the victim (Vincent). Specifically, we considered the possibility of anti-bribery.

Immediate Counter Bribing: As long as the new block is not mined, the victim can immediately commit anti-bribery through the same attack mechanism, which is an effective countermeasure against this attack. Here, an English auction (price increase auction) was conducted between the attacker and the victim, rather than a full payment auction observed in other front-running attacks.

This defensive strategy requires the victim Vincent to actively monitor the P2P network and immediately realize the attack.

Delayed Counter Bribing: If the victim Vincent has only one SPV (Simplified Payment Verification (25)) wallet, he may only be able to identify the attack after the attacker has dug a new block in the order of the transaction. Vincent has no power, he can't directly launch counterattacks to fork their respective blocks. Therefore, the cost of its successful anti-bribery attack is already much higher than the cost of the original attacker Blofeld. In addition, from the bribery attack described in Section 3 above, in this case, Vincent has no direct applicable attack. For a cost analysis of removing such a block from the chain, see Appendix C of the original paper.

Six, out of band transaction exclusion and sorting

In this section, we describe how to construct an out-of-band stimulus attack that promotes transaction exclusion and sorting. This type of attack is superior to previous attacks in some respects: for example, for an attacker who tries to incorrectly close an out-of-chain payment channel (ie, issues an old/invalid state) but prevents the victim from performing regular penalties. Class attacks may be profitable (13, 24, 27).

The advantage of out-of-band attacks is that they can be funded by any smart contract cryptocurrency, while attacks occur on different target cryptocurrencies. As a victim, such attacks are difficult to detect, and they must monitor multiple blockchains that support smart contracts. To improve readability, we use Bitcoin (target cryptocurrency) and Ethereum (funding cryptocurrency) as examples to describe the following attacks. As described in Section 4, we rely on a short-lived relay to reliably verify the status of the target cryptocurrency, the correct execution of the attack, and the processing of payments to the conspirators. For more information on relays, see Appendix G. 1 and F).

6, 1 attack description

Initialization: The attacker's target prevents unconfirmed transactions txV from being included in newly mined blocks in Bitcoin (target chain). The attacker initializes an attack intelligence contract by specifying a block template, and only when the conspiracy bitcoin miner uses it can it be rewarded. This allows the attacker to have full control over the content of the dig block, including the ordering of the transactions and whether they are included. For each block template, the corresponding bribes are conditionally locked into smart contracts, and as long as the miners provide an effective solution, they can get compensation independent of the outcome of the attack.

For Bitcoin block templates, the attacker posts an incomplete block header to the attack contract and the corresponding coinbase transaction. The latter is necessary to allow conspirators to include their own Ethereum payment address in the block template, because if a valid block is submitted later, the smart contract will be responsible for the payment.

The miners involved in the attack can only freely change the nonce and coinbase fields (including the Ethereum address) in the generated Bitcoin block.

We point out that an attacker must obtain a Bitcoin block reward instead of a conspiracy miner. Instead, the colluder will receive a bribe in the Ethereum attack contract to compensate for the Bitcoin block reward. This requires an additional bribe payment guarantee so that the conspiracy miners do not need to trust the attack because rational miners may not be able to verify whether bribery of the block template they dig will result in an effective block.

In the original papers G.1 and F, we provide more detailed information about the block template structure.

Attack: Rational miners submit valid bitcoin blocks to the attack intelligence contract on Ethereum based on the attacker's block template, by briefly mining relays (to verify that they form a valid chain).

Since there may be multiple miners competing for the same block template, they will be motivated to release any valid POW solutions they find in a timely manner.

If the bribery attack is successful as a whole, then the attack contract will pay an additional ε bribe for each solution, which is an additional incentive for the bribe to release the solution in a timely manner. The motive for an attacker to release a solution with relevant complete blocks on the target chain comes from the rewards it receives directly and the benefits of a successful attack.

In each step, the attacker updates the Bitcoin block template each time it is submitted to the attack contract, and can add additional bribes if needed.

If no new template is submitted, the attack stops. Figure 1 provides a schematic of the ongoing visualization.

Figure 1: The ongoing, failed blockchain structure and schedule, and a successful out-of-band transaction exclusion and sorting attack. When the attack contract is released in block e0, the attack is initialized. Multiple block modules can be included in a single block, as shown by e3. Expenditure is executed in block eT. The colored block will be rewarded by the attack contract, or only its original value, or if the attack is successful, an additional bribe is obtained, ie the return is (1 + ε).

We note that the target chain and the funding chain may be out of sync, ie, two or more bitcoin blocks are dug up before finding a single Ethereum block. Therefore, an attacker can also publish a block template for multiple blocks in advance (retaining a reference to the last block filled by the miner).

Expenditure: Similar to the example of an in-band attack, once the k bitcoin block is dug after the attack is over, the miner can ask for payment in the attack contract (k is the attacker-defined security parameter).

This attack intelligence contract is responsible for verifying the validity of the submitted blocks, that is, the consistency of their PoWs with the specified block template, and all blocks form a valid attack chain. If the submitted block is valid, the attack contract will reward the miner (even if the attack chain does not succeed as the main chain), that is, the conspiracy miner is not at risk.

In any case, the first miner who submits a valid POW for the respective block template will receive a value equivalent to the full Bitcoin block reward (regardless of whether the attack failed), and if the attack is successful, an additional A ε bribe.

6, 2 attack assessment

6.2.1 Evaluation only in the case of rational miners (ω = 1) : First, we assume a scenario in which all miners are rational, that is, they can be bribed. Once the smart contract is initialized, they can immediately understand the attack. As mentioned earlier, each time an attacker submits a block template, it locks a bribe to ensure that the miner is not at risk of payment and is motivated to join the attack. For the duration of the attack in N blocks, we can pay the colleague Blofeld's Ethereum funds (budget) by evaluating the worst case scenario (ie, the attack runs N blocks but still fails). Note that only the attacker knows the exact value of N.

The necessary attack budget and the cost of a failed attack: If the attack fails, the budget of the attack contract must cover and compensate for the loss bonus (for Taiyuan payments) for each bitcoin attack chain block. The initial funds of the attacker fB, and the expected return of each bitcoin block rb (including fees), define the maximum duration of the attack N based on the compensable attack chain block:

Therefore, the collusion stipulates the operating costs of smart contract deployment and execution (such as the cost of gas in Ethereum). Compared to current block rewards, the operational costs of managing smart contracts are negligible considering the metrics in (23) and Appendix G.1. Suppose the attacker wants to specify the order of transactions in Bitcoin or exclude some transactions within an hour (ie, N = 6). Therefore, the lower limit of the attacker's budget can be derived from the current block reward, including the transaction fee: rb = 14 BTC, then 1 hour of income ≈ 84 BTC is the lower budget limit of the attack.

The cost of a successful attack: Interestingly, the lower limit of the budget only needs to make up for potential losses in the event of an attack failure, but if the attack is successful, the attacker will receive a block reward on the main chain to compensate for the rewards that must be paid to the bribery miner. Therefore, the cost of a successful attack is derived from the N · rb main chain block, and the reward paid to the briber miner must be paid in N · (rb + ε):

Since we assume rational miners, the success rate of attacks in this case is iff ε > 0. In order for the attack to succeed, the amount va obtained by transaction sorting or transaction seizure must exceed c(success).

At first glance, regardless of the outcome of the attack, the attacker must pay the conspiracy miner. We can assume that the cost of the attacker is high compared to other bribery plans. However, this ensures that miners are not exposed to risk of participation. Unlike existing bribery attacks, this only requires a low-value bribe to encourage miners to participate in the attack.

6.2.2 Assessment in the presence of altogether miners (ω+β=1) : We now discuss a more realistic scenario where not all miners will immediately turn to the attack chain, and some of the miners behave unselfishly.

Altruistic miners follow the rules of the agreement, and only when the attack chain becomes the longest chain in the network, they switch to the attack chain, they will not try to optimize revenue, which is the opposite of rational miners.

Blocks of altruistic miners may also contain transactions and transaction sequences that are not welcomed by attackers.

Therefore, an attacker may have to exclude blocks of these miners, providing a template that intentionally separates these blocks. If the altruistic miners find a block, the attacker and the conspiracy miner must dig into two blocks, making the attack chain the longest chain (the altruistic miners will follow). Therefore, the required fork depth is equal to 1.

Figure 2: Probability of different computational forces ω chasing a block on yaxis (log scale) in n blocks on the x-axis. The dashed line is the maximum probability of catching up a block after an infinite number of (n=∞) blocks (ie (ω/β)^2).

Based on the attacker's budget, we derive the probability that the attack chain will compete with the altruistic miners. The attack chain must find two more blocks than the altruistic backbone, but this must be done within the upper limit of n blocks (maximum funding attack duration).

Each new block is respectively attached to the main chain of the probability β and the attack chain of the probability ω β + ω = 1). Therefore, we look for all block sequences that may be attached to any chain and calculate the sum of the probabilities of the sequences that lead to a successful attack.

In a successful attack, i ∈ N blocks are added to the main chain, and k+i+1 blocks are added to the attack chain. The probability of such an attack is:

Observe a series of successful attacks, where the i block is added to the main chain and the k+i+1 block is added to the attack chain. For any prefix that is strictly shorter than the entire sequence, the number of additional blocks in the attack chain is less than k+1, otherwise the attack will end soon. Therefore, the last block in a successful attack is always attached to the attack chain. The number of combinations of such sequences is similar to the Catalan number, and the difference between the starting points is k:

Assuming that an attacker can only fund up to N blocks on the attack chain, the probability of a successful attack is given by the following formula:

Figure 2 summarizes the probability that different computational forces ω capture a block. It can be observed that N quickly approaches the maximum achievable probability of chasing a block in an infinite number of blocks, ie (ω/β)^2) according to (25, 28). Based on these calculations, the attacker can decide whether to extend the attack time, increase N, and win the ongoing game with a higher probability.

6, 3 characteristics and analysis

We now analyze the important features of this approach.

Counterattack: The most effective countermeasure against transaction exclusion is to increase the cost of txV beyond the value promised by the attack contract. However, the benefit of this attack is that it can be performed out of band. As a result, victims may not be aware of such attacks, and they may only be monitoring the target cryptocurrency. Therefore, it can be said that the counterattack of the victims is difficult to implement because they cannot immediately realize the bribe funds provided by the attackers for conspiring miners.

Transaction评测 DoS: In this section, we treat Bitcoin as a target, but in essence, the attack also applies to other types of cryptocurrencies. (Quasi-) Turing complete smart contract cryptocurrency, theoretically more resistant to censorship than Bitcoin's UTXO model, because they allow complex and diverse interaction patterns to trigger state changes. We believe that on the basis of this discussion, the transaction review should use Ethereum as a target cryptocurrency. Then, even if the transaction or its respective side effects can accurately identify and agree that all mine work is an unwanted behavior, in this case, there is a possibility that the victim may launch a denial of service attack.

The effect of a transaction can be represented by multiple layers of smart contract calls and interactions. Therefore, the problem arises, and miners can only understand the unnecessary behavior of the transaction by first assessing the state change of the transaction. If the resulting behavior is to be reviewed, the miner must roll back all changes and cannot charge transaction fees for their efforts. As a result, an attacker can waste every reviewer's resources without losing money. It is impossible to solve this problem directly without changing the consensus rules, but by basing based on the block module (as described in this section), the problem is transferred from the conspiracy rational miner to the attacker. Therefore, an attacker can choose to include only simple transactions, and he is convinced that these transactions cannot hide any unwanted activities, such as all value transfer transactions, calls to known contracts, such as ERC20 tokens.

Liveness: In general, the activity of chain relays generally depends on submitting new blocks to improve their state. Therefore, if the relay is in a lack of state due to the lack of committed data blocks, the long-range attack will have a higher success rate because the attacker will get extra time to calculate the long false link. The likelihood of an attack in a chain relay lacking state depends on the relevant funds.

In our specific example, activity is not an issue because the duration of the attack is limited and the definition is good.

In addition, participants have an incentive to provide the correct information to the repeater in a timely manner. For example, consider a rational miner R who digs a block template for b'3. Then R has the motivation to submit this template solution to POW in time because he is competing with other rational miners to provide incentives and bribes. Since the extra bribes can only be paid when the attack is successful, this further motivates the rational miners to release the solution in a timely manner.

In addition, in this case, the attacker can stop publishing new block templates at any stage to reduce their losses, in case the attack may fail.

7. Out-of-band transaction revision

The purpose of this attack is to bribe the miner to create a block on the blockchain branch of the target cryptocurrency, and the attacker performs a double flower.

The novelty of this attack comes from three aspects:

(i) Funds used to reward dishonesty and conspiracy during a double-flower attack are paid using the sponsored cryptocurrency, not the target cryptocurrency itself.

(ii) Funding for attacks is done through smart contracts to minimize the attacker's trust assumptions and the risk of miners participating in the attack: the conspiracy miner does not have to trust the attacker, even if the attack fails, the attack smart contract can also ensure bribery. Miners can get block rewards, making this attack cheaper than similar bribery attacks.

(iii) In addition, the use of smart contracts also opens up the possibility of crowdfunding or multiple double-attack attempts to merge into a single coordinated attack, further reducing costs or the number of participants.

7, 1 attack description

Figure 3 shows the stage of the attack and two different results.

Initialization phase: First, the attacker (Blofeld) creates an uninitialized attack contract and publishes it to the Ethereum blockchain.

This is done through a deployment transaction contained in an Ethereum data block e0 of the Ethereum account controlled by the attacker. Then, Blofeld created a pair of conflicting bitcoin transactions. The consumer transaction txB was immediately posted on the main chain in the form of bitcoin, and the double transaction tx'B was kept secret.

After the victim-defined k-block validation period, Blofeld issued an initialization transaction on the Bitcoin main chain that irrevocably defines the attack conditions in the Ethereum chain smart contract. Block e1 represents the first block on the Ethereum chain after the release of the bitcoin block bk.

The contract is initialized with K+1 new Bitcoin block templates, each carrying a transaction from the original chain to collect the fee, but not including txA, but containing the conflicting transaction tx'B.

Collusion miners can now freely mine on these block templates, where they can change the nonce and coinbase fields to find valid POWs and include their payment Ethereum addresses.

一旦找到解决方案,矿工必须将其提交给攻击合约,以验证POW的正确性,并且只更改了允许的字段(nonce和coinbase)

一旦找到解决方案,矿工必须将其提交给攻击合约,以验证POW的正确性,并且只更改了允许的字段(nonce和coinbase)。如果提交的解决方案是有效的,那么合约就知道使用哪个前一区块哈希来验证下一个解决方案等等。一旦攻击者意识到以太坊P2P网络中广播了有效的解决方案,他就会使用POW解决方案完成整个区块并将其提交给比特币P2P网络。

攻击者和合谋矿工有及时提交解决方案的动机。合谋矿工希望在攻击成功的情况下获得额外的贿赂金,攻击者希望将其区块包含在比特币主链中,以获得比特币区块奖励。

同时部署和初始化攻击合约也是可能的,但是在部署交易中预先发布未初始化的攻击合约具有这样的优势:对目标链的攻击甚至在开始之前也可被众筹(见下文)。在任何情况下,重要的是在主链上的区块bk之后披露双花交易tx′B,否则Alice可能会认出这笔双花交易,并拒绝放行货物。

攻击阶段:被贿赂的矿工现在开始在攻击链上开采k + 1个区块,如果在主链上发现额外的块,攻击者可使用k+2到N块的新区块模板更新攻击合约,其中N是攻击者可资助的最大攻击区块数。

支付阶段:一旦攻击在时间T结束,参与攻击的矿工可以从合约中收取贿赂金。

为了准确地支付贿赂金,合约必须确定哪条比特币链赢得了比赛,成为了当前的最长链。

由于合谋矿工正在争夺开采区块,因此合约应已收到他们所有的攻击链区块b′x,从而准确了解攻击分支的状态。

此外,初始化合约并提供资金的攻击者,有动机向主链提供信息(如果存在这样一个冲突的长链),因为他将为每个块支付额外的贿赂金ϵ。

因此,总有一些参与者有动机将正确的最长链输入攻击合约。

攻击合约区分了两种可能的结果:

  1. 攻击失败(主链获胜):在这种情况下,合约必须完全补偿被贿赂的矿工,因为他们的攻击链已经失效了。每个在攻击链上挖矿并成功提交一个区块的合谋矿工都将获得该区块的奖励,而没有额外的贿赂金ϵ;
  2. 攻击成功(攻击链获胜):如果攻击链获胜,则合约执行以下操作:完全补偿(奖励+费用=1)矿工从b1开始切换到攻击链后,经历k个主链区块的奖励,2) 支付合谋矿工每个攻击链区块的贿赂金,在本例子中是从b′1到b′k+2 个区块,全部区块的奖励加上额外的ϵ作为贿赂金。

一旦与矿工的提款交易一起调用,合约将检查攻击是否已经完成,以及知道一个到预定区块高度bT的有效链。这确保每个参与者都有足够的时间向合约提交关于最长比特币链的信息,并且b1到bN的区块,根据(30)中规定的链长中的规则,已收到足够的确认。

如果满足验收政策,合约将解锁向向相关区块的矿工支付补偿和贿赂金。

对于攻击链上的区块,在最简单的情况下,所有被贿赂的矿工直接在CoinBase字段中提供以太坊地址,或通过比特币CoinBase交易中的Pay-to-PubKey输出直接公开其公钥,正如(23)中描述和实施的Goldfinger攻击案例。对于前k个主链区块,矿工还没有意识到攻击,他们必须向合约证明他们确实开采了各自的区块。

这是可实现的,例如,通过向智能合约提供对应于CoinBase输出中的支出的ECDSA公钥,以便检查它们是否匹配,然后重新计算相应的以太坊地址。

众筹:上面描述的攻击也打开了众筹贿赂资金的可能性。最简单的众筹方法,是允许在攻击合约部署之后,但在初始化之前捐赠资金。这种方法允许收集资金,但不为赞助人提供任何担保。

而激励多个攻击者同时执行双花攻击的解决方案,将允许在合作者之间分配攻击资金。在这种情况下,必须解决的主要挑战如下:

  1. 必须确保每个为实现双花攻击而投资资金的协作攻击者确实有一定的机会使其个人的双花交易成功,即,如果合约使用了其投资的资金,则一笔双花交易必须得执行;
  2. 必须确保攻击不会因协作攻击者而失败,以防他们破坏整个攻击,即参与者不可能导致攻击失败;
  3. 攻击不应依赖任何受信任的第三方;

有关如何在以太坊上构建此类攻击作为资助密码货币以及比特币作为目标密码货币的详细信息,请参见原论文附录F,大致来讲,其攻击的阶段如下:(1)首先,初始化交易只宣布可能发生攻击,并且会影响从b1到bk的区块间隔。(2)然后,所有在b1区块进行交易的比特币用户,都可以决定是否投资进行攻击,以潜在地双花他们的交易。协作攻击者,将新的交易与一些以太币一起提交到合约中,以增加攻击的总资金fB。攻击者还可根据提交的比特币交易(进行双花)的总价值,指定要收集的固定资金率。

如果恢复至少k + 1个区块的资金目标已经达成,攻击将如前所述开始。由于初始化合约的攻击者必须为包含双花交易的链生成新的区块,因此必须实现一些方法,确保其他攻击者的交易包含在b′1当中。在附录F中,我们描述了一种方法,该方法要求原始攻击者提供与他想要收集的资金一样高的质押品,即fB。因此,这可以确保其他攻击者仅在其交易真正包含在b′1 区块的新链中时支付。否则,将从初始攻击者提交的质押品中退款。

7、2 攻击评估

与第6节中的评估类似,我们现在开始评估攻击成功概率以及攻击所产生的成本。我们再次分成两种情况: (i)我们假设只有理性矿工存在,然后评估攻击,(ii)考虑存在利他主义矿工的情况,然后进行评估。

7.2.1 只有理性矿工情况下的评估(ω = 1) :当调整k作为攻击受害者定义的安全参数时,可得出攻击者fB 所需资金的下限,类似于第6节中的评估。

必要的攻击预算和失败攻击的成本:成功攻击中攻击链上的最小块数为k+1,即主链上所需的确认数,加上超过主链长度的1区块,因此,由条件n≥k+1必须保持攻击是可行的,因此可得出攻击者fb预算的下限。

对于比特币,通常的k选择为k=6,而当前的区块奖励(包括交易费用)约为rb = 14,这为≈98 BTC ST的预算提供了一个下限,以下不等式成立:

攻击成功的成本和盈利能力:同样,预算的下限只需要在攻击失败时弥补潜在的损失。但是,如果攻击成功,它会比这个下限要便宜。成功攻击的成本由k · rb的主链区块给出,该主链块必须在攻击链上得到补偿,再加上额外的N · ϵ贿赂金。

最初的k补偿是必要的,以提供所有切换到攻击链上生产区块的矿工。由于我们假设的都是理性矿工,那么这种情况下的攻击总是成功的,前提是N ≥ k +1保持,且ϵ > 0。

对于比特币,这意味着,在k=6,rb=14,且ϵ = 0.0001的情况下,成功进行双花的成本≈ 84.0007 BTC。为了使成功的攻击有利可图,双花的值必须大于用于贿赂的值。而在比特币交易中,我们经常会看到超过84 BTC的交易。

这进一步强调了交易量对确认时间的依赖性,如(30)所述。

7.2.2 存在利他矿工情况下的评估(ω+β=1) :图4显示了可贿赂算力ω的不同值,以及贿赂矿工可奖励或补偿的不同数量块的攻击成功概率。攻击开始后主链上的确认区块数设置为k=6。显然,攻击需要N > k才能成功。与经典的51%攻击一样,一旦可贿赂算力超过50%的阈值,并且应付区块数N增加,则攻击最终会成功。

图4: 双花攻击成功的概率,取决于贿赂攻击中可补偿或奖励N区块的数量。可贿赂算力ω的不同值,会造成不同的攻击成功率。确认区块数设置为6.

考虑到这些概率,以及给定k和ω值,我们可计算出成功率达到99.4%所需的区块数N。

表2显示了与(21)中描述的鲸鱼攻击(whale attack)的对比。可以观察到,与鲸鱼攻击相比,当ω变大时,我们的攻击变得更便宜,因为我们更快地达到所需的概率,因此所支付的贿赂金就会更少。此外,如果攻击成功,我们的攻击成本低于攻击开始时为补偿所有合谋矿工(如果攻击失败)所需的预算(fB)。

因此,这种攻击的成本要比鲸鱼攻击(whale attack)要便宜85%到95%。

7.2.3可用资金:在可能发生众筹攻击的情况下,理论上,如果低值双花交易共同增持足够的攻击资金(fB),则可实现低值交易的双花。

一个比特币区块内转移的价值与开采一个比特币区块所分配的奖励(包括费用)之间的差异表明,使用该技术进行长距离双花攻击的的资金在理论上是可用的。去年每天链上交易的比特币(不包括找零地址)的中值约为10亿美元,而包括交易费用在内的每天挖矿奖励中值约为1500万美元。

7、3 特性与分析

此攻击的特性与第6节中描述的带外攻击相当。此外,以下方面需要进行更多的讨论。

反贿赂:如前几节所述,反贿赂是受害者抵御激励攻击的可行策略。这也说明了激励攻击的一个重要方面,即它们的可见性。一方面,目标密码货币的矿工必须认识到攻击正在进行,否则他们将无法加入其中接受贿赂金,则攻击将失败。另一方面,如果攻击的受害者认识到它的存在,他们可发起和协调反贿赂攻击。因此,如果所有理性矿工都被直接告知了此次攻击,而所有受害者/商家本身又不是矿工,并且没有监控所有可能的资助密码货币,以检查是否发生了攻击,那么就出现了激励攻击的最佳条件。

成本优化:在提议的攻击中,最大的成本驱动因素是k个主链区块的补偿,以激励所有理性矿工转向攻击链。在一个区块链中,每个区块都独特地归属于一组已知的矿工,并且这些矿工的总体算力可近似计算,补偿的支付可以各种方式进一步优化。例如,考虑一个场景,一个小矿工与其他矿工相比运气好,在k个区块内开采数个区块。然后攻击者可以将该矿工排除在补偿支付之外,因为对方不太可能对攻击链做出实质性贡献。

八、 讨论

通过对激励攻击的全面系统化归类,以及提出新的攻击方法,表明在定义无许可POW密码货币系统的基本安全保证方面,不仅算力的分布扮演着核心作用,理性矿工以及可获得的贿赂金的比例也是一个重要组成部分,这还需要进一步进行研究。我们提出的带外攻击,也有助于强调,通过与其他密码货币互联,可增加目标密码货币的攻击面。

在设计无需信任的带外攻击的过程中,我们还发现了一个有趣的类比:在抽象层次上,所呈现的攻击需要一个不同于矿池的构造,在矿池中,矿池所有者定义了智能合约中区块创建的规则。

此外,每个参与者必须能够根据提交的区块及目标密码货币的状态,以无需信任的方式申请攻击承诺的贿赂金。我们提出的短暂挖矿中继技术提供了这种功能,Luu等人(22)还提出了一种智能矿池,其本身是由智能合约管理的。然而,其设计和潜在应用并没有考虑恶意的用例。智能矿池不强制执行有效POW以外的区块内容和有效性相关的任何属性,因为参与者之间的内在激励被假定为以挖取的密码货币收集相应的奖励,只有在创建了有效区块时才可能。

基于智能合约的激励攻击,还为多个攻击者引入了无需信任众筹及利益协调的可能性,这些攻击者希望在同一时间段内执行双花攻击。结合反贿赂的研究课题,研究提出了中本聪共识激励相容性的基本问题。

一个有趣的话题是,利用激励攻击技术鼓励挖矿实体和协议参与者实行可取而非恶意行为,例如在协议升级阶段快速实现多数共识 。

九、结论

本文系统化地展示了激励攻击,为相关工作的比较和讨论提供了必要的前提和依据。我们通过描述和评估三种新的无需信任的激励攻击,来弥补一些由此发现的研究差距,这些攻击具有新的特点,并且比以前的方法要更便宜。

这一研究表明,针对密码货币的激励攻击仍然是一个开放和高度相关的研究课题,其涉及各种未经探索的领域。所有先前提出的,以及在现实中观察到的激励攻击,以及本文中描述的攻击,都表明仅假设诚实的和拜占庭的行动者并不能准确反映无许可PoW密码货币的安全属性。一旦考虑到理性的参与者,就会出现有趣的问题,此外,在一个多种密码货币共存的世界中,将它们单独建模为封闭系统可能还是不够的。

为了更准确地评估风险和安全保障,需要对激励攻击及其复杂的跨链交互,进行进一步的博弈建模和分析。

Relevant information

(1) (nd). Average Number Of Transactions Per Block. https://www.blockchain. com/en/charts/n-transactions-per-block. Accessed 2019-05-10.

(2) (nd). BTC Relay. https://github.com/ethereum/btcrelay. Accessed 2018-04-17.

(3) (nd). CoinMarketCap: 加密货币 Market Capitalizations. https:// coinmarketcap.com/. Accessed 2019-05-10.

(4) (nd). Replace by Fee. https://en.bitcoin.it/wiki/Replace_by_fee. Accessed 2019-05-11.

(5) Amitanand S Aiyer, Lorenzo Alvisi, Allen Clement, Mike Dahlin, JeanPhilippe Martin, and Carl Porth. 2005. BAR fault tolerance for cooperative services. In ACM SIGOPS operating systems review, Vol. 39. ACM, 45– 58. http://www.dcc.fc.up.pt/~Ines/aulas/1314/SDM/papers/BAR%20Fault% 20Tolerance%20for%20Cooperative%20Services%20-%20UIUC.pdf

(6) Adam Back, Matt Corallo, Luke Dashjr, Mark Friedenbach, Gregory Maxwell, Andrew Miller, Andrew Poelstra, Jorge Timón, and Pieter Wuille. 2014. Enabling blockchain innovations with pegged sidechains. http://newspaper23.com/ripped/ 2014/11/http-_____-___-_www___-blockstream___-com__-_sidechains.pdf Accessed: 2016-07-05.

(7) Nir Bitansky, Ran Canetti, Alessandro Chiesa, and Eran Tromer. 2012. From extractable collision resistance to succinct non-interactive arguments of knowledge, and back again. In Proceedings of the 3rd Innovations in Theoretical Computer Science Conference. ACM, 326–349.

(8) Nir Bitansky, Ran Canetti, Alessandro Chiesa, and Eran Tromer. 2013. Recursive composition and bootstrapping for SNARKs and proof-carrying data. In Proceedings of the forty-fifth annual ACM symposium on Theory of computing. ACM, 111–120.

(9) Joseph Bonneau. 2016. Why buy when you can rent? Bribery attacks on Bitcoin consensus. In BITCOIN '16: Proceedings of the 3rd Workshop on Bitcoin and区块链 Research. http://fc16.ifca.ai/bitcoin/papers/Bon16b.pdf

(10) Joseph Bonneau. 2018. Hostile blockchain takeovers (short paper). In 5th Workshop on Bitcoin and区块链 Research, Financial Cryptography and Data Security 18 (FC). Springer. http://fc18.ifca.ai/bitcoin/papers/bitcoin18-final17.pdf

(11) Vitalik Buterin. 2016. Chain Interoperability. https://static1.squarespace.com/static/55f73743e4b051cfcc0b02cf/t/5886800ecd0f68de303349b1/1485209617040/ Chain+Interoperability.pdf Accessed: 2017-03-25.

(12) Philip Daian, Steven Goldfeder, Tyler Kell, Yunqi Li, Xueyuan Zhao, Iddo Bentov,Lorenz Breidenbach, and Ari Juels. 2019. Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized交易所. arXiv preprint arXiv:1904.05234. https://arxiv.org/pdf/1904.05234.pdf

(13) Christian Decker and Roger Wattenhofer. 2015. A fast and scalable payment network with bitcoin duplex micropayment channels. In Symposium on SelfStabilizing Systems. Springer, 3–18.

(14) Shayan Eskandari, Seyedehmahsa Moosavi, and Jeremy Clark. 2019. SoK: Transparent Dishonesty: front-running attacks on区块链. arXiv preprint arXiv:1902.05164. https://arxiv.org/pdf/1902.05164.pdf

(15) Uriel Feige, Amos 法币, and Adi Shamir. 1988. Zero-knowledge proofs of identity. Journal of cryptology 1, 2 (1988), 77–94.

(16) Juan Garay, Aggelos Kiayias, and Nikos Leonardos. 2015. The bitcoin backbone protocol: Analysis and applications. In Advances in Cryptology-EUROCRYPT 2015. Springer, 281–310. http://courses.cs.washington.edu/courses/cse454/15wi/papers/bitcoin-765.pdf

(17) Juan A. Garay, Aggelos Kiayias, and Nikos Leonardos. 2016. The Bitcoin Backbone Protocol with Chains of Variable Difficulty. http://eprint.iacr.org/2016/1048.pdf Accessed: 2017-02-06.

(18) Aljosha Judmayer, Nicholas Stifter, Philipp Schindler, and Edgar Weippl. 2018. Pitchforks in 加密货币: Enforcing rule changes through offensive forking- and consensus techniques (Short Paper). In CBT'18: Proceedings of the International Workshop on 加密货币 and区块链 Technology. https://www.sba-research.org/wp-content/uploads/2018/09/ judmayer2018pitchfork_2018-09-05.pdf

(19) Aashish Kolluri, Ivica Nikolic, Ilya Sergey, Aquinas Hobor, and Prateek Saxena. 2018. Exploiting The Laws of Order in Smart Contracts. arXiv:1810.11605. https://arxiv.org/pdf/1810.11605.pdf

(20) Harry C Li, Allen Clement, Edmund L Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, and Michael Dahlin. 2006. BAR gossip. In Proceedings of the 7th symposium on Operating systems design and implementation. USENIX Association, 191–204. http://www.cs.utexas.edu/users/dahlin/papers/bar-gossip-apr-2006.pdf

(21) Kevin Liao and Jonathan Katz. 2017. Incentivizing blockchain forks via whale transactions. In International Conference on Financial Cryptography and Data Security. Springer, 264–279. http://www.cs.umd.edu/~jkatz/papers/whale-txs.pdf

(22) Loi Luu, Yaron Velner, Jason Teutsch, and Prateek Saxena. 2017. SMART POOL : Practical Decentralized Pooled挖矿. http://eprint.iacr.org/2017/019.pdf Accessed: 2017-03-22.

(23) Patrick McCorry, Alexander Hicks, and Sarah Meiklejohn. 2018. Smart Contracts for Bribing Miners. In 5th Workshop on Bitcoin and区块链 Research, Financial Cryptography and Data Security 18 (FC). Springer. http://fc18.ifca.ai/bitcoin/ papers/bitcoin18-final14.pdf

(24) Andrew Miller, Iddo Bentov, Ranjit Kumaresan, and Patrick McCorry. 2017. Sprites: Payment Channels that Go Faster than Lightning. https://arxiv.org/pdf/ 1702.05812.pdf Accessed: 2017-03-22.

(25) 中本聪. 2008. Bitcoin: A Peer-to-Peer Electronic Cash System. https: //bitcoin.org/bitcoin.pdf Accessed: 2015-07-01.

(26) Rafael Pass, Lior Seeman, and abhi shelat. 2016. Analysis of the区块链 Protocol in Asynchronous Networks. http://eprint.iacr.org/2016/454.pdf Accessed: 2016-08-01.

(27) Joseph Poon and Thaddeus Dryja. 2016. The bitcoin lightning network. https://lightning.network/lightning-network-paper.pdf Accessed: 2016-07-07.

(28) M. Rosenfeld. 2014. Analysis of Hashrate-Based Double Spending. https: //arxiv.org/pdf/1402.2009.pdf Accessed: 2016-03-09.

(29) Ilya Sergey, Amrit Kumar, and Aquinas Hobor. 2018. Temporal Properties of Smart Contracts. In Leveraging Applications of Formal Methods, Verification and Validation. Industrial Practice – 8th International Symposium, ISoLA 2018, Limassol, Cyprus, November 5-9, 2018, Proceedings, Part IV. 323–338. https://ilyasergey.net/ papers/temporal-isola18.pdf

(30) Yonatan Sompolinsky and Aviv Zohar. 2016. Bitcoin's Security Model Revisited. http://arxiv.org/pdf/1605.09193.pdf Accessed: 2016-07-04.

(31) Nicholas Stifter, Aljosha Judmayer, Philipp Schindler, Alexei Zamyatin, and Edgar Weippl. 2018. Agreement with Satoshi – On the Formalization of Nakamoto Consensus. Cryptology ePrint Archive, Report 2018/400. https://eprint.iacr.org/ 2018/400.pdf

(32) Jason Teutsch, Sanjay Jain, and Prateek Saxena. 2016. When cryptocurrencies mine their own business. In Financial Cryptography and Data Security (FC 2016). https://www.comp.nus.edu.sg/~prateeks/papers/38Attack.pdf

(33) Itay Tsabary and Ittay Eyal. 2018. The gap game. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security. ACM, 713–728. https://arxiv.org/pdf/1805.05288.pdf

(34) Yaron Velner, Jason Teutsch, and Loi Luu. 2017. Smart contracts make Bitcoin mining pools vulnerable. In International Conference on Financial Cryptography and Data Security. Springer, 298–316.

(35) Fredrik Winzer, Benjamin Herd, and Sebastian Faust. 2019. Temporary Censorship Attacks in the Presence of Rational Miners. Cryptology ePrint Archive, Report 2019/748. https://eprint.iacr.org/2019/748

(36) Alexei Zamyatin, Dominik Harz, Joshua Lind, Panayiotis Panayiotou, Arthur Gervais, and William J. Knottenbelt. 2018. XCLAIM: Trustless, Interoperable cryptos-Backed Assets. Cryptology ePrint Archive, Report 2018/643. https://eprint.iacr.org/2018/643.pdf https://eprint.iacr.org/2018/643.

附录部分:请看原论文https://eprint.iacr.org/2019/775.pdf

资讯来源:由0x资讯编译自BLOCKING,版权归作者Block所有,未经许可,不得转载
提示:投资有风险,入市需谨慎,本资讯不作为投资理财建议。请理性投资,切实提高风险防范意识;如有发现的违法犯罪线索,可积极向有关部门举报反映。
你可能还喜欢