Как с помощью протокола ERC20 создают новые токены

Что такое протокол ERC20

ERC20 — стандарт токенов сети Ethereum. Аббревиатура расшифровывается как Ethereum Request for Comments — запрос на комментарии в «Эфириум». Это официальный протокол компании для внесения предложений по совершенствованию блокчейна в сети. Цифра 20 — идентификатор предложения.

«Эфириум» — платформа, на которой создаются децентрализованные онлайн-сервисы, базирующиеся на блокчейне. Разработчики используют ее для написания приложений.

Протокол ERC20 упоминают как токен, или то, что является основой большинства современных токенов. Термин token имеет несколько значений:

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

Основы ERC-20

Родная валюта блокчейна Ethereum это Эфир (ETH), однако токены ERC-20 также выступают монетами в сети Ethereum. Блокчейн обрабатывает операции с ними, а смарт-контракты работают на виртуальной машине Ethereum.

Ethereum.org описывает механизм ICO следующим образом:

  1. Покупатель платит смарт-контракту (деньги поступают роботу).
  2. Робот перенаправляет их владельцу контракта.
  3. Робот передает покупателю токены, принадлежащие создателю ICO.

Помните, что эти токены не независимы. Они работают на блокчейне Ethereum и зависят от вычислительной мощности его сети.

Причины создания ERC20

Протокол был создан в 2020 году основателем платформы Ethereum Виталием Бутериным. Первоначальная цель создания:

  • заменить в цифровом мире ценные бумаги,
  • сделать электронные деньги универсальными,
  • провести ICO — сбор средств для развития компании.

До появления стандарта платформы действовали по своим правилам, у каждого из токенов был индивидуальный тип смарт-контрактов.

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

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

  • для создания нового токена было необходимо писать новый код,
  • токены было невозможно быстро разместить на сервисах, кошельках и биржах. Из-за отсутствия совместимости размещение требовало длительного процесса согласования со службой поддержки.

Причины создания стандарта токенов ERC20

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

DApps — децентрализованные приложения с открытым кодом. Они никому не принадлежат и их нельзя закрыть. Программная платформа реализована на децентрализованных цепочках блоков, заполняется с использованием токенов, генерируемых алгоритмом.

Как было раньше и в чем были проблемы

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

Например, один разработчик может использовать имя функции «передача» для передачи токена, а другой разработчик может использовать имя функции «отправить» для получения того же действия. Этот тип фрагментации приводит к множеству избыточных дубликатов и непоследовательному опыту для конечного пользователя.

До того, как появился стандарт, все новые токены для ICO имели свое отображение функций. Каждый из них имел собственный список значений для передачи токенов, имена функций и разные аргументы.

Такая раздробленность и неравномерность стандартов кодирования привели к ряду проблем, например:

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

Новый стандарт ERC20 учел все вышеперечисленные проблемы путем стандартизации, отныне спецификация для создания пользовательских токенов стала однородной и последовательной:

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

Функции стандарта ERC20

Стандарт ERC20 включает в себя 6 обязательных функций и 3 дополнительных. Разработчики не обязывают, но рекомендуют использовать дополнительные функции при создании токена. Список обязательных функций включает в себя:

TotalSupply Общее количество. Определение числа токенов. Если максимум достигнут, смарт-контракт прекращает их выпуск.
BalanceOf Текущий баланс. Присваивание любому адресу, как правило — владельцу, первичного количества токенов.
Transfer Передача. Перевод активов с первичного адреса клиентам, которые приобрели их в период ICO.
TransferFrom Адрес источника передачи. Пересылка средств между пользователями.
Approve Утверждение снятия средств. Проверка, есть ли токены у смарт-контракта.
Allowance Проверка остатка на счете. Гарантия, что пользователя достаточно средств для отправки на другой адрес.

3 дополнительных функции, рекомендуемые для использования:

  • name — имя токена,
  • decimal — число знаков после запятой,
  • symbol — символ для бирж.

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

Как создать свой токен, используя стандарт ERC20

Наиболее популярный и простой способ — открыть исходник ERC20, написанный на языке программирования Solidity и поменять несколько строк. Затем залить контракт в сеть с помощью официальных клиентов, например, MetaMask.

Смарт-контракты

Это программы, которые исполняются автоматически и позволяют создавать децентрализованные миры, криптовалютные биржи и собственные токены.

До появления стандарта платформы действовали по своим правилам, у каждого из токенов был индивидуальный тип смарт-контрактов.

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

Требования, выполняемые смарт-контрактами:

  • контроль баланса кошелька,
  • проверка переведенных средств,
  • пересылка токенов.

Смарт-контракты описаны математически и исключают двойную трактовку. Если одна из сторон не выполнила условия контракта, это приведет к штрафам без перевода проблемы в правовое поле.

На каких языках программирования можно создать свои токены

С этой целью могут использоваться 4 языка программирования:

  • Mutan — Go-подобный язык,
  • LLL — Lisp-подобный,
  • Serpent — Python-подобный,
  • Solidity — подобен JavaScript и направлен на разработку смарт-контрактов.

Язык Solidity был основан на идее Гевина Вуда. Эту идею в 2014 году реализовали разработчики под руководством Кристиана Райтвизнера. Язык Solidity кроссплатформенный, но на практике, на нем пишут преимущественно для Ethereum.

Чем токены отличаются от криптовалют

Крипотвалюта, в отличие от токена:

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

Токены — это аналог акций, которые выпускаются не на фондовом рынке, а в интернете с помощью ICO.

Токен, в отличие от криптовалюты:

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

Чем токены отличаются от криптовалют

Простые примеры. Паспорт человека является токеном, так как предоставляет права гражданина, как и жетон, дающий право на проезд в метро. Жетоны можно обменять на деньги, если они станут востребованы. Цена возрастет, если из-за загруженности линий жетонов будет положено не более двух на месяц. Тогда жетоны могут появиться на бирже, где ими будут торговать. Выходя на биржу, токены не станут криптовалютой, как и жетоны не станут рублями, главная функция проездного документа сохранится.

В основе криптовалюты лежит блокчейн, а в основе токена — криптовалюта, то есть токен — производная криптовалюты.

Практическое применение ERC20

Изначально токены использовали во время первичного сбора средств для развития компании. Они являлись цифровым активом с закрепленными обязательствами. Токены приобретались напрямую у разработчиков и их больше нигде нельзя было продать или купить. ICO «Эфириума» состоялось в 2014 году и собрало более $16 млн. Ethereum привлек внимание представителей многих отраслей, так как его можно использовать для того, чтобы в будущем оптимизировать и оцифровать неэффективные бизнес-процессы.

Токены относятся к криптовалюте, если обладают собственным блокчейном и ими можно торговать на биржах. Примеры ERC20 токенов, которые создали свой блокчейн — Tron и EOS. Tron создал свой блокчейн из-за его перспективности: блокчейн-игры становятся популярней с каждым днем. EOS — конкурент Ethereum, в основном используемый для децентрализованных обменов и азартных игр.

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

На криптовалютном рынке работают надежные стейблкоины стандарта ERC20, торгующиеся на основных криптобиржах.

Стейблкоины — это цифровые валюты с фиксированным курсом: 1 единица токенов равна 1 единице соответствующего фиата, например, доллара.

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

Итог

Именно благодаря стандарту ERC-20 мы наблюдали взрывной рост рынка ICO в 2017-м году. Наличие стандарта позволяет выстраивать экосистему под этот стандарт, в которой создать новый токен и добавить его на биржи практически ничего не стоит. Учитывая, что токенов наплодили уже несколько тысяч, может возникнуть вопрос, а благо ли это. Тем не менее, появление токена не поддерживающего стандарты ERC-20 или ERC-223, сейчас маловероятно.

Стандарт ERC-721 пока используется исключительно в развлечениях, но стандарт очень молод — его время ещё придёт.

Какие токены используют стандарт ERC20

Единый стандарт, простота создания и совместимость с площадками привели к широкому распространению ERC20 токенов. Ниже приведены несколько примеров популярных токенов, использующих протокол ERC20.

USDT Tether

Стейблкоин, выпущенный компанией Tether Limited в 2020 году. Привязан к доллару США. Стоимость USDT Tether подкреплена американскими долларами на счетах компании.

У других фиатных валют есть свои стейблокины. Например, Binance GBP подкрепляется британским фунтом, а STASIS — евро.

Старая система базировалась на протоколе Omni, основанном на блокчейне Bitcoin. Из-за высоких тарифов и длительного подтверждения транзакций компания решила использовать блокчейн Ethereum.

WETH

ETH, или эфир, является базовой валютой Ethereum. При помощи приложения RELAY его можно менять на токены ERC20.

WETH — это «wrapped ETH» или «Эфир в оболочке». Он был введен потому что ETH появился еще до принятия стандарта ERC20 и не соответствовал ему. Децентрализованные платформы, базирующиеся на Ethereum, осуществляют обмен токенами между пользователями на основе смарт контрактов. Чтобы обмен был корректным, токены должны быть одного стандарта.

WETH используется, чтобы обменять токены ETH на соответствующие протоколу ERC20.

В развитии базовой валюты заинтересованы многочисленные пользователи сети, среди которых — крупные корпорации, обладающие капиталом.

Среди них:

  • система Wrapped Ether, владеющая более чем 2 миллионами ETH на сумму 380 миллионов долларов,
  • одна из ведущих крипновалютных бирж Binance, 370 миллионов долларов,
  • биржа Bitfinex, менее 2 миллионов ETH.

LCS

LocalCoinSwap – децентрализованная платформа, предоставляющая пользователям возможность напрямую приобретать и продавать криптовалюту, пользуясь любым из доступных способов оплаты. LCS позволяет найти покупателя или продавца валюты и осуществить сделку без привлечения сайтов и кошельков. На платформе применяется традиционная система депонирования, в которой хранятся криптовалютные средства, подлежащие обмену. Когда оплата подтверждается покупателем и продавцом, система отправляет монеты покупателю. Платформа дает право получать дивиденды в соотношении 1 к 1 в конце квартала.

Список топ-20 токенов ERC20

Несмотря на сравнительную краткость своей истории — 4 года, Ethereum стал надежной платформой для создания очень успешных проектов, которые обладают качествами не меньшими, чем исходная платформа. Сегодня в ТОП-100 криптовалют как минимум 45 являются токенами ERC-20 и представляют собой проекты не менее популярные, чем «коины». Детально ознакомится с ними можно на странице https://coinmarketcap.com/tokens.

EOS (EOS)

Этот токен имеет наибольшую капитализацию среди построенных на базе Ethereum. Более того, он также имеет и собственный блокчейн с включением маркеров Эфириума, а еще позволяет создавать такие же смарт-контракты, фактически делая вызов своему предшественнику. Действительно, проект расположен отобрать у Ethereum часть пользователей. Платформа EOS позволяет создавать приложения dApps, быстро проводить транзакции параллельно другим, она рассчитана на масштабирование и работу с крупными проектами.

Tron (TRX)

Данный токен создан для пользователей, реализующих свои таланты в развлекательной отрасли. Ведь сегодня не все видео и фотографии можно публиковать в интернете просто так, а в сети Tron их можно не только публиковать, но и получать за это вознаграждение. По словам создателей, сегодняшняя жизнь ужесточается контролем контента властями, которые буквально принуждают других просматривать выгодные им публикации и передачи, в том числе в Китае. Неудивительно, что эта оригинальная идея создания токена появилась у разработчиков именно этой страны. Для пользователей валюты первым стало доступно приложение Peiwo App.

VeChain (VET)

Проект создан для преобразования данных между системами контроля поставок товара предприятиям и обычным покупателям. Ценность токена в том и заключается, что пользователь получит в результате гарантированно качественный товар или в противном случае получит уплаченные деньги. Еще одним внедренным решением является функция отслеживания по цепям поставок, по запросам в ручном режиме. Блокчейн все эти данные сохраняет, а при запросе выдает нужную информацию в базе. Переименованная сегодня в VeChain Thor (из VEN в VET), платформа посредством вспомогательного токена Thor еще стала поддерживать коммерческие приложения dApps.

OmiseGo (OMG)

Одно из горячих предложений последнего времени. Девизом проекта является выражение «Unbank Banked». Идеей проекта OmiseGo является перевод банковских услуг на платформу блокчейна, чтобы пользующиеся ими люди смогли быть не привязанными к счетам в банках. Перечень задач проекта оказался весьма широким: оптовая и классическая торговля, разовые и регулярные платежи, зарплатные проекты, управление активами, системы скидок и финансовое сопровождение цепей поставок. Задачей платформы является перевод взаиморасчетов всех направлений с национальных валют в цифровые монеты.

ICON (ICX)

Стартап ICON был создан компанией Dayli из Южной Кореи. Его задачей является повышение эффективности информационного обмена различных учреждений. Выполненный в концепции Loopchain блокчейн ICON имеет высокую производительность, контактирующий с остальными цепочками самостоятельно, без помощи сервисов. Подключаемые к блокчейну цепочки принадлежат участникам системы, от голосования которых зависят решения вопросов в информационной системе. Проект ICON, например, участвует в создании общей базы больниц с базами страховых агентств, а рекрутинговых агентств — с вузами.

Populous (PPT)

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

Binance Coin (BNB)

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

RChain (RHOC)

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

Status (SNT)

Задачей проекта является масштабирование сети Эфириума путем поддержки всех видов оборудования для майнинга, в том числе смартфонов. Кроме того, Status позволяет отправлять через мессенджер зашифрованные сообщения, имеет анонимный браузер, поддерживающий приложения dApps, имеется кошелек для SNT и некоторые другие функции.

Maker (MKR)

Этот токен erc20 существует как одна из внутренних валют, созданных в рамках проекта Maker, где каждая из них по курсу будет приравнена к активам — акциям, золоту, нефти и многих других. В этой системе имеется, например, локальная валюта Stablecoin, привязанная к доллару. Компанией-владельцем DAO планируется также открыть криптовалютную биржу, аналог товарной и фьючерсной, где этими активами можно будет торговать. Линейка активов будет все расширяться.

DigixDAO (DGD и DGX)

Это та самая компания, создавшая предыдущий токен. Ее целью является привязка реальных активов к созданных ею цифровым. Она также занимается безвозмездным финансированием некоторых проектов. Платформа поддерживает двое токенов ERC20 — это DGD с DGX. Первый токен используется для участников обсуждения грантовых заявок, а второй — для вложений в золото, хранящееся в Сингапурском хранилище, в эквиваленте 1 DGX : 1 грамм.

Aeternity (AE)

Децентрализованная платформа для заключения функциональных контрактов. Благодаря виртуальной машине Тьюринга с расширением MAST платформа позволяет задействовать лишь блоки блокчейна, участвующие в подтверждении сделки, а не всю цепочку, где будут храниться конфиденциальные данные. Это позволяет сильно масштабировать сеть. Поддержка сети мощностями компьютеров и смартфонов в сочетании с прогнозами от «Умных Оракулов», еще более увеличивает безопасность сети и позволяет предвидеть ситуации, основанные на реальных событиях.

Waltonchain (WTC)

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

Augur (REP)

Проект позволяет своим участникам создавать различные прогнозы, делая на них ставку в валюте REP. Оппоненты их мнения принимают ставку и дожидаются этого события — в политике, спорте и так далее. Победитель пари забирает обе ставки. Игра происходит полностью анонимно, и вполне возможно, что количество заинтересованных участников будет расти и капитализация этого токена сильно возрастет.

Veritaseum (VERI)

Обслуживание инвестиционных и коммерческих счетов на децентрализованных платформах в разы дешевле, чем в банках. Сеть Veritaseum позволяет обеих стон финансовой сделки обходиться без посредников и комиссий. Безрисковая относительно кредитов торговля производится посредством программы VeADIR, где для этой цели создано 12 умных контрактов. За предоставление доступа к сервису взимается оплата в токенах VERI. Токены планируется продавать бизнес-площадкам. Сам проект пока не нашел своих клиентов.

0x (ZRX)

Задачей проекта является предоставление быстрого обмена токенами ERC20, минуя биржи и криптовалютные обменники, где фактически нарушаются принципы децентрализации и требуется идентификация пользователей. Протокол Ox поддерживает все эти токены, а комиссия при торговле ими оплачивается монетой ZRX. Если команде проекта удастся довести его ценность до заинтересованных в этом, то проект может оказаться самым успешным и побороться за награду «Прорыв года».

Revain (R)

Задачей проекта является предоставление достоверных обзоров товаров, сервисов и услуг, минуя рекламу от ее заказчиков. Причем эти обзоры проходят проверку высокоинтеллектуальными системами, проводящими анализ и исключающие некачественные тексты, а сами публикации невозможно будет удалить. Публикующие их пользователи будут получать оплату в токенах R, а обзоры сберегаться в хранилище RSS. Кроме того, товары и услуги можно будет приобрести по неизменной цене в валюте RVN.

Kucoin Shares (KCS)

Kucoin — криптовалютная биржа, конкурирующая на рынке с Binance. Ее внутренняя валюта KCS тоже используется для оплаты комиссии в экономном варианте. Особенностью площадки является ее ориентация на продажу токенов на стадии ICO. Хотя проект еще молодой, но благодаря усилиям команды уже успел обогнать многие торговые площадки.

Zilliqa (ZIL)

Это платформа на блокчейне с огромной пропускной способностью, обрабатывающая несколько десятков тысяч запросов секунду. Благодаря использованию специального языка программирования она поддерживает высоконагруженные приложения dApps с миллионами транзакций небольшой сложности в минуту, что нечасто встретишь среди криптовалютных платформ. Для приложений выделена своя платформа на Turing. Проверка на протоколе PoW происходит только при входе в приложения.

Basic Atention Token (BAT)

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

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

Какие кошельки поддерживают токены ERC20

Для хранения токенов ERC20 можно использовать как аппаратные, так и электронные кошельки. Ниже приведены примеры таких кошельков.

Ledger

Ledger — французская компания, которая с 2014 года производит аппаратные кошельки для криптовалют. Кошельки Ledger представляют собой физические устройства, на которых хранится криптовалюта. Главные продукты компании — хранилища Ledger Nano S и Ledger Nano X, а также приложение Ledger Live. Модель Nano X новее и дороже, чем Nano S. Ledger Nano X поддерживает не только USB-подключение, но и соединение со смартфоном по Bluetooth. Аппаратные кошельки компании Ledger имеют защиту от взлома и возможность восстановления в случае потери.

MyEtherWallet

MyEtherWallet или MEW — кошелек для безопасного хранения монет, работающих на базе блокчейна Ethereum, появившийся в 2020 году. Помимо кошелька, разработчики также создали образовательный портал MEWtopia, обучающий пользователей взаимодействию с блокчейном. MyEtherWallet представлен в виде мобильного приложения MEW Wallet и расширения для браузера MEW CX. MEW Wallet — обновленная версия мобильного приложения MEW Connect с возможностью доступа к блокчейну Ethereum. Оно работает по принципу аппаратного кошелька, позволяет хранить, покупать и отправлять криптовалюту.

Недостатки ERC20 токенов

Стандарт ERC-20 был создан первым. Начиная с 2020 года приходили сообщения, что он несовершенен и при транзакциях криптовалюта теряется.

Автоматическое выполнение контракта

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

Уязвимость BatchOverFlow

В 2020 году система, анализирующая перенос токенов объявила тревогу в связи с необычной сделкой: было перечислено гигантское число платежных средств. Результат проверки показал, что эта передача вызвана атакой «in-the-wild», использующей уязвимость в контракте. Сканирование и анализ подтвердили, что более десятка контрактов уязвимы для проблемы переполнения.

Уязвимость BatchOverFlow

Проблема с переполнением целочисленного типа заключена в функции batchTransfer.

В строчке 257 amount, переменная суммы — это умножение cnt на _value. Здесь _value — произвольное целое число размером 256 бит. Если параметр бесконечно большой, сумма переполняется и обнуляется. В этом случае хакер может успешно пройти проверку в строках 258–259 и отменить вычитание в строке 261.

Эта ошибка позволяла злоумышленникам создавать большое число токенов, отправлять их по обычному адресу и манипулировать рынком. После окончания проверки безопасности умных контрактов ERC20 команда проекта объявила, что установила защиту токенов от ошибки переполнения.

Простота развертывания

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

Недостатки ERC20 токенов

В 2020 году Американская комиссия по ценным бумагам SEC выдвинула обвинение в мошенничестве основателям PlexCoin, которые привлекали инвесторов обещанием фантастической доходности в 1354% за 29 дней. PlexCoin обманывал инвесторов, цитируя выдуманных рыночных экспертов. Следствие установило, что из собранных средств 200 тысяч долларов основатели потратили на свои нужды.

В начале 2020 года основатель проекта Fantasy Market Джонатан Лукас сбежал. Он сумел привлечь более 4 миллионов долларов, обещая вложить их в разработку платформы, на которой токенами будет оплачиваться просмотр порно.

Еще один из ярких образцов мошенничества — проект Confido, выпустивший токены, собравший около 375 тысяч долларов, а затем удаливший все данные о себе.

ERC-721

Токен стандарта ERC-721 отличается он описанных выше.

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

Каждый токен стандарта ERC-721 уникален, и может использоваться для коллекционирования или описания права собственности. Общаться со смарт-контрактом, управляющим токенами ERC-721, нужно по другому — не оперируя цифрами, а указывая 256-битный идентификатор каждого токена. Перемещать токены можно только по одному и, что логично, делить на части токены нельзя.

Стандарт используется в популярной игре CryptoKitties, где каждый токен соответствует котику уникальной внешности. Котиков можно покупать, размножать и продавать. Звучит не очень интересно, но некоторых котиков продавали за 100 000 долларов, а на пике популярности игры у сети Эфириума возникали сложности с проведением транзакций — сеть была перегружена.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий