我读过关于种族攻击,芬尼攻击,在这里,商人应该采取预防措施,等待几个街区确认后,才能交付货物。我正在检查验证序列,然后是更新其分类账副本的节点,如以下所示(来自Ethereum白皮书:https://github.com/ethereum/wiki/wiki/White-Paper)
“
“
我想知道上面的序列如何防止随后的攻击:
比如说,寄件人账户中有大量的以太。上面的攻击允许接收者从发送者那里获得两倍的数量。
验证是否包括检查来自根块的跨块的重复事务ID?随着时间的推移,这似乎是大量的工作。
我肯定我错过了什么。块链和上述序列中的哪个验证点如何保护这一点。
谢谢
发布于 2017-03-05 18:32:40
每个帐户都有一个名为“现在”的数字。它从零开始,在处理完每个事务之后,它就会递增。
每个事务也有一个时间。对于要处理的事务,帐户必须具有完全相同的当前事务。这不仅强制所有事务按照发送的顺序进行,而且还防止重复事务。如果矿工再次尝试运行事务,则该块将无效,因为不匹配将不匹配。
但是,如果游戏中有多个区块链,这种保护就不那么强大了。攻击者可以重播发生在另一个区块链上的事务,因为另一个区块链上的当前值不会增加。这个问题最终被EIP 155解决了。
https://ethereum.stackexchange.com/questions/12779
复制相似问题