Контракт солидности ERC20 с уже существующими остатками - возможно?

Есть часть меня, которая думает, что если это возможно, это как бы противоречит самой идее безопасной цепочки блоков, но я просто хочу проверить и убедиться.

Можно ли создать и развернуть смартконтракт, который создает несколько адресов, каждый с заранее определенным исходным балансом токенов? И если да, то можно ли сделать эти адреса "доступными" в качестве кошелька для использования?

Итак, предположим, что я создаю ABC-монетку, и у нее есть запас 1.000.000.000, а затем я создаю 10 адресов, каждый с, скажем, 50.000 ABC, а остальные токены ABC все еще находятся в "генезисе" / начальном адресе - это возможно? В качестве альтернативы, можно ли сделать такой "предварительный кошелек" со вторым контрактом после создания токена? И предположим, что теперь, когда я сказал адреса ABC 50 КБ, могут ли они быть "переданы" пользователям / сделаны доступными?

Конечно, всегда можно создать монету, а затем выполнить несколько транзакций, чтобы выполнить описанное выше "старомодным способом", но мне любопытно, можно ли получить такую ​​настройку более быстрым / быстрым способом.

1 ответ

Решение

Этого нельзя достичь с помощью стандартного определения токена ERC20, то, что вы хотите сделать, очень похоже на "Airdrop", в этом случае это может быть достигнуто с помощью следующих шагов:

  1. Создайте и разверните токен ERC20.
  2. Создайте умный контракт для обработки распространения токена, этот контракт будет содержать логику для обработки или процесс распространения.
  3. Вызовите контракт на распространение и передайте массив адресов, которые получат токен.

Проблема, которую я вижу с вашим предложенным подходом, состоит в том, что для предоставления адресов пользователям вы должны предоставить им закрытый ключ, что означает, что они не будут полностью контролировать свои средства, так как вы уже знаете эти ключи, поэтому я не думаю, что это хорошее решение.

Другие вопросы по тегам