月亮链 月亮链
Ctrl+D收藏月亮链
首页 > BTC > 正文

POS:2分钟带你了解最大的一朵乌云——长程攻击_区块链技术专业

作者:

时间:1900/1/1 0:00:00

本文中,我们简要地讨论关于PoS协议里,大家公认最大的一朵乌云——长程攻击;内容还涵盖了两种目前现行的或预想的解决办法:弱主观性和前向安全密钥。最后,我们提出了一种新的分叉选择规则,使得长程攻击成本更加高昂;这种分叉选择可以结合现有的几种方案,作为预防长程攻击的额外举措。本文是区块链协议及相关主题的系列文章之一,我们持续致力于高质量的区块链技术内容创作;欲了解更多当前技术现状的全面概况,请参阅我们关于Layer2方法、随机性、分片论文等相关文章。另外请关注我们的推特或加入NearProtocol频道,避免错过内容更新。

长程攻击

在PoW中,使用最长链选择规则可以获得令人非常满意的属性:除非恶意攻击者控制了全网超过50%的算力,不然无法逆转已确认一段时间的区块。但是在PoS中没有这种特性。尤其是当区块生产者建完块且拿回质押的代币后,对他们来说,用于创建区块的密钥再也没有价值了;这时候攻击者可以尝试以远低于创建区块时质押的代币金额去购买这些密钥。与PoW不同,因为PoS没有出块之间强制延时的机制,所以买到密钥后,攻击者能够在数分钟内造出一条长于主链的伪链,并被分叉选择规则所接受。有两种方法能够避免上述问题:

EOS在2分钟内跌幅超过1.00%:据火币全球站数据显示,EOS/USDT在2分钟内出现剧烈波动,跌超1.00%,达到-1.03%。当前报价为2.89美元,行情波动较大,请注意风险控制。[2020/5/3]

弱主观性要求全网节点周期性地检查最新的区块,并拒收那些“重组了过分久远的记录”的区块。只要足够频繁地检查区块,使得在释放质押代币的时间段中,肯定包含一次以上的检查,那么节点就永远不会选择攻击者创建的最长链,因为敌手从取出保证金的验证者处购买的私钥,必定只能从“过于久远”处开始创建区块。弱主观性方法的不足之处在于,虽然已经存在于网络中的节点不会被攻击者,但是对于首次加入网络的节点来说,他们没有足够的信息来判断哪条链是先被创建的,因此新节点会倾向选择攻击者创建的较长链。为了避免这种情况,新节点需要以某种方式在链下了解关于主链的知识,这在本质上就是要求他们选择信任网络中的某个主体。

ETH在2分钟内涨幅超过1.00%:据火币全球站数据显示,ETH/USDT在2分钟内出现剧烈波动,涨超1.00%,达到1.07%。当前报价为182.17美元,行情波动较大,请注意风险控制。[2020/4/22]

前向安全密钥还有一种方法是要求区块创建者在出块后,在极短的时间内或立刻销毁他们用来建块的密钥;可以在每次建块时创建新的密钥对,或是通过前向安全密钥结构来完成。这个方法仰赖于节点是诚实的,并且严格遵守协议。因为一旦区块创建者知道未来的某个时间点,可能会有人要买他们的密钥,则密钥价值不为零,区块创建者就没有动机去销毁密钥。且不说要求在某个特定时间点,会有大比例的区块创建者愿意修改他们的文件且移除私钥并不现实;这种仰赖大多数参与者诚实配合的协议,与仰赖大多数参与者是理性的协议,两者间所带来的安全保障并不不同。PoW就是建立在大多数参与者是理性的且不会进行勾结的前提之上的,其分叉选择规则和抗女巫攻击也都依赖这个假设。

行情丨ETH在2分钟内涨幅超过1.00%:据火币全球站数据显示,ETH/USDT在2分钟内出现剧烈波动,涨超1.00%,达到1.10%。当前报价为 260.98 美元,行情波动较大,请注意风险控制。[2020/2/17]

我们提议的分叉选择规则

参考下图:区块B在主链上足够前段的位置,所以产生B时大多数的在位验证者都已经把保证金取出来了。攻击者能够接触这些区块生产者,并取得其中~2/3的私钥;因为这时候密钥对于区块产生者来说已经没有价值,所以攻击者能以远低于实际建块质押的金额来买到这些密钥。因为PoS系统没有所谓稀缺资源,攻击者能够在非常短的时间内创建一条长于主链的伪链。我们需要一种分叉选择规则,使得用户不会将攻击者创建的链视作主链——不论攻击者构建出多长的伪链,以及有多少恶意验证者为其签名背书。本文建议的分叉选择规则步骤是:从创世区块开始,针对每个区块通过以下规则选择其子块作为下一个合法区块:

行情丨HT在2分钟内涨幅超过1.00%:据火币全球站数据显示,HT/USDT在2分钟内出现剧烈波动,涨超1.00%,达到1.03%。当前报价为 5.18 美元,行情波动较大,请注意风险控制。[2020/2/16]

当前区块被主链采用后,对状态进行快照。

列出当前时刻,持有代币的所有账户,并做成对照表。

对于每个候选子块,根据对照表,找出子块及其各自子树中签署过至少一笔交易的公钥,并验证之。

算出每个候选子块及其各自子树中,签署过至少一笔交易的公钥所转移的代币总量;选择转移代币总量最多的子块作为合法的下一个区块。

从图中的例子来说,当前区块是B,候选子块是C1和C2;C1的子树是所有合规主链上的区块,而C2的子树是攻击者创建的。从B块状态快照开始,计算签署过至少一笔交易的公钥所转移的代币总量,作为主链的得分;攻击者创建的链得分计算方式相同,但是因为存在重放保护,所有C2及其子树中的交易都是由攻击者创建的。从B块状态快照开始,假设在主链上,计算签署过一次及以上交易的公钥所转移代币总量为p;而攻击者创建的链上,只存在攻击者买到的密钥所创建的交易,这些公钥所转移代币总量为q,则q<p永远成立。如果攻击者创建的链希望获得更高的分数,则从B块状态快照开始计算,C2及其子树中的交易总额必须大于p,所以攻击者还需要取得账户中总额大于(p-q)的密钥。但攻击者这时候就头疼了,因为这些密钥持有人还没有在主链进行任何交易,所以他们的账户在快照状态时还有资金,所以攻击者无法用低于快照状态中的金额来取得这些密钥。因此,即使攻击者以低价取得了截至B块为止,8成的“至少在主链发起过一笔交易的账户”,攻击者仍至少要付出0.2p的作恶成本。请注意,要让主链具备抗分叉性,需要积累大量有效交易后这种分叉选择规则才有效,所以该选择规则仅适用于面临长程攻击的分叉选择。该分叉选择规则可以结合经典解决方案,先用拜占庭容错型确定性工具所敲定的区块形成一个区块链的子集,并在这个子链上执行上述分叉选择规则;然后基于上述规则选出的最终区块,再使用其他更合适的分叉选择规则。

行情丨BCH在2分钟内跌幅超过1.00%:据火币全球站数据显示,BCH/USDT在2分钟内出现剧烈波动,跌超1.00%,达到-1.84%。当前报价为 279.37 美元,行情波动较大,请注意风险控制。[2019/11/14]

结语

上述分叉选择规则为预防长程攻击提供了额外举措;虽然这种规则具有一些有趣的特性,但是在投入实际应用前,还有许多研究要做。举例来说,目前还不清楚该规则是否能够提供经济确定性;一切都需要更多长远的分析。目前,我们正在积极研究防御长程攻击的方法,并即将发布更多资料,敬请期待。

原文链接:

https://nearprotocol.com/blog/long-range-attacks-and-a-new-fork-choice-rule/

作者:ALEXANDERSKIDANOV

翻译&校对:IANLIU&阿剑

标签:POSPOW区块链ANDcpos币官网POWA价格区块链技术专业YLAND

BTC热门资讯
COIN:Dcoin关于XRP暂停充提公告_coinw币赢网页版

亲爱的Dcoin用户:由于XRP节点升级已经完成,XRP的充值和提现功能现已恢复。暂停期间给您带来的不便,敬请谅解,感谢您对Dcoin的支持!Dcoin全球运营团队2019年10月4日以下为本次.

1900/1/1 0:00:00
FEX:WBF交易所“社区合伙人3.0第十期招募计划”_ARTIC

尊敬的用户:WBF交易所即将开启社区合伙人3.0第十期招募,第十期社区合伙人将于10月8日12:00正式开启.

1900/1/1 0:00:00
LOEx国际站10月8日15:00独家首发上线DWTT

尊敬的LOEx用户:LOEx国际站即将首发上线DWTT,并开放DWTT/USDT的交易对,具体时间如下:LOEx于新加坡时间10月08日14:50开放DWTT充提币业务.

1900/1/1 0:00:00
DAX:IDAX上线BTE 并开放BTE/USDT交易市场_CADAX

尊敬的IDAX用户:??IDAX上线BTE,并开放BTE/USDT,具体时间如下:充值时间:10月14日10:00提币时间:10月16日?10:00交易时间:10月15日?10:00关于BTE:.

1900/1/1 0:00:00
BIKI:BiKi平台关于上线MTP的公告(0929)_MTP

尊敬的用户:BiKi平台即将开放MTP的充值、提现,并开放MTP/USDT交易对,具体时间如下:1、开放充值时间:9月29日15:00;2、开放提现时间:9月29日15:00;3、开放交易时间:.

1900/1/1 0:00:00
DSC:【活动】FUBT关于上线DSC并推出“喜迎国庆,DSC好礼两重奏”活动的公告_ubtc币要完蛋了

尊敬的FUBT用户:FUBT将于20019年9月28日17:00上线DSC,盛世华诞,喜迎国庆,为回馈新老用户一直以来对FUBT的支持与厚爱,FUBT联合DSC推出DSC好礼两重奏活动.

1900/1/1 0:00:00