Solidity任何人都可以自由呼叫 ERC223 中的
任何人都可以自由呼叫 ERC223 中的 tokenFallback()
函式嗎?
既然函式似乎總是以公開的方式實現,那麼不公平的使用者就不能呼叫
tokenFallback()
接收者合約的函式嗎?這樣一來,人們就可以讓契約相信他們收到了適當數量的錢,而實際上他們並沒有。
任何人都可以呼叫代幣接收者合約中的
tokenFallback
函式,但正如ERC223 標准文件中所解釋的那樣,注意:msg.sender 將是 tokenFallback 函式中的代幣合約。過濾發送哪些代幣(通過代幣合約地址)可能很重要。代幣發送者(發起代幣交易的人)將來自tokenFallback 函式內部。
因此,該
tokenFallback
函式假定呼叫它的合約地址是 Token 合約的地址。無法偽造 msg.sender,這意味著無法欺騙它認為您是代幣合約。