热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

双花攻击笔记

作为区块链的数字货币,最最重要的事情,便是要解决双花的攻击。双花攻击正如其字面意思一样,就是一笔钱可以花出去二次。如果这都可以ÿ

作为区块链的数字货币,最最重要的事情,便是要解决双花的攻击。

双花攻击正如其字面意思一样,就是一笔钱可以花出去二次。如果这都可以,那整个区块链就无信任可言了。

双花攻击要想确保一定成功,至少需要51%的算力,因此也叫51%算力攻击。

它的原理就是利用了前面提到的比特币分叉。

某作恶人在第101号区块的时候,将10个比特币充值到某交易所。一般交易所在第6个确认的时间就会认为已充值成功。这时作恶的人会赶紧卖出提现。

但随后,作恶节点人还偷偷的构造了另一笔交易(只需要修改101号区块里面的交易信息)将充值的那10个比特币,收款人地址修改成给他的小号。他把这个恶意的块发给了其它的矿工(举例为红色那条链)

这个时候,只要作恶节点在红色链上投入大量的算力,且算力大于51%,那他挖矿的速度肯定比小于49%的诚实节点要快,最终红色的那条链一定会超过黑色的链,其它诚实结节根据最长链优先原则又纷纷到红色链上继续挖矿,而黑色链之前发生的所有交易(其实只有其中那一笔交易是伪造的)就回滚了。

这样,作恶节点人是不是把这10个比特币花费了二次呢?他即在交易所充值成功,又把比特币拿回去了,可恶啊!!! 交易所就白白损失了10个BTC。

这基本上就是双花攻击的原理。

当然,比特币史上还没有发生过51%攻击,目前想要攻击更加难上加难,因为全网算力太大了,想要控制51%算力除非大矿池之间合作,否则需要投入巨大的财力,但这不可能悄无声息的发生。这也体现了比特币的强安全性。


推荐阅读
author-avatar
mobiledu2502934573
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有