Ether
乙太幣從 EOA 轉移到智能合約的 Gas 成本
很明顯,賬戶之間的 Ether 轉賬是 21,000 gas。這同樣適用於將乙太幣轉移到智能合約地址,還是從 EOA 轉移到智能合約需要更多的 gas? 我試圖用 21,000 gas 將乙太幣從 EOA 轉移到智能合約,但它失敗了
out of gas
。
當將乙太幣從外部擁有的賬戶轉移到智能合約賬戶時,會執行智能合約的回退功能(如果沒有實現,則交易恢復)。
因此,這種交易的成本是 21000 加上回退功能本身的成本。
如果這個函式除了(隱式)接收資金之外什麼都不做,例如:
function () external payable {}
那麼成本將僅略高於21000。
獎金事實:
當將乙太幣從智能合約賬戶轉移到智能合約賬戶時,(目的地)智能合約的備份功能僅以 2300 瓦斯的津貼執行,使其僅限於非常少量的操作。該功能於 2016 年 9 月左右加入,目的是防止目的地合約惡意行為。