Токены Ethereum ERC-20, ERC-223, ERC-721 и ERC-777: В чем разница
Главная Обучение, Альткоины

Что нужно знать о стандартах создания приложений на Ethereum.

Разобраться в том, как работает биткоин, большинству людей непросто, а Ethereum — еще гораздо сложнее. Даже если вы с технологиями на «ты», чтобы понять, как работает эта система, потребуется много времени.

Итак, Ethereum — это децентрализованная платформа, на которой могут работать написанные на языке программирования Solidity смарт-контракты. Также на ней могут работать сотни децентрализованных приложений.

Для всякого нового приложения, использующего блокчейн или смарт-контракты, может быть создан новый токен Ethereum — в рамках этого проекта были разработаны несколько стандартов для таких токенов, и для различных типов приложений подходят токены различных стандартов.

Наличие стандартов облегчает взаимодействие между токенами и смарт-контрактами, и поэтому Ethereum — популярная платформа для разработки децентрализованных приложений. Можно уподобить Ethereum операционным системам iOS или Android для децентрализованных приложений — она упрощает их создание и поддерживает работу.

Наиболее распространенным стандартом Ethereum-токенов в настоящее время выступает ERC-20, но есть также стандарты ERC-223, ERC-721 и ERC-777. В этой статье мы расскажем о каждом из них.

Токен Ethereum ERC-20

Это действующий отраслевой стандарт, который используется тысячами различных криптовалютных проектов.

Стан­дарт то­ке­нов ERC-20 имеет шесть обя­за­тель­ных па­ра­мет­ров для каж­до­го смарт-кон­трак­та и три до­пол­ни­тель­ных (но ре­ко­мен­ду­е­мых!). На­при­мер, к до­пол­ни­тель­ным от­но­сит­ся до­пу­сти­мое число зна­ков после за­пя­той. Для срав­не­ния, бит­ко­ин под­дер­жи­ва­ет во­семь зна­ков после за­пя­той, сим­вол (обыч­но это 3−4-знач­ный код) и имя. Шесть обя­за­тель­ных па­ра­мет­ров опре­де­ля­ют ко­ли­че­ство и пе­ре­да­чу то­ке­нов. Пер­вые два ис­поль­зу­ют­ся для за­да­ния ис­ход­но­го рас­пре­де­ле­ния:

  1. Функция totalSupply определяет общее количество токенов. После достижения максимума смарт-контракт перестает их выпускать.
  2. Функция balance0f присваивает первичное число токенов любому адресу (обычно это адрес владельцев ICO).

Для рас­пре­де­ле­ния между поль­зо­ва­те­ля­ми и пе­ре­во­да от од­но­го поль­зо­ва­те­ля к дру­го­му необ­хо­ди­мы два ме­то­да пе­ре­но­са. Они крайне важны для вто­рич­но­го рынка:

  1. Функция transfer переводит токены с первичного адреса индивидуальным пользователям, купившим их во время ICO.
  2. Функция transferFrom используется для пересылки токенов от одного пользователя к другому.

Еще две функ­ции необ­хо­ди­мы для про­вер­ки двух преды­ду­щих:

  1. Функция approve проверяет, остались ли токены у смарт-контракта.
  2. Функция allowance гарантирует, что на неком адресе достаточно токенов для их пересылки на другой адрес.

Эти шесть про­стых шагов поз­во­ли­ли раз­ра­бот­чи­кам ко­шель­ков и бир­жам со­здать еди­ную базу кода, спо­соб­ную вза­и­мо­дей­ство­вать с любым кон­трак­том стан­дар­та ERC-20.

Токен Ethereum ERC-223

Хотя стандарт ERC-20 очень полезен, он далеко не идеален. Например, из-за недостатков проектирования, люди могут послать токены на смарт-контракт, считая, что посылают их на обычный кошелек — таким образом уже были необратимо утрачены токены на сумму более 3 млн долларов.

В ERC-223 эта ошибка исправлена — здесь можно одной функцией переводить токены на смарт-контракты и кошельки. Кроме того, с токенами ERC-223, в отличие от ERC-20, для перевода требуется одна операция, а не две, а значит, и вдвое меньше газа для его оплаты.

И кроме того, токены ERC-223 обратно-совместимы со стандартом ERC-20, то есть все оригинальные функции тоже поддерживаются.

Таким образом, можно ожидать, что стандарт ERC-223 рано или поздно вытеснит ERC-20 в качестве самого распространенного стандарта токенов в Ethereum. Правда, большинство Ethereum-кошельков еще не поддерживают токены ERC-223, поэтому и разработчики проекта не торопились с его внедрением.

Впрочем, учитывая, насколько быстро эволюционирует криптовалютная экосистема, не удивляйтесь, если токены ERC-223 станут популярны уже в 2019 году — или даже раньше.

Токен Ethereum ERC-721

Токены ERC-721 приобрели первую известность в конце 2017 года, когда по всему миру прогремела коллекционная игра CryptoKitties, основанная на платформе Ethereum.

Ключевое различие между стандартом ERC-721 и другими стандартами ERC заключается в том, что ERC-721 позволяет создавать неконвертируемые токены (NFT), то есть в пределах одной платформы или экосистемы могут быть токены, имеющие разную стоимость.

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

В ближайшие годы токенизация коснется все более широкого круга реальных активов, и можно спорить, что известность стандарта ERC-721 далеко затмит популярность игры CryptoKitties — в блокчейне Ethereum можно будет отразить право собственности на произведение искусства или на билет на какое-нибудь шоу. При этом подлинность и целостность продукта будет отслеживаться на протяжении всего жизненного цикла — с беспрецедентной точностью.

Токен Ethereum ERC-777 и ERC-820

Как и ERC-223, ERC-777 призван улучшить стандарт ERC-20 и обратно совместим с ним.

В ERC-777, как и в ERC-223, теперь труднее потерять токены по ошибке, но у него есть и уникальные возможности — он поддерживает массу механизмов обработки транзакций.

Чтобы разобраться с ERC-777, сначала придется взглянуть на стандарт ERC-820. Согласно этому стандарту, в сети Ethereum действует центральный реестр смарт-контрактов, позволяющий любому пользователю проверить адрес смарт-контракта и узнать, какие функции он поддерживает.

В ERC-777 используется тот же центральный реестр из стандарта ERC-820, призванный обеспечить проверку поддерживаемых функций, а кроме того, вместо функций transfer («передать») и approve («одобрить»), принятых в стандарте ERC-20, задается совершенно новый набор функций, в частности, функция send («отправить»), используемая для передачи непосредственно эфира.

Кроме того, в ERC-777 появляется понятие «одобренного оператора», то есть люди могут доверять смарт-контрактам переводить токены от их имени. Это делает ERC-777 очень гибким: можно сделать контракт-миксер, который будет перемешивать транзакции для большей конфиденциальности, или функцию экстренного восстановления на случай утраты личных ключей.

Кроме того, ERC-777 предусматривает «чеканку» и уничтожение токенов, что в ряде случаев может быть необходимо.

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

Заключение

Платформа Ethereum непрерывно развивается, а с ней развиваются и стандарты создания приложений, и, если сегодня на этом рынке доминируют токены ERC-20, в будущем, вероятно, все больше проектов будут строиться на усовершенствованных стандартах ERC-223 или ERC-777.

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

Источник: Invest In Blockchain

Читайте также:
Пожалуйста, опишите ошибку
Закрыть