Contract-Development
是否應該使用 ERC-777 代幣標准開發新代幣?
EIP-777於 2017 年底問世,但許多項目仍在使用 ERC20 代幣標準。我聽說使用 ERC777 的唯一一個是 UNI,它被黑了,因為攻擊者能夠設置
tokensToSend
函式的呼叫方式和呼叫者。無論如何,我認為
mint
,burn
和send
/receive
鉤子相當有用,而不是試圖通過在基於 ERC20 的 Dapp 中開發此功能來重新發明輪子,而是認為應該只使用 ERC777 而不是 ERC20。如果你看一下乙太坊代幣標準,他們只是將 ERC20 列為最“流行”之一,但從未將其稱為“最佳實踐”。
正如您所提到的,ERC777 具有發送/接收掛鉤。這些鉤子提供了許多簡潔的功能,但是它們為重入攻擊打開了大門。這與耗盡DAO(使用 ETH)的攻擊類型相同。
我認為 ERC777 沒有被廣泛使用的原因是因為一些智能合約開發人員不防禦令牌重入。大多數合約都是在代幣不可重入的假設下創建的,ERC777 打破了這一假設。