QuarkChain

Menu
  • Technology
    • Whitepaper
    • Mainnet
    • Developer Portal
    • Mining Handbook
    • qPocket
  • Ecosystem
  • Community
    • Global Community
    • Event
  • Resources
    • News
    • Media
    • Press
  • About Us
    • Investors
    • Careers
  • Developer Community
Menu

含有权益的工作量证明共识机制中的惩罚思路 — 从近期ETC(以太经典)遭遇51%攻击说起

Posted on 01/11/201906/11/2019 by QuarkChain
在发表了上一篇文章(点击阅读)后有人问我们,含有权益的工作量证明(POSW)如何能够帮助ETC(以太经典)等项目避免51%攻击(前提是他们采用了这种共识机制)。为了回答这个问题,并试图帮助大家更好地理解POSW中的安全模型,本文将假设ETC已经使用了POSW共识,并以此为例讨论对ETC-POSW发起攻击的成本。


参数说明

首先,假设这个ETC-POSW网络具有2019年1月9日的ETC网络类似的系统参数:

  • 全网算力:8Th/s

  • 代币价格:5美元

  • 当前发行量:107407745ETC(数据来自CoinMarketCap)

我们还假设攻击者拥有的算力为8 Th/s(有人怀疑近期对ETC网络攻击所使用的算力是从nicehash上租来的。我们手头没有确凿的数字,8Th/S是假设所有当前的矿工都是诚实的,因此攻击者需要收集8Th/s来执行双花的攻击)。

其次,我们在POSW共识中采用以下参数(参数的意义以及详细说明请参考我们之前发布的文章):

  • 获得最大挖矿额度需要的抵押量(期望发挥100%算力):所有流通代币的5%(请注意,作为对比EOS约有40%的代币正在进行抵押以获取投票权或其他权益。)

  • 当矿工的算力超过了其挖矿额度将承受难度惩罚:20倍高于正常难度

  • 矿工有效算力(额度)的估计时间窗口:256块

  • 确认一笔交易所需的块数:30块(ETC被攻击前交易所通常使用该参数)

  • 如果矿工停工(要求取出押金),押金将锁仓三天(也可理解为提取押金的过程为三天)。

为了帮助大家理解,这里对POSW中的部分术语做一个简要的解释:额度(allowance)是矿工在任意算力估计窗口期(也就任意的连续256块)中可以生成的块的数量。如果一名矿工生产的块数在窗口(256块)里面超过额度时,则该矿工将受到难度惩罚,这时其开采一个块的难度将提高20倍。本案例中,一个额度需要抵押107407745*0.05/256=20978个代币。

攻击成本

接下来,让我们讨论一下进行双花攻击的成本问题:

  1. 如果攻击者不持有任何代币而直接开始挖矿,这意味着恶意矿工将遭受难度惩罚,因此他必须租用(或自行部署)8 Th/s*20=160 Th/s的算力进行攻击。请注意,这个算力值已经接近以太坊当前的全网算力(169.74 Th/s)。

  2. 如果攻击者有足够的代币可以用于抵押,这意味着矿工需要租用8Th/s的算力并单独连续开采31个块(形成攻击分叉)。由于算力的评估窗口为256个块,因此矿工至少需要31/256*107407745*5%=650320 ETC代币,目前价值为320万美元。在执行攻击后(假设攻击完成后迅速开始提取抵押的代币),这些代币还将被锁定3天。

  3. 假设被双花的代币为219500个ETC(该数据来自网上报道https://blog.coinbase.com/ethereum-classic-etc-is-current-51-attack-33be13ce32de),如果攻击者想抵押的代币低于219500个ETC(也就是即使抵押的代币被没收了,还有收益),则窗口期中攻击者的额度为(219500/(107407745*5%))*256=10.4。这也意味者,在产生了这10个块之后,他还需要使用更多的算力来维持出块,算下来整个攻击需要(31–10)/31*8*20+10/31*8 Th/s,大约为110Th/s算力(不要忘记那用于抵押的219500个ETC)。

从上面的例子中我们可以发现,在POSW共识中,除非攻击者拥有非常高的算力,否则他必须抵押一些代币才能执行有效的双花攻击。如果我们在3天内(抵押锁定期)检测到双花攻击,我们就可以通过扣除其抵押的代币来惩罚攻击者。

至于在何种条件下可以罚没的抵押代币,这属于“预言家问题”。一种可行的思路是依靠某种链上治理模式,由主要利益相关者(比如矿工和持币的人等)达成共识,一致决定扣除攻击者的抵押代币并统一执行。这一过程类似于在比特币网络中达成软分叉(soft-fork)升级协议。

结论

考虑到最近一段时间ETC多次发生51%攻击,我们在本文中展示了如果ETC使用了包含权益的工作量证明共识将有助于提高其网络的安全性,显著的增加双花攻击的成本。分析表明,如果ETC使用了POSW共识,再次发生类似1月的双花攻击时,攻击者需要至少具有110Th/s算力或是650320个ETC(价值320万美元,同时还要8 TH/s算力),这些都远远大于当前对ETC网络发起攻击的成本(8Th/s算力)和收益(219500个ETC)。

Social Media

                    

Quick Link

  • Homepage
  • News

Categories

  • Activities and Events
  • Official Announcement
  • Project Progress
  • Technology
  • 中文

Most Recommended

  • QuarkChain 2nd TPS Competition With 3 BTC Rewards
  • 3BTC奖励QuarkChain第二届TPS大赛启动
  • QuarkChain Developer Bounty Program
  • QuarkChain Mainnet V1.0 “Singularity” Launch
Copyright © 2020 QuarkChain Foundation |
All rights reserved