Tokens

ERC20 :: 在沒有發送者氣體的情況下轉移代幣

  • January 15, 2022

假設我們有 50 個 ERC20 代幣,我們希望在我們的網站上支持(存款)。人們將代幣存入我們為他們生成的 ETH 地址。

歸根結底,我們希望從所有生成的地址中收集代幣並將其發送到我們的冷錢包。

如果新生成的地址上沒有任何乙太幣(這意味著沒有氣體)並且我們不想向那裡發送任何乙太幣,我們如何轉移到冷錢包?

最好,我想從冷錢包地址支付交易所需的所有 GAS - 可能嗎?

交易所如何處理這種情況?他們是否生成地址,並且每次他們發送到那裡都有足夠的汽油?歸根結底,他們必須將資產轉移到一個帳戶。聽起來……效率低下。

目前,這在 ERC20 標準中是不可能的。有一些提案從不同角度解決了這個問題,但目前還沒有一個被接受為標準:

  • EIP 865支持delegatedTransfer
  • EIP 965使用“支票運算符”擴展了 ERC777。此處描述了您詢問的案例。

不過,這兩個提案都需要更改代幣合約,因此它們不適用於已經存在的 ERC20 代幣。

因此,不幸的是,顯而易見的解決方案是向生成的地址發送足夠的乙太幣,以支付將代幣移出的氣體成本。

如果您碰巧擁有每 X 小時產生一個區塊的強大挖礦能力,並且您準備等待 X 小時將這些代幣移出,您可以配置您的挖礦軟體以在您自己的區塊中包含您自己的零費用交易。

與其為使用者製作 EAO,不如製作具有轉賬功能的合約錢包,您可以從要發送代幣的地址呼叫該錢包。也就是說,您提出的系統有點奇怪,因為使用者必須信任您。在這種情況下,您可以只為每個使用者建立一個帶有餘額的合約,就像代幣合約一樣。

希望這可以幫助

引用自:https://ethereum.stackexchange.com/questions/57176