{"id":14270,"url":"\/distributions\/14270\/click?bit=1&hash=a51bb85a950ab21cdf691932d23b81e76bd428323f3fda8d1e62b0843a9e5699","title":"\u041b\u044b\u0436\u0438, \u043c\u0443\u0437\u044b\u043a\u0430 \u0438 \u0410\u043b\u044c\u0444\u0430-\u0411\u0430\u043d\u043a \u2014 \u043d\u0430 \u043e\u0434\u043d\u043e\u0439 \u0433\u043e\u0440\u0435","buttonText":"\u041d\u0430 \u043a\u0430\u043a\u043e\u0439?","imageUuid":"f84aced9-2f9d-5a50-9157-8e37d6ce1060"}

Создаем свой ERC20 токен на базе Ethereum за 2 минуты

В задаче создания своего токена и проведения ICO нет никакой магии с технической стороны. Эта тропинка была протоптана настолько хорошо, что уже можно класть асфальт - чем займемся в этой и следующей статьях.

Готовясь к ICO вы должны понимать, что ICO - чистой воды маркетинговое событие. Если вы думаете, что для проведения вам понадобится штаб программистов, вы заблуждаетесь. Вам понадобится штаб маркетологов(или просто людей, готовых выполнять ваши поручения), а также нормальное количество валюты, чтобы привлечь внимание общественности. Да, существуют ICO, выехавшие без серьезных вложений (за счет своей идеи/опыта/связей), но давайте не будем тешить себя надеждами и лукавить - для сбора миллиона долларов вам придется вложить тысячи долларов в ICO.

Проработку ICO оставим на следующую статью, а пока создадим наш ERC20 токен на базе Ethereum максимально быстро.

Техническая часть

Я уже писал, что для создания своего токена у вас есть много путей, наиболее простые и популярные это:

  • Перейти на Waves/CryptonoteStarter(или аналоги) и прямо в интерфейсе за 1 минуту выпустить свою монету
  • Разобраться в Solidity/pyEthereum(токен на базе Ethereum). Используя знания и/или стандарт написания смарт-монет ERC20(по факту исходник монеты с многими вариантами блекджеков) задеплоить контракт.

Скажу честно - я лукавил. Вам не нужно разбираться в Solidity. Для запуска своего токена вам необходимо взять исходник токена ERC20, поменять пару строк и залить контракт в сеть одним из клиентов(оф.клиент Ethereum/Metamask/etc).

Что представляет собой смарт-контракт токена?

1. Это структура данных(читай таблица), состоящая из связи адреса Ethereum = количество токенов(целое число).

2. Это набор функций, осуществляющих проверку на владение определенным количеством токенов, передача токенов = списание(операция вычитания) токенов у пользователя с определенным адресом и пополнение(операция сложения) "баланса" другого пользователя внутри структуры данных, и прочая логика.

Когда идет обращение к смарт-контракту, вы либо читаете данные из его структуры данных(бесплатно, общедоступно), либо записываете их туда(платно, от имени своего кошелька). Поскольку операция записи будет происходить в сеть блокчейн Ethereum, вам необходимо будет заплатить за такую транзакцию майнерам. Чем больше вычислений внутри вашего смарт-контракта, тем больше необходимо будет заплатить.

ERC20 на пальцах

Из-за появления кучи бажных смарт-контрактов, пытающихся выполнить одни и те же действия, была предпринята попытка(удачная) стандартизировать выпускаемые токены. Сделано это было в первую очередь, чтобы:

  • снизить риски потерять деньги в результате ошибок в смарт-контракте
  • обеспечить возможность сторонним сервисам(биржам, кошелькам) бесприпятственно взаимодействовать(внедрять себе) с новыми токенами

Для выпуска токена стандарта ERC20 вам необходимо:

  • выбрать название, например Best Coin
  • выбрать символ , например BEC
  • выбрать количество токенов, оно неизменно, например 10 000
  • выбрать будут ли токены делиться, если да - то сколько знаков после запятой будет максимально.

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

Деплоим наш токен

Теперь эти данные нам необходимо внести в смарт-контракт, доступный по ссылке. Скачиваем оба .sol файла. Переходим в редактор remix. Загружаем оба файла.

Файлы загружаются кнопкой Load(Открыть). Выбираем оба файла.

Открываем NewToken.sol, ставляем вместо переменных в <скобках> нужные значения:

  • totalSupply - общее количество токенов
  • name - полное название токена
  • decimal - количество заков после запятой. Дело в том, что в контрактах все хранится только в целых числах. Поэтому вам следует указывать количество знаков, если хотите иметь возможность зачислять нецелое количество токенов
  • symbol - символ для бирж

Должно получиться что-то в духе:

Сохраняем. Осталось задеплоить контракт в сеть. Для тестирования задеплоим в Ropsten test net. Для деплоя потребуется какой-либо клиент. Воспользуемся MetaMask - он не умеет компилировать смарт-контракты на Solidity, поэтому сперва произведем компиляцию.

В правой части редактора remix открываем вкладку compile. По умолчанию контракт компилируется автоматически. Выбрав свой контракт в select'е и нажав Details вы можете просмотреть байт-код и прочую информацию.

Для деплоя жмем Run, выбираем Injected Web3, выбираем Account, которым будем деплоить(он должен подгрузиться автоматически, если у вас установлен MetaMask в браузер). Вводим нужную информацию в поля(газ, value), жмем Create.

MetaMask подхватывает действие со страницы

Жмем Submit. Ваш контракт задеплоен(после внесения в блокчейн, конечно). Деплой подтверждается в MetaMask'е иконкой с документом(она ведет на страницу транзакции) и надписью "Contract published".

Задеплоенный смарт-контракт-токен.

Производим операции с нашим токеном

Для операций с токеном требуются два кошелька - тот у кого они уже есть(по умолчанию - создатель контракта, стандарт ERC20) и тот, кому нужно их перечислить.

Производить операции с нашим токеном(передавать его, например) мы можем либо на странице контракта на etherscan(ссылка в MetaMask'е), либо на странице remix.

Синее тут - операции чтения, розовое - операции записи.

Для передачи токенов вводим адрес получателя и количество. После этого(и внесения данных в блокчейн, конечно) можно проверить свой баланс или баланс получившего токены операцией balanceOf.

... Profit!

Вот и всё, развлекайтесь!

Буду рад ответить на ваши вопросы в комментариях или (комментарии на vc.ru можно оставлять не всегда) в чате t.me/chainchain.

В следующей статье рассмотрим как запустить свое ICO в течение 10 минут.

Я осознаю, что сейчас кому-то обломаю бизнес, но это слишком просто, чтобы брать за это деньги, имхо

0
59 комментариев
Написать комментарий...
Serg Sapov

"В следующей статье рассмотрим как запустить свое ICO в течение 10 минут". А есть уже эта самая статья об ICO или еще нет? Если есть, можно ссылку? Кстати, с токенами все просто и гениально, спасибо автору. Возможно кому-то и обломается бизнес, а, возможно, кому-то и взлетит ))))

Ответить
Развернуть ветку
Like-It Studio

сейчас бы по статьям исо запускать. оно ведь теперь даже не исо правильно называется. назовитесь исо и привет секу передайте. Сейчас грамотно называть ITO - первичное размещение токенов. Слово койн употреблять нельзя теперь, т.к. ерц20 нельзя считать койном.
Нужно провести качественную итошку - обращайтесь.
смарт контракты, сайты, юридическое сопровождение, сео, ведение сетей
рассматриваем как сотрудничество в отдельных сегментах так и "под ключ".
Скайп: ichernikov1
mail: [email protected]

Ответить
Развернуть ветку
Артём Лисовский
Автор

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

Ответить
Развернуть ветку
56 комментариев
Раскрывать всегда