Содержание
Создаем свой ERC20 токен на базе Ethereum за 2 минуты — Крипто на vc.ru
В задаче создания своего токена и проведения ICO нет никакой магии с технической стороны. Эта тропинка была протоптана настолько хорошо, что уже можно класть асфальт — чем займемся в этой и следующей статьях.
145 857
просмотров
Готовясь к 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 минут.
Я осознаю, что сейчас кому-то обломаю бизнес, но это слишком просто, чтобы брать за это деньги, имхо
Как создать токен на базе Ethereum и получить свою криптовалюту
Вопреки ожиданиям, создание своего токена на Ethereum – процесс стандартизированный и подробно проработанный разработчиками платформы. Создатели намеренно стремились к тому, чтобы любой желающий, даже не обладающий специальными знаниями по программированию, мог запустить свою монету, пользуясь готовым блокчейном сети. Авторы, по сути, создали цифровой конструктор, в котором в исходнике токена стандарта ERC20 нужно изменить несколько строк и с помощью программы «залить» результат в сеть.
Содержание
- Что нужно знать перед стартом
- Инструкция ERC-20: стандарт Ethereum по созданию своей монеты
- Публикация с использованием кошелька
- Комментарии и отзывы
Что нужно знать перед стартом
Ethereum – это среда, созданная огромным количеством соединенных между собой узлов (нод). Это объединение работает как единая машина, которую так и называют Ethereum Virtual Machine (сокращённо EVM). На базе сети действует система смарт-контрактов («умных контрактов»).
Сущность «умных контрактов» заключается в том, что обе стороны заключают некую операционную сделку, минуя посредников. Два условных лица без привлечения третьей стороны формируют условия контракта, которые «загружаются» в систему (гроссбух) в переведенном в код виде. Программа автоматически определяет соответствие правилам контракта. Если условия соблюдены, EVM подтвердит это и проведёт транзакцию. Если условия нарушены, система автоматически оштрафует «виновника» (если это предусмотрено правилами) и либо вернёт актив, либо производит другие действия, прописанные в коде. Причем в одностороннем порядке «по-тихому» переписать контракт нельзя, поскольку он храниться в децентрализованной цепи.
Формируя свою систему смарт-контрактов на базе блокчейна Ethereum, можно создавать собственный проект или децентрализованное приложение (dApps), расчетной единицей в котором будет такой токен. Примером внутренней валюты могут служить монеты систем SIA, Library и др. В самой сети Ethereum эти токены не дают каких-либо прав и привилегий, но могут иметь самостоятельную ценность.
Выделенные ветви проектов создают целую экосистему Ethereum, в которой потенциально единственной расчетной единицей можно было бы сделать основную монету ETH. Но это очень неудобно. Отдельные проекты и приложения могут жить собственной «жизнью», с разными темпами развиваться, менять конфигурацию и все эти изменения проще и естественнее проводить со специальным криптовалютным эквивалентом.
Однако полностью «придумывать» криптовалютный эквивалент «с нуля» означает встроить его в систему на всех уровнях и подуровнях, сделать «понятным» для различных бирж, кошельков, сервисов и dApp. А это сложно и чаще экономически нецелесообразно.
Поэтому, чтобы не «множить сущности», в 2015 году на DevCon 1 был представлен так называемый Initial Standards Token, или стандарт для токенов Ethereum. После принятия его кошельком Mist, тестирования и добавления необходимых требований, был сформирован действующий стандарт ERC-20 (что расшифровывается как Ethereum Request for Comments 20). Стандарт не является обязательным, но следование ему заметно облегчает работу пользователю по формированию своей монеты, и делает ее понятной приложениям и сторонним сервисам.
Инструкция ERC-20: стандарт Ethereum по созданию своей монеты
Содержательно смарт-контракт токена состоит из двух групп элементов.
- Структуры данных, связывающих сетевые адреса с количеством токенов, для чего существует набор публичных переменных.
- Набора функций, обеспечивающих пересылку активов между адресами (функции transfer и _transfer), перевод монет с чужих адресов (transferFrom), доступ других пользователей к средствам кошелька (approve), списание токенов (burn) и т.д.
Деятельность в сети может иметь вид бесплатного обращения к смарт-контракту для считывания данных из его структуры, а может иметь вид уже платной записи данных от имени принадлежащего пользователю кошелька. Плата вносится на счёт участников сети, которые обеспечивают операцию вычисления и записи в блокчейне Ethereum.
Для создания своего токена надо, прежде всего, придумать его название, символ, выбрать количество токенов и определиться с делимостью одной расчетной единицы. После этого нужно внести эти данные, для чего выполняется следующий набор действий:
- Выбирается стандартная форма смарт-контракта, которую можно скачать по ссылке: github.com/artyomLisovskij/solidity-erc20-token-bootstrap (скачивать нужно оба файла с расширением .sol).
- В редактор Ethereum Remix (который доступен по адресу: remix.ethereum.org) с помощью кнопки «Load» или значка «Папка» загружаются оба скачанных файла.
- В файле NewToken.sol (открытом в этот момент в редакторе Remix), вместо значений переменных, содержащихся в треугольных скобках, вносятся выбранные ранее значения:
- общего количества токенов – totalSupply (например, 123 тысячи),
- названия монеты – name (например, Best Token Ever),
- величины дробления – количества знаков после запятой – для возможности зачисления нецелого числа токенов – decimal (в примере – «4»),
- символического обозначения монеты – symbol (BTE по первым буквам наименования).
- Данные сохраняются, и код с внесенными изменениями развертывается в сети. Для этого нужно воспользоваться каким-либо клиентом, например, MetaMask, который хоть и не компилирует умные контракты, но компиляцию легко произвести в том же редакторе Remix. Для этого открывается вкладка Compile в левой части экрана и запускается нажатием кнопки «Compile». При установке «метки» в соседнем поле, компиляция контракта будет происходить автоматически.
- Развёртывание контрактов с помощью установленного в браузер клиента MetaMask производится следующим образом:
- Там же в редакторе Remix выбирается соседняя вкладка Run и подпункт Injected Web3. Ниже заполняются поля Gas limit и Value и нажимается Create.
- Account, от которого будет происходить развёртывание при установленном клиенте MetaMask, подгружается автоматически, считывая информацию со страницы.
- После нажатия «Submit» и внесения записи в блокчейн, контракт считается развернутым.
Статут подтверждается в клиенте иконкой с изображением «документа», подписанной «Contract published». При нажатии на неё пользователь переходит на страницу транзакций.
Для осуществления операций с токеном нужны кошелек отправителя (например, создателя контракта) и кошелек получателя. Передавать токен можно, используя страницу Remix.
Розовый цвет обозначает платные операции записи, а голубой – бесплатные операции чтения. Для передачи монет вводится нужное количество токенов и адрес получателя. После проведения транзакции баланс можно проверить запуском операции balanceOf.
Публикация с использованием кошелька
Кроме описанного выше способа, можно осуществить публикацию умного контракта на блокчейне Ethereum с помощью официального кошелька MyEtherWallet.
- В открытом приложении нажимается кнопка «Contracts», а затем – «Deploy Contract». В открывшихся формах (Bytecode, ABI/JSON interface и Contract name) можно прописать тот же код, что и в Ethereum Remix.
- Для взаимодействия с контрактом нужно перейти в «Interact with Contract».
- В «Select Contract To Deploy» (выпадающее меню) из исходного кода выбирается тот контракт, который пользователь планирует опубликовать, и заполняются параметры его конструктора.
- Определение комиссии производится прокруткой бегунка «Select Fee». Увеличение комиссии ускоряет проведение транзакции в системе, однако при публикации токенов на этом обычно экономят.
- Отправка транзакции осуществляется нажатием «Sign Transaction».
Для добавления токена в Ethereum Wallet выбирается строка меню «Add Token», а затем указывается адрес, название токена, его символическое обозначение и количество десятичных. Для подтверждения введения данных нажимается кнопка «Ok».
На страницах ресурса github собрано множество примеров проектов по выпуску своих монет на платформе Ethereum. Найти исходники определённого токена можно по его адресу во вкладке «Source Code» на etherscan. io. Разработчики при запуске своего проекта рекомендуют авторам публиковать исходный код, поскольку предполагается, что прозрачность позволит повысить доверие пользователя к токену.
Отзывы и обсуждения
Создайте свою собственную криптовалюту на Ethereum Blockchain | Сатиш Балакришнан | Coinmonks
Создайте собственную криптовалюту на блокчейне Ethereum | Сатиш Балакришнан | Монахи | Medium
Satish Balakrishnan
·
Follow
Published in
·
6 min read
·
15 июля 2020 г.
Понятие эфириума и токена эфириума может быть очень запутанным. У Эфириума есть собственная валюта, называемая эфиром, а также токены, построенные на ее основе, которые также являются валютами. Смарт-контракт — это способ добиться цели в сети Ethereum. По сути, смарт-контракты представляют собой набор инструкций, написанных на «Solidity». Проще говоря, любой созданный вами токен или валюту можно обменять на эфириум. Когда вы отправляете эфириум на адрес, он проходит через смарт-контракт, и взамен вы получаете токен, который вы запросили. Каждый такой…
Автор Сатиш Балакришнан
220 подписчиков
· Писатель для
Я архитектор облачных технологий и DevOps, проявляю большой интерес к HealthTech/MedTech и стартапам
9002 Еще 1 от Сатиша Балакришнана и Coinmonks
Сатиша Балакришнана
в
Как использовать Velero для резервного копирования кластера Kubernetes
Руководство по резервному копированию кластера Kubernetes с помощью Velero.
·Чтение через 4 минуты·16 декабря 2020 г. мир, и это не секрет что технология будет только развиваться. Инвесторы…
·3 мин чтения·6 февраля
Энтони Дж. Линч
в
Забудьте о монетах-мемах, таких как PEPE — «Нацельтесь на эти 8 криптовалют с низкой капитализацией!
Подготовка к бычьему рынку 2024 года начинается сейчас!
·Чтение через 6 мин·3 мая
Сатиш Балакришнан
в
Управление и тестирование в Kubernetes
Обсуждение инструментов, повышающих ценность Фреймворк CI/CD.
·5 минут чтения·25 августа 2020 г.
Просмотреть все от Сатиша Балакришнана
Рекомендовано на Medium
в
Расчетный газ транзакций с Ethers.js и EIP-15 59
👉 Демонстрационный код — https://github.com/neznein9/gas-estimation
·4 минуты чтения·2 января
Амалия
в
9000 2
Прочность #17 . Payable, Fallback и Receive
Как использовать концепции payable, fallback() и receive() в Solidity для получения и отправки эфира и обработки необычных вызовов.
·4 минуты чтения·3 января
Списки
My Kind Of Medium (любимые на все времена)
36 историй·9saves
Выбор персонала
323 истории·82 сохранения
Джон Крэбб
in
Как изучать DeFi в 2023 году
Окончательное руководство к вашим первым шагам
·4 минуты чтения·7 июля, 2022
Энрике Сентейро
в
Web3 против Web 3.
0: они НЕ одинаковы!
Что?! Секундочку… Web3 и Web 3.0, разве это не одно и то же?!
·Чтение 7 минут·21 декабря 2022 г.
sec3 (ранее Soteria)
в
Как работают перекрестные мосты? Дело о червоточине (часть 1)
Наших читателей может немного удивить тот факт, что в 2022 году взломы криптовалют привели к потере средств на сумму более 3 миллиардов долларов. 9 января
Джейден Левитт
в
Вы совершаете огромную ошибку, покупая криптовалюту до апреля 2023 года (Рауль Пал)
Криптовалютный пляжный мяч можно держать под водой не так долго.
·5 мин. чтения·9 декабря 2022 г.
См. дополнительные рекомендации
Статус
Карьера
Преобразование текста в речь
Ethereum на практике, часть 1: как создать собственную криптовалюту, не касаясь ни строчки кода
За последние несколько недель в экосистеме Ethereum произошло так много всего, что стороннему наблюдателю может быть трудно понять, где мы находимся и что там доступно. Поэтому я хотел бы использовать свой первый пост здесь, чтобы дать вам обзор инструментов, которые мы создали, и того, как вы можете использовать их для создания интересных вещей прямо сейчас .
Но сначала краткое введение: меня зовут Алекс Ван де Санде, и я ведущий дизайнер фонда Ethereum. На DevconOne я выступил с докладом под названием «Блокчейн против среднего пользователя», в котором более подробно рассказал о проблемах, связанных с доведением экосистемы Ethereum до вышеупомянутого «среднего пользователя», одной из которых является сложность определения того, что этот термин вообще означает. . Когда персональные компьютеры были представлены, они рекламировались как предназначенные «для всех нас», но «остальные из нас», на которые они нацеливались, на самом деле были очень узкой аудиторией, заинтересованной в обработке текстов, электронных таблицах и настольных издательских системах. Сегодня они считаются одними из лучших гиков, чуть ниже тех людей, которые все еще борются за достоинства Vim по сравнению с emacs. Я искренне верю, что однажды ваши бабушка/дедушка, играющие в Candy-crush, будут использовать блокчейн, точно так же, как сегодня они используют базы данных и https-соединения, не осознавая этого (возможно, когда они конвертируют голубые бриллианты, выигранные в одной игре, в коров в другой игре). каким-то другим издательством). Но прямо сейчас я работаю над тем, чтобы донести его до следующего уровня пользователей, которые могут загрузить офисный пакет и понять, как использовать электронные таблицы, но не чувствуют себя комфортно в командных строках.
Итак, если вы относите себя к этой группе, добро пожаловать, мы познакомим вас с некоторыми основными действиями, которые вы можете выполнить за несколько минут в эфириуме: Создайте свою собственную криптовалюту, постройте собственную демократию и создайте центральный банк на блокчейне . На этот раз мы пропустили учебник «Hello World», но вы справитесь.
Загрузить кошелек Ethereum
Скачать последнюю версию Кошелька
Но хватит разговоров, давайте запачкаем руки Эфириумом! Я могу быть предвзятым, но я бы сказал, что лучше всего начать с Ethereum Wallet, многоплатформенного приложения, которое позволит вам отправлять валюты на основе эфира и эфириума, создавать и выполнять контракты.
Первое, что вам нужно сделать, это создать учетную запись ethereum. Все, что вам нужно для этого, это надежный пароль, и вы его получите. Чтобы что-то сделать, вам нужно будет добавить немного эфира: но не волнуйтесь, вам не нужно много. Большинство контрактов здесь будут стоить менее одной десятой копейки США. Если вы просто тестируете его, мы рекомендуем вам переключиться на тестовую сеть: перейдите в меню development > network > testnet (morden) , а затем на development > start mining . Через несколько минут у вас, вероятно, будет достаточно эфира, чтобы протестировать что-либо, поэтому вы можете отключить его и сэкономить ресурсы вашего компьютера.
Кошелек позволяет только базовый майнинг в тестовой сети, но если вы хотите попытать счастья в реальной сети, вам нужен более продвинутый инструмент. Раньше это был громоздкий процесс, но теперь есть более простые инструменты: и у нас есть новые инструменты, которые сделают этот процесс намного проще.
Майнер AlethOne — это простой инструмент с двумя кнопками: нажмите одну, чтобы начать добычу на вашем графическом процессоре, и нажмите другую, чтобы внести вознаграждение в кошелек. Загрузите его из Turbo Suite, набора мощных инструментов, созданных командой C++ для разработки приложений Ethereum.
Если вы хотите создавать смарт-контракты в реальной сети и не можете майнить, вам понадобятся эфиры. Вы можете отправить друга к вам или обменять его на биткойны на криптобирже. Если вы поклонник биткойнов, мы предлагаем вам следить за проектом btcrelay, защищенным от мошенничества сайдчейном, который скоро будет запущен и позволит быстро обмениваться между эфиром и биткойнами без третьей стороны.
Создать токен
Первый контракт, который мы собираемся создать, — это токен .. Токены в экосистеме Эфириума могут представлять любой взаимозаменяемый товар: монеты, баллы лояльности, золотые сертификаты, долговые расписки, игровые предметы и т. д. Поскольку все токены стандартно реализуют некоторые основные функции, это также означает, что ваш токен будет мгновенно совместим. с кошельком ethereum и любым другим клиентом или контрактом, использующим те же стандарты.
Перейдите на страницу контрактов и нажмите «развернуть новый контракт».
Теперь возьмите отсюда код токена и вставьте его в поле «Исходный код Solidity». Если код компилируется без каких-либо ошибок, вы должны увидеть раскрывающийся список «выбрать контракт» слева. Получите его и выберите контракт «MyToken». В правом столбце вы увидите все параметры, необходимые для персонализации собственного токена. Вы можете настроить их по своему усмотрению, но для целей этого урока мы рекомендуем вам выбрать следующие параметры: 10 000 в качестве источника, любое имя, которое вы хотите, «%» для символа и 2 десятичных знака. Ваше приложение должно выглядеть так:
Прокрутите страницу до конца, и вы увидите оценку стоимости вычислений этого контракта, и вы сможете выбрать комиссию в зависимости от того, сколько эфира вы готовы заплатить за него. Любой излишек эфира, который вы не потратите, будет возвращен вам , так что вы можете оставить настройки по умолчанию, если хотите. Нажмите «развернуть», введите пароль своей учетной записи и подождите несколько секунд, пока ваша транзакция будет принята.
Вы будете перенаправлены на главную страницу, где сможете увидеть свою транзакцию, ожидающую подтверждения. Нажмите на учетную запись с именем «Etherbase» (ваша основная учетная запись), и не более чем через минуту вы должны увидеть, что ваша учетная запись показывает, что у вас есть 100% только что созданных общих ресурсов. Чтобы отправить немного нескольким друзьям: выберите «отправить», а затем выберите валюту, которую вы хотите отправить (эфир или только что созданный общий ресурс), вставьте адрес вашего друга в поле «кому» и нажмите «отправить».
Если отправить другу, то он пока ничего не увидит в своем кошельке. Это связано с тем, что кошелек отслеживает только известные ему токены, и вам нужно добавить их вручную.