
// Криптовалюта
// Криптовалюта
Многие новички и даже эксперты полагают, что такие понятия, как «монета» и «токен», очень близки по смыслу и практически взаимозаменяемы. Но это ошибка, поскольку на самом деле эти термины означают разные вещи как с функциональной, так и с технической стороны. Дальше мы расскажем, чем именно они отличаются, а также обозначим, как можно создать свою монету и как запустить свой токен.
Bitcoin (BTC), Ethereum (ETH) и Monero (XMR) — это популярные примеры криптовалютных «монет», а Basic Attention Token (BAT), Chainlink (LINK), Tether (USDT), Storj, VeChain (VET) — это популярные примеры токенов. С точки зрения привязки к блокчейну разница между ними в том, что криптомонеты существуют в собственных независимых реестрах, тогда как токены работают на базе «чужого» блокчейна. Другими словами, монета имеет свой блокчейн, а токен — нет.
Например, монета BTC существует в блокчейне Биткоина, ETH в блокчейне Эфириума, XMR в блокчейне Monero, а все вышеперечисленные токены запущены на базе блокчейна Ethereum. При этом эти и большинство других токенов создаются не с нуля, а посредством стандартных протоколов (шаблоны запуска), которые задают их ключевые характеристики и функциональность.
Таких протоколов довольно много, причем одна сеть блокчейна может иметь сразу несколько шаблонов. Так, в сети Ethereum обычно используют протокол ERC-20 для запуска взаимозаменяемых токенов или ERC-721 для запуска невзаимозаменяемых токенов. Но помимо них в Ethereum также можно использовать протоколы ERC-223, ERC-777, ERC-820, ERC-821, ERC-827, ERC-1155 и прочие.
Помимо Эфириума, запускать свои токены также можно с помощью блокчейнов Binance Smart Chain, Tezos, TRON, NEO, NEM, Waves, Nxt, Lisk, Stellar, Stratis и множества других площадок, ориентированных на смарт-контракты и dApps.
Другое существенное отличие между токеном и криптовалютной монетой — их основная задача (цель создания). Как следует из самого названия, монеты обычно запускают в качестве средства платежа. Например, биткоины — это криптомонеты, созданные как альтернатива традиционным фиатным деньгам. С их помощью можно покупать-продавать товары и услуги в интернете и больше ничего.
Тогда как токены создают, чтобы использовать их для предоставления доступа к услуге или функционалу какой-то блокчейн-платформы. Например, Basic Attention Token (BAT) предоставляет доступ к маркетинговым инструментам браузера Brave. Посредством BAT рекламодатели оплачивают рекламные кампании, после чего эти токены распределяются между издателями — обычно сайтами — и пользователями Brave как компенсация за размещение рекламных баннеров и их просмотр.
Как следствие такого целеполагания, криптовалютные монеты обычно имеют характеристики, которые свойственны обычным деньгам: делимость, портативность, взаимозаменяемость и ограниченное предложение. Эти характеристики прописаны в блокчейне, и их нельзя изменить без софт- или хард-форка. Характеристики токенов при этом могут быть как аналогичными монетам, так и очень сильно отличаться от них. Так, NFTs (Non-Fungible Token) могут быть неделимыми, уникальными, невзаимозаменяемыми и занимать очень много места на жестком диске.
Последней существенной разницей между криптомонетами и токенами является способ их создания. Монеты работают на базе блокчейнов, причем это может быть как цепочка, созданная полностью с нуля, так и цепочка, созданная через хард-форк уже существующей валюты. Токены же можно запустить за пару минут, если знать, что и как делать. Давайте разберемся, как именно это происходит.
С технической точки зрения криптотокены создаются путем написания и развертывания смарт-контрактов в существующей цепочке блоков. Самая популярная блокчейн-платформа для запуска новых токенов — Ethereum. Самый распространенный стандарт Ethereum для запуска токенов — ERC-20. Этот протокол предусматривает 6 обязательных и 3 опциональных (но рекомендуемых) параметра для любого смарт-контракта. Подробно об этом можно прочесть на официальном сайте Эфириума. Сейчас же мы расскажем, как запустить токен стандарта ERC-20.
Шаг 1. Сначала нужно выбрать / скачать стандартную форму смарт-контракта протокола ERC-20. Она находится на страничке сайта github (скачивать нужно оба файла с расширением .sol).
Шаг 2. Дальше нужно открыть редактор Ethereum Remix (его можно скачать по этой ссылке на сайте Эфириума) и с помощью кнопки «Load» или значка «Папка» загрузить оба ранее скачанные файла в редактор.
Шаг 3. Затем в открытом файле под названием NewToken.sol нужно вместо значений, содержащихся в треугольных скобках, указать нужные вам параметры токена: name — название токена, totalSupply — общая эмиссия, decimal — величина дробления (количество знаков после запятой), symbol — биржевой тикет токена.
Шаг 4. Дальше нужно сохранить изменения и развернуть смарт-контракт в сети Эфириума. Для этого можно воспользоваться клиентом кошелька MetaMask. Он не умеет компилировать контракты на Solidity, поэтому сперва сделаем это в Ethereum Remix. Для этого нужно открыть вкладку «Compile», выбрать свой смарт-контракт и кликнуть «Start to compile». По умолчанию это происходит автоматически, но вы можете сделать это вручную, убрав галочку «Auto compile».
Там же в редакторе Remix выбирается соседняя вкладка «Run» и подпункт «Injected Web3», где нужно заполнить поля «Gas limit» и “Value” и потом нажать «Create».
Аккаунт, от имени которого будет происходить развертывание смарт-контракта, определится автоматически при установленном MetaMask.
После нажатия «Submit» и внесения записи в блокчейн контракт считается развернутым. Статус подтверждается в клиенте иконкой с изображением документа, подписанной «Contract published». При нажатии на неё пользователь переходит на страницу транзакций.
Для осуществления операций с токеном нужны кошелек отправителя (например, создателя контракта) и кошелек получателя. Передавать токен можно, используя страницу Remix. Розовый цвет обозначает платные операции записи, а голубой – бесплатные операции чтения. Для передачи монет вводится нужное количество токенов и адрес получателя. После проведения транзакции баланс можно проверить запуском операции balanceOf.
Второй вариант запуска своего токена подразумевает использование специального криптовалютного кошелька, например с помощью официального кошелька Ethereum Wallet или MyEtherWallet. Рассмотрим алгоритм на примере Ethereum Wallet:
Сам процесс разработки криптомонет выглядит следующим образом:
Шаг 1: определение концепции. На этом этапе вы и компания-разработчик прорабатываете видение монеты. Вам нужно четко понять, для чего вы ее создаете, чем она будет привлекать потенциальных пользователей. Зная это, можно определиться с типом монеты (традиционная крипта, стейблкоин или гибрид), типом блокчейна (публичный, приватный, консорциумы) и прописать базовые характеристики и принципы работы вашей криптовалютной монеты.
Шаг 2: выбор алгоритма консенсуса. Это решение повлияет на большинство характеристик создаваемого блокчейна, а следовательно, и монеты. Например, от механизма консенсуса зависит скорость подтверждения транзакций, пропускная способность сети, майнинг, безопасность, размер комиссий и множество других вещей. Вот сравнение самых популярных алгоритмов консенсуса:
Шаг 3: выбор функционала блокчейна. Так как вы создаете монету, то ваши базовые функции — это все, что нужно для использования вашей валюты в качестве средства платежа в интернете. Кроме этого, вы также можете добавить поддержку смарт-контрактов и dApps, прямую конвертацию вашей монеты в другие монеты, инструменты для интеграции с внешними сервисами и прочее.
Шаг 4: разработка концепции криптокошелька. Если вы создаете свою монету с нуля, то вам, скорее всего, нужно будет также разработать свой кошелек и API для его интеграции с внешними сервисами, включая возможность прямого подключения к популярным криптовалютным биржам, dApps, онлайн-магазинам и т.п.
Шаг 5: выбор технологического стека. Самый простой вариант — выбрать уже существующий блокчейн с открытым исходным кодом и создать на его базе свою цепочку. Например, вы можете использовать код Ethereum. В этом случае вам нужно будет использовать следующие ресурсы:
Шаг 6: непосредственное кодирование. На этом этапе программисты воплощают вашу монету в программном коде. Этим занимаются блокчейн-разработчик, но к ним также могут присоединиться веб- и мобильные разработчики, который создадут сайт и мобильное приложение-кошелек для работы с вашей криптовалютой.
Шаг 7: тестирование и запуск. Когда код программного обеспечения вашего продукта написан (хотя бы частично), за дело берутся QA-специалисты, который тестируют его на наличие ошибок, юзабилити, функциональность, работу при всех возможных вариантах нагрузки и т.п. После выявления и устранения всех ошибок и проблем блокчейн разворачивают — запускают на собственных узлах.