>区块链中具有强大自适应策略的双花攻击-网络安全-黑吧安全网 | xxx>区块链中具有强大自适应策略的双花攻击-网络安全-黑吧安全网 – xxx
菜单

>区块链中具有强大自适应策略的双花攻击-网络安全-黑吧安全网

三月 13, 2020 - 黑吧安全网

区块链中具有强大自适应策略的双花攻击

来源:本站整理 作者:佚名 时间:2020-03-13 TAG: 我要投稿

0x01 Absert
本文提出了一种针对区块链的自适应策略双花攻击。当提交的交易在区块链中可用时,攻击者会观察诚实分支的长度,然后相应地更新攻击策略。与常规双花攻击相比,提供了更强大的策略。文中推导了攻击成功概率和攻击矿工预期回报的闭式表达式。
分析表明,在建议的攻击策略下,当攻击者获得总网络处理能力的40%时成功进行攻击的可能性比传统攻击策略预期的要高60%。为了应对这种攻击可能性的增加,要求网络节点使用更多数量的确认块来验证区块链中的交易。计算了攻击者在区块链上挖掘恶意分支的预期回报,并探讨在经过几个区块确认后,预期回报会降至零。
 
0x02 Self Mining Attack
在最初的比特币原理中考虑了简化的攻击模型。在此模型中,假定区块链中主干链的块数遵循(r * q / p)的泊松分布,其中r是诚实矿工形成的块数,而q和p是攻击矿工和诚实矿工分别产生下一个区块的可能性。
攻击者矿工形成s个块所需的平均时间(如果s> r,则攻击成功)为rT / p,其中T是创建一个块的平均时间。这不是一个精确的模型,因为仅考虑攻击者创建的块的平均数量,而不是实际数量。
当受害矿工与攻击者发现的区块竞争时,攻击者会让他丢弃发现的所有区块。换句话说,攻击者仅将其自己对区块链的视图提供给受害矿工。这样滥用了受害者的计算能力来挖掘攻击者的区块链。在0-确认的交易中,攻击者向卖家支付交易,卖家在看到区块链中的交易之前向攻击者移交商品。然后,攻击者封锁了卖家节点的通信并将另一笔双花交易发送到网络的其余部分。但由于攻击者控制着所有卖家的连接,因此卖家无法将原始交易告知网络的其余部分。
 
0x03 System Model
>区块链中具有强大自适应策略的双花攻击-网络安全-黑吧安全网
上图说明了典型网络中网络节点与矿工之间的流量。系统模型包括以下内容:
网络节点:有n个网络节点可以相互通信以提供或请求服务。这些节点通过网络将其交易提交给矿工。
矿工:矿工接收交易并对其进行处理,以形成包含已提交交易的新区块。形成区块后,矿工竞争将新形成的区块添加到区块链中。鼓励矿工提供采矿服务的奖励是区块链代币形式的奖励。
交易池:假设提交的交易进入网络中的交易池。然后可以联系矿工进行挖掘。
区块链代币:网络节点和矿工就区块链代币的价值达成共识。节点将代币支付给其他节点以获取服务。代币也用于挖矿过程。每个矿工在为区块链创建新区块时都会收到一些代币作为奖励。奖励金额由区块链规则确定。
假设任何节点都可以加入矿工或网络节点。即网络是未经许可的。而且,每个节点都能够安全地生成和存储公钥/私钥。如果它不能生成则至少需要安全地存储一个公钥/私钥。
在双花攻击中,攻击者向另一个网络节点发出事务,该网络节点是一个诚实的节点。攻击者必须首先说服诚实的网络节点该交易已通过区块链机制确认。因此,攻击者一直等到诚实的网络节点在区块链的某个块中接收到交易。然后,攻击者创建一个块,其中包含另一个与诚实节点的第一个交易冲突的交易。
例如,在第一笔交易中,攻击者声明她/他已经从其帐户向真实节点的帐户发送了R代币,但是在第二笔交易中,攻击者声明了将相同的R代币转移至攻击者朋友的帐户。因此,攻击者试图双花相同的代币。如果其他网络节点接受了区块链中的第二笔交易,则实际上攻击者已说服那些网络节点第二笔交易有效,而第一笔交易则无效。因此,第一笔交易仅在短时间内有效。在此期间,诚实节点会不可逆地向攻击者提供服务。
 
0x04 Attack Model
在本研究中,通过定义新的攻击场景来考虑更全面的攻击模型。与传统攻击模型一样,模型中的攻击者在向矿工池提交诚实节点的交易后立即开始建立恶意分支。但是与传统的攻击模型不同,当提交的交易出现在区块链中的某个块上时,模型中的攻击者会验证其恶意分支是否比有效分支更长。
如果恶意分支更长,则攻击者将继续生成更多的块,直到它能够通过产生足够长的恶意链成功地对系统进行攻击。如果主干分支更长,则攻击者将其恶意分支替换为诚实链的副本,并将新块添加到重复的主干分支中,直到可以成功攻击系统为止。这种主动的方法使模型中的攻击者在控制区块链方面获得更高的成功概率。
攻击者是矿工网络中的矿工,或者是与少数矿工协作以通过攻击区块链来控制网络的网络节点。攻击区块链意味着创建新的区块链,以便在区块链中建立新分支,并使先前添加到区块链及其交易中的区块失效。
攻击者可以访问网络的控制通道,并且可以获取区块链的副本以获取有关区块链内交易的知识。同样,没有任何代币的攻击者可能会最初向其他节点提供一些服务以获取足够的代币。然后使用代币,攻击者能够提交虚假交易。
假设节点没有受到损害,也就是说攻击者无法访问合法网络节点或矿工的私钥。合法的网络节点可以处理并正确遵循区块链协议。例如,如果矿工节点接收到无效交易,如具有零代币的智能合约交易,则它将作为无效请求被丢弃。
攻击者无法生成错误的交易,例如在交易中添加无效的数字签名。这是由于区块链的性质。在将错误的交易插入到区块中之后,该区块无法从其他矿工那里获得足够的确认,因此无法被视为区块链中的新区块。
 
0x05 Security Goals
根据定义,如果每个在最大时间t运行的攻击者都以最高概率ε成功攻击安全方案,则该方案被称为(t,ε)-secure。这意味着为了证明方案的安全级别需要显示攻击方案所需的工作量及其相关概率。
>区块链中具有强大自适应策略的双花攻击-网络安全-黑吧安全网
如上图所示,不同的矿工和网络节点可能会在区块链中跟随不同的等长分支,从而在系统中创建了一个分叉。一个分叉具有两个等长的分支,导致平局,因为两个分支都可以被认为是有效的。
但是如图(b)所示,一旦在分支中挖掘了一个新块,所有网络节点都将接受更长的分支作为主干分支。因此,分叉的另一个链中的块将被忽略。如果该区块在距离链中最后一个区块的z区块之外,则在较长链中给定区块内发生的交易被称为z确认。例如,在(b)中,有一个针对块4b中所有交易的确认,而有两个针对在块3中所有交易的确认。

[1] [2] [3] [4]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。

上一篇:linux "io_uring" 提权漏洞(CVE-2019-19241)分析返回黑吧安全网首页】【进入黑吧技术论坛
下一篇:更新:补丁发布 | Microsoft Windows SMBv3.0服务远程代码执行漏洞(CVE-2020-0796)通告


Notice: Undefined variable: canUpdate in /var/www/html/wordpress/wp-content/plugins/wp-autopost-pro/wp-autopost-function.php on line 51