作者:?Chaosmos
来源:?币新区块
一份新研究报告认为,利用区块链拒绝服务攻击?(BDoS:BlockchainDenialofService),恶意矿工只需要控制全网20%的算力就能使比特币网络停止运转。报告作者来自康奈尔大学和以色列理工合作成立的研究机构?IC3?(Theinitiativefor?cryptocurrenciesandcontracts)。
攻击方法?
动态 | 天津将建设区块链创新研究院 打造离岸创新创业产业园:据天津日报消息,近日,天津市政府印发了《关于支持中国(天津)自由贸易试验区创新发展的措施》(以下简称《措施》)。《措施》指出,设立自贸试验区前沿新兴产业培育引导基金和天使基金,建设区块链创新研究院,鼓励引进外籍领军人才和高端人才,打造离岸创新创业产业园。[2019/10/10]
攻击者挖出一个块,然后只公布区块头。研究者认为,这时候矿工有三个选择:一、不理这个区块头,继续挖主链;二、因为不确定块里有哪些交易,先挖一个空块;三、停止挖掘。
动态 | 西南财大与成都市政府共建交子金融创新研究院 将开展区块链等基础理论与交叉前沿研究:据四川日报报道,6月25日在蓉举行的西南财经大学2019校友论坛暨2019天府论坛财经峰会上,西南财经大学交子金融创新研究院正式揭牌成立。该研究院由西南财大与成都市政府共建,将开展包括大数据、区块链等金融科技重大基础理论与交叉前沿研究,推动财经科学科研成果转化,助力我省建设西部金融中心。目前,该研究院已集聚大数据研究院、中国区块链研究中心、西南财经大学-云从科技数据科学与人工智能研究中心等10余个产学研一体化项目。[2019/6/26]
研究者认为,攻击者可以制造不确定性,让矿工停止挖掘。具体方法是:
最新研究表明:开采新上市的加密货币比持有更有利可图:据btcmanager消息,最近普林斯顿大学和加利福尼亚大学的计算机科学家进行了一项研究,专门研究新的加密货币交易或采矿是否会带来更多收益。根据这项研究,在一定条件下,开采新上市的加密货币,而不是对其进行投资,会更有利可图。[2018/3/31]
如果矿工选择不理这个区块头,继续挖主链,那么攻击者就快速广播与区块头对应的完整块。因为点对点网络里每个节点的网络连通性不一致,有的节点会先收到攻击块,有的节点会先收到防守块。研究者认为,这会导致两组矿工博弈,主链分叉。
假设防守块Bi输掉,不被包含在主链中。这时,挖防守块的矿工损失掉一个区块收益。
挖进攻块BA的矿工,本来可以获得区块收益,但是攻击者可以不发送完整的BA块,让这个块不能上主链,这样挖进攻块BA的矿工也损失掉一个区块收益。
研究者得出的结论是,不管矿工挖防守块还是进攻块,攻击者都可以让矿工拿不到收益,所以矿工最好的选择就是关机不挖。所以,这个攻击可以让比特币网络停机。
行得通吗?
就这个问题采访了鱼池创始人神鱼:
作为一个矿池,如果在只收到区块头的情况下,在没有验证交易合法性的情况下,我不会去跟着挖。因为如果这个区块是有问题的,在他后面跟着挖等于是浪费我的算力。
在现实情况下,如果一个高度上存在两个区块,一个区块只公布了区块头,另一个区块公布了交易数据,虽然可能公布交易数据的区块时间上晚一点,但大家还是会去优先认可这个公布了交易数据的块。如果一个矿池恶意去只公布区块头,不公布数据,它这个块被拒绝的风险很大,会损失掉确定性的区块收益。
除非我是同一个实体控制的矿池,或者是联盟,这时候我挖到一个块,为了速度更快,先把区块头传回来自己挖,默认这个区块是合法的。这时这个攻击等同于自私挖矿攻击,它只广播区块头,等同于不广播区块的攻击。因为我如果不是跟他联盟,我也不敢在后面跟着挖。
解读
研究人员的假设是,攻击者公布区块头后,可以成功吸引到足够的矿工去跟着攻击块挖矿。
现实情况是,如果只公布一个区块头,这个区块大概率被拒绝,攻击者损失掉一个区块收益,矿工跟着先公布整个区块的块继续挖,这个攻击不能威胁比特币网络。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。