Предположим, у нас есть 50 токенов ERC20, которые мы хотели бы поддерживать (депозиты) на нашем веб-сайте. Люди вносят токены на адреса ETH, которые мы для них сгенерировали.
В конце дня мы хотим собрать токены со всех сгенерированных адресов и отправить их на наш холодный кошелек.
Как мы можем сделать перевод на холодный кошелек, если на вновь сгенерированных адресах нет эфира (это означает, что нет газа), и мы не хотим отправлять туда эфир?
Предпочтительно, я хотел бы оплатить весь ГАЗ, который требуется для транзакций с адреса холодного кошелька - возможно ли это?
Как биржи справляются с такими ситуациями? Они генерируют адреса и каждый раз отправляют туда eth, чтобы хватило на газ? В конце концов, они должны перевести активы на один счет. Звучит... неэффективно.
В настоящее время это невозможно со стандартом ERC20. Есть несколько предложений, рассматривающих этот вопрос с разных сторон, но ни одно из них пока не принято в качестве стандарта:
delegatedTransfer
Однако оба эти предложения требуют изменений в контракте токена, поэтому они не будут работать для уже существующих токенов ERC20.
Таким образом, очевидное решение, к сожалению, состоит в том, чтобы отправить достаточно эфира на сгенерированные адреса, чтобы покрыть расходы на газ для перемещения токенов.
Если вам посчастливилось обладать значительной мощностью майнинга, чтобы производить блок каждые X часов, и вы готовы ждать X часов, чтобы вывести эти токены, вы можете настроить свое программное обеспечение для майнинга так, чтобы оно включало ваши собственные транзакции с нулевой комиссией в ваши собственные блоки.
Вместо того, чтобы создавать EAO для пользователей, создайте контрактные кошельки с функцией передачи, которую вы можете вызвать с адреса, на который хотите отправить токен. Тем не менее, система, которую вы предлагаете, немного странная, так как пользователи должны вам доверять. В таком случае вы можете просто иметь контракт с балансами для каждого пользователя, как контракт с токеном.
Надеюсь это поможет
Можно обойтись "флэшботами"
Ричи
Ачала Диссанаяке