EIP-777于2017年末问世,但许多项目仍然使用ERC20令牌标准。我听说过的唯一一个使用ERC777的被黑是UNI,因为攻击者能够设置如何调用tokensToSend函数以及由谁调用。
tokensToSend
无论如何,我认为mint、burn和send/receive挂钩相当有用,而不是试图通过在基于ERC20的Dapp中开发这一功能来重新发明轮子,而是认为应该只使用ERC777而不是ERC20。
mint
burn
send
receive
如果您看一下以太令牌标准,他们只是将ERC20列为最“受欢迎的”之一,但从未将其称为“最佳实践”。
发布于 2021-03-31 12:51:52
正如您所提到的,ERC777有发送/接收钩子。这些钩子允许一些整洁的特性,但是它们为重入攻击打开了大门。这是相同类型的攻击,耗尽了刀 (使用ETH)。
我认为,ERC777之所以没有得到广泛使用,是因为一些智能合同开发人员没有为令牌重入进行辩护。大多数契约都是根据令牌不能重入的假设创建的,ERC777打破了这一假设。
https://ethereum.stackexchange.com/questions/96473
相似问题