时间:2023-07-07|浏览:191
现在我们来说一说,什么是以太坊中的分叉攻击,以及幽灵协议的设计是如何抵御分叉攻击的。
那么什么是分叉攻击呢?分叉就是链变成两条,或者说账本分成两个,这意味着有人做了假账,有些账目被篡改,有些账目则没有被改动。举个例子来说,假设你在网上发送了一笔消息,说你给张三转了五块钱。但是你想干坏事,你想要撤销这笔转账,将钱取回。
于是你做了一个假账本,并生成了一个区块,区块中的信息显示你没有进行这笔转账。这本来是非常困难的事情,但只要你拥有足够大的计算力和足够长的时间,通过一次又一次的尝试,有可能一直抢到出块的权力,从而成功篡改历史。
实际上的情况是你已经没有这笔钱了,它已经全部转给了张三,但是你的账目没有这样记录,所以钱仍然存在你的账户上,你可以将其提取出来。这就是分叉攻击。
上一次我们讨论了幽灵协议,它是为了给分叉区块提供一些好处,以便将分叉的区块和链纳入主链。然而,可能会有人问,分叉出来的区块可能不只一个,后面可能还有其他区块,从而形成了一个链,那么每个分叉出来的区块是否都会得到奖励呢?
答案是否定的,这样的奖励会带来麻烦,为什么呢?想一想,如果你的链本来就不是主链,但是大家仍然继续挖掘。而且如果挖掘还能得到奖励,那么分叉攻击的成本就太低了。
进行分叉攻击的人可能会感到非常舒服,可以攻击也可以守,如果继续攻击,只要挖掘出一条链,就可以篡改信息。如果无法挖掘出来,仍然可以获得一定的补偿奖励。这种情况实在太爽了。
因此,为了防止分叉的发生,提高攻击的成本,以太坊规定只对第一个分叉叔父区块提供奖励。
来源:扮猪不吃虎
用戶喜愛的交易所
已有账号登陆后会弹出下载